| Previous | 199869 Revisions | Next |
| r22710 Wednesday 8th May, 2013 at 14:34:11 UTC by Miodrag Milanović |
|---|
| save state cleanup, converted state_save_register_global* into save_item/save_pointer (nw) |
| [src/emu] | emupal.c save.h sound.c |
| [src/emu/cpu/mb86233] | mb86233.c |
| [src/emu/machine] | generic.c |
| [src/emu/video] | psx.c stvvdp1.c stvvdp2.c tms34061.c |
| [src/mame/audio] | atarijsa.c cage.c cinemat.c dcs.c exidy440.c segag80r.c targ.c |
| [src/mame/drivers] | aristmk4.c artmagic.c berzerk.c bfcobra.c bzone.c cinemat.c cps3.c dblcrown.c djmain.c espial.c esripsys.c exidy.c forte2.c gaelco3d.c galaga.c galaxian.c gottlieb.c gridlee.c hornet.c jpmimpct.c konamigx.c lvcards.c magmax.c maygayv1.c mcr.c mcr3.c mcr68.c merit.c meritm.c midvunit.c midzeus.c mitchell.c ms32.c mystwarr.c neogeo.c nova2001.c pengadvb.c pkscram.c popeye.c qdrmfgp.c r2dtank.c renegade.c seattle.c segac2.c segag80v.c sfbonus.c skykid.c slotcarn.c sms.c spiders.c stv.c subsino2.c system1.c taito_f3.c tceptor.c terracre.c tetrisp2.c tubep.c twin16.c vegas.c |
| [src/mame/machine] | 3do.c acitya.c atari.c carpolo.c cchip.c dc.c decoprot.c galaxold.c konamigx.c mcr.c mcr68.c midtunit.c midwayic.c midwunit.c midxunit.c model1.c namcond1.c namcos1.c pgmprot1.c scramble.c stvprot.c tatsumi.c theglobp.c twincobr.c vertigo.c williams.c |
| [src/mame/video] | artmagic.c astrocde.c beathead.c bfm_adr2.c carpolo.c deco32.c dooyong.c esripsys.c exidy.c gaelco3d.c galaxian.c galaxold.c goal92.c gottlieb.c gridlee.c gtia.c jpmimpct.c konamigx.c konamiic.c m90.c magmax.c mcr3.c midtunit.c midvunit.c midyunit.c midzeus.c midzeus2.c model1.c namcos1.c pacland.c pacman.c phoenix.c popeye.c renegade.c segag80r.c seta2.c skykid.c snes.c st0016.c system1.c taito_f3.c tceptor.c terracre.c tiamc1.c tubep.c twin16.c twincobr.c victory.c williams.c wiz.c wwfwfest.c ygv608.c |
| [src/mess/drivers] | mc10.c mz2500.c pc8801.c pc9801.c saturn.c smc777.c tek405x.c x1.c |
| [src/mess/machine] | dccons.c hp48.c mboard.c mc68328.c thomflop.c thomson.c |
| r22709 | r22710 | |
|---|---|---|
| 147 | 147 | numcolors = palette_get_num_colors(machine.palette); |
| 148 | 148 | palette->save_pen = auto_alloc_array(machine, pen_t, numcolors); |
| 149 | 149 | palette->save_bright = auto_alloc_array(machine, float, numcolors); |
| 150 | state_save_register_global_pointer(machine, palette->save_pen, numcolors); | |
| 151 | state_save_register_global_pointer(machine, palette->save_bright, numcolors); | |
| 150 | machine.save().save_pointer(NAME(palette->save_pen), numcolors); | |
| 151 | machine.save().save_pointer(NAME(palette->save_bright), numcolors); | |
| 152 | 152 | machine.save().register_presave(save_prepost_delegate(FUNC(palette_presave), &machine)); |
| 153 | 153 | machine.save().register_postload(save_prepost_delegate(FUNC(palette_postload), &machine)); |
| 154 | 154 | } |
| r22709 | r22710 | |
| 337 | 337 | ctable->raw = auto_alloc_array(machine, UINT16, ctable->entries); |
| 338 | 338 | for (index = 0; index < ctable->entries; index++) |
| 339 | 339 | ctable->raw[index] = index % ctable->palentries; |
| 340 | | |
| 340 | machine.save().save_pointer(NAME(ctable->raw), ctable->entries); | |
| 341 | 341 | |
| 342 | 342 | /* allocate the palette */ |
| 343 | 343 | ctable->palette = auto_alloc_array(machine, rgb_t, ctable->palentries); |
| 344 | 344 | for (index = 0; index < ctable->palentries; index++) |
| 345 | 345 | ctable->palette[index] = MAKE_ARGB(0x80,0xff,0xff,0xff); |
| 346 | | |
| 346 | machine.save().save_pointer(NAME(ctable->palette), ctable->palentries); | |
| 347 | 347 | |
| 348 | 348 | return ctable; |
| 349 | 349 | } |
| r22709 | r22710 | |
|---|---|---|
| 86 | 86 | /* allocate memory for VRAM */ |
| 87 | 87 | tms34061.vram = auto_alloc_array_clear(machine, UINT8, tms34061.intf.vramsize + 256 * 2); |
| 88 | 88 | /* not really a save state, just there for debugging purposes */ |
| 89 | | |
| 89 | machine.save().save_pointer(NAME(tms34061.vram), tms34061.intf.vramsize); | |
| 90 | 90 | |
| 91 | 91 | /* allocate memory for latch RAM */ |
| 92 | 92 | tms34061.latchram = auto_alloc_array_clear(machine, UINT8, tms34061.intf.vramsize + 256 * 2); |
| r22709 | r22710 | |
|---|---|---|
| 2145 | 2145 | m_vdp1.user_cliprect.set(0, 512, 0, 256); |
| 2146 | 2146 | |
| 2147 | 2147 | // save state |
| 2148 | state_save_register_global_pointer(machine(), m_vdp1_regs, 0x020/2); | |
| 2149 | state_save_register_global_pointer(machine(), m_vdp1_vram, 0x100000/4); | |
| 2150 | state_save_register_global(machine(), m_vdp1.fbcr_accessed); | |
| 2151 | state_save_register_global(machine(), m_vdp1.framebuffer_current_display); | |
| 2152 | state_save_register_global(machine(), m_vdp1.framebuffer_current_draw); | |
| 2153 | state_save_register_global(machine(), m_vdp1.framebuffer_clear_on_next_frame); | |
| 2154 | state_save_register_global(machine(), m_vdp1.local_x); | |
| 2155 | state_save_register_global(machine(), m_vdp1.local_y); | |
| 2148 | save_pointer(NAME(m_vdp1_regs), 0x020/2); | |
| 2149 | save_pointer(NAME(m_vdp1_vram), 0x100000/4); | |
| 2150 | save_item(NAME(m_vdp1.fbcr_accessed)); | |
| 2151 | save_item(NAME(m_vdp1.framebuffer_current_display)); | |
| 2152 | save_item(NAME(m_vdp1.framebuffer_current_draw)); | |
| 2153 | save_item(NAME(m_vdp1.framebuffer_clear_on_next_frame)); | |
| 2154 | save_item(NAME(m_vdp1.local_x)); | |
| 2155 | save_item(NAME(m_vdp1.local_y)); | |
| 2156 | 2156 | machine().save().register_postload(save_prepost_delegate(FUNC(saturn_state::stv_vdp1_state_save_postload), this)); |
| 2157 | 2157 | return 0; |
| 2158 | 2158 | } |
| r22709 | r22710 | |
|---|---|---|
| 567 | 567 | // icky!!! |
| 568 | 568 | machine().save().save_memory( "globals", NULL, 0, "m_packet", (UINT8 *)&m_packet, 1, sizeof( m_packet ) ); |
| 569 | 569 | |
| 570 | state_save_register_global_pointer( machine(), p_vram, width * height ); | |
| 571 | state_save_register_global(machine(), n_gpu_buffer_offset ); | |
| 572 | state_save_register_global(machine(), n_vramx ); | |
| 573 | state_save_register_global(machine(), n_vramy ); | |
| 574 | state_save_register_global(machine(), n_twy ); | |
| 575 | state_save_register_global(machine(), n_twx ); | |
| 576 | state_save_register_global(machine(), n_tww ); | |
| 577 | state_save_register_global(machine(), n_drawarea_x1 ); | |
| 578 | state_save_register_global(machine(), n_drawarea_y1 ); | |
| 579 | state_save_register_global(machine(), n_drawarea_x2 ); | |
| 580 | state_save_register_global(machine(), n_drawarea_y2 ); | |
| 581 | state_save_register_global(machine(), n_horiz_disstart ); | |
| 582 | state_save_register_global(machine(), n_horiz_disend ); | |
| 583 | state_save_register_global(machine(), n_vert_disstart ); | |
| 584 | state_save_register_global(machine(), n_vert_disend ); | |
| 585 | state_save_register_global(machine(), b_reverseflag ); | |
| 586 | state_save_register_global(machine(), n_drawoffset_x ); | |
| 587 | state_save_register_global(machine(), n_drawoffset_y ); | |
| 588 | state_save_register_global(machine(), m_n_displaystartx ); | |
| 589 | state_save_register_global(machine(), n_displaystarty ); | |
| 590 | state_save_register_global(machine(), n_gpustatus ); | |
| 591 | state_save_register_global(machine(), n_gpuinfo ); | |
| 592 | state_save_register_global(machine(), n_lightgun_x ); | |
| 593 | state_save_register_global(machine(), n_lightgun_y ); | |
| 594 | state_save_register_global(machine(), m_n_tx ); | |
| 595 | state_save_register_global(machine(), m_n_ty ); | |
| 596 | state_save_register_global(machine(), n_abr ); | |
| 597 | state_save_register_global(machine(), n_tp ); | |
| 598 | state_save_register_global(machine(), n_ix ); | |
| 599 | state_save_register_global(machine(), n_iy ); | |
| 600 | state_save_register_global(machine(), n_ti ); | |
| 570 | save_pointer(NAME(p_vram), width * height ); | |
| 571 | save_item(NAME(n_gpu_buffer_offset)); | |
| 572 | save_item(NAME(n_vramx)); | |
| 573 | save_item(NAME(n_vramy)); | |
| 574 | save_item(NAME(n_twy)); | |
| 575 | save_item(NAME(n_twx)); | |
| 576 | save_item(NAME(n_tww)); | |
| 577 | save_item(NAME(n_drawarea_x1)); | |
| 578 | save_item(NAME(n_drawarea_y1)); | |
| 579 | save_item(NAME(n_drawarea_x2)); | |
| 580 | save_item(NAME(n_drawarea_y2)); | |
| 581 | save_item(NAME(n_horiz_disstart)); | |
| 582 | save_item(NAME(n_horiz_disend)); | |
| 583 | save_item(NAME(n_vert_disstart)); | |
| 584 | save_item(NAME(n_vert_disend)); | |
| 585 | save_item(NAME(b_reverseflag)); | |
| 586 | save_item(NAME(n_drawoffset_x)); | |
| 587 | save_item(NAME(n_drawoffset_y)); | |
| 588 | save_item(NAME(m_n_displaystartx)); | |
| 589 | save_item(NAME(n_displaystarty)); | |
| 590 | save_item(NAME(n_gpustatus)); | |
| 591 | save_item(NAME(n_gpuinfo)); | |
| 592 | save_item(NAME(n_lightgun_x)); | |
| 593 | save_item(NAME(n_lightgun_y)); | |
| 594 | save_item(NAME(m_n_tx)); | |
| 595 | save_item(NAME(m_n_ty)); | |
| 596 | save_item(NAME(n_abr)); | |
| 597 | save_item(NAME(n_tp)); | |
| 598 | save_item(NAME(n_ix)); | |
| 599 | save_item(NAME(n_iy)); | |
| 600 | save_item(NAME(n_ti)); | |
| 601 | 601 | |
| 602 | 602 | machine().save().register_postload( save_prepost_delegate( FUNC( psxgpu_device::updatevisiblearea ), this ) ); |
| 603 | 603 | } |
| r22709 | r22710 | |
|---|---|---|
| 6104 | 6104 | stv_rbg_cache_data.is_cache_dirty = 3; |
| 6105 | 6105 | memset( &stv_vdp2_layer_data_placement, 0, sizeof(stv_vdp2_layer_data_placement)); |
| 6106 | 6106 | |
| 6107 | state_save_register_global_pointer(machine(), m_vdp2_regs, 0x040000/2); | |
| 6108 | state_save_register_global_pointer(machine(), m_vdp2_vram, 0x100000/4); | |
| 6109 | state_save_register_global_pointer(machine(), m_vdp2_cram, 0x080000/4); | |
| 6107 | save_pointer(NAME(m_vdp2_regs), 0x040000/2); | |
| 6108 | save_pointer(NAME(m_vdp2_vram), 0x100000/4); | |
| 6109 | save_pointer(NAME(m_vdp2_cram), 0x080000/4); | |
| 6110 | 6110 | machine().save().register_postload(save_prepost_delegate(FUNC(saturn_state::stv_vdp2_state_save_postload), this)); |
| 6111 | 6111 | |
| 6112 | 6112 | return 0; |
| r22709 | r22710 | |
|---|---|---|
| 126 | 126 | cpustate->ARAM = &cpustate->RAM[0]; |
| 127 | 127 | cpustate->BRAM = &cpustate->RAM[0x200]; |
| 128 | 128 | |
| 129 | | |
| 129 | device->machine().save().save_pointer(NAME(cpustate->RAM),2 * 0x200 * sizeof(UINT32)); | |
| 130 | 130 | } |
| 131 | 131 | |
| 132 | 132 | static CPU_RESET( mb86233 ) |
| r22709 | r22710 | |
|---|---|---|
| 81 | 81 | /* for memory cards, request save state and an exit callback */ |
| 82 | 82 | if (machine.config().m_memcard_handler != NULL) |
| 83 | 83 | { |
| 84 | s | |
| 84 | machine.save().save_item(NAME(state->memcard_inserted)); | |
| 85 | 85 | machine.add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(FUNC(memcard_eject), &machine)); |
| 86 | 86 | } |
| 87 | 87 | } |
| r22709 | r22710 | |
|---|---|---|
| 832 | 832 | machine.add_notifier(MACHINE_NOTIFY_RESET, machine_notify_delegate(FUNC(sound_manager::reset), this)); |
| 833 | 833 | |
| 834 | 834 | // register global states |
| 835 | s | |
| 835 | machine.save().save_item(NAME(m_last_update)); | |
| 836 | 836 | |
| 837 | 837 | // set the starting attenuation |
| 838 | 838 | set_attenuation(machine.options().volume()); |
| r22709 | r22710 | |
|---|---|---|
| 96 | 96 | |
| 97 | 97 | |
| 98 | 98 | |
| 99 | // register global items | |
| 100 | #define state_save_register_global(_mach, _val) \ | |
| 101 | (_mach).save().save_item(_val, #_val) | |
| 102 | ||
| 103 | #define state_save_register_global_pointer(_mach, _val, _count) \ | |
| 104 | (_mach).save().save_pointer(_val, #_val, _count) | |
| 105 | ||
| 106 | #define state_save_register_global_array(_mach, _val) \ | |
| 107 | (_mach).save().save_item(_val, #_val) | |
| 108 | ||
| 109 | #define state_save_register_global_2d_array(_mach, _val) \ | |
| 110 | (_mach).save().save_item(_val, #_val) | |
| 111 | ||
| 112 | #define state_save_register_global_bitmap(_mach, _val) \ | |
| 113 | (_mach).save().save_item(*(_val), #_val) | |
| 114 | ||
| 115 | ||
| 116 | ||
| 117 | 99 | //************************************************************************** |
| 118 | 100 | // TYPE DEFINITIONS |
| 119 | 101 | //************************************************************************** |
| r22709 | r22710 | |
|---|---|---|
| 2430 | 2430 | m_kanji_rom = memregion("kanji")->base(); |
| 2431 | 2431 | m_cg_rom = memregion("cgrom")->base(); |
| 2432 | 2432 | |
| 2433 | state_save_register_global_pointer(machine(), m_work_ram, 0x10000); | |
| 2434 | state_save_register_global_pointer(machine(), m_hi_work_ram, 0x1000); | |
| 2435 | state_save_register_global_pointer(machine(), m_ext_work_ram, 0x8000*0x100); | |
| 2436 | state_save_register_global_pointer(machine(), m_gvram, 0xc000); | |
| 2433 | save_pointer(NAME(m_work_ram), 0x10000); | |
| 2434 | save_pointer(NAME(m_hi_work_ram), 0x1000); | |
| 2435 | save_pointer(NAME(m_ext_work_ram), 0x8000*0x100); | |
| 2436 | save_pointer(NAME(m_gvram), 0xc000); | |
| 2437 | 2437 | } |
| 2438 | 2438 | |
| 2439 | 2439 | void pc8801_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 1158 | 1158 | } |
| 1159 | 1159 | |
| 1160 | 1160 | // register for state saving |
| 1161 | // state_save_register_global(machine, ); | |
| 1162 | 1161 | } |
| 1163 | 1162 | |
| 1164 | 1163 |
| r22709 | r22710 | |
|---|---|---|
| 3389 | 3389 | |
| 3390 | 3390 | m_work_ram = auto_alloc_array(machine(), UINT8, 0xa0000); |
| 3391 | 3391 | m_ext_work_ram = auto_alloc_array(machine(), UINT8, 0x700000); |
| 3392 | state_save_register_global_pointer(machine(), m_work_ram, 0xa0000); | |
| 3393 | state_save_register_global_pointer(machine(), m_ext_work_ram, 0x700000); | |
| 3392 | save_pointer(NAME(m_work_ram), 0xa0000); | |
| 3393 | save_pointer(NAME(m_ext_work_ram), 0x700000); | |
| 3394 | 3394 | |
| 3395 | 3395 | m_ram_size = m_ram->size() - 0xa0000; |
| 3396 | 3396 | |
| r22709 | r22710 | |
| 3410 | 3410 | m_ide_ram = auto_alloc_array(machine(), UINT8, 0x2000); |
| 3411 | 3411 | m_ext_gvram = auto_alloc_array(machine(), UINT8, 0xa0000); |
| 3412 | 3412 | |
| 3413 | state_save_register_global_pointer(machine(), m_sdip, 24); | |
| 3414 | state_save_register_global_pointer(machine(), m_ide_ram, 0x2000); | |
| 3415 | state_save_register_global_pointer(machine(), m_ext_gvram, 0xa0000); | |
| 3413 | save_pointer(NAME(m_sdip), 24); | |
| 3414 | save_pointer(NAME(m_ide_ram), 0x2000); | |
| 3415 | save_pointer(NAME(m_ext_gvram), 0xa0000); | |
| 3416 | 3416 | } |
| 3417 | 3417 | |
| 3418 | 3418 | MACHINE_RESET_MEMBER(pc9801_state,pc9801_common) |
| r22709 | r22710 | |
|---|---|---|
| 976 | 976 | m_gvram = auto_alloc_array_clear(machine(), UINT8, 0x8000); |
| 977 | 977 | m_pcg = auto_alloc_array_clear(machine(), UINT8, 0x800); |
| 978 | 978 | |
| 979 | state_save_register_global_pointer(machine(), m_work_ram, 0x10000); | |
| 980 | state_save_register_global_pointer(machine(), m_vram, 0x800); | |
| 981 | state_save_register_global_pointer(machine(), m_attr, 0x800); | |
| 982 | state_save_register_global_pointer(machine(), m_gvram, 0x8000); | |
| 983 | state_save_register_global_pointer(machine(), m_pcg, 0x800); | |
| 979 | save_pointer(NAME(m_work_ram), 0x10000); | |
| 980 | save_pointer(NAME(m_vram), 0x800); | |
| 981 | save_pointer(NAME(m_attr), 0x800); | |
| 982 | save_pointer(NAME(m_gvram), 0x8000); | |
| 983 | save_pointer(NAME(m_pcg), 0x800); | |
| 984 | 984 | |
| 985 | 985 | machine().gfx[0] = auto_alloc(machine(), gfx_element(machine(), smc777_charlayout, (UINT8 *)m_pcg, 8, 0)); |
| 986 | 986 | } |
| r22709 | r22710 | |
|---|---|---|
| 1769 | 1769 | m_phone_rom = memregion("phone")->base(); |
| 1770 | 1770 | m_iplpro_rom = memregion("iplpro")->base(); |
| 1771 | 1771 | |
| 1772 | state_save_register_global_pointer(machine(), m_main_ram, 0x80000); | |
| 1773 | state_save_register_global_pointer(machine(), m_pcg_ram, 0x2000); | |
| 1774 | state_save_register_global_pointer(machine(), m_emm_ram, 0x100000); | |
| 1772 | save_pointer(NAME(m_main_ram), 0x80000); | |
| 1773 | save_pointer(NAME(m_pcg_ram), 0x2000); | |
| 1774 | save_pointer(NAME(m_emm_ram), 0x100000); | |
| 1775 | 1775 | |
| 1776 | 1776 | /* TODO: gfx[4] crashes as per now */ |
| 1777 | 1777 | machine().gfx[3] = auto_alloc(machine(), gfx_element(machine(), mz2500_pcg_layout_1bpp, (UINT8 *)m_pcg_ram, 0x10, 0)); |
| r22709 | r22710 | |
|---|---|---|
| 256 | 256 | prg.nop_readwrite(0x5000, 0x8fff); |
| 257 | 257 | |
| 258 | 258 | /* register for state saving */ |
| 259 | s | |
| 259 | save_item(NAME(m_keyboard_strobe)); | |
| 260 | 260 | |
| 261 | 261 | //for alice32 force port4 DDR to 0xff at startup |
| 262 | 262 | if (!strcmp(machine().system().name, "alice32") || !strcmp(machine().system().name, "alice90")) |
| r22709 | r22710 | |
|---|---|---|
| 666 | 666 | } |
| 667 | 667 | |
| 668 | 668 | // save states |
| 669 | state_save_register_global_pointer(machine(), m_scu_regs, 0x100/4); | |
| 670 | state_save_register_global_pointer(machine(), m_scsp_regs, 0x1000/2); | |
| 671 | state_save_register_global(machine(), m_NMI_reset); | |
| 672 | state_save_register_global(machine(), m_en_68k); | |
| 673 | state_save_register_global(machine(), m_smpc.IOSEL1); | |
| 674 | state_save_register_global(machine(), m_smpc.IOSEL2); | |
| 675 | state_save_register_global(machine(), m_smpc.EXLE1); | |
| 676 | state_save_register_global(machine(), m_smpc.EXLE2); | |
| 677 | state_save_register_global(machine(), m_smpc.PDR1); | |
| 678 | state_save_register_global(machine(), m_smpc.PDR2); | |
| 679 | // state_save_register_global(machine(), m_port_sel); | |
| 680 | // state_save_register_global(machine(), mux_data); | |
| 681 | state_save_register_global(machine(), m_scsp_last_line); | |
| 682 | state_save_register_global(machine(), m_smpc.intback_stage); | |
| 683 | state_save_register_global(machine(), m_smpc.pmode); | |
| 684 | state_save_register_global(machine(), m_smpc.SR); | |
| 685 | state_save_register_global_array(machine(), m_smpc.SMEM); | |
| 669 | save_pointer(NAME(m_scu_regs), 0x100/4); | |
| 670 | save_pointer(NAME(m_scsp_regs), 0x1000/2); | |
| 671 | save_item(NAME(m_NMI_reset)); | |
| 672 | save_item(NAME(m_en_68k)); | |
| 673 | save_item(NAME(m_smpc.IOSEL1)); | |
| 674 | save_item(NAME(m_smpc.IOSEL2)); | |
| 675 | save_item(NAME(m_smpc.EXLE1)); | |
| 676 | save_item(NAME(m_smpc.EXLE2)); | |
| 677 | save_item(NAME(m_smpc.PDR1)); | |
| 678 | save_item(NAME(m_smpc.PDR2)); | |
| 679 | // save_item(NAME(m_port_sel)); | |
| 680 | // save_item(NAME(mux_data)); | |
| 681 | save_item(NAME(m_scsp_last_line)); | |
| 682 | save_item(NAME(m_smpc.intback_stage)); | |
| 683 | save_item(NAME(m_smpc.pmode)); | |
| 684 | save_item(NAME(m_smpc.SR)); | |
| 685 | save_item(NAME(m_smpc.SMEM)); | |
| 686 | 686 | |
| 687 | 687 | machine().add_notifier(MACHINE_NOTIFY_EXIT, machine_notify_delegate(FUNC(sat_console_state::stvcd_exit), this)); |
| 688 | 688 |
| r22709 | r22710 | |
|---|---|---|
| 2533 | 2533 | m_cg_rom = memregion("cgrom")->base(); |
| 2534 | 2534 | m_kanji_rom = memregion("kanji")->base(); |
| 2535 | 2535 | |
| 2536 | state_save_register_global_pointer(machine(), m_work_ram, 0x10000*0x10); | |
| 2537 | state_save_register_global_pointer(machine(), m_emm_ram, 0x1000000); | |
| 2538 | state_save_register_global_pointer(machine(), m_pcg_ram, 0x1800); | |
| 2536 | save_pointer(NAME(m_work_ram), 0x10000*0x10); | |
| 2537 | save_pointer(NAME(m_emm_ram), 0x1000000); | |
| 2538 | save_pointer(NAME(m_pcg_ram), 0x1800); | |
| 2539 | 2539 | |
| 2540 | 2540 | machine().gfx[3] = auto_alloc(machine(), gfx_element(machine(), x1_pcg_8x8, (UINT8 *)m_pcg_ram, 1, 0)); |
| 2541 | 2541 | } |
| r22709 | r22710 | |
|---|---|---|
| 529 | 529 | |
| 530 | 530 | atapi_data = auto_alloc_array(machine(), UINT8, ATAPI_DATA_SIZE ); |
| 531 | 531 | |
| 532 | state_save_register_global_pointer(machine(), atapi_regs, ATAPI_REG_MAX ); | |
| 533 | state_save_register_global_pointer(machine(), atapi_data, ATAPI_DATA_SIZE / 2 ); | |
| 534 | state_save_register_global(machine(), atapi_data_ptr ); | |
| 535 | state_save_register_global(machine(), atapi_data_len ); | |
| 536 | state_save_register_global(machine(), atapi_xferlen ); | |
| 537 | state_save_register_global(machine(), atapi_xferbase ); | |
| 538 | state_save_register_global(machine(), atapi_cdata_wait ); | |
| 539 | state_save_register_global(machine(), atapi_xfermod ); | |
| 532 | save_pointer(NAME(atapi_regs), ATAPI_REG_MAX ); | |
| 533 | save_pointer(NAME(atapi_data), ATAPI_DATA_SIZE / 2 ); | |
| 534 | save_item(NAME(atapi_data_ptr)); | |
| 535 | save_item(NAME(atapi_data_len)); | |
| 536 | save_item(NAME(atapi_xferlen)); | |
| 537 | save_item(NAME(atapi_xferbase)); | |
| 538 | save_item(NAME(atapi_cdata_wait)); | |
| 539 | save_item(NAME(atapi_xfermod)); | |
| 540 | 540 | |
| 541 | 541 | gdrom = machine().device<gdrom_device>( "cdrom" ); |
| 542 | 542 | } |
| r22709 | r22710 | |
|---|---|---|
| 264 | 264 | |
| 265 | 265 | void mboard_state::mboard_savestate_register() |
| 266 | 266 | { |
| 267 | s | |
| 267 | save_item(NAME(save_board)); | |
| 268 | 268 | machine().save().register_postload(save_prepost_delegate(FUNC(mboard_state::board_postload),this)); |
| 269 | 269 | machine().save().register_presave(save_prepost_delegate(FUNC(mboard_state::board_presave),this)); |
| 270 | 270 | } |
| r22709 | r22710 | |
|---|---|---|
| 340 | 340 | void thomson_state::to7_5p14_init() |
| 341 | 341 | { |
| 342 | 342 | LOG(( "to7_5p14_init: CD 90-640 controller\n" )); |
| 343 | s | |
| 343 | save_item(NAME(to7_5p14_select)); | |
| 344 | 344 | } |
| 345 | 345 | |
| 346 | 346 | |
| r22709 | r22710 | |
| 447 | 447 | void thomson_state::to7_5p14sd_init() |
| 448 | 448 | { |
| 449 | 449 | LOG(( "to7_5p14sd_init: CD 90-015 controller\n" )); |
| 450 | s | |
| 450 | save_item(NAME(to7_5p14sd_select)); | |
| 451 | 451 | } |
| 452 | 452 | |
| 453 | 453 | |
| r22709 | r22710 | |
| 858 | 858 | |
| 859 | 859 | to7qdd = auto_alloc(machine(), to7qdd_t); |
| 860 | 860 | |
| 861 | state_save_register_global(machine(), to7qdd->status ); | |
| 862 | state_save_register_global(machine(), to7qdd->ctrl1 ); | |
| 863 | state_save_register_global(machine(), to7qdd->ctrl2 ); | |
| 864 | state_save_register_global(machine(), to7qdd->ctrl3 ); | |
| 865 | state_save_register_global(machine(), to7qdd->drive ); | |
| 866 | state_save_register_global(machine(), to7qdd->data_idx ); | |
| 867 | state_save_register_global(machine(), to7qdd->start_idx ); | |
| 868 | state_save_register_global(machine(), to7qdd->data_size ); | |
| 869 | state_save_register_global(machine(), to7qdd->data_crc ); | |
| 870 | state_save_register_global(machine(), to7qdd->index_pulse ); | |
| 871 | state_save_register_global_array(machine(), to7qdd->data ); | |
| 861 | save_item(NAME(to7qdd->status)); | |
| 862 | save_item(NAME(to7qdd->ctrl1)); | |
| 863 | save_item(NAME(to7qdd->ctrl2)); | |
| 864 | save_item(NAME(to7qdd->ctrl3)); | |
| 865 | save_item(NAME(to7qdd->drive)); | |
| 866 | save_item(NAME(to7qdd->data_idx)); | |
| 867 | save_item(NAME(to7qdd->start_idx)); | |
| 868 | save_item(NAME(to7qdd->data_size)); | |
| 869 | save_item(NAME(to7qdd->data_crc)); | |
| 870 | save_item(NAME(to7qdd->index_pulse)); | |
| 871 | save_item(NAME(to7qdd->data)); | |
| 872 | 872 | } |
| 873 | 873 | |
| 874 | 874 | |
| r22709 | r22710 | |
| 1554 | 1554 | |
| 1555 | 1555 | thmfc_floppy_cmd = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(thomson_state::thmfc_floppy_cmd_complete_cb),this)); |
| 1556 | 1556 | |
| 1557 | state_save_register_global(machine(), thmfc1->op ); | |
| 1558 | state_save_register_global(machine(), thmfc1->sector ); | |
| 1559 | state_save_register_global(machine(), thmfc1->sector_id ); | |
| 1560 | state_save_register_global(machine(), thmfc1->track ); | |
| 1561 | state_save_register_global(machine(), thmfc1->side ); | |
| 1562 | state_save_register_global(machine(), thmfc1->drive ); | |
| 1563 | state_save_register_global(machine(), thmfc1->sector_size ); | |
| 1564 | state_save_register_global(machine(), thmfc1->formatting ); | |
| 1565 | state_save_register_global(machine(), thmfc1->ipl ); | |
| 1566 | state_save_register_global(machine(), thmfc1->data_idx ); | |
| 1567 | state_save_register_global(machine(), thmfc1->data_size ); | |
| 1568 | state_save_register_global(machine(), thmfc1->data_finish ); | |
| 1569 | state_save_register_global(machine(), thmfc1->stat0 ); | |
| 1570 | state_save_register_global(machine(), thmfc1->data_raw_idx ); | |
| 1571 | state_save_register_global(machine(), thmfc1->data_raw_size ); | |
| 1572 | state_save_register_global(machine(), thmfc1->data_crc ); | |
| 1573 | state_save_register_global(machine(), thmfc1->wsync ); | |
| 1574 | state_save_register_global_array(machine(), thmfc1->data ); | |
| 1557 | save_item(NAME(thmfc1->op)); | |
| 1558 | save_item(NAME(thmfc1->sector)); | |
| 1559 | save_item(NAME(thmfc1->sector_id)); | |
| 1560 | save_item(NAME(thmfc1->track)); | |
| 1561 | save_item(NAME(thmfc1->side)); | |
| 1562 | save_item(NAME(thmfc1->drive)); | |
| 1563 | save_item(NAME(thmfc1->sector_size)); | |
| 1564 | save_item(NAME(thmfc1->formatting)); | |
| 1565 | save_item(NAME(thmfc1->ipl)); | |
| 1566 | save_item(NAME(thmfc1->data_idx)); | |
| 1567 | save_item(NAME(thmfc1->data_size)); | |
| 1568 | save_item(NAME(thmfc1->data_finish)); | |
| 1569 | save_item(NAME(thmfc1->stat0)); | |
| 1570 | save_item(NAME(thmfc1->data_raw_idx)); | |
| 1571 | save_item(NAME(thmfc1->data_raw_size)); | |
| 1572 | save_item(NAME(thmfc1->data_crc)); | |
| 1573 | save_item(NAME(thmfc1->wsync)); | |
| 1574 | save_item(NAME(thmfc1->data)); | |
| 1575 | 1575 | } |
| 1576 | 1576 | |
| 1577 | 1577 | |
| r22709 | r22710 | |
| 1752 | 1752 | void thomson_state::to7_floppy_init( void* base ) |
| 1753 | 1753 | { |
| 1754 | 1754 | membank( THOM_FLOP_BANK )->configure_entries( 0, TO7_NB_FLOP_BANK, base, 0x800 ); |
| 1755 | state_save_register_global(machine(), to7_controller_type ); | |
| 1756 | state_save_register_global(machine(), to7_floppy_bank ); | |
| 1755 | save_item(NAME(to7_controller_type)); | |
| 1756 | save_item(NAME(to7_floppy_bank)); | |
| 1757 | 1757 | to7_5p14sd_init(); |
| 1758 | 1758 | to7_5p14_init(); |
| 1759 | 1759 | to7_qdd_init(); |
| r22709 | r22710 | |
|---|---|---|
| 2658 | 2658 | { |
| 2659 | 2659 | mc68328_t* mc68328 = mc68328_get_safe_token( device ); |
| 2660 | 2660 | |
| 2661 | state_save_register_global(device->machine(), mc68328->regs.scr); | |
| 2662 | state_save_register_global(device->machine(), mc68328->regs.grpbasea); | |
| 2663 | state_save_register_global(device->machine(), mc68328->regs.grpbaseb); | |
| 2664 | state_save_register_global(device->machine(), mc68328->regs.grpbasec); | |
| 2665 | state_save_register_global(device->machine(), mc68328->regs.grpbased); | |
| 2666 | state_save_register_global(device->machine(), mc68328->regs.grpmaska); | |
| 2667 | state_save_register_global(device->machine(), mc68328->regs.grpmaskb); | |
| 2668 | state_save_register_global(device->machine(), mc68328->regs.grpmaskc); | |
| 2669 | state_save_register_global(device->machine(), mc68328->regs.grpmaskd); | |
| 2670 | state_save_register_global(device->machine(), mc68328->regs.csa0); | |
| 2671 | state_save_register_global(device->machine(), mc68328->regs.csa1); | |
| 2672 | state_save_register_global(device->machine(), mc68328->regs.csa2); | |
| 2673 | state_save_register_global(device->machine(), mc68328->regs.csa3); | |
| 2674 | state_save_register_global(device->machine(), mc68328->regs.csb0); | |
| 2675 | state_save_register_global(device->machine(), mc68328->regs.csb1); | |
| 2676 | state_save_register_global(device->machine(), mc68328->regs.csb2); | |
| 2677 | state_save_register_global(device->machine(), mc68328->regs.csb3); | |
| 2678 | state_save_register_global(device->machine(), mc68328->regs.csc0); | |
| 2679 | state_save_register_global(device->machine(), mc68328->regs.csc1); | |
| 2680 | state_save_register_global(device->machine(), mc68328->regs.csc2); | |
| 2681 | state_save_register_global(device->machine(), mc68328->regs.csc3); | |
| 2682 | state_save_register_global(device->machine(), mc68328->regs.csd0); | |
| 2683 | state_save_register_global(device->machine(), mc68328->regs.csd1); | |
| 2684 | state_save_register_global(device->machine(), mc68328->regs.csd2); | |
| 2685 | state_save_register_global(device->machine(), mc68328->regs.csd3); | |
| 2661 | device->machine().save().save_item(NAME(mc68328->regs.scr)); | |
| 2662 | device->machine().save().save_item(NAME(mc68328->regs.grpbasea)); | |
| 2663 | device->machine().save().save_item(NAME(mc68328->regs.grpbaseb)); | |
| 2664 | device->machine().save().save_item(NAME(mc68328->regs.grpbasec)); | |
| 2665 | device->machine().save().save_item(NAME(mc68328->regs.grpbased)); | |
| 2666 | device->machine().save().save_item(NAME(mc68328->regs.grpmaska)); | |
| 2667 | device->machine().save().save_item(NAME(mc68328->regs.grpmaskb)); | |
| 2668 | device->machine().save().save_item(NAME(mc68328->regs.grpmaskc)); | |
| 2669 | device->machine().save().save_item(NAME(mc68328->regs.grpmaskd)); | |
| 2670 | device->machine().save().save_item(NAME(mc68328->regs.csa0)); | |
| 2671 | device->machine().save().save_item(NAME(mc68328->regs.csa1)); | |
| 2672 | device->machine().save().save_item(NAME(mc68328->regs.csa2)); | |
| 2673 | device->machine().save().save_item(NAME(mc68328->regs.csa3)); | |
| 2674 | device->machine().save().save_item(NAME(mc68328->regs.csb0)); | |
| 2675 | device->machine().save().save_item(NAME(mc68328->regs.csb1)); | |
| 2676 | device->machine().save().save_item(NAME(mc68328->regs.csb2)); | |
| 2677 | device->machine().save().save_item(NAME(mc68328->regs.csb3)); | |
| 2678 | device->machine().save().save_item(NAME(mc68328->regs.csc0)); | |
| 2679 | device->machine().save().save_item(NAME(mc68328->regs.csc1)); | |
| 2680 | device->machine().save().save_item(NAME(mc68328->regs.csc2)); | |
| 2681 | device->machine().save().save_item(NAME(mc68328->regs.csc3)); | |
| 2682 | device->machine().save().save_item(NAME(mc68328->regs.csd0)); | |
| 2683 | device->machine().save().save_item(NAME(mc68328->regs.csd1)); | |
| 2684 | device->machine().save().save_item(NAME(mc68328->regs.csd2)); | |
| 2685 | device->machine().save().save_item(NAME(mc68328->regs.csd3)); | |
| 2686 | 2686 | |
| 2687 | state_save_register_global(device->machine(), mc68328->regs.pllcr); | |
| 2688 | state_save_register_global(device->machine(), mc68328->regs.pllfsr); | |
| 2689 | state_save_register_global(device->machine(), mc68328->regs.pctlr); | |
| 2687 | device->machine().save().save_item(NAME(mc68328->regs.pllcr)); | |
| 2688 | device->machine().save().save_item(NAME(mc68328->regs.pllfsr)); | |
| 2689 | device->machine().save().save_item(NAME(mc68328->regs.pctlr)); | |
| 2690 | 2690 | |
| 2691 | state_save_register_global(device->machine(), mc68328->regs.ivr); | |
| 2692 | state_save_register_global(device->machine(), mc68328->regs.icr); | |
| 2693 | state_save_register_global(device->machine(), mc68328->regs.imr); | |
| 2694 | state_save_register_global(device->machine(), mc68328->regs.iwr); | |
| 2695 | state_save_register_global(device->machine(), mc68328->regs.isr); | |
| 2696 | state_save_register_global(device->machine(), mc68328->regs.ipr); | |
| 2691 | device->machine().save().save_item(NAME(mc68328->regs.ivr)); | |
| 2692 | device->machine().save().save_item(NAME(mc68328->regs.icr)); | |
| 2693 | device->machine().save().save_item(NAME(mc68328->regs.imr)); | |
| 2694 | device->machine().save().save_item(NAME(mc68328->regs.iwr)); | |
| 2695 | device->machine().save().save_item(NAME(mc68328->regs.isr)); | |
| 2696 | device->machine().save().save_item(NAME(mc68328->regs.ipr)); | |
| 2697 | 2697 | |
| 2698 | state_save_register_global(device->machine(), mc68328->regs.padir); | |
| 2699 | state_save_register_global(device->machine(), mc68328->regs.padata); | |
| 2700 | state_save_register_global(device->machine(), mc68328->regs.pasel); | |
| 2701 | state_save_register_global(device->machine(), mc68328->regs.pbdir); | |
| 2702 | state_save_register_global(device->machine(), mc68328->regs.pbdata); | |
| 2703 | state_save_register_global(device->machine(), mc68328->regs.pbsel); | |
| 2704 | state_save_register_global(device->machine(), mc68328->regs.pcdir); | |
| 2705 | state_save_register_global(device->machine(), mc68328->regs.pcdata); | |
| 2706 | state_save_register_global(device->machine(), mc68328->regs.pcsel); | |
| 2707 | state_save_register_global(device->machine(), mc68328->regs.pddir); | |
| 2708 | state_save_register_global(device->machine(), mc68328->regs.pddata); | |
| 2709 | state_save_register_global(device->machine(), mc68328->regs.pdpuen); | |
| 2710 | state_save_register_global(device->machine(), mc68328->regs.pdpol); | |
| 2711 | state_save_register_global(device->machine(), mc68328->regs.pdirqen); | |
| 2712 | state_save_register_global(device->machine(), mc68328->regs.pddataedge); | |
| 2713 | state_save_register_global(device->machine(), mc68328->regs.pdirqedge); | |
| 2714 | state_save_register_global(device->machine(), mc68328->regs.pedir); | |
| 2715 | state_save_register_global(device->machine(), mc68328->regs.pedata); | |
| 2716 | state_save_register_global(device->machine(), mc68328->regs.pepuen); | |
| 2717 | state_save_register_global(device->machine(), mc68328->regs.pesel); | |
| 2718 | state_save_register_global(device->machine(), mc68328->regs.pfdir); | |
| 2719 | state_save_register_global(device->machine(), mc68328->regs.pfdata); | |
| 2720 | state_save_register_global(device->machine(), mc68328->regs.pfpuen); | |
| 2721 | state_save_register_global(device->machine(), mc68328->regs.pfsel); | |
| 2722 | state_save_register_global(device->machine(), mc68328->regs.pgdir); | |
| 2723 | state_save_register_global(device->machine(), mc68328->regs.pgdata); | |
| 2724 | state_save_register_global(device->machine(), mc68328->regs.pgpuen); | |
| 2725 | state_save_register_global(device->machine(), mc68328->regs.pgsel); | |
| 2726 | state_save_register_global(device->machine(), mc68328->regs.pjdir); | |
| 2727 | state_save_register_global(device->machine(), mc68328->regs.pjdata); | |
| 2728 | state_save_register_global(device->machine(), mc68328->regs.pjsel); | |
| 2729 | state_save_register_global(device->machine(), mc68328->regs.pkdir); | |
| 2730 | state_save_register_global(device->machine(), mc68328->regs.pkdata); | |
| 2731 | state_save_register_global(device->machine(), mc68328->regs.pkpuen); | |
| 2732 | state_save_register_global(device->machine(), mc68328->regs.pksel); | |
| 2733 | state_save_register_global(device->machine(), mc68328->regs.pmdir); | |
| 2734 | state_save_register_global(device->machine(), mc68328->regs.pmdata); | |
| 2735 | state_save_register_global(device->machine(), mc68328->regs.pmpuen); | |
| 2736 | state_save_register_global(device->machine(), mc68328->regs.pmsel); | |
| 2698 | device->machine().save().save_item(NAME(mc68328->regs.padir)); | |
| 2699 | device->machine().save().save_item(NAME(mc68328->regs.padata)); | |
| 2700 | device->machine().save().save_item(NAME(mc68328->regs.pasel)); | |
| 2701 | device->machine().save().save_item(NAME(mc68328->regs.pbdir)); | |
| 2702 | device->machine().save().save_item(NAME(mc68328->regs.pbdata)); | |
| 2703 | device->machine().save().save_item(NAME(mc68328->regs.pbsel)); | |
| 2704 | device->machine().save().save_item(NAME(mc68328->regs.pcdir)); | |
| 2705 | device->machine().save().save_item(NAME(mc68328->regs.pcdata)); | |
| 2706 | device->machine().save().save_item(NAME(mc68328->regs.pcsel)); | |
| 2707 | device->machine().save().save_item(NAME(mc68328->regs.pddir)); | |
| 2708 | device->machine().save().save_item(NAME(mc68328->regs.pddata)); | |
| 2709 | device->machine().save().save_item(NAME(mc68328->regs.pdpuen)); | |
| 2710 | device->machine().save().save_item(NAME(mc68328->regs.pdpol)); | |
| 2711 | device->machine().save().save_item(NAME(mc68328->regs.pdirqen)); | |
| 2712 | device->machine().save().save_item(NAME(mc68328->regs.pddataedge)); | |
| 2713 | device->machine().save().save_item(NAME(mc68328->regs.pdirqedge)); | |
| 2714 | device->machine().save().save_item(NAME(mc68328->regs.pedir)); | |
| 2715 | device->machine().save().save_item(NAME(mc68328->regs.pedata)); | |
| 2716 | device->machine().save().save_item(NAME(mc68328->regs.pepuen)); | |
| 2717 | device->machine().save().save_item(NAME(mc68328->regs.pesel)); | |
| 2718 | device->machine().save().save_item(NAME(mc68328->regs.pfdir)); | |
| 2719 | device->machine().save().save_item(NAME(mc68328->regs.pfdata)); | |
| 2720 | device->machine().save().save_item(NAME(mc68328->regs.pfpuen)); | |
| 2721 | device->machine().save().save_item(NAME(mc68328->regs.pfsel)); | |
| 2722 | device->machine().save().save_item(NAME(mc68328->regs.pgdir)); | |
| 2723 | device->machine().save().save_item(NAME(mc68328->regs.pgdata)); | |
| 2724 | device->machine().save().save_item(NAME(mc68328->regs.pgpuen)); | |
| 2725 | device->machine().save().save_item(NAME(mc68328->regs.pgsel)); | |
| 2726 | device->machine().save().save_item(NAME(mc68328->regs.pjdir)); | |
| 2727 | device->machine().save().save_item(NAME(mc68328->regs.pjdata)); | |
| 2728 | device->machine().save().save_item(NAME(mc68328->regs.pjsel)); | |
| 2729 | device->machine().save().save_item(NAME(mc68328->regs.pkdir)); | |
| 2730 | device->machine().save().save_item(NAME(mc68328->regs.pkdata)); | |
| 2731 | device->machine().save().save_item(NAME(mc68328->regs.pkpuen)); | |
| 2732 | device->machine().save().save_item(NAME(mc68328->regs.pksel)); | |
| 2733 | device->machine().save().save_item(NAME(mc68328->regs.pmdir)); | |
| 2734 | device->machine().save().save_item(NAME(mc68328->regs.pmdata)); | |
| 2735 | device->machine().save().save_item(NAME(mc68328->regs.pmpuen)); | |
| 2736 | device->machine().save().save_item(NAME(mc68328->regs.pmsel)); | |
| 2737 | 2737 | |
| 2738 | state_save_register_global(device->machine(), mc68328->regs.pwmc); | |
| 2739 | state_save_register_global(device->machine(), mc68328->regs.pwmp); | |
| 2740 | state_save_register_global(device->machine(), mc68328->regs.pwmw); | |
| 2741 | state_save_register_global(device->machine(), mc68328->regs.pwmcnt); | |
| 2738 | device->machine().save().save_item(NAME(mc68328->regs.pwmc)); | |
| 2739 | device->machine().save().save_item(NAME(mc68328->regs.pwmp)); | |
| 2740 | device->machine().save().save_item(NAME(mc68328->regs.pwmw)); | |
| 2741 | device->machine().save().save_item(NAME(mc68328->regs.pwmcnt)); | |
| 2742 | 2742 | |
| 2743 | state_save_register_global(device->machine(), mc68328->regs.tctl[0]); | |
| 2744 | state_save_register_global(device->machine(), mc68328->regs.tctl[1]); | |
| 2745 | state_save_register_global(device->machine(), mc68328->regs.tprer[0]); | |
| 2746 | state_save_register_global(device->machine(), mc68328->regs.tprer[1]); | |
| 2747 | state_save_register_global(device->machine(), mc68328->regs.tcmp[0]); | |
| 2748 | state_save_register_global(device->machine(), mc68328->regs.tcmp[1]); | |
| 2749 | state_save_register_global(device->machine(), mc68328->regs.tcr[0]); | |
| 2750 | state_save_register_global(device->machine(), mc68328->regs.tcr[1]); | |
| 2751 | state_save_register_global(device->machine(), mc68328->regs.tcn[0]); | |
| 2752 | state_save_register_global(device->machine(), mc68328->regs.tcn[1]); | |
| 2753 | state_save_register_global(device->machine(), mc68328->regs.tstat[0]); | |
| 2754 | state_save_register_global(device->machine(), mc68328->regs.tstat[1]); | |
| 2755 | state_save_register_global(device->machine(), mc68328->regs.wctlr); | |
| 2756 | state_save_register_global(device->machine(), mc68328->regs.wcmpr); | |
| 2757 | state_save_register_global(device->machine(), mc68328->regs.wcn); | |
| 2743 | device->machine().save().save_item(NAME(mc68328->regs.tctl[0])); | |
| 2744 | device->machine().save().save_item(NAME(mc68328->regs.tctl[1])); | |
| 2745 | device->machine().save().save_item(NAME(mc68328->regs.tprer[0])); | |
| 2746 | device->machine().save().save_item(NAME(mc68328->regs.tprer[1])); | |
| 2747 | device->machine().save().save_item(NAME(mc68328->regs.tcmp[0])); | |
| 2748 | device->machine().save().save_item(NAME(mc68328->regs.tcmp[1])); | |
| 2749 | device->machine().save().save_item(NAME(mc68328->regs.tcr[0])); | |
| 2750 | device->machine().save().save_item(NAME(mc68328->regs.tcr[1])); | |
| 2751 | device->machine().save().save_item(NAME(mc68328->regs.tcn[0])); | |
| 2752 | device->machine().save().save_item(NAME(mc68328->regs.tcn[1])); | |
| 2753 | device->machine().save().save_item(NAME(mc68328->regs.tstat[0])); | |
| 2754 | device->machine().save().save_item(NAME(mc68328->regs.tstat[1])); | |
| 2755 | device->machine().save().save_item(NAME(mc68328->regs.wctlr)); | |
| 2756 | device->machine().save().save_item(NAME(mc68328->regs.wcmpr)); | |
| 2757 | device->machine().save().save_item(NAME(mc68328->regs.wcn)); | |
| 2758 | 2758 | |
| 2759 | | |
| 2759 | device->machine().save().save_item(NAME(mc68328->regs.spisr)); | |
| 2760 | 2760 | |
| 2761 | state_save_register_global(device->machine(), mc68328->regs.spimdata); | |
| 2762 | state_save_register_global(device->machine(), mc68328->regs.spimcont); | |
| 2761 | device->machine().save().save_item(NAME(mc68328->regs.spimdata)); | |
| 2762 | device->machine().save().save_item(NAME(mc68328->regs.spimcont)); | |
| 2763 | 2763 | |
| 2764 | state_save_register_global(device->machine(), mc68328->regs.ustcnt); | |
| 2765 | state_save_register_global(device->machine(), mc68328->regs.ubaud); | |
| 2766 | state_save_register_global(device->machine(), mc68328->regs.urx); | |
| 2767 | state_save_register_global(device->machine(), mc68328->regs.utx); | |
| 2768 | state_save_register_global(device->machine(), mc68328->regs.umisc); | |
| 2764 | device->machine().save().save_item(NAME(mc68328->regs.ustcnt)); | |
| 2765 | device->machine().save().save_item(NAME(mc68328->regs.ubaud)); | |
| 2766 | device->machine().save().save_item(NAME(mc68328->regs.urx)); | |
| 2767 | device->machine().save().save_item(NAME(mc68328->regs.utx)); | |
| 2768 | device->machine().save().save_item(NAME(mc68328->regs.umisc)); | |
| 2769 | 2769 | |
| 2770 | state_save_register_global(device->machine(), mc68328->regs.lssa); | |
| 2771 | state_save_register_global(device->machine(), mc68328->regs.lvpw); | |
| 2772 | state_save_register_global(device->machine(), mc68328->regs.lxmax); | |
| 2773 | state_save_register_global(device->machine(), mc68328->regs.lymax); | |
| 2774 | state_save_register_global(device->machine(), mc68328->regs.lcxp); | |
| 2775 | state_save_register_global(device->machine(), mc68328->regs.lcyp); | |
| 2776 | state_save_register_global(device->machine(), mc68328->regs.lcwch); | |
| 2777 | state_save_register_global(device->machine(), mc68328->regs.lblkc); | |
| 2778 | state_save_register_global(device->machine(), mc68328->regs.lpicf); | |
| 2779 | state_save_register_global(device->machine(), mc68328->regs.lpolcf); | |
| 2780 | state_save_register_global(device->machine(), mc68328->regs.lacdrc); | |
| 2781 | state_save_register_global(device->machine(), mc68328->regs.lpxcd); | |
| 2782 | state_save_register_global(device->machine(), mc68328->regs.lckcon); | |
| 2783 | state_save_register_global(device->machine(), mc68328->regs.llbar); | |
| 2784 | state_save_register_global(device->machine(), mc68328->regs.lotcr); | |
| 2785 | state_save_register_global(device->machine(), mc68328->regs.lposr); | |
| 2786 | state_save_register_global(device->machine(), mc68328->regs.lfrcm); | |
| 2787 | state_save_register_global(device->machine(), mc68328->regs.lgpmr); | |
| 2770 | device->machine().save().save_item(NAME(mc68328->regs.lssa)); | |
| 2771 | device->machine().save().save_item(NAME(mc68328->regs.lvpw)); | |
| 2772 | device->machine().save().save_item(NAME(mc68328->regs.lxmax)); | |
| 2773 | device->machine().save().save_item(NAME(mc68328->regs.lymax)); | |
| 2774 | device->machine().save().save_item(NAME(mc68328->regs.lcxp)); | |
| 2775 | device->machine().save().save_item(NAME(mc68328->regs.lcyp)); | |
| 2776 | device->machine().save().save_item(NAME(mc68328->regs.lcwch)); | |
| 2777 | device->machine().save().save_item(NAME(mc68328->regs.lblkc)); | |
| 2778 | device->machine().save().save_item(NAME(mc68328->regs.lpicf)); | |
| 2779 | device->machine().save().save_item(NAME(mc68328->regs.lpolcf)); | |
| 2780 | device->machine().save().save_item(NAME(mc68328->regs.lacdrc)); | |
| 2781 | device->machine().save().save_item(NAME(mc68328->regs.lpxcd)); | |
| 2782 | device->machine().save().save_item(NAME(mc68328->regs.lckcon)); | |
| 2783 | device->machine().save().save_item(NAME(mc68328->regs.llbar)); | |
| 2784 | device->machine().save().save_item(NAME(mc68328->regs.lotcr)); | |
| 2785 | device->machine().save().save_item(NAME(mc68328->regs.lposr)); | |
| 2786 | device->machine().save().save_item(NAME(mc68328->regs.lfrcm)); | |
| 2787 | device->machine().save().save_item(NAME(mc68328->regs.lgpmr)); | |
| 2788 | 2788 | |
| 2789 | state_save_register_global(device->machine(), mc68328->regs.hmsr); | |
| 2790 | state_save_register_global(device->machine(), mc68328->regs.alarm); | |
| 2791 | state_save_register_global(device->machine(), mc68328->regs.rtcctl); | |
| 2792 | state_save_register_global(device->machine(), mc68328->regs.rtcisr); | |
| 2793 | state_save_register_global(device->machine(), mc68328->regs.rtcienr); | |
| 2794 | state_save_register_global(device->machine(), mc68328->regs.stpwtch); | |
| 2789 | device->machine().save().save_item(NAME(mc68328->regs.hmsr)); | |
| 2790 | device->machine().save().save_item(NAME(mc68328->regs.alarm)); | |
| 2791 | device->machine().save().save_item(NAME(mc68328->regs.rtcctl)); | |
| 2792 | device->machine().save().save_item(NAME(mc68328->regs.rtcisr)); | |
| 2793 | device->machine().save().save_item(NAME(mc68328->regs.rtcienr)); | |
| 2794 | device->machine().save().save_item(NAME(mc68328->regs.stpwtch)); | |
| 2795 | 2795 | } |
| 2796 | 2796 | |
| 2797 | 2797 | static DEVICE_START( mc68328 ) |
| r22709 | r22710 | |
|---|---|---|
| 1177 | 1177 | state_save_register_item(machine(), "globals", NULL, i, m_modules[i].mask ); |
| 1178 | 1178 | } |
| 1179 | 1179 | save_item(NAME(m_io) ); |
| 1180 | //s | |
| 1180 | //save_pointer(NAME(machine.generic.nvram.u8), machine.generic.nvram_size ); | |
| 1181 | 1181 | |
| 1182 | 1182 | machine().save().register_postload( save_prepost_delegate(FUNC(hp48_state::hp48_update_annunciators), state )); |
| 1183 | 1183 | machine().save().register_postload( save_prepost_delegate(FUNC(hp48_state::hp48_apply_modules), state )); |
| r22709 | r22710 | |
|---|---|---|
| 1326 | 1326 | { |
| 1327 | 1327 | LOG (( "to7_midi_init\n" )); |
| 1328 | 1328 | to7_midi_chardev = chardev_open( &machine, "/dev/snd/midiC0D0", "/dev/snd/midiC0D1", &to7_midi_interface ); |
| 1329 | state_save_register_global(machine(), to7_midi_status ); | |
| 1330 | state_save_register_global(machine(), to7_midi_overrun ); | |
| 1331 | state_save_register_global(machine(), to7_midi_intr ); | |
| 1329 | save_item(NAME(to7_midi_status ); | |
| 1330 | save_item(NAME(to7_midi_overrun ); | |
| 1331 | save_item(NAME(to7_midi_intr ); | |
| 1332 | 1332 | } |
| 1333 | 1333 | |
| 1334 | 1334 | |
| r22709 | r22710 | |
| 1449 | 1449 | save_item(NAME(m_thom_cart_bank)); |
| 1450 | 1450 | save_item(NAME(m_to7_lightpen)); |
| 1451 | 1451 | save_item(NAME(m_to7_lightpen_step)); |
| 1452 | s | |
| 1452 | save_pointer(NAME((mem + 0x10000)), 0x10000 ); | |
| 1453 | 1453 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to7_update_cart_bank_postload),this)); |
| 1454 | 1454 | } |
| 1455 | 1455 | |
| r22709 | r22710 | |
| 1694 | 1694 | save_item(NAME(m_thom_cart_bank)); |
| 1695 | 1695 | save_item(NAME(m_to7_lightpen)); |
| 1696 | 1696 | save_item(NAME(m_to7_lightpen_step)); |
| 1697 | s | |
| 1697 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 1698 | 1698 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to770_update_ram_bank_postload), this)); |
| 1699 | 1699 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to7_update_cart_bank_postload), this)); |
| 1700 | 1700 | } |
| r22709 | r22710 | |
| 2106 | 2106 | save_item(NAME(m_to7_lightpen)); |
| 2107 | 2107 | save_item(NAME(m_to7_lightpen_step)); |
| 2108 | 2108 | save_item(NAME(m_mo5_reg_cart)); |
| 2109 | s | |
| 2109 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 2110 | 2110 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::mo5_update_cart_bank_postload), this)); |
| 2111 | 2111 | } |
| 2112 | 2112 | |
| r22709 | r22710 | |
| 2297 | 2297 | m_to9_palette_idx = 0; |
| 2298 | 2298 | memset( m_to9_palette_data, 0, sizeof( m_to9_palette_data ) ); |
| 2299 | 2299 | save_item(NAME(m_to9_palette_idx)); |
| 2300 | s | |
| 2300 | save_item(NAME(m_to9_palette_data)); | |
| 2301 | 2301 | } |
| 2302 | 2302 | |
| 2303 | 2303 | |
| r22709 | r22710 | |
| 3077 | 3077 | save_item(NAME(m_to7_lightpen)); |
| 3078 | 3078 | save_item(NAME(m_to7_lightpen_step)); |
| 3079 | 3079 | save_item(NAME(m_to9_soft_bank)); |
| 3080 | s | |
| 3080 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 3081 | 3081 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to9_update_ram_bank_postload), this)); |
| 3082 | 3082 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to9_update_cart_bank_postload), this)); |
| 3083 | 3083 | } |
| r22709 | r22710 | |
| 4140 | 4140 | save_item(NAME(m_to8_lightpen_intr)); |
| 4141 | 4141 | save_item(NAME(m_to8_data_vpage)); |
| 4142 | 4142 | save_item(NAME(m_to8_cart_vpage)); |
| 4143 | s | |
| 4143 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 4144 | 4144 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_ram_bank_postload), this)); |
| 4145 | 4145 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_cart_bank_postload), this)); |
| 4146 | 4146 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_floppy_bank_postload), this)); |
| r22709 | r22710 | |
| 4313 | 4313 | save_item(NAME(m_to8_lightpen_intr)); |
| 4314 | 4314 | save_item(NAME(m_to8_data_vpage)); |
| 4315 | 4315 | save_item(NAME(m_to8_cart_vpage)); |
| 4316 | s | |
| 4316 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 4317 | 4317 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_ram_bank_postload), this)); |
| 4318 | 4318 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_cart_bank_postload), this)); |
| 4319 | 4319 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::to8_update_floppy_bank_postload), this)); |
| r22709 | r22710 | |
| 5043 | 5043 | save_item(NAME(m_to8_data_vpage)); |
| 5044 | 5044 | save_item(NAME(m_to8_cart_vpage)); |
| 5045 | 5045 | save_item(NAME(m_mo5_reg_cart)); |
| 5046 | s | |
| 5046 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 5047 | 5047 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::mo6_update_ram_bank_postload), this)); |
| 5048 | 5048 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::mo6_update_cart_bank_postload), this)); |
| 5049 | 5049 | } |
| r22709 | r22710 | |
| 5303 | 5303 | save_item(NAME(m_to8_data_vpage)); |
| 5304 | 5304 | save_item(NAME(m_to8_cart_vpage)); |
| 5305 | 5305 | save_item(NAME(m_mo5_reg_cart)); |
| 5306 | s | |
| 5306 | save_pointer(NAME(mem + 0x10000), 0x10000 ); | |
| 5307 | 5307 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::mo6_update_ram_bank_postload), this)); |
| 5308 | 5308 | machine().save().register_postload(save_prepost_delegate(FUNC(thomson_state::mo6_update_cart_bank_postload), this)); |
| 5309 | 5309 | } |
| r22709 | r22710 | |
|---|---|---|
| 698 | 698 | |
| 699 | 699 | void stv_register_protection_savestates(running_machine &machine) |
| 700 | 700 | { |
| 701 | state_save_register_global_array(machine, a_bus); | |
| 702 | state_save_register_global(machine, ctrl_index); | |
| 703 | state_save_register_global(machine, internal_counter); | |
| 704 | state_save_register_global(machine, char_offset); | |
| 701 | machine.save().save_item(NAME(a_bus)); | |
| 702 | machine.save().save_item(NAME(ctrl_index)); | |
| 703 | machine.save().save_item(NAME(internal_counter)); | |
| 704 | machine.save().save_item(NAME(char_offset)); | |
| 705 | 705 | } |
| r22709 | r22710 | |
|---|---|---|
| 337 | 337 | membank("bank1")->configure_entry(0, m_videoram); |
| 338 | 338 | membank("bank1")->configure_entry(1, memregion("maincpu")->base() + 0x10000); |
| 339 | 339 | |
| 340 | s | |
| 340 | save_item(NAME(m_vram_bank)); | |
| 341 | 341 | } |
| 342 | 342 | |
| 343 | 343 | |
| r22709 | r22710 | |
| 434 | 434 | membank("bank1")->configure_entries(1, 4, memregion("maincpu")->base() + 0x10000, 0x10000); |
| 435 | 435 | |
| 436 | 436 | /* register for save states */ |
| 437 | s | |
| 437 | save_item(NAME(m_vram_bank)); | |
| 438 | 438 | machine().save().register_postload(save_prepost_delegate(FUNC(williams_state::williams2_postload), this)); |
| 439 | 439 | } |
| 440 | 440 | |
| r22709 | r22710 | |
| 842 | 842 | membank("bank2")->configure_entry(0, m_videoram + 0x4000); |
| 843 | 843 | membank("bank2")->configure_entries(1, 16, memregion("maincpu")->base() + 0x10000, 0x0000); |
| 844 | 844 | |
| 845 | s | |
| 845 | save_item(NAME(m_blaster_bank)); | |
| 846 | 846 | } |
| 847 | 847 | |
| 848 | 848 | |
| r22709 | r22710 | |
| 943 | 943 | MACHINE_START_MEMBER(joust2_state,joust2) |
| 944 | 944 | { |
| 945 | 945 | MACHINE_START_CALL_MEMBER(williams2); |
| 946 | s | |
| 946 | save_item(NAME(m_joust2_current_sound_data)); | |
| 947 | 947 | } |
| 948 | 948 | |
| 949 | 949 |
| r22709 | r22710 | |
|---|---|---|
| 759 | 759 | rtc_initial_setup(); |
| 760 | 760 | |
| 761 | 761 | // save states |
| 762 | state_save_register_global_pointer(machine(), dc_rtcregister, 4); | |
| 763 | state_save_register_global_pointer(machine(), dc_sysctrl_regs, 0x200/4); | |
| 764 | state_save_register_global_pointer(machine(), g2bus_regs, 0x100/4); | |
| 765 | state_save_register_global(machine(), m_wave_dma.aica_addr); | |
| 766 | state_save_register_global(machine(), m_wave_dma.root_addr); | |
| 767 | state_save_register_global(machine(), m_wave_dma.size); | |
| 768 | state_save_register_global(machine(), m_wave_dma.dir); | |
| 769 | state_save_register_global(machine(), m_wave_dma.flag); | |
| 770 | state_save_register_global(machine(), m_wave_dma.indirect); | |
| 771 | state_save_register_global(machine(), m_wave_dma.start); | |
| 772 | state_save_register_global(machine(), m_wave_dma.sel); | |
| 773 | state_save_register_global(machine(), m_pvr_dma.pvr_addr); | |
| 774 | state_save_register_global(machine(), m_pvr_dma.sys_addr); | |
| 775 | state_save_register_global(machine(), m_pvr_dma.size); | |
| 776 | state_save_register_global(machine(), m_pvr_dma.sel); | |
| 777 | state_save_register_global(machine(), m_pvr_dma.dir); | |
| 778 | state_save_register_global(machine(), m_pvr_dma.flag); | |
| 779 | state_save_register_global(machine(), m_pvr_dma.start); | |
| 780 | state_save_register_global_pointer(machine(),pvrta_regs,0x2000/4); | |
| 781 | state_save_register_global_pointer(machine(),pvrctrl_regs,0x100/4); | |
| 782 | state_save_register_global(machine(), debug_dip_status); | |
| 783 | state_save_register_global_pointer(machine(),tafifo_buff,32); | |
| 784 | state_save_register_global(machine(), scanline); | |
| 785 | state_save_register_global(machine(), next_y); | |
| 786 | state_save_register_global_pointer(machine(),dc_sound_ram.target(),dc_sound_ram.bytes()); | |
| 762 | save_pointer(NAME(dc_rtcregister), 4); | |
| 763 | save_pointer(NAME(dc_sysctrl_regs), 0x200/4); | |
| 764 | save_pointer(NAME(g2bus_regs), 0x100/4); | |
| 765 | save_item(NAME(m_wave_dma.aica_addr)); | |
| 766 | save_item(NAME(m_wave_dma.root_addr)); | |
| 767 | save_item(NAME(m_wave_dma.size)); | |
| 768 | save_item(NAME(m_wave_dma.dir)); | |
| 769 | save_item(NAME(m_wave_dma.flag)); | |
| 770 | save_item(NAME(m_wave_dma.indirect)); | |
| 771 | save_item(NAME(m_wave_dma.start)); | |
| 772 | save_item(NAME(m_wave_dma.sel)); | |
| 773 | save_item(NAME(m_pvr_dma.pvr_addr)); | |
| 774 | save_item(NAME(m_pvr_dma.sys_addr)); | |
| 775 | save_item(NAME(m_pvr_dma.size)); | |
| 776 | save_item(NAME(m_pvr_dma.sel)); | |
| 777 | save_item(NAME(m_pvr_dma.dir)); | |
| 778 | save_item(NAME(m_pvr_dma.flag)); | |
| 779 | save_item(NAME(m_pvr_dma.start)); | |
| 780 | save_pointer(NAME(pvrta_regs),0x2000/4); | |
| 781 | save_pointer(NAME(pvrctrl_regs),0x100/4); | |
| 782 | save_item(NAME(debug_dip_status)); | |
| 783 | save_pointer(NAME(tafifo_buff),32); | |
| 784 | save_item(NAME(scanline)); | |
| 785 | save_item(NAME(next_y)); | |
| 786 | save_pointer(NAME(dc_sound_ram.target()),dc_sound_ram.bytes()); | |
| 787 | 787 | } |
| 788 | 788 | |
| 789 | 789 | void dc_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 19 | 19 | |
| 20 | 20 | void namcond1_state::machine_start() |
| 21 | 21 | { |
| 22 | s | |
| 22 | save_item(NAME(m_h8_irq5_enabled)); | |
| 23 | 23 | } |
| 24 | 24 | |
| 25 | 25 | void namcond1_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 488 | 488 | m_ttl74148_3s = machine().device("74148_3s"); |
| 489 | 489 | m_ttl74153_1k = machine().device("74153_1k"); |
| 490 | 490 | |
| 491 | state_save_register_global(machine(), m_ball_screen_collision_cause); | |
| 492 | state_save_register_global(machine(), m_car_ball_collision_x); | |
| 493 | state_save_register_global(machine(), m_car_ball_collision_y); | |
| 494 | state_save_register_global(machine(), m_car_car_collision_cause); | |
| 495 | state_save_register_global(machine(), m_car_goal_collision_cause); | |
| 496 | state_save_register_global(machine(), m_car_ball_collision_cause); | |
| 497 | state_save_register_global(machine(), m_car_border_collision_cause); | |
| 498 | state_save_register_global(machine(), m_priority_0_extension); | |
| 499 | state_save_register_global_array(machine(), m_last_wheel_value); | |
| 491 | save_item(NAME(m_ball_screen_collision_cause)); | |
| 492 | save_item(NAME(m_car_ball_collision_x)); | |
| 493 | save_item(NAME(m_car_ball_collision_y)); | |
| 494 | save_item(NAME(m_car_car_collision_cause)); | |
| 495 | save_item(NAME(m_car_goal_collision_cause)); | |
| 496 | save_item(NAME(m_car_ball_collision_cause)); | |
| 497 | save_item(NAME(m_car_border_collision_cause)); | |
| 498 | save_item(NAME(m_priority_0_extension)); | |
| 499 | save_item(NAME(m_last_wheel_value)); | |
| 500 | 500 | } |
| 501 | 501 | |
| 502 | 502 | void carpolo_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 112 | 112 | state_save_register_item(machine(), "m6840", NULL, i, m6840->timer_active); |
| 113 | 113 | } |
| 114 | 114 | |
| 115 | state_save_register_global(machine(), m_m6840_status); | |
| 116 | state_save_register_global(machine(), m_m6840_status_read_since_int); | |
| 117 | state_save_register_global(machine(), m_m6840_msb_buffer); | |
| 118 | state_save_register_global(machine(), m_m6840_lsb_buffer); | |
| 119 | state_save_register_global(machine(), m_m6840_irq_state); | |
| 120 | state_save_register_global(machine(), m_v493_irq_state); | |
| 121 | state_save_register_global(machine(), m_zwackery_sound_data); | |
| 115 | save_item(NAME(m_m6840_status)); | |
| 116 | save_item(NAME(m_m6840_status_read_since_int)); | |
| 117 | save_item(NAME(m_m6840_msb_buffer)); | |
| 118 | save_item(NAME(m_m6840_lsb_buffer)); | |
| 119 | save_item(NAME(m_m6840_irq_state)); | |
| 120 | save_item(NAME(m_v493_irq_state)); | |
| 121 | save_item(NAME(m_zwackery_sound_data)); | |
| 122 | 122 | } |
| 123 | 123 | |
| 124 | 124 |
| r22709 | r22710 | |
|---|---|---|
| 991 | 991 | state->m_paletteram = auto_alloc_array(machine, UINT8, 0x8000); |
| 992 | 992 | |
| 993 | 993 | /* Register volatile user memory for save state */ |
| 994 | state_save_register_global_pointer(machine, state->m_s1ram, 0x8000); | |
| 995 | state_save_register_global_pointer(machine, state->m_triram, 0x800); | |
| 996 | state_save_register_global_pointer(machine, state->m_paletteram, 0x8000); | |
| 994 | machine.save().save_pointer(NAME(state->m_s1ram), 0x8000); | |
| 995 | machine.save().save_pointer(NAME(state->m_triram), 0x800); | |
| 996 | machine.save().save_pointer(NAME(state->m_paletteram), 0x8000); | |
| 997 | 997 | |
| 998 | 998 | /* Point mcu & sound shared RAM to destination */ |
| 999 | 999 | state->membank("bank18")->set_base(state->m_triram ); |
| r22709 | r22710 | |
|---|---|---|
| 320 | 320 | |
| 321 | 321 | void twincobr_state::twincobr_driver_savestate() |
| 322 | 322 | { |
| 323 | state_save_register_global(machine(), m_toaplan_main_cpu); | |
| 324 | state_save_register_global(machine(), m_intenable); | |
| 325 | state_save_register_global(machine(), m_dsp_on); | |
| 326 | state_save_register_global(machine(), m_dsp_addr_w); | |
| 327 | state_save_register_global(machine(), m_main_ram_seg); | |
| 328 | state_save_register_global(machine(), m_dsp_BIO); | |
| 329 | state_save_register_global(machine(), m_dsp_execute); | |
| 330 | state_save_register_global(machine(), m_fsharkbt_8741); | |
| 331 | state_save_register_global(machine(), m_wardner_membank); | |
| 323 | save_item(NAME(m_toaplan_main_cpu)); | |
| 324 | save_item(NAME(m_intenable)); | |
| 325 | save_item(NAME(m_dsp_on)); | |
| 326 | save_item(NAME(m_dsp_addr_w)); | |
| 327 | save_item(NAME(m_main_ram_seg)); | |
| 328 | save_item(NAME(m_dsp_BIO)); | |
| 329 | save_item(NAME(m_dsp_execute)); | |
| 330 | save_item(NAME(m_fsharkbt_8741)); | |
| 331 | save_item(NAME(m_wardner_membank)); | |
| 332 | 332 | |
| 333 | 333 | machine().save().register_postload(save_prepost_delegate(FUNC(twincobr_state::twincobr_restore_dsp), this)); |
| 334 | 334 | } |
| r22709 | r22710 | |
|---|---|---|
| 200 | 200 | m_custom = machine().device("custom"); |
| 201 | 201 | m_ttl74148 = machine().device("74148"); |
| 202 | 202 | |
| 203 | state_save_register_global(machine(), m_irq_state); | |
| 204 | state_save_register_global(machine(), m_adc_result); | |
| 205 | state_save_register_global(machine(), m_irq4_time); | |
| 203 | save_item(NAME(m_irq_state)); | |
| 204 | save_item(NAME(m_adc_result)); | |
| 205 | save_item(NAME(m_irq4_time)); | |
| 206 | 206 | |
| 207 | 207 | vertigo_vproc_init(); |
| 208 | 208 | } |
| r22709 | r22710 | |
|---|---|---|
| 28 | 28 | |
| 29 | 29 | void midtunit_state::register_state_saving() |
| 30 | 30 | { |
| 31 | state_save_register_global(machine(), cmos_write_enable); | |
| 32 | state_save_register_global(machine(), fake_sound_state); | |
| 33 | state_save_register_global(machine(), mk_prot_index); | |
| 34 | state_save_register_global(machine(), mk2_prot_data); | |
| 35 | state_save_register_global_array(machine(), nbajam_prot_queue); | |
| 36 | state_save_register_global(machine(), nbajam_prot_index); | |
| 37 | state_save_register_global(machine(), jdredd_prot_index); | |
| 38 | state_save_register_global(machine(), jdredd_prot_max); | |
| 31 | save_item(NAME(cmos_write_enable)); | |
| 32 | save_item(NAME(fake_sound_state)); | |
| 33 | save_item(NAME(mk_prot_index)); | |
| 34 | save_item(NAME(mk2_prot_data)); | |
| 35 | save_item(NAME(nbajam_prot_queue)); | |
| 36 | save_item(NAME(nbajam_prot_index)); | |
| 37 | save_item(NAME(jdredd_prot_index)); | |
| 38 | save_item(NAME(jdredd_prot_max)); | |
| 39 | 39 | } |
| 40 | 40 | |
| 41 | 41 |
| r22709 | r22710 | |
|---|---|---|
| 315 | 315 | machine.add_notifier(MACHINE_NOTIFY_RESET, machine_notify_delegate(FUNC(_antic_reset), &machine)); |
| 316 | 316 | |
| 317 | 317 | /* save states */ |
| 318 | state_save_register_global_pointer(machine, ((UINT8 *) &antic.r), sizeof(antic.r)); | |
| 319 | state_save_register_global_pointer(machine, ((UINT8 *) &antic.w), sizeof(antic.w)); | |
| 318 | machine.save().save_pointer(NAME((UINT8 *) &antic.r), sizeof(antic.r)); | |
| 319 | machine.save().save_pointer(NAME((UINT8 *) &antic.w), sizeof(antic.w)); | |
| 320 | 320 | } |
| 321 | 321 | |
| 322 | 322 |
| r22709 | r22710 | |
|---|---|---|
| 1508 | 1508 | arm_sim_handler = &pgm_arm_type1_state::command_handler_oldsplus; |
| 1509 | 1509 | m_maincpu->space(AS_PROGRAM).install_readwrite_handler(0x500000, 0x500005, read16_delegate(FUNC(pgm_arm_type1_state::pgm_arm7_type1_sim_r),this), write16_delegate(FUNC(pgm_arm_type1_state::pgm_arm7_type1_sim_w),this)); |
| 1510 | 1510 | m_maincpu->space(AS_PROGRAM).install_read_handler(0x4f0000, 0x4f003f, read16_delegate(FUNC(pgm_arm_type1_state::pgm_arm7_type1_sim_protram_r),this)); |
| 1511 | state_save_register_global_array(machine(), m_extra_ram); | |
| 1512 | state_save_register_global_array(machine(), m_slots); | |
| 1511 | save_item(NAME(m_extra_ram)); | |
| 1512 | save_item(NAME(m_slots)); | |
| 1513 | 1513 | } |
| 1514 | 1514 | |
| 1515 | 1515 | INPUT_PORTS_START( photoy2k ) |
| r22709 | r22710 | |
|---|---|---|
| 145 | 145 | |
| 146 | 146 | MACHINE_START_MEMBER(mcr_state,mcr) |
| 147 | 147 | { |
| 148 | s | |
| 148 | save_item(NAME(mcr_cocktail_flip)); | |
| 149 | 149 | } |
| 150 | 150 | |
| 151 | 151 |
| r22709 | r22710 | |
|---|---|---|
| 1988 | 1988 | { |
| 1989 | 1989 | m_ram_data = auto_alloc_array(machine(), UINT32, 0x10000); |
| 1990 | 1990 | |
| 1991 | state_save_register_global_pointer(machine(), m_ram_data, 0x10000); | |
| 1992 | state_save_register_global(machine(), m_ram_adr); | |
| 1993 | state_save_register_global(machine(), m_ram_scanadr); | |
| 1994 | state_save_register_global_array(machine(), m_ram_latch); | |
| 1995 | state_save_register_global(machine(), m_fifoout_rpos); | |
| 1996 | state_save_register_global(machine(), m_fifoout_wpos); | |
| 1997 | state_save_register_global_array(machine(), m_fifoout_data); | |
| 1998 | state_save_register_global(machine(), m_fifoin_rpos); | |
| 1999 | state_save_register_global(machine(), m_fifoin_wpos); | |
| 2000 | state_save_register_global_array(machine(), m_fifoin_data); | |
| 2001 | state_save_register_global_array(machine(), m_cmat); | |
| 2002 | state_save_register_global_2d_array(machine(), m_mat_stack); | |
| 2003 | state_save_register_global_2d_array(machine(), m_mat_vector); | |
| 2004 | state_save_register_global(machine(), m_mat_stack_pos); | |
| 2005 | state_save_register_global(machine(), m_acc); | |
| 2006 | state_save_register_global(machine(), m_list_length); | |
| 1991 | save_pointer(NAME(m_ram_data), 0x10000); | |
| 1992 | save_item(NAME(m_ram_adr)); | |
| 1993 | save_item(NAME(m_ram_scanadr)); | |
| 1994 | save_item(NAME(m_ram_latch)); | |
| 1995 | save_item(NAME(m_fifoout_rpos)); | |
| 1996 | save_item(NAME(m_fifoout_wpos)); | |
| 1997 | save_item(NAME(m_fifoout_data)); | |
| 1998 | save_item(NAME(m_fifoin_rpos)); | |
| 1999 | save_item(NAME(m_fifoin_wpos)); | |
| 2000 | save_item(NAME(m_fifoin_data)); | |
| 2001 | save_item(NAME(m_cmat)); | |
| 2002 | save_item(NAME(m_mat_stack)); | |
| 2003 | save_item(NAME(m_mat_vector)); | |
| 2004 | save_item(NAME(m_mat_stack_pos)); | |
| 2005 | save_item(NAME(m_acc)); | |
| 2006 | save_item(NAME(m_list_length)); | |
| 2007 | 2007 | } |
| 2008 | 2008 | |
| 2009 | 2009 | void model1_tgp_reset(running_machine &machine, int swa) |
| r22709 | r22710 | |
|---|---|---|
| 14 | 14 | state->m_apache3_adc = 0; |
| 15 | 15 | state->m_apache3_rot_idx = 0; |
| 16 | 16 | |
| 17 | state_save_register_global(machine, state->m_last_control); | |
| 18 | state_save_register_global(machine, state->m_control_word); | |
| 19 | state_save_register_global(machine, state->m_apache3_adc); | |
| 17 | state->save_item(NAME(state->m_last_control)); | |
| 18 | state->save_item(NAME(state->m_control_word)); | |
| 19 | state->save_item(NAME(state->m_apache3_adc)); | |
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /******************************************************************************/ |
| r22709 | r22710 | |
|---|---|---|
| 20 | 20 | |
| 21 | 21 | void midwunit_state::register_state_saving() |
| 22 | 22 | { |
| 23 | state_save_register_global(machine(), m_cmos_write_enable); | |
| 24 | state_save_register_global_array(machine(), m_iodata); | |
| 25 | state_save_register_global_array(machine(), m_ioshuffle); | |
| 26 | state_save_register_global_array(machine(), m_uart); | |
| 27 | state_save_register_global(machine(), m_security_bits); | |
| 23 | save_item(NAME(m_cmos_write_enable)); | |
| 24 | save_item(NAME(m_iodata)); | |
| 25 | save_item(NAME(m_ioshuffle)); | |
| 26 | save_item(NAME(m_uart)); | |
| 27 | save_item(NAME(m_security_bits)); | |
| 28 | 28 | } |
| 29 | 29 | |
| 30 | 30 |
| r22709 | r22710 | |
|---|---|---|
| 190 | 190 | |
| 191 | 191 | membank("bank1")->configure_entries(0, 4, &RAM[0x10000], 0x4000); |
| 192 | 192 | |
| 193 | s | |
| 193 | save_item(NAME(m_counter)); | |
| 194 | 194 | } |
| 195 | 195 | |
| 196 | 196 |
| r22709 | r22710 | |
|---|---|---|
| 98 | 98 | deco16_prot_ram = reinterpret_cast<UINT16 *>(machine.root_device().memshare("prot16ram")->ptr()); |
| 99 | 99 | deco32_prot_ram = reinterpret_cast<UINT32 *>(machine.root_device().memshare("prot32ram")->ptr()); |
| 100 | 100 | |
| 101 | state_save_register_global(machine, deco16_xor); | |
| 102 | state_save_register_global(machine, deco16_mask); | |
| 103 | state_save_register_global(machine, decoprot_last_write); | |
| 104 | state_save_register_global(machine, decoprot_last_write_val); | |
| 105 | state_save_register_global(machine, decoprot_buffer_ram_selected); | |
| 106 | state_save_register_global_array(machine, decoprot_buffer_ram); | |
| 107 | state_save_register_global_array(machine, decoprot_buffer_ram2); | |
| 101 | machine.save().save_item(NAME(deco16_xor)); | |
| 102 | machine.save().save_item(NAME(deco16_mask)); | |
| 103 | machine.save().save_item(NAME(decoprot_last_write)); | |
| 104 | machine.save().save_item(NAME(decoprot_last_write_val)); | |
| 105 | machine.save().save_item(NAME(decoprot_buffer_ram_selected)); | |
| 106 | machine.save().save_item(NAME(decoprot_buffer_ram)); | |
| 107 | machine.save().save_item(NAME(decoprot_buffer_ram2)); | |
| 108 | 108 | } |
| 109 | 109 | |
| 110 | 110 | /***************************************************************************/ |
| r22709 | r22710 | |
|---|---|---|
| 1118 | 1118 | memset(m_dspp.EI, 0, sizeof(UINT16) * 0x400); |
| 1119 | 1119 | memset(m_dspp.EO, 0, sizeof(UINT16) * 0x400); |
| 1120 | 1120 | |
| 1121 | state_save_register_global_pointer(machine(), m_dspp.N, 0x800); | |
| 1122 | state_save_register_global_pointer(machine(), m_dspp.EI, 0x400); | |
| 1123 | state_save_register_global_pointer(machine(), m_dspp.EO, 0x400); | |
| 1121 | save_pointer(NAME(m_dspp.N), 0x800); | |
| 1122 | save_pointer(NAME(m_dspp.EI), 0x400); | |
| 1123 | save_pointer(NAME(m_dspp.EO), 0x400); | |
| 1124 | 1124 | } |
| r22709 | r22710 | |
|---|---|---|
| 57 | 57 | |
| 58 | 58 | MACHINE_RESET( cchip1 ) |
| 59 | 59 | { |
| 60 | state_save_register_global(machine, current_bank); | |
| 61 | state_save_register_global(machine, cc_port); | |
| 60 | machine.save().save_item(NAME(current_bank)); | |
| 61 | machine.save().save_item(NAME(cc_port)); | |
| 62 | 62 | } |
| 63 | 63 | |
| 64 | 64 | /************************************* |
| r22709 | r22710 | |
|---|---|---|
| 172 | 172 | |
| 173 | 173 | static void serial_register_state(running_machine &machine) |
| 174 | 174 | { |
| 175 | state_save_register_global_array(machine, serial.data); | |
| 176 | state_save_register_global(machine, serial.buffer); | |
| 177 | state_save_register_global(machine, serial.index); | |
| 178 | state_save_register_global(machine, serial.status); | |
| 179 | state_save_register_global(machine, serial.bits); | |
| 180 | state_save_register_global(machine, serial.ormask); | |
| 175 | machine.save().save_item(NAME(serial.data)); | |
| 176 | machine.save().save_item(NAME(serial.buffer)); | |
| 177 | machine.save().save_item(NAME(serial.index)); | |
| 178 | machine.save().save_item(NAME(serial.status)); | |
| 179 | machine.save().save_item(NAME(serial.bits)); | |
| 180 | machine.save().save_item(NAME(serial.ormask)); | |
| 181 | 181 | } |
| 182 | 182 | |
| 183 | 183 | |
| r22709 | r22710 | |
| 257 | 257 | |
| 258 | 258 | static void pic_register_state(running_machine &machine) |
| 259 | 259 | { |
| 260 | state_save_register_global(machine, pic.latch); | |
| 261 | state_save_register_global(machine, pic.latch_expire_time); | |
| 262 | state_save_register_global(machine, pic.state); | |
| 263 | state_save_register_global(machine, pic.index); | |
| 264 | state_save_register_global(machine, pic.total); | |
| 265 | state_save_register_global(machine, pic.nvram_addr); | |
| 266 | state_save_register_global_array(machine, pic.buffer); | |
| 267 | state_save_register_global_array(machine, pic.nvram); | |
| 268 | state_save_register_global_array(machine, pic.default_nvram); | |
| 269 | state_save_register_global_array(machine, pic.time_buf); | |
| 270 | state_save_register_global(machine, pic.time_index); | |
| 271 | state_save_register_global(machine, pic.time_just_written); | |
| 272 | state_save_register_global(machine, pic.yearoffs); | |
| 260 | machine.save().save_item(NAME(pic.latch)); | |
| 261 | machine.save().save_item(NAME(pic.latch_expire_time)); | |
| 262 | machine.save().save_item(NAME(pic.state)); | |
| 263 | machine.save().save_item(NAME(pic.index)); | |
| 264 | machine.save().save_item(NAME(pic.total)); | |
| 265 | machine.save().save_item(NAME(pic.nvram_addr)); | |
| 266 | machine.save().save_item(NAME(pic.buffer)); | |
| 267 | machine.save().save_item(NAME(pic.nvram)); | |
| 268 | machine.save().save_item(NAME(pic.default_nvram)); | |
| 269 | machine.save().save_item(NAME(pic.time_buf)); | |
| 270 | machine.save().save_item(NAME(pic.time_index)); | |
| 271 | machine.save().save_item(NAME(pic.time_just_written)); | |
| 272 | machine.save().save_item(NAME(pic.yearoffs)); | |
| 273 | 273 | } |
| 274 | 274 | |
| 275 | 275 | |
| r22709 | r22710 | |
| 567 | 567 | |
| 568 | 568 | static void ioasic_register_state(running_machine &machine) |
| 569 | 569 | { |
| 570 | state_save_register_global_array(machine, ioasic.reg); | |
| 571 | state_save_register_global(machine, ioasic.shuffle_active); | |
| 572 | state_save_register_global(machine, ioasic.irq_state); | |
| 573 | state_save_register_global(machine, ioasic.sound_irq_state); | |
| 574 | state_save_register_global(machine, ioasic.auto_ack); | |
| 575 | state_save_register_global(machine, ioasic.force_fifo_full); | |
| 576 | state_save_register_global_array(machine, ioasic.fifo); | |
| 577 | state_save_register_global(machine, ioasic.fifo_in); | |
| 578 | state_save_register_global(machine, ioasic.fifo_out); | |
| 579 | state_save_register_global(machine, ioasic.fifo_bytes); | |
| 580 | state_save_register_global(machine, ioasic.fifo_force_buffer_empty_pc); | |
| 570 | machine.save().save_item(NAME(ioasic.reg)); | |
| 571 | machine.save().save_item(NAME(ioasic.shuffle_active)); | |
| 572 | machine.save().save_item(NAME(ioasic.irq_state)); | |
| 573 | machine.save().save_item(NAME(ioasic.sound_irq_state)); | |
| 574 | machine.save().save_item(NAME(ioasic.auto_ack)); | |
| 575 | machine.save().save_item(NAME(ioasic.force_fifo_full)); | |
| 576 | machine.save().save_item(NAME(ioasic.fifo)); | |
| 577 | machine.save().save_item(NAME(ioasic.fifo_in)); | |
| 578 | machine.save().save_item(NAME(ioasic.fifo_out)); | |
| 579 | machine.save().save_item(NAME(ioasic.fifo_bytes)); | |
| 580 | machine.save().save_item(NAME(ioasic.fifo_force_buffer_empty_pc)); | |
| 581 | 581 | } |
| 582 | 582 | |
| 583 | 583 |
| r22709 | r22710 | |
|---|---|---|
| 440 | 440 | void fantjour_dma_install(running_machine &machine) |
| 441 | 441 | { |
| 442 | 442 | konamigx_state *state = machine.driver_data<konamigx_state>(); |
| 443 | s | |
| 443 | machine.save().save_item(NAME(fantjour_dma)); | |
| 444 | 444 | state->m_maincpu->space(AS_PROGRAM).install_write_handler(0xdb0000, 0xdb001f, write32_delegate(FUNC(konamigx_state::fantjour_dma_w),state)); |
| 445 | 445 | memset(fantjour_dma, 0, sizeof(fantjour_dma)); |
| 446 | 446 | } |
| r22709 | r22710 | |
|---|---|---|
| 282 | 282 | m_maincpu->space(AS_PROGRAM).nop_write(0x2000, 0x2000); /* ??? */ |
| 283 | 283 | m_maincpu->space(AS_PROGRAM).nop_write(0x3800, 0x3801); /* looks suspicously like |
| 284 | 284 | an AY8910, but not sure */ |
| 285 | s | |
| 285 | save_item(NAME(m_cavelon_bank)); | |
| 286 | 286 | } |
| 287 | 287 | |
| 288 | 288 |
| r22709 | r22710 | |
|---|---|---|
| 26 | 26 | |
| 27 | 27 | void midxunit_state::register_state_saving() |
| 28 | 28 | { |
| 29 | state_save_register_global(machine(), m_cmos_write_enable); | |
| 30 | state_save_register_global_array(machine(), m_iodata); | |
| 31 | state_save_register_global_array(machine(), m_ioshuffle); | |
| 32 | state_save_register_global(machine(), m_analog_port); | |
| 33 | state_save_register_global_array(machine(), m_uart); | |
| 34 | state_save_register_global(machine(), m_security_bits); | |
| 29 | save_item(NAME(m_cmos_write_enable)); | |
| 30 | save_item(NAME(m_iodata)); | |
| 31 | save_item(NAME(m_ioshuffle)); | |
| 32 | save_item(NAME(m_analog_port)); | |
| 33 | save_item(NAME(m_uart)); | |
| 34 | save_item(NAME(m_security_bits)); | |
| 35 | 35 | } |
| 36 | 36 | |
| 37 | 37 |
| r22709 | r22710 | |
|---|---|---|
| 244 | 244 | |
| 245 | 245 | membank("bank1")->configure_entries(0, 4, &RAM[0x10000], 0x4000); |
| 246 | 246 | |
| 247 | s | |
| 247 | save_item(NAME(m_counter)); | |
| 248 | 248 | } |
| 249 | 249 | |
| 250 | 250 |
| r22709 | r22710 | |
|---|---|---|
| 408 | 408 | |
| 409 | 409 | _4in1_bank_w(space, 0, 0); /* set the initial CPU bank */ |
| 410 | 410 | |
| 411 | s | |
| 411 | save_item(NAME(m__4in1_bank)); | |
| 412 | 412 | } |
| 413 | 413 | |
| 414 | 414 | INTERRUPT_GEN_MEMBER(galaxold_state::hunchbks_vh_interrupt) |
| r22709 | r22710 | |
|---|---|---|
| 499 | 499 | m_sprite_timer->adjust(attotime::never); |
| 500 | 500 | |
| 501 | 501 | /* register for savestates */ |
| 502 | state_save_register_global_array(machine(), m_sprite_buffer); | |
| 503 | state_save_register_global_array(machine(), m_scrollx); | |
| 504 | state_save_register_global_array(machine(), m_scrolly); | |
| 502 | save_item(NAME(m_sprite_buffer)); | |
| 503 | save_item(NAME(m_scrollx)); | |
| 504 | save_item(NAME(m_scrolly)); | |
| 505 | 505 | |
| 506 | state_save_register_global(machine(), m_need_process_spriteram); | |
| 507 | state_save_register_global(machine(), m_gfx_bank); | |
| 508 | state_save_register_global(machine(), m_video_register); | |
| 509 | state_save_register_global(machine(), m_sprite_busy); | |
| 506 | save_item(NAME(m_need_process_spriteram)); | |
| 507 | save_item(NAME(m_gfx_bank)); | |
| 508 | save_item(NAME(m_video_register)); | |
| 509 | save_item(NAME(m_sprite_busy)); | |
| 510 | 510 | } |
| 511 | 511 | |
| 512 | 512 | UINT32 twin16_state::screen_update_twin16(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 149 | 149 | |
| 150 | 150 | void pacman_state::init_save_state() |
| 151 | 151 | { |
| 152 | state_save_register_global(machine(), m_charbank); | |
| 153 | state_save_register_global(machine(), m_spritebank); | |
| 154 | state_save_register_global(machine(), m_palettebank); | |
| 155 | state_save_register_global(machine(), m_colortablebank); | |
| 156 | state_save_register_global(machine(), m_flipscreen); | |
| 157 | state_save_register_global(machine(), m_bgpriority); | |
| 152 | save_item(NAME(m_charbank)); | |
| 153 | save_item(NAME(m_spritebank)); | |
| 154 | save_item(NAME(m_palettebank)); | |
| 155 | save_item(NAME(m_colortablebank)); | |
| 156 | save_item(NAME(m_flipscreen)); | |
| 157 | save_item(NAME(m_bgpriority)); | |
| 158 | 158 | } |
| 159 | 159 | |
| 160 | 160 |
| r22709 | r22710 | |
|---|---|---|
| 396 | 396 | m_bg1_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(tceptor_state::get_bg1_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32); |
| 397 | 397 | m_bg2_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(tceptor_state::get_bg2_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32); |
| 398 | 398 | |
| 399 | state_save_register_global_pointer(machine(), m_sprite_ram_buffered, 0x200 / 2); | |
| 400 | state_save_register_global(machine(), m_bg1_scroll_x); | |
| 401 | state_save_register_global(machine(), m_bg1_scroll_y); | |
| 402 | state_save_register_global(machine(), m_bg2_scroll_x); | |
| 403 | state_save_register_global(machine(), m_bg2_scroll_y); | |
| 399 | save_pointer(NAME(m_sprite_ram_buffered), 0x200 / 2); | |
| 400 | save_item(NAME(m_bg1_scroll_x)); | |
| 401 | save_item(NAME(m_bg1_scroll_y)); | |
| 402 | save_item(NAME(m_bg2_scroll_x)); | |
| 403 | save_item(NAME(m_bg2_scroll_y)); | |
| 404 | 404 | } |
| 405 | 405 | |
| 406 | 406 |
| r22709 | r22710 | |
|---|---|---|
| 103 | 103 | |
| 104 | 104 | void williams_state::state_save_register() |
| 105 | 105 | { |
| 106 | state_save_register_global(machine(), m_blitter_window_enable); | |
| 107 | state_save_register_global(machine(), m_cocktail); | |
| 108 | state_save_register_global_array(machine(), m_blitterram); | |
| 109 | state_save_register_global(machine(), m_blitter_remap_index); | |
| 110 | state_save_register_global(machine(), m_blaster_color0); | |
| 111 | state_save_register_global(machine(), m_blaster_video_control); | |
| 112 | state_save_register_global(machine(), m_tilemap_xscroll); | |
| 113 | state_save_register_global(machine(), m_williams2_fg_color); | |
| 106 | save_item(NAME(m_blitter_window_enable)); | |
| 107 | save_item(NAME(m_cocktail)); | |
| 108 | save_item(NAME(m_blitterram)); | |
| 109 | save_item(NAME(m_blitter_remap_index)); | |
| 110 | save_item(NAME(m_blaster_color0)); | |
| 111 | save_item(NAME(m_blaster_video_control)); | |
| 112 | save_item(NAME(m_tilemap_xscroll)); | |
| 113 | save_item(NAME(m_williams2_fg_color)); | |
| 114 | 114 | } |
| 115 | 115 | |
| 116 | 116 |
| r22709 | r22710 | |
|---|---|---|
| 55 | 55 | memset(&m_dma_state, 0, sizeof(m_dma_state)); |
| 56 | 56 | |
| 57 | 57 | /* register for state saving */ |
| 58 | state_save_register_global(machine(), m_autoerase_enable); | |
| 59 | state_save_register_global_pointer(machine(), m_local_videoram, 0x80000/2); | |
| 60 | state_save_register_global_pointer(machine(), m_cmos_ram, (0x2000 * 4)/2); | |
| 61 | state_save_register_global(machine(), m_videobank_select); | |
| 62 | state_save_register_global_array(machine(), m_dma_register); | |
| 58 | save_item(NAME(m_autoerase_enable)); | |
| 59 | save_pointer(NAME(m_local_videoram), 0x80000/2); | |
| 60 | save_pointer(NAME(m_cmos_ram), (0x2000 * 4)/2); | |
| 61 | save_item(NAME(m_videobank_select)); | |
| 62 | save_item(NAME(m_dma_register)); | |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 |
| r22709 | r22710 | |
|---|---|---|
| 521 | 521 | ygv608.screen_resize = 1; |
| 522 | 522 | ygv608.tilemap_resize = 1; |
| 523 | 523 | namcond1_gfxbank = 0; |
| 524 | s | |
| 524 | machine.save().save_item(NAME(namcond1_gfxbank)); | |
| 525 | 525 | |
| 526 | 526 | /* create tilemaps of all sizes and combinations */ |
| 527 | 527 | tilemap_A_cache_8[0] = tilemap_create(machine, get_tile_info_A_8, get_tile_offset, 8,8, 32,32); |
| r22709 | r22710 | |
|---|---|---|
| 111 | 111 | m_display_on = 0; |
| 112 | 112 | twincobr_display(m_display_on); |
| 113 | 113 | |
| 114 | state_save_register_global_pointer(machine(), m_txvideoram16, m_txvideoram_size); | |
| 115 | state_save_register_global_pointer(machine(), m_fgvideoram16, m_fgvideoram_size); | |
| 116 | state_save_register_global_pointer(machine(), m_bgvideoram16, m_bgvideoram_size); | |
| 117 | state_save_register_global(machine(), m_txoffs); | |
| 118 | state_save_register_global(machine(), m_fgoffs); | |
| 119 | state_save_register_global(machine(), m_bgoffs); | |
| 120 | state_save_register_global(machine(), m_scroll_x); | |
| 121 | state_save_register_global(machine(), m_scroll_y); | |
| 122 | state_save_register_global(machine(), m_txscrollx); | |
| 123 | state_save_register_global(machine(), m_fgscrollx); | |
| 124 | state_save_register_global(machine(), m_bgscrollx); | |
| 125 | state_save_register_global(machine(), m_txscrolly); | |
| 126 | state_save_register_global(machine(), m_fgscrolly); | |
| 127 | state_save_register_global(machine(), m_bgscrolly); | |
| 128 | state_save_register_global(machine(), m_display_on); | |
| 129 | state_save_register_global(machine(), m_fg_rom_bank); | |
| 130 | state_save_register_global(machine(), m_bg_ram_bank); | |
| 131 | state_save_register_global(machine(), m_flip_screen); | |
| 132 | state_save_register_global(machine(), m_wardner_sprite_hack); | |
| 114 | save_pointer(NAME(m_txvideoram16), m_txvideoram_size); | |
| 115 | save_pointer(NAME(m_fgvideoram16), m_fgvideoram_size); | |
| 116 | save_pointer(NAME(m_bgvideoram16), m_bgvideoram_size); | |
| 117 | save_item(NAME(m_txoffs)); | |
| 118 | save_item(NAME(m_fgoffs)); | |
| 119 | save_item(NAME(m_bgoffs)); | |
| 120 | save_item(NAME(m_scroll_x)); | |
| 121 | save_item(NAME(m_scroll_y)); | |
| 122 | save_item(NAME(m_txscrollx)); | |
| 123 | save_item(NAME(m_fgscrollx)); | |
| 124 | save_item(NAME(m_bgscrollx)); | |
| 125 | save_item(NAME(m_txscrolly)); | |
| 126 | save_item(NAME(m_fgscrolly)); | |
| 127 | save_item(NAME(m_bgscrolly)); | |
| 128 | save_item(NAME(m_display_on)); | |
| 129 | save_item(NAME(m_fg_rom_bank)); | |
| 130 | save_item(NAME(m_bg_ram_bank)); | |
| 131 | save_item(NAME(m_flip_screen)); | |
| 132 | save_item(NAME(m_wardner_sprite_hack)); | |
| 133 | 133 | machine().save().register_postload(save_prepost_delegate(FUNC(twincobr_state::twincobr_restore_screen), this)); |
| 134 | 134 | } |
| 135 | 135 |
| r22709 | r22710 | |
|---|---|---|
| 43 | 43 | m_blitter_base = (UINT16 *)memregion("gfx1")->base(); |
| 44 | 44 | m_blitter_mask = memregion("gfx1")->bytes()/2 - 1; |
| 45 | 45 | |
| 46 | state_save_register_global_array(machine(), m_xor); | |
| 47 | state_save_register_global(machine(), m_is_stoneball); | |
| 48 | state_save_register_global_array(machine(), m_blitter_data); | |
| 49 | state_save_register_global(machine(), m_blitter_page); | |
| 46 | save_item(NAME(m_xor)); | |
| 47 | save_item(NAME(m_is_stoneball)); | |
| 48 | save_item(NAME(m_blitter_data)); | |
| 49 | save_item(NAME(m_blitter_page)); | |
| 50 | 50 | } |
| 51 | 51 | |
| 52 | 52 |
| r22709 | r22710 | |
|---|---|---|
| 66 | 66 | /* reset the palette */ |
| 67 | 67 | m_palettebank_vis = 0; |
| 68 | 68 | |
| 69 | state_save_register_global(machine(), m_cocktail_flip); | |
| 70 | state_save_register_global(machine(), m_palettebank_vis); | |
| 69 | save_item(NAME(m_cocktail_flip)); | |
| 70 | save_item(NAME(m_palettebank_vis)); | |
| 71 | 71 | machine().save().register_postload(save_prepost_delegate(FUNC(gridlee_state::expand_pixels), this)); |
| 72 | 72 | } |
| 73 | 73 |
| r22709 | r22710 | |
|---|---|---|
| 100 | 100 | dma_state.gfxrom = m_gfxrom->base(); |
| 101 | 101 | |
| 102 | 102 | /* register for state saving */ |
| 103 | state_save_register_global(machine(), midtunit_control); | |
| 104 | state_save_register_global_array(machine(), gfxbank_offset); | |
| 105 | state_save_register_global_pointer(machine(), local_videoram, 0x100000/sizeof(local_videoram[0])); | |
| 106 | state_save_register_global(machine(), videobank_select); | |
| 107 | state_save_register_global_array(machine(), dma_register); | |
| 103 | save_item(NAME(midtunit_control)); | |
| 104 | save_item(NAME(gfxbank_offset)); | |
| 105 | save_pointer(NAME(local_videoram), 0x100000/sizeof(local_videoram[0])); | |
| 106 | save_item(NAME(videobank_select)); | |
| 107 | save_item(NAME(dma_register)); | |
| 108 | 108 | } |
| 109 | 109 | |
| 110 | 110 |
| r22709 | r22710 | |
|---|---|---|
| 134 | 134 | m_bg_tilemap[5]->set_scrolldy(0x10,0x110); |
| 135 | 135 | |
| 136 | 136 | /* register videoram to the save state system (post-allocation) */ |
| 137 | state_save_register_global_pointer(machine(), m_videoram, 0x8000); | |
| 138 | state_save_register_global_array(machine(), m_cus116); | |
| 139 | state_save_register_global_pointer(machine(), m_spriteram, 0x1000); | |
| 140 | state_save_register_global_array(machine(), m_playfield_control); | |
| 137 | save_pointer(NAME(m_videoram), 0x8000); | |
| 138 | save_item(NAME(m_cus116)); | |
| 139 | save_pointer(NAME(m_spriteram), 0x1000); | |
| 140 | save_item(NAME(m_playfield_control)); | |
| 141 | 141 | |
| 142 | 142 | /* set table for sprite color == 0x7f */ |
| 143 | 143 | for (i = 0;i < 15;i++) |
| r22709 | r22710 | |
|---|---|---|
| 48 | 48 | m_micro.timer = machine().scheduler().timer_alloc(FUNC_NULL); |
| 49 | 49 | |
| 50 | 50 | /* register for state saving */ |
| 51 | s | |
| 51 | save_item(NAME(m_paletteram)); | |
| 52 | 52 | } |
| 53 | 53 | |
| 54 | 54 |
| r22709 | r22710 | |
|---|---|---|
| 210 | 210 | m_fg_tilemap->set_transmask(color, mask, 0); |
| 211 | 211 | } |
| 212 | 212 | |
| 213 | state_save_register_global(machine(), m_palette_bank); | |
| 214 | state_save_register_global(machine(), m_scroll0); | |
| 215 | state_save_register_global(machine(), m_scroll1); | |
| 213 | save_item(NAME(m_palette_bank)); | |
| 214 | save_item(NAME(m_scroll0)); | |
| 215 | save_item(NAME(m_scroll1)); | |
| 216 | 216 | } |
| 217 | 217 | |
| 218 | 218 |
| r22709 | r22710 | |
|---|---|---|
| 189 | 189 | m_foreground->set_transparent_pen(0xf); |
| 190 | 190 | |
| 191 | 191 | /* register for saving */ |
| 192 | state_save_register_global(machine(), m_xscroll); | |
| 193 | state_save_register_global(machine(), m_yscroll); | |
| 192 | save_item(NAME(m_xscroll)); | |
| 193 | save_item(NAME(m_yscroll)); | |
| 194 | 194 | } |
| 195 | 195 | |
| 196 | 196 | UINT32 terracre_state::screen_update_amazon(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 525 | 525 | |
| 526 | 526 | memset(m_dirty_palette,0,4096); |
| 527 | 527 | |
| 528 | s | |
| 528 | save_item(NAME(m_dragngun_sprite_ctrl)); | |
| 529 | 529 | m_has_ace_ram=0; |
| 530 | 530 | } |
| 531 | 531 | |
| r22709 | r22710 | |
| 535 | 535 | |
| 536 | 536 | memset(m_dirty_palette,0,4096); |
| 537 | 537 | |
| 538 | s | |
| 538 | save_item(NAME(m_dragngun_sprite_ctrl)); | |
| 539 | 539 | m_has_ace_ram=0; |
| 540 | 540 | } |
| 541 | 541 | |
| r22709 | r22710 | |
| 549 | 549 | m_sprgen1->alloc_sprite_bitmap(); |
| 550 | 550 | m_sprgen2->alloc_sprite_bitmap(); |
| 551 | 551 | memset(m_dirty_palette,0,4096); |
| 552 | s | |
| 552 | save_item(NAME(m_pri)); | |
| 553 | 553 | m_has_ace_ram=1; |
| 554 | 554 | } |
| 555 | 555 |
| r22709 | r22710 | |
|---|---|---|
| 110 | 110 | m_alpha_tilemap->set_transparent_pen(0); |
| 111 | 111 | m_alpha_tilemap->set_scrollx(0, 16); |
| 112 | 112 | |
| 113 | state_save_register_global(machine(), m_spyhunt_sprite_color_mask); | |
| 114 | state_save_register_global(machine(), m_spyhunt_scrollx); | |
| 115 | state_save_register_global(machine(), m_spyhunt_scrolly); | |
| 116 | state_save_register_global(machine(), m_spyhunt_scroll_offset); | |
| 113 | save_item(NAME(m_spyhunt_sprite_color_mask)); | |
| 114 | save_item(NAME(m_spyhunt_scrollx)); | |
| 115 | save_item(NAME(m_spyhunt_scrolly)); | |
| 116 | save_item(NAME(m_spyhunt_scroll_offset)); | |
| 117 | 117 | } |
| 118 | 118 | |
| 119 | 119 |
| r22709 | r22710 | |
|---|---|---|
| 1460 | 1460 | m_quadpt = m_quaddb; |
| 1461 | 1461 | m_listctl[0] = m_listctl[1] = 0; |
| 1462 | 1462 | |
| 1463 | state_save_register_global_pointer(machine(), m_tgp_ram, 0x100000-0x40000); | |
| 1464 | state_save_register_global_pointer(machine(), m_poly_ram, 0x40000); | |
| 1465 | state_save_register_global_array(machine(), m_listctl); | |
| 1463 | save_pointer(NAME(m_tgp_ram), 0x100000-0x40000); | |
| 1464 | save_pointer(NAME(m_poly_ram), 0x40000); | |
| 1465 | save_item(NAME(m_listctl)); | |
| 1466 | 1466 | } |
| 1467 | 1467 | |
| 1468 | 1468 | UINT32 model1_state::screen_update_model1(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 100 | 100 | m_pf1_layer->set_transparent_pen(0); |
| 101 | 101 | m_pf1_wide_layer->set_transparent_pen(0); |
| 102 | 102 | |
| 103 | state_save_register_global_array(machine(), m_video_control_data); | |
| 104 | state_save_register_global(machine(), m_last_pf1); | |
| 105 | state_save_register_global(machine(), m_last_pf2); | |
| 103 | save_item(NAME(m_video_control_data)); | |
| 104 | save_item(NAME(m_last_pf1)); | |
| 105 | save_item(NAME(m_last_pf2)); | |
| 106 | 106 | } |
| 107 | 107 | |
| 108 | 108 | VIDEO_START_MEMBER(m90_state,bomblord) |
| r22709 | r22710 | |
| 117 | 117 | m_pf1_layer->set_transparent_pen(0); |
| 118 | 118 | m_pf1_wide_layer->set_transparent_pen(0); |
| 119 | 119 | |
| 120 | s | |
| 120 | save_item(NAME(m_video_control_data)); | |
| 121 | 121 | } |
| 122 | 122 | |
| 123 | 123 | VIDEO_START_MEMBER(m90_state,dynablsb) |
| r22709 | r22710 | |
| 130 | 130 | m_pf2_layer->set_transparent_pen(0); |
| 131 | 131 | m_pf2_wide_layer->set_transparent_pen(0); |
| 132 | 132 | |
| 133 | s | |
| 133 | save_item(NAME(m_video_control_data)); | |
| 134 | 134 | } |
| 135 | 135 | |
| 136 | 136 | void m90_state::draw_sprites(bitmap_ind16 &bitmap,const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 193 | 193 | m_fg_tilemap->set_scrolldy(0, (VTOTAL - VBSTART)); |
| 194 | 194 | m_bg_tilemap->set_scrolldy(0, (VTOTAL - VBSTART)); |
| 195 | 195 | |
| 196 | state_save_register_global_pointer(machine(), m_videoram_pg[0], 0x1000); | |
| 197 | state_save_register_global_pointer(machine(), m_videoram_pg[1], 0x1000); | |
| 198 | state_save_register_global(machine(), m_videoram_pg_index); | |
| 199 | state_save_register_global(machine(), m_palette_bank); | |
| 200 | state_save_register_global(machine(), m_cocktail_mode); | |
| 196 | save_pointer(NAME(m_videoram_pg[0]), 0x1000); | |
| 197 | save_pointer(NAME(m_videoram_pg[1]), 0x1000); | |
| 198 | save_item(NAME(m_videoram_pg_index)); | |
| 199 | save_item(NAME(m_palette_bank)); | |
| 200 | save_item(NAME(m_cocktail_mode)); | |
| 201 | 201 | |
| 202 | 202 | /* some more candidates */ |
| 203 | 203 | m_pleiads_protection_question = 0; |
| r22709 | r22710 | |
| 207 | 207 | m_survival_input_latches[0] = 0; |
| 208 | 208 | m_survival_input_latches[1] = 0; |
| 209 | 209 | |
| 210 | state_save_register_global(machine(), m_pleiads_protection_question); | |
| 211 | state_save_register_global(machine(), m_survival_protection_value); | |
| 212 | state_save_register_global(machine(), m_survival_sid_value); | |
| 213 | state_save_register_global(machine(), m_survival_input_readc); | |
| 214 | state_save_register_global_array(machine(), m_survival_input_latches); | |
| 210 | save_item(NAME(m_pleiads_protection_question)); | |
| 211 | save_item(NAME(m_survival_protection_value)); | |
| 212 | save_item(NAME(m_survival_sid_value)); | |
| 213 | save_item(NAME(m_survival_input_readc)); | |
| 214 | save_item(NAME(m_survival_input_latches)); | |
| 215 | 215 | |
| 216 | 216 | } |
| 217 | 217 |
| r22709 | r22710 | |
|---|---|---|
| 35 | 35 | m_texture(auto_alloc_array(state.machine(), UINT8, m_texture_size)), |
| 36 | 36 | m_texmask(auto_alloc_array(state.machine(), UINT8, m_texmask_size)) |
| 37 | 37 | { |
| 38 | state_save_register_global_bitmap(state.machine(), &m_screenbits); | |
| 39 | state_save_register_global_bitmap(state.machine(), &m_zbuffer); | |
| 38 | state.machine().save().save_item(NAME(m_screenbits)); | |
| 39 | state.machine().save().save_item(NAME(m_zbuffer)); | |
| 40 | 40 | |
| 41 | 41 | /* first expand the pixel data */ |
| 42 | 42 | UINT8 *src = state.memregion("gfx1")->base(); |
| r22709 | r22710 | |
| 74 | 74 | |
| 75 | 75 | /* save states */ |
| 76 | 76 | |
| 77 | state_save_register_global_pointer(machine(), m_palette, 32768); | |
| 78 | state_save_register_global_pointer(machine(), m_polydata_buffer, MAX_POLYDATA); | |
| 79 | state_save_register_global(machine(), m_polydata_count); | |
| 80 | ||
| 81 | state_save_register_global(machine(), m_lastscan); | |
| 77 | save_pointer(NAME(m_palette), 32768); | |
| 78 | save_pointer(NAME(m_polydata_buffer), MAX_POLYDATA); | |
| 79 | save_item(NAME(m_polydata_count)); | |
| 80 | save_item(NAME(m_lastscan)); | |
| 82 | 81 | } |
| 83 | 82 | |
| 84 | 83 |
| r22709 | r22710 | |
|---|---|---|
| 406 | 406 | |
| 407 | 407 | void galaxian_state::state_save_register() |
| 408 | 408 | { |
| 409 | state_save_register_global(machine(), m_flipscreen_x); | |
| 410 | state_save_register_global(machine(), m_flipscreen_y); | |
| 411 | state_save_register_global(machine(), m_background_enable); | |
| 412 | state_save_register_global(machine(), m_background_red); | |
| 413 | state_save_register_global(machine(), m_background_green); | |
| 414 | state_save_register_global(machine(), m_background_blue); | |
| 409 | save_item(NAME(m_flipscreen_x)); | |
| 410 | save_item(NAME(m_flipscreen_y)); | |
| 411 | save_item(NAME(m_background_enable)); | |
| 412 | save_item(NAME(m_background_red)); | |
| 413 | save_item(NAME(m_background_green)); | |
| 414 | save_item(NAME(m_background_blue)); | |
| 415 | 415 | |
| 416 | state_save_register_global(machine(), m_sprites_base); | |
| 417 | state_save_register_global(machine(), m_bullets_base); | |
| 418 | state_save_register_global_array(machine(), m_gfxbank); | |
| 416 | save_item(NAME(m_sprites_base)); | |
| 417 | save_item(NAME(m_bullets_base)); | |
| 418 | save_item(NAME(m_gfxbank)); | |
| 419 | 419 | |
| 420 | state_save_register_global(machine(), m_stars_enabled); | |
| 421 | state_save_register_global(machine(), m_star_rng_origin); | |
| 422 | state_save_register_global(machine(), m_star_rng_origin_frame); | |
| 423 | state_save_register_global(machine(), m_stars_blink_state); | |
| 420 | save_item(NAME(m_stars_enabled)); | |
| 421 | save_item(NAME(m_star_rng_origin)); | |
| 422 | save_item(NAME(m_star_rng_origin_frame)); | |
| 423 | save_item(NAME(m_stars_blink_state)); | |
| 424 | 424 | } |
| 425 | 425 | |
| 426 | 426 |
| r22709 | r22710 | |
|---|---|---|
| 249 | 249 | |
| 250 | 250 | m_lastflip = 0; |
| 251 | 251 | |
| 252 | state_save_register_global(machine(), m_lastflip); | |
| 253 | state_save_register_global_bitmap(machine(), m_tmpbitmap2); | |
| 254 | state_save_register_global_pointer(machine(), m_bitmapram, popeye_bitmapram_size); | |
| 252 | save_item(NAME(m_lastflip)); | |
| 253 | save_item(NAME(m_tmpbitmap2)); | |
| 254 | save_pointer(NAME(m_bitmapram), popeye_bitmapram_size); | |
| 255 | 255 | } |
| 256 | 256 | |
| 257 | 257 | VIDEO_START_MEMBER(popeye_state,popeye) |
| r22709 | r22710 | |
| 266 | 266 | |
| 267 | 267 | m_lastflip = 0; |
| 268 | 268 | |
| 269 | state_save_register_global(machine(), m_lastflip); | |
| 270 | state_save_register_global_bitmap(machine(), m_tmpbitmap2); | |
| 271 | state_save_register_global_pointer(machine(), m_bitmapram, popeye_bitmapram_size); | |
| 269 | save_item(NAME(m_lastflip)); | |
| 270 | save_item(NAME(m_tmpbitmap2)); | |
| 271 | save_pointer(NAME(m_bitmapram), popeye_bitmapram_size); | |
| 272 | 272 | } |
| 273 | 273 | |
| 274 | 274 | void popeye_state::draw_background(bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 134 | 134 | m_spriteram_n = video_ram + 0x3020; |
| 135 | 135 | m_spriteram_a = video_ram + 0x3030; |
| 136 | 136 | |
| 137 | s | |
| 137 | save_pointer(NAME(video_ram), 0x3040); | |
| 138 | 138 | |
| 139 | 139 | m_bg_tilemap1 = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(tiamc1_state::get_bg1_tile_info),this), TILEMAP_SCAN_ROWS, |
| 140 | 140 | 8, 8, 32, 32); |
| r22709 | r22710 | |
| 145 | 145 | m_bg_vshift = 0; |
| 146 | 146 | m_bg_hshift = 0; |
| 147 | 147 | |
| 148 | state_save_register_global(machine(), m_layers_ctrl); | |
| 149 | state_save_register_global(machine(), m_bg_vshift); | |
| 150 | state_save_register_global(machine(), m_bg_hshift); | |
| 148 | save_item(NAME(m_layers_ctrl)); | |
| 149 | save_item(NAME(m_bg_vshift)); | |
| 150 | save_item(NAME(m_bg_hshift)); | |
| 151 | 151 | |
| 152 | 152 | machine().gfx[0]->set_source(m_charram); |
| 153 | 153 | } |
| r22709 | r22710 | |
|---|---|---|
| 220 | 220 | } |
| 221 | 221 | |
| 222 | 222 | /* register for save states */ |
| 223 | state_save_register_global(machine(), m_video_control); | |
| 224 | state_save_register_global(machine(), m_video_flip); | |
| 225 | state_save_register_global(machine(), m_vblank_latch); | |
| 223 | save_item(NAME(m_video_control)); | |
| 224 | save_item(NAME(m_video_flip)); | |
| 225 | save_item(NAME(m_vblank_latch)); | |
| 226 | 226 | |
| 227 | state_save_register_global(machine(), m_spaceod_hcounter); | |
| 228 | state_save_register_global(machine(), m_spaceod_vcounter); | |
| 229 | state_save_register_global(machine(), m_spaceod_fixed_color); | |
| 230 | state_save_register_global(machine(), m_spaceod_bg_control); | |
| 231 | state_save_register_global(machine(), m_spaceod_bg_detect); | |
| 227 | save_item(NAME(m_spaceod_hcounter)); | |
| 228 | save_item(NAME(m_spaceod_vcounter)); | |
| 229 | save_item(NAME(m_spaceod_fixed_color)); | |
| 230 | save_item(NAME(m_spaceod_bg_control)); | |
| 231 | save_item(NAME(m_spaceod_bg_detect)); | |
| 232 | 232 | |
| 233 | state_save_register_global(machine(), m_bg_enable); | |
| 234 | state_save_register_global(machine(), m_bg_char_bank); | |
| 235 | state_save_register_global(machine(), m_bg_scrollx); | |
| 236 | state_save_register_global(machine(), m_bg_scrolly); | |
| 233 | save_item(NAME(m_bg_enable)); | |
| 234 | save_item(NAME(m_bg_char_bank)); | |
| 235 | save_item(NAME(m_bg_scrollx)); | |
| 236 | save_item(NAME(m_bg_scrolly)); | |
| 237 | 237 | |
| 238 | s | |
| 238 | save_item(NAME(m_pignewt_bg_color_offset)); | |
| 239 | 239 | } |
| 240 | 240 | |
| 241 | 241 |
| r22709 | r22710 | |
|---|---|---|
| 132 | 132 | { |
| 133 | 133 | memset(&m_bt477, 0, sizeof(m_bt477)); |
| 134 | 134 | |
| 135 | state_save_register_global(machine(), m_bt477.address); | |
| 136 | state_save_register_global(machine(), m_bt477.addr_cnt); | |
| 137 | state_save_register_global(machine(), m_bt477.pixmask); | |
| 138 | state_save_register_global(machine(), m_bt477.command); | |
| 139 | state_save_register_global(machine(), m_bt477.color); | |
| 135 | save_item(NAME(m_bt477.address)); | |
| 136 | save_item(NAME(m_bt477.addr_cnt)); | |
| 137 | save_item(NAME(m_bt477.pixmask)); | |
| 138 | save_item(NAME(m_bt477.command)); | |
| 139 | save_item(NAME(m_bt477.color)); | |
| 140 | 140 | } |
| r22709 | r22710 | |
|---|---|---|
| 280 | 280 | int_timer = machine().scheduler().timer_alloc(FUNC(int_timer_callback)); |
| 281 | 281 | |
| 282 | 282 | /* save states */ |
| 283 | state_save_register_global_pointer(machine(), waveram[0], WAVERAM0_WIDTH * WAVERAM0_HEIGHT * 8 / sizeof(waveram[0][0])); | |
| 284 | state_save_register_global_pointer(machine(), waveram[1], WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 12 / sizeof(waveram[1][0])); | |
| 285 | state_save_register_global_array(machine(), zeus_fifo); | |
| 286 | state_save_register_global(machine(), zeus_fifo_words); | |
| 287 | state_save_register_global(machine(), zeus_cliprect.min_x); | |
| 288 | state_save_register_global(machine(), zeus_cliprect.max_x); | |
| 289 | state_save_register_global(machine(), zeus_cliprect.min_y); | |
| 290 | state_save_register_global(machine(), zeus_cliprect.max_y); | |
| 291 | state_save_register_global_2d_array(machine(), zeus_matrix); | |
| 292 | state_save_register_global_array(machine(), zeus_point); | |
| 293 | state_save_register_global(machine(), zeus_texbase); | |
| 283 | save_pointer(NAME(waveram[0]), WAVERAM0_WIDTH * WAVERAM0_HEIGHT * 8 / sizeof(waveram[0][0])); | |
| 284 | save_pointer(NAME(waveram[1]), WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 12 / sizeof(waveram[1][0])); | |
| 285 | save_item(NAME(zeus_fifo)); | |
| 286 | save_item(NAME(zeus_fifo_words)); | |
| 287 | save_item(NAME(zeus_cliprect.min_x)); | |
| 288 | save_item(NAME(zeus_cliprect.max_x)); | |
| 289 | save_item(NAME(zeus_cliprect.min_y)); | |
| 290 | save_item(NAME(zeus_cliprect.max_y)); | |
| 291 | save_item(NAME(zeus_matrix)); | |
| 292 | save_item(NAME(zeus_point)); | |
| 293 | save_item(NAME(zeus_texbase)); | |
| 294 | 294 | } |
| 295 | 295 | |
| 296 | 296 |
| r22709 | r22710 | |
|---|---|---|
| 341 | 341 | m_spritemap = auto_alloc_array(machine(), UINT8, 256*256*2); |
| 342 | 342 | |
| 343 | 343 | /* Set up save state */ |
| 344 | state_save_register_global(machine(), m_romD_addr); | |
| 345 | state_save_register_global(machine(), m_romEF_addr); | |
| 346 | state_save_register_global(machine(), m_E16_add_b); | |
| 347 | state_save_register_global(machine(), m_HINV); | |
| 348 | state_save_register_global(machine(), m_VINV); | |
| 349 | state_save_register_global(machine(), m_XSize); | |
| 350 | state_save_register_global(machine(), m_YSize); | |
| 351 | state_save_register_global(machine(), m_mark_1); | |
| 352 | state_save_register_global(machine(), m_mark_2); | |
| 353 | state_save_register_global(machine(), m_colorram_addr_hi); | |
| 354 | state_save_register_global(machine(), m_ls273_g6); | |
| 355 | state_save_register_global(machine(), m_ls273_j6); | |
| 356 | state_save_register_global(machine(), m_romHI_addr_mid); | |
| 357 | state_save_register_global(machine(), m_romHI_addr_msb); | |
| 358 | state_save_register_global(machine(), m_DISP); | |
| 359 | state_save_register_global(machine(), m_background_romsel); | |
| 360 | state_save_register_global(machine(), m_color_A4); | |
| 361 | state_save_register_global(machine(), m_ls175_b7); | |
| 362 | state_save_register_global(machine(), m_ls175_e8); | |
| 363 | state_save_register_global(machine(), m_ls377_data); | |
| 364 | state_save_register_global(machine(), m_page); | |
| 344 | save_item(NAME(m_romD_addr)); | |
| 345 | save_item(NAME(m_romEF_addr)); | |
| 346 | save_item(NAME(m_E16_add_b)); | |
| 347 | save_item(NAME(m_HINV)); | |
| 348 | save_item(NAME(m_VINV)); | |
| 349 | save_item(NAME(m_XSize)); | |
| 350 | save_item(NAME(m_YSize)); | |
| 351 | save_item(NAME(m_mark_1)); | |
| 352 | save_item(NAME(m_mark_2)); | |
| 353 | save_item(NAME(m_colorram_addr_hi)); | |
| 354 | save_item(NAME(m_ls273_g6)); | |
| 355 | save_item(NAME(m_ls273_j6)); | |
| 356 | save_item(NAME(m_romHI_addr_mid)); | |
| 357 | save_item(NAME(m_romHI_addr_msb)); | |
| 358 | save_item(NAME(m_DISP)); | |
| 359 | save_item(NAME(m_background_romsel)); | |
| 360 | save_item(NAME(m_color_A4)); | |
| 361 | save_item(NAME(m_ls175_b7)); | |
| 362 | save_item(NAME(m_ls175_e8)); | |
| 363 | save_item(NAME(m_ls377_data)); | |
| 364 | save_item(NAME(m_page)); | |
| 365 | 365 | } |
| 366 | 366 | |
| 367 | 367 |
| r22709 | r22710 | |
|---|---|---|
| 37 | 37 | m_motion_object_2_vid.allocate(16, 16); |
| 38 | 38 | m_motion_object_2_clip.allocate(16, 16); |
| 39 | 39 | |
| 40 | state_save_register_global(machine(), m_collision_mask); | |
| 41 | state_save_register_global(machine(), m_collision_invert); | |
| 42 | state_save_register_global(machine(), m_is_2bpp); | |
| 43 | state_save_register_global(machine(), m_int_condition); | |
| 44 | state_save_register_global_bitmap(machine(), &m_background_bitmap); | |
| 45 | state_save_register_global_bitmap(machine(), &m_motion_object_1_vid); | |
| 46 | state_save_register_global_bitmap(machine(), &m_motion_object_2_vid); | |
| 47 | state_save_register_global_bitmap(machine(), &m_motion_object_2_clip); | |
| 40 | save_item(NAME(m_collision_mask)); | |
| 41 | save_item(NAME(m_collision_invert)); | |
| 42 | save_item(NAME(m_is_2bpp)); | |
| 43 | save_item(NAME(m_int_condition)); | |
| 44 | save_item(NAME(m_background_bitmap)); | |
| 45 | save_item(NAME(m_motion_object_1_vid)); | |
| 46 | save_item(NAME(m_motion_object_2_vid)); | |
| 47 | save_item(NAME(m_motion_object_2_clip)); | |
| 48 | 48 | } |
| 49 | 49 | |
| 50 | 50 |
| r22709 | r22710 | |
|---|---|---|
| 48 | 48 | |
| 49 | 49 | void beathead_state::video_start() |
| 50 | 50 | { |
| 51 | state_save_register_global(machine(), m_finescroll); | |
| 52 | state_save_register_global(machine(), m_vram_latch_offset); | |
| 53 | state_save_register_global(machine(), m_hsyncram_offset); | |
| 54 | state_save_register_global(machine(), m_hsyncram_start); | |
| 55 | state_save_register_global_array(machine(), m_hsyncram); | |
| 51 | save_item(NAME(m_finescroll)); | |
| 52 | save_item(NAME(m_vram_latch_offset)); | |
| 53 | save_item(NAME(m_hsyncram_offset)); | |
| 54 | save_item(NAME(m_hsyncram_start)); | |
| 55 | save_item(NAME(m_hsyncram)); | |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 |
| r22709 | r22710 | |
|---|---|---|
| 420 | 420 | |
| 421 | 421 | void st0016_state::st0016_save_init() |
| 422 | 422 | { |
| 423 | state_save_register_global(machine(), st0016_spr_bank); | |
| 424 | state_save_register_global(machine(), st0016_spr2_bank); | |
| 425 | state_save_register_global(machine(), st0016_pal_bank); | |
| 426 | state_save_register_global(machine(), st0016_char_bank); | |
| 427 | //state_save_register_global(machine(), st0016_rom_bank); | |
| 428 | state_save_register_global_array(machine(), st0016_vregs); | |
| 429 | state_save_register_global_pointer(machine(), st0016_charram, ST0016_MAX_CHAR_BANK*ST0016_CHAR_BANK_SIZE); | |
| 430 | state_save_register_global_pointer(machine(), st0016_paletteram, ST0016_MAX_PAL_BANK*ST0016_PAL_BANK_SIZE); | |
| 431 | state_save_register_global_pointer(machine(), st0016_spriteram, ST0016_MAX_SPR_BANK*ST0016_SPR_BANK_SIZE); | |
| 423 | save_item(NAME(st0016_spr_bank)); | |
| 424 | save_item(NAME(st0016_spr2_bank)); | |
| 425 | save_item(NAME(st0016_pal_bank)); | |
| 426 | save_item(NAME(st0016_char_bank)); | |
| 427 | //save_item(NAME(st0016_rom_bank)); | |
| 428 | save_item(NAME(st0016_vregs)); | |
| 429 | save_pointer(NAME(st0016_charram), ST0016_MAX_CHAR_BANK*ST0016_CHAR_BANK_SIZE); | |
| 430 | save_pointer(NAME(st0016_paletteram), ST0016_MAX_PAL_BANK*ST0016_PAL_BANK_SIZE); | |
| 431 | save_pointer(NAME(st0016_spriteram), ST0016_MAX_SPR_BANK*ST0016_SPR_BANK_SIZE); | |
| 432 | 432 | } |
| 433 | 433 | |
| 434 | 434 |
| r22709 | r22710 | |
|---|---|---|
| 1710 | 1710 | state_save_register_item_array(machine, "snes_ppu", NULL, i, m_clipmasks[i]); |
| 1711 | 1711 | } |
| 1712 | 1712 | |
| 1713 | state_save_register_global(machine, m_oam.address_low); | |
| 1714 | state_save_register_global(machine, m_oam.address_high); | |
| 1715 | state_save_register_global(machine, m_oam.saved_address_low); | |
| 1716 | state_save_register_global(machine, m_oam.saved_address_high); | |
| 1717 | state_save_register_global(machine, m_oam.address); | |
| 1718 | state_save_register_global(machine, m_oam.priority_rotation); | |
| 1719 | state_save_register_global(machine, m_oam.next_charmap); | |
| 1720 | state_save_register_global(machine, m_oam.next_size); | |
| 1721 | state_save_register_global(machine, m_oam.size); | |
| 1722 | state_save_register_global(machine, m_oam.next_name_select); | |
| 1723 | state_save_register_global(machine, m_oam.name_select); | |
| 1724 | state_save_register_global(machine, m_oam.first_sprite); | |
| 1725 | state_save_register_global(machine, m_oam.flip); | |
| 1726 | state_save_register_global(machine, m_oam.write_latch); | |
| 1713 | machine.save().save_item(NAME(m_oam.address_low)); | |
| 1714 | machine.save().save_item(NAME(m_oam.address_high)); | |
| 1715 | machine.save().save_item(NAME(m_oam.saved_address_low)); | |
| 1716 | machine.save().save_item(NAME(m_oam.saved_address_high)); | |
| 1717 | machine.save().save_item(NAME(m_oam.address)); | |
| 1718 | machine.save().save_item(NAME(m_oam.priority_rotation)); | |
| 1719 | machine.save().save_item(NAME(m_oam.next_charmap)); | |
| 1720 | machine.save().save_item(NAME(m_oam.next_size)); | |
| 1721 | machine.save().save_item(NAME(m_oam.size)); | |
| 1722 | machine.save().save_item(NAME(m_oam.next_name_select)); | |
| 1723 | machine.save().save_item(NAME(m_oam.name_select)); | |
| 1724 | machine.save().save_item(NAME(m_oam.first_sprite)); | |
| 1725 | machine.save().save_item(NAME(m_oam.flip)); | |
| 1726 | machine.save().save_item(NAME(m_oam.write_latch)); | |
| 1727 | 1727 | |
| 1728 | state_save_register_global(machine, m_beam.latch_horz); | |
| 1729 | state_save_register_global(machine, m_beam.latch_vert); | |
| 1730 | state_save_register_global(machine, m_beam.current_horz); | |
| 1731 | state_save_register_global(machine, m_beam.current_vert); | |
| 1732 | state_save_register_global(machine, m_beam.last_visible_line); | |
| 1733 | state_save_register_global(machine, m_beam.interlace_count); | |
| 1728 | machine.save().save_item(NAME(m_beam.latch_horz)); | |
| 1729 | machine.save().save_item(NAME(m_beam.latch_vert)); | |
| 1730 | machine.save().save_item(NAME(m_beam.current_horz)); | |
| 1731 | machine.save().save_item(NAME(m_beam.current_vert)); | |
| 1732 | machine.save().save_item(NAME(m_beam.last_visible_line)); | |
| 1733 | machine.save().save_item(NAME(m_beam.interlace_count)); | |
| 1734 | 1734 | |
| 1735 | state_save_register_global(machine, m_mode7.repeat); | |
| 1736 | state_save_register_global(machine, m_mode7.hflip); | |
| 1737 | state_save_register_global(machine, m_mode7.vflip); | |
| 1738 | state_save_register_global(machine, m_mode7.matrix_a); | |
| 1739 | state_save_register_global(machine, m_mode7.matrix_b); | |
| 1740 | state_save_register_global(machine, m_mode7.matrix_c); | |
| 1741 | state_save_register_global(machine, m_mode7.matrix_d); | |
| 1742 | state_save_register_global(machine, m_mode7.origin_x); | |
| 1743 | state_save_register_global(machine, m_mode7.origin_y); | |
| 1744 | state_save_register_global(machine, m_mode7.hor_offset); | |
| 1745 | state_save_register_global(machine, m_mode7.ver_offset); | |
| 1746 | state_save_register_global(machine, m_mode7.extbg); | |
| 1735 | machine.save().save_item(NAME(m_mode7.repeat)); | |
| 1736 | machine.save().save_item(NAME(m_mode7.hflip)); | |
| 1737 | machine.save().save_item(NAME(m_mode7.vflip)); | |
| 1738 | machine.save().save_item(NAME(m_mode7.matrix_a)); | |
| 1739 | machine.save().save_item(NAME(m_mode7.matrix_b)); | |
| 1740 | machine.save().save_item(NAME(m_mode7.matrix_c)); | |
| 1741 | machine.save().save_item(NAME(m_mode7.matrix_d)); | |
| 1742 | machine.save().save_item(NAME(m_mode7.origin_x)); | |
| 1743 | machine.save().save_item(NAME(m_mode7.origin_y)); | |
| 1744 | machine.save().save_item(NAME(m_mode7.hor_offset)); | |
| 1745 | machine.save().save_item(NAME(m_mode7.ver_offset)); | |
| 1746 | machine.save().save_item(NAME(m_mode7.extbg)); | |
| 1747 | 1747 | |
| 1748 | state_save_register_global(machine, m_mosaic_size); | |
| 1749 | state_save_register_global(machine, m_clip_to_black); | |
| 1750 | state_save_register_global(machine, m_prevent_color_math); | |
| 1751 | state_save_register_global(machine, m_sub_add_mode); | |
| 1752 | state_save_register_global(machine, m_bg3_priority_bit); | |
| 1753 | state_save_register_global(machine, m_direct_color); | |
| 1754 | state_save_register_global(machine, m_ppu_last_scroll); | |
| 1755 | state_save_register_global(machine, m_mode7_last_scroll); | |
| 1748 | machine.save().save_item(NAME(m_mosaic_size)); | |
| 1749 | machine.save().save_item(NAME(m_clip_to_black)); | |
| 1750 | machine.save().save_item(NAME(m_prevent_color_math)); | |
| 1751 | machine.save().save_item(NAME(m_sub_add_mode)); | |
| 1752 | machine.save().save_item(NAME(m_bg3_priority_bit)); | |
| 1753 | machine.save().save_item(NAME(m_direct_color)); | |
| 1754 | machine.save().save_item(NAME(m_ppu_last_scroll)); | |
| 1755 | machine.save().save_item(NAME(m_mode7_last_scroll)); | |
| 1756 | 1756 | |
| 1757 | state_save_register_global(machine, m_ppu1_open_bus); | |
| 1758 | state_save_register_global(machine, m_ppu2_open_bus); | |
| 1759 | state_save_register_global(machine, m_ppu1_version); | |
| 1760 | state_save_register_global(machine, m_ppu2_version); | |
| 1761 | state_save_register_global(machine, m_window1_left); | |
| 1762 | state_save_register_global(machine, m_window1_right); | |
| 1763 | state_save_register_global(machine, m_window2_left); | |
| 1764 | state_save_register_global(machine, m_window2_right); | |
| 1757 | machine.save().save_item(NAME(m_ppu1_open_bus)); | |
| 1758 | machine.save().save_item(NAME(m_ppu2_open_bus)); | |
| 1759 | machine.save().save_item(NAME(m_ppu1_version)); | |
| 1760 | machine.save().save_item(NAME(m_ppu2_version)); | |
| 1761 | machine.save().save_item(NAME(m_window1_left)); | |
| 1762 | machine.save().save_item(NAME(m_window1_right)); | |
| 1763 | machine.save().save_item(NAME(m_window2_left)); | |
| 1764 | machine.save().save_item(NAME(m_window2_right)); | |
| 1765 | 1765 | |
| 1766 | state_save_register_global(machine, m_update_windows); | |
| 1767 | state_save_register_global(machine, m_update_offsets); | |
| 1768 | state_save_register_global(machine, m_update_oam_list); | |
| 1769 | state_save_register_global(machine, m_mode); | |
| 1770 | state_save_register_global(machine, m_interlace); | |
| 1771 | state_save_register_global(machine, m_obj_interlace); | |
| 1772 | state_save_register_global(machine, m_screen_brightness); | |
| 1773 | state_save_register_global(machine, m_screen_disabled); | |
| 1774 | state_save_register_global(machine, m_pseudo_hires); | |
| 1775 | state_save_register_global(machine, m_color_modes); | |
| 1776 | state_save_register_global(machine, m_stat77); | |
| 1777 | state_save_register_global(machine, m_stat78); | |
| 1766 | machine.save().save_item(NAME(m_update_windows)); | |
| 1767 | machine.save().save_item(NAME(m_update_offsets)); | |
| 1768 | machine.save().save_item(NAME(m_update_oam_list)); | |
| 1769 | machine.save().save_item(NAME(m_mode)); | |
| 1770 | machine.save().save_item(NAME(m_interlace)); | |
| 1771 | machine.save().save_item(NAME(m_obj_interlace)); | |
| 1772 | machine.save().save_item(NAME(m_screen_brightness)); | |
| 1773 | machine.save().save_item(NAME(m_screen_disabled)); | |
| 1774 | machine.save().save_item(NAME(m_pseudo_hires)); | |
| 1775 | machine.save().save_item(NAME(m_color_modes)); | |
| 1776 | machine.save().save_item(NAME(m_stat77)); | |
| 1777 | machine.save().save_item(NAME(m_stat78)); | |
| 1778 | 1778 | |
| 1779 | state_save_register_global(machine, m_htmult); | |
| 1780 | state_save_register_global(machine, m_cgram_address); | |
| 1781 | state_save_register_global(machine, m_read_ophct); | |
| 1782 | state_save_register_global(machine, m_read_opvct); | |
| 1783 | state_save_register_global(machine, m_vram_fgr_high); | |
| 1784 | state_save_register_global(machine, m_vram_fgr_increment); | |
| 1785 | state_save_register_global(machine, m_vram_fgr_count); | |
| 1786 | state_save_register_global(machine, m_vram_fgr_mask); | |
| 1787 | state_save_register_global(machine, m_vram_fgr_shift); | |
| 1788 | state_save_register_global(machine, m_vram_read_buffer); | |
| 1789 | state_save_register_global(machine, m_vmadd); | |
| 1779 | machine.save().save_item(NAME(m_htmult)); | |
| 1780 | machine.save().save_item(NAME(m_cgram_address)); | |
| 1781 | machine.save().save_item(NAME(m_read_ophct)); | |
| 1782 | machine.save().save_item(NAME(m_read_opvct)); | |
| 1783 | machine.save().save_item(NAME(m_vram_fgr_high)); | |
| 1784 | machine.save().save_item(NAME(m_vram_fgr_increment)); | |
| 1785 | machine.save().save_item(NAME(m_vram_fgr_count)); | |
| 1786 | machine.save().save_item(NAME(m_vram_fgr_mask)); | |
| 1787 | machine.save().save_item(NAME(m_vram_fgr_shift)); | |
| 1788 | machine.save().save_item(NAME(m_vram_read_buffer)); | |
| 1789 | machine.save().save_item(NAME(m_vmadd)); | |
| 1790 | 1790 | |
| 1791 | s | |
| 1791 | machine.save().save_item(NAME(m_regs)); | |
| 1792 | 1792 | |
| 1793 | state_save_register_global_pointer(machine, m_vram, SNES_VRAM_SIZE); | |
| 1794 | state_save_register_global_pointer(machine, m_cgram, SNES_CGRAM_SIZE/2); | |
| 1795 | state_save_register_global_pointer(machine, m_oam_ram, SNES_OAM_SIZE/2); | |
| 1793 | machine.save().save_pointer(NAME(m_vram), SNES_VRAM_SIZE); | |
| 1794 | machine.save().save_pointer(NAME(m_cgram), SNES_CGRAM_SIZE/2); | |
| 1795 | machine.save().save_pointer(NAME(m_oam_ram), SNES_OAM_SIZE/2); | |
| 1796 | 1796 | } |
| 1797 | 1797 | |
| 1798 | 1798 |
| r22709 | r22710 | |
|---|---|---|
| 380 | 380 | |
| 381 | 381 | void galaxold_state::state_save_register() |
| 382 | 382 | { |
| 383 | state_save_register_global_array(machine(), m_gfxbank); | |
| 384 | state_save_register_global(machine(), m_flipscreen_x); | |
| 385 | state_save_register_global(machine(), m_flipscreen_y); | |
| 383 | save_item(NAME(m_gfxbank)); | |
| 384 | save_item(NAME(m_flipscreen_x)); | |
| 385 | save_item(NAME(m_flipscreen_y)); | |
| 386 | 386 | |
| 387 | state_save_register_global(machine(), m_stars_on); | |
| 388 | state_save_register_global(machine(), m_stars_scrollpos); | |
| 389 | state_save_register_global(machine(), m_stars_blink_state); | |
| 387 | save_item(NAME(m_stars_on)); | |
| 388 | save_item(NAME(m_stars_scrollpos)); | |
| 389 | save_item(NAME(m_stars_blink_state)); | |
| 390 | 390 | |
| 391 | s | |
| 391 | save_item(NAME(m_darkplnt_bullet_color)); | |
| 392 | 392 | |
| 393 | state_save_register_global(machine(), m_background_enable); | |
| 394 | state_save_register_global(machine(), m_background_red); | |
| 395 | state_save_register_global(machine(), m_background_green); | |
| 396 | state_save_register_global(machine(), m_background_blue); | |
| 393 | save_item(NAME(m_background_enable)); | |
| 394 | save_item(NAME(m_background_red)); | |
| 395 | save_item(NAME(m_background_green)); | |
| 396 | save_item(NAME(m_background_blue)); | |
| 397 | 397 | } |
| 398 | 398 | |
| 399 | 399 | void galaxold_state::video_start_common() |
| r22709 | r22710 | |
| 628 | 628 | m_modify_spritecode = &galaxold_state::rockclim_modify_spritecode; |
| 629 | 629 | |
| 630 | 630 | m_rockclim_v = m_rockclim_h = 0; |
| 631 | state_save_register_global(machine(), m_rockclim_v); | |
| 632 | state_save_register_global(machine(), m_rockclim_h); | |
| 631 | save_item(NAME(m_rockclim_v)); | |
| 632 | save_item(NAME(m_rockclim_h)); | |
| 633 | 633 | } |
| 634 | 634 | |
| 635 | 635 | TILE_GET_INFO_MEMBER(galaxold_state::drivfrcg_get_tile_info) |
| r22709 | r22710 | |
|---|---|---|
| 641 | 641 | memset(m_fg2scroll8, 0, 0x10); |
| 642 | 642 | |
| 643 | 643 | /* Register for save/restore */ |
| 644 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 645 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 646 | state_save_register_global(machine(), m_sprites_disabled); | |
| 647 | state_save_register_global(machine(), m_interrupt_line_1); | |
| 648 | state_save_register_global(machine(), m_interrupt_line_2); | |
| 644 | save_item(NAME(m_bgscroll8)); | |
| 645 | save_item(NAME(m_fgscroll8)); | |
| 646 | save_item(NAME(m_sprites_disabled)); | |
| 647 | save_item(NAME(m_interrupt_line_1)); | |
| 648 | save_item(NAME(m_interrupt_line_2)); | |
| 649 | 649 | } |
| 650 | 650 | |
| 651 | 651 | VIDEO_START_MEMBER(dooyong_state,gulfstrm) |
| r22709 | r22710 | |
| 680 | 680 | memset(m_fg2scroll8, 0, 0x10); |
| 681 | 681 | |
| 682 | 682 | /* Register for save/restore */ |
| 683 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 684 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 685 | state_save_register_global(machine(), m_interrupt_line_1); | |
| 686 | state_save_register_global(machine(), m_interrupt_line_2); | |
| 683 | save_item(NAME(m_bgscroll8)); | |
| 684 | save_item(NAME(m_fgscroll8)); | |
| 685 | save_item(NAME(m_interrupt_line_1)); | |
| 686 | save_item(NAME(m_interrupt_line_2)); | |
| 687 | 687 | } |
| 688 | 688 | |
| 689 | 689 | VIDEO_START_MEMBER(dooyong_state,pollux) |
| r22709 | r22710 | |
| 715 | 715 | memset(m_fg2scroll8, 0, 0x10); |
| 716 | 716 | |
| 717 | 717 | /* Register for save/restore */ |
| 718 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 719 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 720 | state_save_register_global(machine(), m_interrupt_line_1); | |
| 721 | state_save_register_global(machine(), m_interrupt_line_2); | |
| 718 | save_item(NAME(m_bgscroll8)); | |
| 719 | save_item(NAME(m_fgscroll8)); | |
| 720 | save_item(NAME(m_interrupt_line_1)); | |
| 721 | save_item(NAME(m_interrupt_line_2)); | |
| 722 | 722 | } |
| 723 | 723 | |
| 724 | 724 | VIDEO_START_MEMBER(dooyong_state,bluehawk) |
| r22709 | r22710 | |
| 756 | 756 | memset(m_fg2scroll8, 0, 0x10); |
| 757 | 757 | |
| 758 | 758 | /* Register for save/restore */ |
| 759 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 760 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 761 | state_save_register_global_array(machine(), m_fg2scroll8); | |
| 759 | save_item(NAME(m_bgscroll8)); | |
| 760 | save_item(NAME(m_fgscroll8)); | |
| 761 | save_item(NAME(m_fg2scroll8)); | |
| 762 | 762 | } |
| 763 | 763 | |
| 764 | 764 | VIDEO_START_MEMBER(dooyong_state,flytiger) |
| r22709 | r22710 | |
| 791 | 791 | memset(m_fg2scroll8, 0, 0x10); |
| 792 | 792 | |
| 793 | 793 | /* Register for save/restore */ |
| 794 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 795 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 796 | state_save_register_global(machine(), m_flytiger_pri); | |
| 794 | save_item(NAME(m_bgscroll8)); | |
| 795 | save_item(NAME(m_fgscroll8)); | |
| 796 | save_item(NAME(m_flytiger_pri)); | |
| 797 | 797 | } |
| 798 | 798 | |
| 799 | 799 | VIDEO_START_MEMBER(dooyong_state,primella) |
| r22709 | r22710 | |
| 825 | 825 | memset(m_fg2scroll8, 0, 0x10); |
| 826 | 826 | |
| 827 | 827 | /* Register for save/restore */ |
| 828 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 829 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 830 | state_save_register_global(machine(), m_tx_pri); | |
| 828 | save_item(NAME(m_bgscroll8)); | |
| 829 | save_item(NAME(m_fgscroll8)); | |
| 830 | save_item(NAME(m_tx_pri)); | |
| 831 | 831 | } |
| 832 | 832 | |
| 833 | 833 | VIDEO_START_MEMBER(dooyong_state,rshark) |
| r22709 | r22710 | |
| 867 | 867 | memset(m_fg2scroll8, 0, 0x10); |
| 868 | 868 | |
| 869 | 869 | /* Register for save/restore */ |
| 870 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 871 | state_save_register_global_array(machine(), m_bg2scroll8); | |
| 872 | state_save_register_global_array(machine(), m_fgscroll8); | |
| 873 | state_save_register_global_array(machine(), m_fg2scroll8); | |
| 874 | state_save_register_global(machine(), m_rshark_pri); | |
| 870 | save_item(NAME(m_bgscroll8)); | |
| 871 | save_item(NAME(m_bg2scroll8)); | |
| 872 | save_item(NAME(m_fgscroll8)); | |
| 873 | save_item(NAME(m_fg2scroll8)); | |
| 874 | save_item(NAME(m_rshark_pri)); | |
| 875 | 875 | } |
| 876 | 876 | |
| 877 | 877 | VIDEO_START_MEMBER(dooyong_state,popbingo) |
| r22709 | r22710 | |
| 891 | 891 | memset(m_fg2scroll8, 0, 0x10); |
| 892 | 892 | |
| 893 | 893 | /* Register for save/restore */ |
| 894 | state_save_register_global_array(machine(), m_bgscroll8); | |
| 895 | state_save_register_global_array(machine(), m_bg2scroll8); // Not used atm | |
| 896 | state_save_register_global_array(machine(), m_fgscroll8); // Not used atm | |
| 897 | state_save_register_global_array(machine(), m_fg2scroll8); // Not used atm | |
| 898 | state_save_register_global(machine(), m_rshark_pri); | |
| 894 | save_item(NAME(m_bgscroll8)); | |
| 895 | save_item(NAME(m_bg2scroll8)); // Not used atm | |
| 896 | save_item(NAME(m_fgscroll8)); // Not used atm | |
| 897 | save_item(NAME(m_fg2scroll8)); // Not used atm | |
| 898 | save_item(NAME(m_rshark_pri)); | |
| 899 | 899 | } |
| r22709 | r22710 | |
|---|---|---|
| 55 | 55 | |
| 56 | 56 | m_poly = auto_alloc(machine(), midvunit_renderer(*this)); |
| 57 | 57 | |
| 58 | state_save_register_global_array(machine(), m_video_regs); | |
| 59 | state_save_register_global_array(machine(), m_dma_data); | |
| 60 | state_save_register_global(machine(), m_dma_data_index); | |
| 61 | state_save_register_global(machine(), m_page_control); | |
| 62 | state_save_register_global(machine(), m_video_changed); | |
| 58 | save_item(NAME(m_video_regs)); | |
| 59 | save_item(NAME(m_dma_data)); | |
| 60 | save_item(NAME(m_dma_data_index)); | |
| 61 | save_item(NAME(m_page_control)); | |
| 62 | save_item(NAME(m_video_changed)); | |
| 63 | 63 | } |
| 64 | 64 | |
| 65 | 65 |
| r22709 | r22710 | |
|---|---|---|
| 81 | 81 | |
| 82 | 82 | static void gtia_state(running_machine &machine) |
| 83 | 83 | { |
| 84 | state_save_register_global(machine, gtia.r.m0pf); | |
| 85 | state_save_register_global(machine, gtia.r.m1pf); | |
| 86 | state_save_register_global(machine, gtia.r.m2pf); | |
| 87 | state_save_register_global(machine, gtia.r.m3pf); | |
| 88 | state_save_register_global(machine, gtia.r.p0pf); | |
| 89 | state_save_register_global(machine, gtia.r.p1pf); | |
| 90 | state_save_register_global(machine, gtia.r.p2pf); | |
| 91 | state_save_register_global(machine, gtia.r.p3pf); | |
| 92 | state_save_register_global(machine, gtia.r.m0pl); | |
| 93 | state_save_register_global(machine, gtia.r.m1pl); | |
| 94 | state_save_register_global(machine, gtia.r.m2pl); | |
| 95 | state_save_register_global(machine, gtia.r.m3pl); | |
| 96 | state_save_register_global(machine, gtia.r.p0pl); | |
| 97 | state_save_register_global(machine, gtia.r.p1pl); | |
| 98 | state_save_register_global(machine, gtia.r.p2pl); | |
| 99 | state_save_register_global(machine, gtia.r.p3pl); | |
| 100 | state_save_register_global_array(machine, gtia.r.but); | |
| 101 | state_save_register_global(machine, gtia.r.pal); | |
| 102 | state_save_register_global(machine, gtia.r.gtia15); | |
| 103 | state_save_register_global(machine, gtia.r.gtia16); | |
| 104 | state_save_register_global(machine, gtia.r.gtia17); | |
| 105 | state_save_register_global(machine, gtia.r.gtia18); | |
| 106 | state_save_register_global(machine, gtia.r.gtia19); | |
| 107 | state_save_register_global(machine, gtia.r.gtia1a); | |
| 108 | state_save_register_global(machine, gtia.r.gtia1b); | |
| 109 | state_save_register_global(machine, gtia.r.gtia1c); | |
| 110 | state_save_register_global(machine, gtia.r.gtia1d); | |
| 111 | state_save_register_global(machine, gtia.r.gtia1e); | |
| 112 | state_save_register_global(machine, gtia.r.cons); | |
| 113 | state_save_register_global(machine, gtia.w.hposp0); | |
| 114 | state_save_register_global(machine, gtia.w.hposp1); | |
| 115 | state_save_register_global(machine, gtia.w.hposp2); | |
| 116 | state_save_register_global(machine, gtia.w.hposp3); | |
| 117 | state_save_register_global(machine, gtia.w.hposm0); | |
| 118 | state_save_register_global(machine, gtia.w.hposm1); | |
| 119 | state_save_register_global(machine, gtia.w.hposm2); | |
| 120 | state_save_register_global(machine, gtia.w.hposm3); | |
| 121 | state_save_register_global(machine, gtia.w.sizep0); | |
| 122 | state_save_register_global(machine, gtia.w.sizep1); | |
| 123 | state_save_register_global(machine, gtia.w.sizep2); | |
| 124 | state_save_register_global(machine, gtia.w.sizep3); | |
| 125 | state_save_register_global(machine, gtia.w.sizem); | |
| 126 | state_save_register_global_array(machine, gtia.w.grafp0); | |
| 127 | state_save_register_global_array(machine, gtia.w.grafp1); | |
| 128 | state_save_register_global_array(machine, gtia.w.grafp2); | |
| 129 | state_save_register_global_array(machine, gtia.w.grafp3); | |
| 130 | state_save_register_global_array(machine, gtia.w.grafm); | |
| 131 | state_save_register_global(machine, gtia.w.colpm0); | |
| 132 | state_save_register_global(machine, gtia.w.colpm1); | |
| 133 | state_save_register_global(machine, gtia.w.colpm2); | |
| 134 | state_save_register_global(machine, gtia.w.colpm3); | |
| 135 | state_save_register_global(machine, gtia.w.colpf0); | |
| 136 | state_save_register_global(machine, gtia.w.colpf1); | |
| 137 | state_save_register_global(machine, gtia.w.colpf2); | |
| 138 | state_save_register_global(machine, gtia.w.colpf3); | |
| 139 | state_save_register_global(machine, gtia.w.colbk); | |
| 140 | state_save_register_global(machine, gtia.w.prior); | |
| 141 | state_save_register_global(machine, gtia.w.vdelay); | |
| 142 | state_save_register_global(machine, gtia.w.gractl); | |
| 143 | state_save_register_global(machine, gtia.w.hitclr); | |
| 144 | state_save_register_global(machine, gtia.w.cons); | |
| 84 | machine.save().save_item(NAME(gtia.r.m0pf)); | |
| 85 | machine.save().save_item(NAME(gtia.r.m1pf)); | |
| 86 | machine.save().save_item(NAME(gtia.r.m2pf)); | |
| 87 | machine.save().save_item(NAME(gtia.r.m3pf)); | |
| 88 | machine.save().save_item(NAME(gtia.r.p0pf)); | |
| 89 | machine.save().save_item(NAME(gtia.r.p1pf)); | |
| 90 | machine.save().save_item(NAME(gtia.r.p2pf)); | |
| 91 | machine.save().save_item(NAME(gtia.r.p3pf)); | |
| 92 | machine.save().save_item(NAME(gtia.r.m0pl)); | |
| 93 | machine.save().save_item(NAME(gtia.r.m1pl)); | |
| 94 | machine.save().save_item(NAME(gtia.r.m2pl)); | |
| 95 | machine.save().save_item(NAME(gtia.r.m3pl)); | |
| 96 | machine.save().save_item(NAME(gtia.r.p0pl)); | |
| 97 | machine.save().save_item(NAME(gtia.r.p1pl)); | |
| 98 | machine.save().save_item(NAME(gtia.r.p2pl)); | |
| 99 | machine.save().save_item(NAME(gtia.r.p3pl)); | |
| 100 | machine.save().save_item(NAME(gtia.r.but)); | |
| 101 | machine.save().save_item(NAME(gtia.r.pal)); | |
| 102 | machine.save().save_item(NAME(gtia.r.gtia15)); | |
| 103 | machine.save().save_item(NAME(gtia.r.gtia16)); | |
| 104 | machine.save().save_item(NAME(gtia.r.gtia17)); | |
| 105 | machine.save().save_item(NAME(gtia.r.gtia18)); | |
| 106 | machine.save().save_item(NAME(gtia.r.gtia19)); | |
| 107 | machine.save().save_item(NAME(gtia.r.gtia1a)); | |
| 108 | machine.save().save_item(NAME(gtia.r.gtia1b)); | |
| 109 | machine.save().save_item(NAME(gtia.r.gtia1c)); | |
| 110 | machine.save().save_item(NAME(gtia.r.gtia1d)); | |
| 111 | machine.save().save_item(NAME(gtia.r.gtia1e)); | |
| 112 | machine.save().save_item(NAME(gtia.r.cons)); | |
| 113 | machine.save().save_item(NAME(gtia.w.hposp0)); | |
| 114 | machine.save().save_item(NAME(gtia.w.hposp1)); | |
| 115 | machine.save().save_item(NAME(gtia.w.hposp2)); | |
| 116 | machine.save().save_item(NAME(gtia.w.hposp3)); | |
| 117 | machine.save().save_item(NAME(gtia.w.hposm0)); | |
| 118 | machine.save().save_item(NAME(gtia.w.hposm1)); | |
| 119 | machine.save().save_item(NAME(gtia.w.hposm2)); | |
| 120 | machine.save().save_item(NAME(gtia.w.hposm3)); | |
| 121 | machine.save().save_item(NAME(gtia.w.sizep0)); | |
| 122 | machine.save().save_item(NAME(gtia.w.sizep1)); | |
| 123 | machine.save().save_item(NAME(gtia.w.sizep2)); | |
| 124 | machine.save().save_item(NAME(gtia.w.sizep3)); | |
| 125 | machine.save().save_item(NAME(gtia.w.sizem)); | |
| 126 | machine.save().save_item(NAME(gtia.w.grafp0)); | |
| 127 | machine.save().save_item(NAME(gtia.w.grafp1)); | |
| 128 | machine.save().save_item(NAME(gtia.w.grafp2)); | |
| 129 | machine.save().save_item(NAME(gtia.w.grafp3)); | |
| 130 | machine.save().save_item(NAME(gtia.w.grafm)); | |
| 131 | machine.save().save_item(NAME(gtia.w.colpm0)); | |
| 132 | machine.save().save_item(NAME(gtia.w.colpm1)); | |
| 133 | machine.save().save_item(NAME(gtia.w.colpm2)); | |
| 134 | machine.save().save_item(NAME(gtia.w.colpm3)); | |
| 135 | machine.save().save_item(NAME(gtia.w.colpf0)); | |
| 136 | machine.save().save_item(NAME(gtia.w.colpf1)); | |
| 137 | machine.save().save_item(NAME(gtia.w.colpf2)); | |
| 138 | machine.save().save_item(NAME(gtia.w.colpf3)); | |
| 139 | machine.save().save_item(NAME(gtia.w.colbk)); | |
| 140 | machine.save().save_item(NAME(gtia.w.prior)); | |
| 141 | machine.save().save_item(NAME(gtia.w.vdelay)); | |
| 142 | machine.save().save_item(NAME(gtia.w.gractl)); | |
| 143 | machine.save().save_item(NAME(gtia.w.hitclr)); | |
| 144 | machine.save().save_item(NAME(gtia.w.cons)); | |
| 145 | 145 | machine.save().register_postload(save_prepost_delegate(FUNC(gtia_state_postload), &machine)); |
| 146 | 146 | } |
| 147 | 147 |
| r22709 | r22710 | |
|---|---|---|
| 196 | 196 | |
| 197 | 197 | VIDEO_START( adder2 ) |
| 198 | 198 | { |
| 199 | state_save_register_global(machine, adder2_screen_page_reg); | |
| 200 | state_save_register_global(machine, adder2_c101); | |
| 201 | state_save_register_global(machine, adder2_rx); | |
| 202 | state_save_register_global(machine, adder_vbl_triggered); | |
| 203 | state_save_register_global(machine, adder2_acia_triggered); | |
| 199 | machine.save().save_item(NAME(adder2_screen_page_reg)); | |
| 200 | machine.save().save_item(NAME(adder2_c101)); | |
| 201 | machine.save().save_item(NAME(adder2_rx)); | |
| 202 | machine.save().save_item(NAME(adder_vbl_triggered)); | |
| 203 | machine.save().save_item(NAME(adder2_acia_triggered)); | |
| 204 | 204 | |
| 205 | state_save_register_global(machine, adder2_data_from_sc2); | |
| 206 | state_save_register_global(machine, adder2_data_to_sc2); | |
| 205 | machine.save().save_item(NAME(adder2_data_from_sc2)); | |
| 206 | machine.save().save_item(NAME(adder2_data_to_sc2)); | |
| 207 | 207 | |
| 208 | 208 | state_save_register_item_array(machine, "Adder", NULL, 0, adder_ram); |
| 209 | 209 | state_save_register_item_2d_array(machine, "Adder", NULL, 0, adder_screen_ram); |
| r22709 | r22710 | |
|---|---|---|
| 68 | 68 | UINT8 * prom14D = memregion("user2")->base(); |
| 69 | 69 | |
| 70 | 70 | /* Set up save state */ |
| 71 | s | |
| 71 | save_item(NAME(m_flipscreen)); | |
| 72 | 72 | |
| 73 | 73 | m_prom_tab = auto_alloc_array(machine(), UINT32, 256); |
| 74 | 74 |
| r22709 | r22710 | |
|---|---|---|
| 135 | 135 | m_tx_layer = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(goal92_state::get_text_tile_info),this), TILEMAP_SCAN_ROWS, 8, 8, 64, 32); |
| 136 | 136 | |
| 137 | 137 | m_buffered_spriteram = auto_alloc_array(machine(), UINT16, 0x400 * 2); |
| 138 | s | |
| 138 | save_pointer(NAME(m_buffered_spriteram), 0x400 * 2); | |
| 139 | 139 | |
| 140 | 140 | m_bg_layer->set_transparent_pen(15); |
| 141 | 141 | m_fg_layer->set_transparent_pen(15); |
| r22709 | r22710 | |
|---|---|---|
| 151 | 151 | |
| 152 | 152 | m_sprite_border_collision_bitmap = auto_bitmap_ind16_alloc(machine(), SPRITE_WIDTH, SPRITE_HEIGHT); |
| 153 | 153 | |
| 154 | state_save_register_global_bitmap(machine(), m_sprite_sprite_collision_bitmap1); | |
| 155 | state_save_register_global_bitmap(machine(), m_sprite_sprite_collision_bitmap2); | |
| 156 | state_save_register_global_bitmap(machine(), m_sprite_goal_collision_bitmap1); | |
| 157 | state_save_register_global_bitmap(machine(), m_sprite_goal_collision_bitmap2); | |
| 158 | state_save_register_global_bitmap(machine(), m_sprite_border_collision_bitmap); | |
| 154 | save_item(NAME(m_sprite_sprite_collision_bitmap1)); | |
| 155 | save_item(NAME(m_sprite_sprite_collision_bitmap2)); | |
| 156 | save_item(NAME(m_sprite_goal_collision_bitmap1)); | |
| 157 | save_item(NAME(m_sprite_goal_collision_bitmap2)); | |
| 158 | save_item(NAME(m_sprite_border_collision_bitmap)); | |
| 159 | 159 | } |
| 160 | 160 | |
| 161 | 161 |
| r22709 | r22710 | |
|---|---|---|
| 18 | 18 | |
| 19 | 19 | void astrocde_state::machine_start() |
| 20 | 20 | { |
| 21 | state_save_register_global(machine(), m_port_1_last); | |
| 22 | state_save_register_global(machine(), m_port_2_last); | |
| 23 | state_save_register_global(machine(), m_ram_write_enable); | |
| 24 | state_save_register_global(machine(), m_input_select); | |
| 25 | state_save_register_global(machine(), m_profpac_bank); | |
| 21 | save_item(NAME(m_port_1_last)); | |
| 22 | save_item(NAME(m_port_2_last)); | |
| 23 | save_item(NAME(m_ram_write_enable)); | |
| 24 | save_item(NAME(m_input_select)); | |
| 25 | save_item(NAME(m_profpac_bank)); | |
| 26 | 26 | |
| 27 | 27 | m_port_1_last = m_port_2_last = 0xff; |
| 28 | 28 | } |
| r22709 | r22710 | |
| 192 | 192 | init_savestate(); |
| 193 | 193 | |
| 194 | 194 | /* register our specific save state data */ |
| 195 | state_save_register_global_pointer(machine(), m_profpac_videoram, 0x4000 * 4); | |
| 196 | state_save_register_global_array(machine(), m_profpac_palette); | |
| 197 | state_save_register_global_array(machine(), m_profpac_colormap); | |
| 198 | state_save_register_global(machine(), m_profpac_intercept); | |
| 199 | state_save_register_global(machine(), m_profpac_vispage); | |
| 200 | state_save_register_global(machine(), m_profpac_readpage); | |
| 201 | state_save_register_global(machine(), m_profpac_readshift); | |
| 202 | state_save_register_global(machine(), m_profpac_writepage); | |
| 203 | state_save_register_global(machine(), m_profpac_writemode); | |
| 204 | state_save_register_global(machine(), m_profpac_writemask); | |
| 205 | state_save_register_global(machine(), m_profpac_vw); | |
| 195 | save_pointer(NAME(m_profpac_videoram), 0x4000 * 4); | |
| 196 | save_item(NAME(m_profpac_palette)); | |
| 197 | save_item(NAME(m_profpac_colormap)); | |
| 198 | save_item(NAME(m_profpac_intercept)); | |
| 199 | save_item(NAME(m_profpac_vispage)); | |
| 200 | save_item(NAME(m_profpac_readpage)); | |
| 201 | save_item(NAME(m_profpac_readshift)); | |
| 202 | save_item(NAME(m_profpac_writepage)); | |
| 203 | save_item(NAME(m_profpac_writemode)); | |
| 204 | save_item(NAME(m_profpac_writemask)); | |
| 205 | save_item(NAME(m_profpac_vw)); | |
| 206 | 206 | } |
| 207 | 207 | |
| 208 | 208 | |
| 209 | 209 | void astrocde_state::init_savestate() |
| 210 | 210 | { |
| 211 | s | |
| 211 | save_item(NAME(m_sparkle)); | |
| 212 | 212 | |
| 213 | state_save_register_global(machine(), m_interrupt_enabl); | |
| 214 | state_save_register_global(machine(), m_interrupt_vector); | |
| 215 | state_save_register_global(machine(), m_interrupt_scanline); | |
| 216 | state_save_register_global(machine(), m_vertical_feedback); | |
| 217 | state_save_register_global(machine(), m_horizontal_feedback); | |
| 213 | save_item(NAME(m_interrupt_enabl)); | |
| 214 | save_item(NAME(m_interrupt_vector)); | |
| 215 | save_item(NAME(m_interrupt_scanline)); | |
| 216 | save_item(NAME(m_vertical_feedback)); | |
| 217 | save_item(NAME(m_horizontal_feedback)); | |
| 218 | 218 | |
| 219 | state_save_register_global_array(machine(), m_colors); | |
| 220 | state_save_register_global(machine(), m_colorsplit); | |
| 221 | state_save_register_global(machine(), m_bgdata); | |
| 222 | state_save_register_global(machine(), m_vblank); | |
| 223 | state_save_register_global(machine(), m_video_mode); | |
| 219 | save_item(NAME(m_colors)); | |
| 220 | save_item(NAME(m_colorsplit)); | |
| 221 | save_item(NAME(m_bgdata)); | |
| 222 | save_item(NAME(m_vblank)); | |
| 223 | save_item(NAME(m_video_mode)); | |
| 224 | 224 | |
| 225 | state_save_register_global_array(machine(), m_funcgen_expand_color); | |
| 226 | state_save_register_global(machine(), m_funcgen_control); | |
| 227 | state_save_register_global(machine(), m_funcgen_expand_count); | |
| 228 | state_save_register_global(machine(), m_funcgen_rotate_count); | |
| 229 | state_save_register_global_array(machine(), m_funcgen_rotate_data); | |
| 230 | state_save_register_global(machine(), m_funcgen_shift_prev_data); | |
| 231 | state_save_register_global(machine(), m_funcgen_intercept); | |
| 225 | save_item(NAME(m_funcgen_expand_color)); | |
| 226 | save_item(NAME(m_funcgen_control)); | |
| 227 | save_item(NAME(m_funcgen_expand_count)); | |
| 228 | save_item(NAME(m_funcgen_rotate_count)); | |
| 229 | save_item(NAME(m_funcgen_rotate_data)); | |
| 230 | save_item(NAME(m_funcgen_shift_prev_data)); | |
| 231 | save_item(NAME(m_funcgen_intercept)); | |
| 232 | 232 | |
| 233 | state_save_register_global(machine(), m_pattern_source); | |
| 234 | state_save_register_global(machine(), m_pattern_mode); | |
| 235 | state_save_register_global(machine(), m_pattern_dest); | |
| 236 | state_save_register_global(machine(), m_pattern_skip); | |
| 237 | state_save_register_global(machine(), m_pattern_width); | |
| 238 | state_save_register_global(machine(), m_pattern_height); | |
| 233 | save_item(NAME(m_pattern_source)); | |
| 234 | save_item(NAME(m_pattern_mode)); | |
| 235 | save_item(NAME(m_pattern_dest)); | |
| 236 | save_item(NAME(m_pattern_skip)); | |
| 237 | save_item(NAME(m_pattern_width)); | |
| 238 | save_item(NAME(m_pattern_height)); | |
| 239 | 239 | } |
| 240 | 240 | |
| 241 | 241 |
| r22709 | r22710 | |
|---|---|---|
| 138 | 138 | m_sprite_bitmap = auto_bitmap_ind16_alloc(machine(), 512, 256); |
| 139 | 139 | |
| 140 | 140 | /* register for save stats */ |
| 141 | state_save_register_global(machine(), m_video_mode); | |
| 142 | state_save_register_global(machine(), m_mix_collide_summary); | |
| 143 | state_save_register_global(machine(), m_sprite_collide_summary); | |
| 141 | save_item(NAME(m_video_mode)); | |
| 142 | save_item(NAME(m_mix_collide_summary)); | |
| 143 | save_item(NAME(m_sprite_collide_summary)); | |
| 144 | 144 | save_pointer(NAME(m_videoram), 0x800 * pagecount); |
| 145 | state_save_register_global_pointer(machine(), m_mix_collide, 64); | |
| 146 | state_save_register_global_pointer(machine(), m_sprite_collide, 1024); | |
| 145 | save_pointer(NAME(m_mix_collide), 64); | |
| 146 | save_pointer(NAME(m_sprite_collide), 1024); | |
| 147 | 147 | } |
| 148 | 148 | |
| 149 | 149 |
| r22709 | r22710 | |
|---|---|---|
| 69 | 69 | m_fg_tilemap->set_transparent_pen(0); |
| 70 | 70 | m_bg_tilemap->set_scrolldx(256, 0); |
| 71 | 71 | |
| 72 | s | |
| 72 | save_item(NAME(m_scrollx)); | |
| 73 | 73 | } |
| 74 | 74 | |
| 75 | 75 | void renegade_state::draw_sprites(bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 454 | 454 | m_yoffset = 0; |
| 455 | 455 | |
| 456 | 456 | //TODO:FIX |
| 457 | //s | |
| 457 | //save_pointer(NAME(m_vregs), 0x40); | |
| 458 | 458 | } |
| 459 | 459 | |
| 460 | 460 | VIDEO_START_MEMBER(seta2_state,seta2_xoffset) |
| r22709 | r22710 | |
|---|---|---|
| 280 | 280 | zeus_renderbase = waveram[1]; |
| 281 | 281 | |
| 282 | 282 | /* state saving */ |
| 283 | state_save_register_global_array(machine(), zeus_fifo); | |
| 284 | state_save_register_global(machine(), zeus_fifo_words); | |
| 285 | state_save_register_global_2d_array(machine(), zeus_matrix); | |
| 286 | state_save_register_global_array(machine(), zeus_point); | |
| 287 | state_save_register_global_array(machine(), zeus_light); | |
| 288 | state_save_register_global(machine(), zeus_palbase); | |
| 289 | state_save_register_global(machine(), zeus_objdata); | |
| 290 | state_save_register_global(machine(), zeus_cliprect.min_x); | |
| 291 | state_save_register_global(machine(), zeus_cliprect.max_x); | |
| 292 | state_save_register_global(machine(), zeus_cliprect.min_y); | |
| 293 | state_save_register_global(machine(), zeus_cliprect.max_y); | |
| 294 | state_save_register_global_pointer(machine(), waveram[0], WAVERAM0_WIDTH * WAVERAM0_HEIGHT * 8 / sizeof(waveram[0][0])); | |
| 295 | state_save_register_global_pointer(machine(), waveram[1], WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 8 / sizeof(waveram[1][0])); | |
| 283 | save_item(NAME(zeus_fifo)); | |
| 284 | save_item(NAME(zeus_fifo_words)); | |
| 285 | save_item(NAME(zeus_matrix)); | |
| 286 | save_item(NAME(zeus_point)); | |
| 287 | save_item(NAME(zeus_light)); | |
| 288 | save_item(NAME(zeus_palbase)); | |
| 289 | save_item(NAME(zeus_objdata)); | |
| 290 | save_item(NAME(zeus_cliprect.min_x)); | |
| 291 | save_item(NAME(zeus_cliprect.max_x)); | |
| 292 | save_item(NAME(zeus_cliprect.min_y)); | |
| 293 | save_item(NAME(zeus_cliprect.max_y)); | |
| 294 | save_pointer(NAME(waveram[0]), WAVERAM0_WIDTH * WAVERAM0_HEIGHT * 8 / sizeof(waveram[0][0])); | |
| 295 | save_pointer(NAME(waveram[1]), WAVERAM1_WIDTH * WAVERAM1_HEIGHT * 8 / sizeof(waveram[1][0])); | |
| 296 | 296 | |
| 297 | 297 | /* hack */ |
| 298 | 298 | is_mk4b = strcmp(machine().system().name, "mk4b") == 0; |
| r22709 | r22710 | |
|---|---|---|
| 131 | 131 | } |
| 132 | 132 | |
| 133 | 133 | /* Register stuff for state saving */ |
| 134 | state_save_register_global_pointer(machine(), line_buffer[0].colour_buf, 512); | |
| 135 | state_save_register_global_pointer(machine(), line_buffer[0].intensity_buf, 512); | |
| 136 | state_save_register_global_pointer(machine(), line_buffer[0].priority_buf, 512); | |
| 134 | save_pointer(NAME(line_buffer[0].colour_buf), 512); | |
| 135 | save_pointer(NAME(line_buffer[0].intensity_buf), 512); | |
| 136 | save_pointer(NAME(line_buffer[0].priority_buf), 512); | |
| 137 | 137 | |
| 138 | state_save_register_global_pointer(machine(), line_buffer[1].colour_buf, 512); | |
| 139 | state_save_register_global_pointer(machine(), line_buffer[1].intensity_buf, 512); | |
| 140 | state_save_register_global_pointer(machine(), line_buffer[1].priority_buf, 512); | |
| 138 | save_pointer(NAME(line_buffer[1].colour_buf), 512); | |
| 139 | save_pointer(NAME(line_buffer[1].intensity_buf), 512); | |
| 140 | save_pointer(NAME(line_buffer[1].priority_buf), 512); | |
| 141 | 141 | |
| 142 | state_save_register_global(machine(), m_video_firq); | |
| 143 | state_save_register_global(machine(), m_bg_intensity); | |
| 144 | state_save_register_global(machine(), m_hblank); | |
| 145 | state_save_register_global(machine(), m_video_firq_en); | |
| 146 | state_save_register_global(machine(), m_frame_vbl); | |
| 147 | state_save_register_global(machine(), m_12sel); | |
| 142 | save_item(NAME(m_video_firq)); | |
| 143 | save_item(NAME(m_bg_intensity)); | |
| 144 | save_item(NAME(m_hblank)); | |
| 145 | save_item(NAME(m_video_firq_en)); | |
| 146 | save_item(NAME(m_frame_vbl)); | |
| 147 | save_item(NAME(m_12sel)); | |
| 148 | 148 | } |
| 149 | 149 | |
| 150 | 150 | UINT32 esripsys_state::screen_update_esripsys(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
|---|---|---|
| 1350 | 1350 | memset(K053246_regs, 0, 8); |
| 1351 | 1351 | memset(K053247_regs, 0, 32); |
| 1352 | 1352 | |
| 1353 | state_save_register_global_pointer(machine, K053247_ram, 0x800); | |
| 1354 | state_save_register_global_array(machine, K053246_regs); | |
| 1355 | state_save_register_global_array(machine, K053247_regs); | |
| 1356 | state_save_register_global(machine, K053246_OBJCHA_line); | |
| 1353 | machine.save().save_pointer(NAME(K053247_ram), 0x800); | |
| 1354 | machine.save().save_item(NAME(K053246_regs)); | |
| 1355 | machine.save().save_item(NAME(K053247_regs)); | |
| 1356 | machine.save().save_item(NAME(K053246_OBJCHA_line)); | |
| 1357 | 1357 | } |
| 1358 | 1358 | |
| 1359 | 1359 | WRITE16_HANDLER( K053247_reg_word_w ) // write-only OBJSET2 registers (see p.43 table 6.1) |
| r22709 | r22710 | |
| 2193 | 2193 | K056832_change_rambank(); |
| 2194 | 2194 | K056832_change_rombank(); |
| 2195 | 2195 | |
| 2196 | state_save_register_global_pointer(machine, K056832_videoram, 0x10000); | |
| 2197 | state_save_register_global_array(machine, K056832_regs); | |
| 2198 | state_save_register_global_array(machine, K056832_regsb); | |
| 2199 | state_save_register_global_array(machine, K056832_X); | |
| 2200 | state_save_register_global_array(machine, K056832_Y); | |
| 2201 | state_save_register_global_array(machine, K056832_W); | |
| 2202 | state_save_register_global_array(machine, K056832_H); | |
| 2203 | state_save_register_global_array(machine, K056832_dx); | |
| 2204 | state_save_register_global_array(machine, K056832_dy); | |
| 2205 | state_save_register_global_array(machine, K056832_LayerTileMode); | |
| 2196 | machine.save().save_pointer(NAME(K056832_videoram), 0x10000); | |
| 2197 | machine.save().save_item(NAME(K056832_regs)); | |
| 2198 | machine.save().save_item(NAME(K056832_regsb)); | |
| 2199 | machine.save().save_item(NAME(K056832_X)); | |
| 2200 | machine.save().save_item(NAME(K056832_Y)); | |
| 2201 | machine.save().save_item(NAME(K056832_W)); | |
| 2202 | machine.save().save_item(NAME(K056832_H)); | |
| 2203 | machine.save().save_item(NAME(K056832_dx)); | |
| 2204 | machine.save().save_item(NAME(K056832_dy)); | |
| 2205 | machine.save().save_item(NAME(K056832_LayerTileMode)); | |
| 2206 | 2206 | |
| 2207 | 2207 | machine.save().register_postload(save_prepost_delegate(FUNC(K056832_postload), &machine)); |
| 2208 | 2208 | } |
| r22709 | r22710 | |
| 3003 | 3003 | |
| 3004 | 3004 | void K055555_vh_start(running_machine &machine) |
| 3005 | 3005 | { |
| 3006 | s | |
| 3006 | machine.save().save_item(NAME(k55555_regs)); | |
| 3007 | 3007 | |
| 3008 | 3008 | memset(k55555_regs, 0, 64*sizeof(UINT8)); |
| 3009 | 3009 | } |
| r22709 | r22710 | |
| 3098 | 3098 | memset(K054338_shdRGB, 0, sizeof(int)*9); |
| 3099 | 3099 | K054338_alphainverted = 1; |
| 3100 | 3100 | |
| 3101 | s | |
| 3101 | machine.save().save_item(NAME(k54338_regs)); | |
| 3102 | 3102 | } |
| 3103 | 3103 | |
| 3104 | 3104 | WRITE16_HANDLER( K054338_word_w ) |
| r22709 | r22710 | |
|---|---|---|
| 12 | 12 | |
| 13 | 13 | void wiz_state::video_start() |
| 14 | 14 | { |
| 15 | state_save_register_global_array(machine(), m_char_bank); | |
| 16 | state_save_register_global_array(machine(), m_palbank); | |
| 17 | state_save_register_global(machine(), m_flipx); | |
| 18 | state_save_register_global(machine(), m_flipy); | |
| 19 | state_save_register_global(machine(), m_bgpen); | |
| 15 | save_item(NAME(m_char_bank)); | |
| 16 | save_item(NAME(m_palbank)); | |
| 17 | save_item(NAME(m_flipx)); | |
| 18 | save_item(NAME(m_flipy)); | |
| 19 | save_item(NAME(m_bgpen)); | |
| 20 | 20 | } |
| 21 | 21 | |
| 22 | 22 | /*************************************************************************** |
| r22709 | r22710 | |
|---|---|---|
| 116 | 116 | |
| 117 | 117 | m_tx_tilemap->set_transparent_pen(0); |
| 118 | 118 | |
| 119 | state_save_register_global(machine(), m_priority); | |
| 120 | state_save_register_global(machine(), m_scroll_x); | |
| 121 | state_save_register_global(machine(), m_scroll_y); | |
| 119 | save_item(NAME(m_priority)); | |
| 120 | save_item(NAME(m_scroll_x)); | |
| 121 | save_item(NAME(m_scroll_y)); | |
| 122 | 122 | } |
| 123 | 123 | |
| 124 | 124 |
| r22709 | r22710 | |
|---|---|---|
| 2030 | 2030 | gx_tilebanks[i] = gx_oldbanks[i] = 0; |
| 2031 | 2031 | } |
| 2032 | 2032 | |
| 2033 | s | |
| 2033 | machine.save().save_item(NAME(gx_tilebanks)); | |
| 2034 | 2034 | |
| 2035 | 2035 | gx_tilemode = 0; |
| 2036 | 2036 |
| r22709 | r22710 | |
|---|---|---|
| 159 | 159 | machine().gfx[0]->set_source(m_charram); |
| 160 | 160 | |
| 161 | 161 | /* save some state */ |
| 162 | state_save_register_global(machine(), m_background_priority); | |
| 163 | state_save_register_global(machine(), m_spritebank); | |
| 164 | state_save_register_global(machine(), m_transparent0); | |
| 162 | save_item(NAME(m_background_priority)); | |
| 163 | save_item(NAME(m_spritebank)); | |
| 164 | save_item(NAME(m_transparent0)); | |
| 165 | 165 | } |
| 166 | 166 | |
| 167 | 167 | VIDEO_START_MEMBER(gottlieb_state,screwloo) |
| r22709 | r22710 | |
| 185 | 185 | machine().gfx[0]->set_source(m_charram); |
| 186 | 186 | |
| 187 | 187 | /* save some state */ |
| 188 | state_save_register_global(machine(), m_background_priority); | |
| 189 | state_save_register_global(machine(), m_spritebank); | |
| 190 | state_save_register_global(machine(), m_transparent0); | |
| 188 | save_item(NAME(m_background_priority)); | |
| 189 | save_item(NAME(m_spritebank)); | |
| 190 | save_item(NAME(m_transparent0)); | |
| 191 | 191 | } |
| 192 | 192 | |
| 193 | 193 |
| r22709 | r22710 | |
|---|---|---|
| 220 | 220 | |
| 221 | 221 | void wwfwfest_state::video_start() |
| 222 | 222 | { |
| 223 | state_save_register_global(machine(), m_pri); | |
| 224 | state_save_register_global(machine(), m_bg0_scrollx); | |
| 225 | state_save_register_global(machine(), m_bg0_scrolly); | |
| 226 | state_save_register_global(machine(), m_bg1_scrollx); | |
| 227 | state_save_register_global(machine(), m_bg1_scrolly); | |
| 223 | save_item(NAME(m_pri)); | |
| 224 | save_item(NAME(m_bg0_scrollx)); | |
| 225 | save_item(NAME(m_bg0_scrolly)); | |
| 226 | save_item(NAME(m_bg1_scrollx)); | |
| 227 | save_item(NAME(m_bg1_scrolly)); | |
| 228 | 228 | |
| 229 | 229 | m_fg0_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(wwfwfest_state::get_fg0_tile_info),this),TILEMAP_SCAN_ROWS, 8, 8,64,32); |
| 230 | 230 | m_bg1_tilemap = &machine().tilemap().create(tilemap_get_info_delegate(FUNC(wwfwfest_state::get_bg1_tile_info),this),TILEMAP_SCAN_ROWS, 16, 16,32,32); |
| r22709 | r22710 | |
|---|---|---|
| 654 | 654 | memset(m_spriteram16_buffered,0,0x10000); |
| 655 | 655 | memset(m_spriteram,0,0x10000); |
| 656 | 656 | |
| 657 | state_save_register_global_array(machine(), m_f3_control_0); | |
| 658 | state_save_register_global_array(machine(), m_f3_control_1); | |
| 657 | save_item(NAME(m_f3_control_0)); | |
| 658 | save_item(NAME(m_f3_control_1)); | |
| 659 | 659 | |
| 660 | 660 | machine().gfx[0]->set_source((UINT8 *)m_f3_vram); |
| 661 | 661 | machine().gfx[3]->set_source((UINT8 *)m_f3_pivot_ram); |
| r22709 | r22710 | |
|---|---|---|
| 1747 | 1747 | m_data_r = 1; |
| 1748 | 1748 | |
| 1749 | 1749 | /* Finish this */ |
| 1750 | state_save_register_global(machine(), m_z80_m6809_line); | |
| 1751 | state_save_register_global(machine(), m_m6809_z80_line); | |
| 1752 | state_save_register_global(machine(), m_data_r); | |
| 1753 | state_save_register_global(machine(), m_data_t); | |
| 1754 | state_save_register_global(machine(), m_h_scroll); | |
| 1755 | state_save_register_global(machine(), m_v_scroll); | |
| 1756 | state_save_register_global(machine(), m_flip_8); | |
| 1757 | state_save_register_global(machine(), m_flip_22); | |
| 1758 | state_save_register_global(machine(), m_z80_int); | |
| 1759 | state_save_register_global(machine(), m_z80_inten); | |
| 1760 | state_save_register_global_array(machine(), m_bank_data); | |
| 1761 | state_save_register_global_pointer(machine(), m_work_ram, 0xc0000); | |
| 1762 | state_save_register_global_pointer(machine(), m_video_ram, 0x20000); | |
| 1750 | save_item(NAME(m_z80_m6809_line)); | |
| 1751 | save_item(NAME(m_m6809_z80_line)); | |
| 1752 | save_item(NAME(m_data_r)); | |
| 1753 | save_item(NAME(m_data_t)); | |
| 1754 | save_item(NAME(m_h_scroll)); | |
| 1755 | save_item(NAME(m_v_scroll)); | |
| 1756 | save_item(NAME(m_flip_8)); | |
| 1757 | save_item(NAME(m_flip_22)); | |
| 1758 | save_item(NAME(m_z80_int)); | |
| 1759 | save_item(NAME(m_z80_inten)); | |
| 1760 | save_item(NAME(m_bank_data)); | |
| 1761 | save_pointer(NAME(m_work_ram), 0xc0000); | |
| 1762 | save_pointer(NAME(m_video_ram), 0x20000); | |
| 1763 | 1763 | } |
| 1764 | 1764 | |
| 1765 | 1765 | /* TODO */ |
| r22709 | r22710 | |
|---|---|---|
| 422 | 422 | |
| 423 | 423 | MACHINE_START_MEMBER(taito_f3_state,f3) |
| 424 | 424 | { |
| 425 | s | |
| 425 | save_item(NAME(m_coin_word)); | |
| 426 | 426 | } |
| 427 | 427 | |
| 428 | 428 | static MACHINE_CONFIG_START( f3, taito_f3_state ) |
| r22709 | r22710 | |
|---|---|---|
| 1092 | 1092 | scsp_set_ram_base(machine().device("scsp"), m_sound_ram); |
| 1093 | 1093 | |
| 1094 | 1094 | // save states |
| 1095 | state_save_register_global_pointer(machine(), m_scu_regs, 0x100/4); | |
| 1096 | state_save_register_global_pointer(machine(), m_scsp_regs, 0x1000/2); | |
| 1097 | state_save_register_global(machine(), m_NMI_reset); | |
| 1098 | state_save_register_global(machine(), m_en_68k); | |
| 1099 | // state_save_register_global(machine(), scanline); | |
| 1100 | state_save_register_global(machine(), m_smpc.IOSEL1); | |
| 1101 | state_save_register_global(machine(), m_smpc.IOSEL2); | |
| 1102 | state_save_register_global(machine(), m_smpc.EXLE1); | |
| 1103 | state_save_register_global(machine(), m_smpc.EXLE2); | |
| 1104 | state_save_register_global(machine(), m_smpc.PDR1); | |
| 1105 | state_save_register_global(machine(), m_smpc.PDR2); | |
| 1106 | state_save_register_global(machine(), m_port_sel); | |
| 1107 | state_save_register_global(machine(), m_mux_data); | |
| 1108 | state_save_register_global(machine(), m_scsp_last_line); | |
| 1095 | save_pointer(NAME(m_scu_regs), 0x100/4); | |
| 1096 | save_pointer(NAME(m_scsp_regs), 0x1000/2); | |
| 1097 | save_item(NAME(m_NMI_reset)); | |
| 1098 | save_item(NAME(m_en_68k)); | |
| 1099 | // save_item(NAME(scanline)); | |
| 1100 | save_item(NAME(m_smpc.IOSEL1)); | |
| 1101 | save_item(NAME(m_smpc.IOSEL2)); | |
| 1102 | save_item(NAME(m_smpc.EXLE1)); | |
| 1103 | save_item(NAME(m_smpc.EXLE2)); | |
| 1104 | save_item(NAME(m_smpc.PDR1)); | |
| 1105 | save_item(NAME(m_smpc.PDR2)); | |
| 1106 | save_item(NAME(m_port_sel)); | |
| 1107 | save_item(NAME(m_mux_data)); | |
| 1108 | save_item(NAME(m_scsp_last_line)); | |
| 1109 | 1109 | |
| 1110 | 1110 | stv_register_protection_savestates(machine()); // machine/stvprot.c |
| 1111 | 1111 |
| r22709 | r22710 | |
|---|---|---|
| 119 | 119 | void forte2_state::machine_start() |
| 120 | 120 | { |
| 121 | 121 | /* register for save states */ |
| 122 | s | |
| 122 | save_item(NAME(m_input_mask)); | |
| 123 | 123 | } |
| 124 | 124 | |
| 125 | 125 |
| r22709 | r22710 | |
|---|---|---|
| 547 | 547 | void slotcarn_state::machine_start() |
| 548 | 548 | { |
| 549 | 549 | m_ram_palette = auto_alloc_array(machine(), UINT8, RAM_PALETTE_SIZE); |
| 550 | s | |
| 550 | save_pointer(NAME(m_ram_palette), RAM_PALETTE_SIZE); | |
| 551 | 551 | } |
| 552 | 552 | |
| 553 | 553 |
| r22709 | r22710 | |
|---|---|---|
| 1052 | 1052 | save_item(NAME(m_dir)); |
| 1053 | 1053 | save_item(NAME(m_dial)); |
| 1054 | 1054 | save_item(NAME(m_irq_source)); |
| 1055 | // s | |
| 1055 | // save_item(NAME(init_eeprom_count)); | |
| 1056 | 1056 | } |
| 1057 | 1057 | |
| 1058 | 1058 | MACHINE_RESET_MEMBER(mitchell_state,mitchell) |
| r22709 | r22710 | |
|---|---|---|
| 76 | 76 | gun_timer[0] = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(midzeus_state::invasn_gun_callback),this)); |
| 77 | 77 | gun_timer[1] = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(midzeus_state::invasn_gun_callback),this)); |
| 78 | 78 | |
| 79 | state_save_register_global(machine(), gun_control); | |
| 80 | state_save_register_global(machine(), gun_irq_state); | |
| 81 | state_save_register_global_array(machine(), gun_x); | |
| 82 | state_save_register_global_array(machine(), gun_y); | |
| 83 | state_save_register_global(machine(), crusnexo_leds_select); | |
| 84 | state_save_register_global(machine(), keypad_select); | |
| 79 | save_item(NAME(gun_control)); | |
| 80 | save_item(NAME(gun_irq_state)); | |
| 81 | save_item(NAME(gun_x)); | |
| 82 | save_item(NAME(gun_y)); | |
| 83 | save_item(NAME(crusnexo_leds_select)); | |
| 84 | save_item(NAME(keypad_select)); | |
| 85 | 85 | } |
| 86 | 86 | |
| 87 | 87 |
| r22709 | r22710 | |
|---|---|---|
| 628 | 628 | auto_free(machine(), buffer); |
| 629 | 629 | } |
| 630 | 630 | |
| 631 | state_save_register_global(machine(), m_prot0); | |
| 632 | state_save_register_global(machine(), m_prot1); | |
| 633 | state_save_register_global(machine(), m_prot_shift); | |
| 631 | save_item(NAME(m_prot0)); | |
| 632 | save_item(NAME(m_prot1)); | |
| 633 | save_item(NAME(m_prot_shift)); | |
| 634 | 634 | } |
| 635 | 635 | |
| 636 | 636 | DRIVER_INIT_MEMBER(popeye_state,popeye) |
| r22709 | r22710 | |
| 649 | 649 | auto_free(machine(), buffer); |
| 650 | 650 | } |
| 651 | 651 | |
| 652 | state_save_register_global(machine(), m_prot0); | |
| 653 | state_save_register_global(machine(), m_prot1); | |
| 654 | state_save_register_global(machine(), m_prot_shift); | |
| 652 | save_item(NAME(m_prot0)); | |
| 653 | save_item(NAME(m_prot1)); | |
| 654 | save_item(NAME(m_prot_shift)); | |
| 655 | 655 | } |
| 656 | 656 | |
| 657 | 657 |
| r22709 | r22710 | |
|---|---|---|
| 189 | 189 | MACHINE_START_MEMBER(terracre_state,amazon) |
| 190 | 190 | { |
| 191 | 191 | /* set up for save */ |
| 192 | state_save_register_global(machine(), m_mAmazonProtCmd); | |
| 193 | state_save_register_global_array(machine(), m_mAmazonProtReg); | |
| 192 | save_item(NAME(m_mAmazonProtCmd)); | |
| 193 | save_item(NAME(m_mAmazonProtReg)); | |
| 194 | 194 | } |
| 195 | 195 | |
| 196 | 196 | static ADDRESS_MAP_START( terracre_map, AS_PROGRAM, 16, terracre_state ) |
| r22709 | r22710 | |
|---|---|---|
| 160 | 160 | MACHINE_START_MEMBER(nova2001_state,ninjakun) |
| 161 | 161 | { |
| 162 | 162 | /* Save State Stuff */ |
| 163 | s | |
| 163 | save_item(NAME(m_ninjakun_io_a002_ctrl)); | |
| 164 | 164 | } |
| 165 | 165 | |
| 166 | 166 |
| r22709 | r22710 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | void cinemat_state::machine_start() |
| 56 | 56 | { |
| 57 | state_save_register_global(machine(), m_coin_detected); | |
| 58 | state_save_register_global(machine(), m_coin_last_reset); | |
| 59 | state_save_register_global(machine(), m_mux_select); | |
| 57 | save_item(NAME(m_coin_detected)); | |
| 58 | save_item(NAME(m_coin_last_reset)); | |
| 59 | save_item(NAME(m_mux_select)); | |
| 60 | 60 | } |
| 61 | 61 | |
| 62 | 62 |
| r22709 | r22710 | |
|---|---|---|
| 185 | 185 | void gaelco3d_state::machine_start() |
| 186 | 186 | { |
| 187 | 187 | /* Save state support */ |
| 188 | state_save_register_global(machine(), m_sound_data); | |
| 189 | state_save_register_global(machine(), m_sound_status); | |
| 190 | state_save_register_global_array(machine(), m_analog_ports); | |
| 191 | state_save_register_global(machine(), m_framenum); | |
| 192 | state_save_register_global(machine(), m_adsp_ireg); | |
| 193 | state_save_register_global(machine(), m_adsp_ireg_base); | |
| 194 | state_save_register_global(machine(), m_adsp_incs); | |
| 195 | state_save_register_global(machine(), m_adsp_size); | |
| 188 | save_item(NAME(m_sound_data)); | |
| 189 | save_item(NAME(m_sound_status)); | |
| 190 | save_item(NAME(m_analog_ports)); | |
| 191 | save_item(NAME(m_framenum)); | |
| 192 | save_item(NAME(m_adsp_ireg)); | |
| 193 | save_item(NAME(m_adsp_ireg_base)); | |
| 194 | save_item(NAME(m_adsp_incs)); | |
| 195 | save_item(NAME(m_adsp_size)); | |
| 196 | 196 | } |
| 197 | 197 | |
| 198 | 198 |
| r22709 | r22710 | |
|---|---|---|
| 2793 | 2793 | mcr12_sprite_xoffs = 0; |
| 2794 | 2794 | mcr12_sprite_xoffs_flip = 0; |
| 2795 | 2795 | |
| 2796 | state_save_register_global(machine(), input_mux); | |
| 2797 | state_save_register_global(machine(), last_op4); | |
| 2796 | save_item(NAME(input_mux)); | |
| 2797 | save_item(NAME(last_op4)); | |
| 2798 | 2798 | |
| 2799 | 2799 | midway_ssio_device *ssio = machine().device<midway_ssio_device>("ssio"); |
| 2800 | 2800 | if (ssio != NULL) |
| r22709 | r22710 | |
| 2846 | 2846 | dpoker_coin_status = 0; |
| 2847 | 2847 | dpoker_output = 0; |
| 2848 | 2848 | |
| 2849 | state_save_register_global(machine(), dpoker_coin_status); | |
| 2850 | state_save_register_global(machine(), dpoker_output); | |
| 2849 | save_item(NAME(dpoker_coin_status)); | |
| 2850 | save_item(NAME(dpoker_output)); | |
| 2851 | 2851 | } |
| 2852 | 2852 | |
| 2853 | 2853 | |
| r22709 | r22710 | |
| 2917 | 2917 | nflfoot_serial_out_active = FALSE; |
| 2918 | 2918 | nflfoot_serial_in_active = FALSE; |
| 2919 | 2919 | |
| 2920 | state_save_register_global(machine(), nflfoot_serial_out_active); | |
| 2921 | state_save_register_global(machine(), nflfoot_serial_out_bits); | |
| 2922 | state_save_register_global(machine(), nflfoot_serial_out_numbits); | |
| 2923 | state_save_register_global(machine(), nflfoot_serial_in_active); | |
| 2924 | state_save_register_global(machine(), nflfoot_serial_in_bits); | |
| 2925 | state_save_register_global(machine(), nflfoot_serial_in_numbits); | |
| 2920 | save_item(NAME(nflfoot_serial_out_active)); | |
| 2921 | save_item(NAME(nflfoot_serial_out_bits)); | |
| 2922 | save_item(NAME(nflfoot_serial_out_numbits)); | |
| 2923 | save_item(NAME(nflfoot_serial_in_active)); | |
| 2924 | save_item(NAME(nflfoot_serial_in_bits)); | |
| 2925 | save_item(NAME(nflfoot_serial_in_numbits)); | |
| 2926 | 2926 | } |
| 2927 | 2927 | |
| 2928 | 2928 |
| r22709 | r22710 | |
|---|---|---|
| 338 | 338 | |
| 339 | 339 | void tceptor_state::machine_start() |
| 340 | 340 | { |
| 341 | state_save_register_global(machine(), m_m6809_irq_enable); | |
| 342 | state_save_register_global(machine(), m_m68k_irq_enable); | |
| 343 | state_save_register_global(machine(), m_mcu_irq_enable); | |
| 341 | save_item(NAME(m_m6809_irq_enable)); | |
| 342 | save_item(NAME(m_m68k_irq_enable)); | |
| 343 | save_item(NAME(m_mcu_irq_enable)); | |
| 344 | 344 | } |
| 345 | 345 | |
| 346 | 346 |
| r22709 | r22710 | |
|---|---|---|
| 144 | 144 | |
| 145 | 145 | MACHINE_START_MEMBER(jpmimpct_state,jpmimpct) |
| 146 | 146 | { |
| 147 | state_save_register_global(machine(), m_tms_irq); | |
| 148 | state_save_register_global(machine(), m_duart_1_irq); | |
| 149 | state_save_register_global(machine(), m_touch_cnt); | |
| 150 | state_save_register_global_array(machine(), m_touch_data); | |
| 147 | save_item(NAME(m_tms_irq)); | |
| 148 | save_item(NAME(m_duart_1_irq)); | |
| 149 | save_item(NAME(m_touch_cnt)); | |
| 150 | save_item(NAME(m_touch_data)); | |
| 151 | 151 | |
| 152 | 152 | /* TODO! */ |
| 153 | state_save_register_global(machine(), m_duart_1.ISR); | |
| 154 | state_save_register_global(machine(), m_duart_1.IMR); | |
| 155 | state_save_register_global(machine(), m_duart_1.CT); | |
| 153 | save_item(NAME(m_duart_1.ISR)); | |
| 154 | save_item(NAME(m_duart_1.IMR)); | |
| 155 | save_item(NAME(m_duart_1.CT)); | |
| 156 | 156 | } |
| 157 | 157 | |
| 158 | 158 | |
| r22709 | r22710 | |
| 1004 | 1004 | |
| 1005 | 1005 | MACHINE_START_MEMBER(jpmimpct_state,impctawp) |
| 1006 | 1006 | { |
| 1007 | state_save_register_global(machine(), m_duart_1_irq); | |
| 1008 | state_save_register_global(machine(), m_touch_cnt); | |
| 1009 | state_save_register_global_array(machine(), m_touch_data); | |
| 1007 | save_item(NAME(m_duart_1_irq)); | |
| 1008 | save_item(NAME(m_touch_cnt)); | |
| 1009 | save_item(NAME(m_touch_data)); | |
| 1010 | 1010 | |
| 1011 | 1011 | /* TODO! */ |
| 1012 | state_save_register_global(machine(), m_duart_1.ISR); | |
| 1013 | state_save_register_global(machine(), m_duart_1.IMR); | |
| 1014 | state_save_register_global(machine(), m_duart_1.CT); | |
| 1012 | save_item(NAME(m_duart_1.ISR)); | |
| 1013 | save_item(NAME(m_duart_1.IMR)); | |
| 1014 | save_item(NAME(m_duart_1.CT)); | |
| 1015 | 1015 | |
| 1016 | 1016 | stepper_config(machine(), 0, &starpoint_interface_48step); |
| 1017 | 1017 | stepper_config(machine(), 1, &starpoint_interface_48step); |
| r22709 | r22710 | |
|---|---|---|
| 255 | 255 | |
| 256 | 256 | void pengadvb_state::machine_start() |
| 257 | 257 | { |
| 258 | state_save_register_global_pointer(machine(), m_main_mem, 0x4000); | |
| 259 | state_save_register_global(machine(), m_mem_map); | |
| 260 | state_save_register_global_array(machine(), m_mem_banks); | |
| 258 | save_pointer(NAME(m_main_mem), 0x4000); | |
| 259 | save_item(NAME(m_mem_map)); | |
| 260 | save_item(NAME(m_mem_banks)); | |
| 261 | 261 | machine().save().register_postload(save_prepost_delegate(FUNC(pengadvb_state::pengadvb_postload), this)); |
| 262 | 262 | } |
| 263 | 263 |
| r22709 | r22710 | |
|---|---|---|
| 468 | 468 | m_layer0_enabled = m_layer1_enabled = 1; |
| 469 | 469 | |
| 470 | 470 | m_vint = 0x18; |
| 471 | state_save_register_global(machine(), m_vint); | |
| 472 | state_save_register_global(machine(), m_interrupt_vdp0_state); | |
| 473 | state_save_register_global(machine(), m_interrupt_vdp1_state); | |
| 471 | save_item(NAME(m_vint)); | |
| 472 | save_item(NAME(m_interrupt_vdp0_state)); | |
| 473 | save_item(NAME(m_interrupt_vdp1_state)); | |
| 474 | 474 | } |
| 475 | 475 | |
| 476 | 476 | UINT32 meritm_state::screen_update_meritm(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
| 1116 | 1116 | m_bank = 0xff; |
| 1117 | 1117 | meritm_crt250_switch_banks(); |
| 1118 | 1118 | MACHINE_START_CALL_MEMBER(merit_common); |
| 1119 | s | |
| 1119 | save_item(NAME(m_bank)); | |
| 1120 | 1120 | |
| 1121 | 1121 | }; |
| 1122 | 1122 | |
| 1123 | 1123 | MACHINE_START_MEMBER(meritm_state,meritm_crt250_questions) |
| 1124 | 1124 | { |
| 1125 | 1125 | meritm_state::machine_start(); |
| 1126 | s | |
| 1126 | save_item(NAME(m_questions_loword_address)); | |
| 1127 | 1127 | }; |
| 1128 | 1128 | |
| 1129 | 1129 | MACHINE_START_MEMBER(meritm_state,meritm_crt250_crt252_crt258) |
| r22709 | r22710 | |
| 1145 | 1145 | meritm_switch_banks(); |
| 1146 | 1146 | MACHINE_START_CALL_MEMBER(merit_common); |
| 1147 | 1147 | pc16552d_init(machine(), 0, UART_CLK, NULL, pc16650d_tx_callback); |
| 1148 | state_save_register_global(machine(), m_bank); | |
| 1149 | state_save_register_global(machine(), m_psd_a15); | |
| 1150 | state_save_register_global_pointer(machine(), m_ram, 0x8000); | |
| 1148 | save_item(NAME(m_bank)); | |
| 1149 | save_item(NAME(m_psd_a15)); | |
| 1150 | save_pointer(NAME(m_ram), 0x8000); | |
| 1151 | 1151 | }; |
| 1152 | 1152 | |
| 1153 | 1153 | // from MSX2 driver, may be not accurate for merit games |
| r22709 | r22710 | |
|---|---|---|
| 138 | 138 | /* create the polynomial tables */ |
| 139 | 139 | poly17_init(); |
| 140 | 140 | |
| 141 | state_save_register_global_array(machine(), m_last_analog_input); | |
| 142 | state_save_register_global_array(machine(), m_last_analog_output); | |
| 141 | save_item(NAME(m_last_analog_input)); | |
| 142 | save_item(NAME(m_last_analog_output)); | |
| 143 | 143 | |
| 144 | 144 | m_irq_off = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gridlee_state::irq_off_tick),this)); |
| 145 | 145 | m_irq_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(gridlee_state::irq_timer_tick),this)); |
| r22709 | r22710 | |
|---|---|---|
| 1012 | 1012 | i82716.dram = auto_alloc_array(machine(), UINT16, 0x80000/2); // ??? |
| 1013 | 1013 | i82716.line_buf = auto_alloc_array(machine(), UINT8, 512); |
| 1014 | 1014 | |
| 1015 | s | |
| 1015 | save_pointer(NAME(i82716.dram), 0x40000); | |
| 1016 | 1016 | |
| 1017 | 1017 | // duart_68681_init(DUART_CLOCK, duart_irq_handler, duart_tx); |
| 1018 | 1018 |
| r22709 | r22710 | |
|---|---|---|
| 93 | 93 | /* configure the banks */ |
| 94 | 94 | membank("bank1")->configure_entries(0, 2, memregion("maincpu")->base() + 0x10000, 0x2000); |
| 95 | 95 | |
| 96 | s | |
| 96 | save_item(NAME(m_inputport_selected)); | |
| 97 | 97 | } |
| 98 | 98 | |
| 99 | 99 |
| r22709 | r22710 | |
|---|---|---|
| 1402 | 1402 | if (ide != NULL && m_ide_user_password != NULL) |
| 1403 | 1403 | ide->ide_set_user_password(m_ide_user_password); |
| 1404 | 1404 | |
| 1405 | state_save_register_global(machine(), m_sndram_bank); | |
| 1406 | state_save_register_global(machine(), m_pending_vb_int); | |
| 1407 | state_save_register_global(machine(), m_v_ctrl); | |
| 1408 | state_save_register_global_array(machine(), m_obj_regs); | |
| 1405 | save_item(NAME(m_sndram_bank)); | |
| 1406 | save_item(NAME(m_pending_vb_int)); | |
| 1407 | save_item(NAME(m_v_ctrl)); | |
| 1408 | save_item(NAME(m_obj_regs)); | |
| 1409 | 1409 | |
| 1410 | 1410 | machine().save().register_postload(save_prepost_delegate(FUNC(djmain_state::sndram_set_bank), this)); |
| 1411 | 1411 | } |
| r22709 | r22710 | |
|---|---|---|
| 304 | 304 | void r2dtank_state::machine_start() |
| 305 | 305 | { |
| 306 | 306 | /* setup for save states */ |
| 307 | state_save_register_global(machine(), m_flipscreen); | |
| 308 | state_save_register_global(machine(), m_ttl74123_output); | |
| 309 | state_save_register_global(machine(), m_AY8910_selected); | |
| 307 | save_item(NAME(m_flipscreen)); | |
| 308 | save_item(NAME(m_ttl74123_output)); | |
| 309 | save_item(NAME(m_AY8910_selected)); | |
| 310 | 310 | } |
| 311 | 311 | |
| 312 | 312 |
| r22709 | r22710 | |
|---|---|---|
| 1020 | 1020 | save_item(NAME(m_audio_cpu_rom_source)); |
| 1021 | 1021 | save_item(NAME(m_audio_cpu_rom_source_last)); |
| 1022 | 1022 | save_item(NAME(m_save_ram_unlocked)); |
| 1023 | s | |
| 1023 | save_pointer(NAME(memcard_data), 0x800); | |
| 1024 | 1024 | save_item(NAME(m_output_data)); |
| 1025 | 1025 | save_item(NAME(m_output_latch)); |
| 1026 | 1026 | save_item(NAME(m_el_value)); |
| r22709 | r22710 | |
|---|---|---|
| 289 | 289 | |
| 290 | 290 | void renegade_state::machine_start() |
| 291 | 291 | { |
| 292 | state_save_register_global_array(machine(), m_mcu_buffer); | |
| 293 | state_save_register_global(machine(), m_mcu_input_size); | |
| 294 | state_save_register_global(machine(), m_mcu_output_byte); | |
| 295 | state_save_register_global(machine(), m_mcu_key); | |
| 292 | save_item(NAME(m_mcu_buffer)); | |
| 293 | save_item(NAME(m_mcu_input_size)); | |
| 294 | save_item(NAME(m_mcu_output_byte)); | |
| 295 | save_item(NAME(m_mcu_key)); | |
| 296 | 296 | |
| 297 | s | |
| 297 | save_item(NAME(m_bank)); | |
| 298 | 298 | machine().save().register_postload(save_prepost_delegate(FUNC(renegade_state::setbank), this)); |
| 299 | 299 | } |
| 300 | 300 |
| r22709 | r22710 | |
|---|---|---|
| 614 | 614 | m_ss9601_reelrects[2].set(0, 0, 0x10*8, 256-16-1); |
| 615 | 615 | |
| 616 | 616 | /* |
| 617 | state_save_register_global_pointer(machine(), m_ss9601_reelrams[VRAM_HI], 0x2000); | |
| 618 | state_save_register_global_pointer(machine(), m_ss9601_reelrams[VRAM_LO], 0x2000); | |
| 617 | save_pointer(NAME(m_ss9601_reelrams[VRAM_HI]), 0x2000); | |
| 618 | save_pointer(NAME(m_ss9601_reelrams[VRAM_LO]), 0x2000); | |
| 619 | 619 | |
| 620 | state_save_register_global_pointer(machine(), m_layers[0].scrollrams[VRAM_HI], 0x200); | |
| 621 | state_save_register_global_pointer(machine(), m_layers[0].scrollrams[VRAM_LO], 0x200); | |
| 620 | save_pointer(NAME(m_layers[0].scrollrams[VRAM_HI]), 0x200); | |
| 621 | save_pointer(NAME(m_layers[0].scrollrams[VRAM_LO]), 0x200); | |
| 622 | 622 | |
| 623 | state_save_register_global_pointer(machine(), m_layers[1].scrollrams[VRAM_HI], 0x200); | |
| 624 | state_save_register_global_pointer(machine(), m_layers[1].scrollrams[VRAM_LO], 0x200); | |
| 623 | save_pointer(NAME(m_layers[1].scrollrams[VRAM_HI]), 0x200); | |
| 624 | save_pointer(NAME(m_layers[1].scrollrams[VRAM_LO]), 0x200); | |
| 625 | 625 | */ |
| 626 | 626 | } |
| 627 | 627 |
| r22709 | r22710 | |
|---|---|---|
| 225 | 225 | |
| 226 | 226 | void bzone_state::machine_start() |
| 227 | 227 | { |
| 228 | s | |
| 228 | save_item(NAME(m_analog_data)); | |
| 229 | 229 | } |
| 230 | 230 | |
| 231 | 231 | |
| 232 | 232 | MACHINE_START_MEMBER(bzone_state,redbaron) |
| 233 | 233 | { |
| 234 | state_save_register_global(machine(), m_analog_data); | |
| 235 | state_save_register_global(machine(), m_rb_input_select); | |
| 234 | save_item(NAME(m_analog_data)); | |
| 235 | save_item(NAME(m_rb_input_select)); | |
| 236 | 236 | } |
| 237 | 237 | |
| 238 | 238 |
| r22709 | r22710 | |
|---|---|---|
| 1642 | 1642 | |
| 1643 | 1643 | void aristmk4_state::machine_start() |
| 1644 | 1644 | { |
| 1645 | s | |
| 1645 | save_pointer(NAME(m_nvram), 0x1000); // m_nvram | |
| 1646 | 1646 | } |
| 1647 | 1647 | |
| 1648 | 1648 | void aristmk4_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 289 | 289 | |
| 290 | 290 | void pkscram_state::machine_start() |
| 291 | 291 | { |
| 292 | state_save_register_global(machine(), m_out); | |
| 293 | state_save_register_global(machine(), m_interrupt_line_active); | |
| 292 | save_item(NAME(m_out)); | |
| 293 | save_item(NAME(m_interrupt_line_active)); | |
| 294 | 294 | } |
| 295 | 295 | |
| 296 | 296 | void pkscram_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 561 | 561 | mips3drc_add_fastram(m_maincpu, 0x1fc00000, 0x1fc7ffff, TRUE, m_rombase); |
| 562 | 562 | |
| 563 | 563 | /* register for save states */ |
| 564 | state_save_register_global(machine(), m_nile_irq_state); | |
| 565 | state_save_register_global(machine(), m_ide_irq_state); | |
| 566 | state_save_register_global_array(machine(), m_pci_bridge_regs); | |
| 567 | state_save_register_global_array(machine(), m_pci_ide_regs); | |
| 568 | state_save_register_global_array(machine(), m_pci_3dfx_regs); | |
| 569 | state_save_register_global(machine(), m_vblank_state); | |
| 570 | state_save_register_global_array(machine(), m_sio_data); | |
| 571 | state_save_register_global(machine(), m_sio_irq_clear); | |
| 572 | state_save_register_global(machine(), m_sio_irq_enable); | |
| 573 | state_save_register_global(machine(), m_sio_irq_state); | |
| 574 | state_save_register_global(machine(), m_sio_led_state); | |
| 575 | state_save_register_global(machine(), m_pending_analog_read); | |
| 576 | state_save_register_global(machine(), m_cmos_unlocked); | |
| 564 | save_item(NAME(m_nile_irq_state)); | |
| 565 | save_item(NAME(m_ide_irq_state)); | |
| 566 | save_item(NAME(m_pci_bridge_regs)); | |
| 567 | save_item(NAME(m_pci_ide_regs)); | |
| 568 | save_item(NAME(m_pci_3dfx_regs)); | |
| 569 | save_item(NAME(m_vblank_state)); | |
| 570 | save_item(NAME(m_sio_data)); | |
| 571 | save_item(NAME(m_sio_irq_clear)); | |
| 572 | save_item(NAME(m_sio_irq_enable)); | |
| 573 | save_item(NAME(m_sio_irq_state)); | |
| 574 | save_item(NAME(m_sio_led_state)); | |
| 575 | save_item(NAME(m_pending_analog_read)); | |
| 576 | save_item(NAME(m_cmos_unlocked)); | |
| 577 | 577 | machine().save().register_postload(save_prepost_delegate(FUNC(vegas_state::remap_dynamic_addresses), this)); |
| 578 | 578 | } |
| 579 | 579 |
| r22709 | r22710 | |
|---|---|---|
| 224 | 224 | void gottlieb_state::machine_start() |
| 225 | 225 | { |
| 226 | 226 | /* register for save states */ |
| 227 | state_save_register_global(machine(), m_joystick_select); | |
| 228 | state_save_register_global_array(machine(), m_track); | |
| 227 | save_item(NAME(m_joystick_select)); | |
| 228 | save_item(NAME(m_track)); | |
| 229 | 229 | |
| 230 | 230 | /* see if we have a laserdisc */ |
| 231 | 231 | if (m_laserdisc != NULL) |
| r22709 | r22710 | |
| 244 | 244 | m_laserdisc_status = 0x38; |
| 245 | 245 | |
| 246 | 246 | /* more save state registration */ |
| 247 | state_save_register_global(machine(), m_laserdisc_select); | |
| 248 | state_save_register_global(machine(), m_laserdisc_status); | |
| 249 | state_save_register_global(machine(), m_laserdisc_philips_code); | |
| 247 | save_item(NAME(m_laserdisc_select)); | |
| 248 | save_item(NAME(m_laserdisc_status)); | |
| 249 | save_item(NAME(m_laserdisc_philips_code)); | |
| 250 | 250 | |
| 251 | state_save_register_global_pointer(machine(), m_laserdisc_audio_buffer, AUDIORAM_SIZE); | |
| 252 | state_save_register_global(machine(), m_laserdisc_audio_address); | |
| 253 | state_save_register_global_array(machine(), m_laserdisc_last_samples); | |
| 254 | state_save_register_global(machine(), m_laserdisc_last_time); | |
| 255 | state_save_register_global(machine(), m_laserdisc_last_clock); | |
| 256 | state_save_register_global(machine(), m_laserdisc_zero_seen); | |
| 257 | state_save_register_global(machine(), m_laserdisc_audio_bits); | |
| 258 | state_save_register_global(machine(), m_laserdisc_audio_bit_count); | |
| 251 | save_pointer(NAME(m_laserdisc_audio_buffer), AUDIORAM_SIZE); | |
| 252 | save_item(NAME(m_laserdisc_audio_address)); | |
| 253 | save_item(NAME(m_laserdisc_last_samples)); | |
| 254 | save_item(NAME(m_laserdisc_last_time)); | |
| 255 | save_item(NAME(m_laserdisc_last_clock)); | |
| 256 | save_item(NAME(m_laserdisc_zero_seen)); | |
| 257 | save_item(NAME(m_laserdisc_audio_bits)); | |
| 258 | save_item(NAME(m_laserdisc_audio_bit_count)); | |
| 259 | 259 | } |
| 260 | 260 | } |
| 261 | 261 |
| r22709 | r22710 | |
|---|---|---|
| 812 | 812 | { |
| 813 | 813 | m_ss_ram = auto_alloc_array(machine(), UINT32, 0x10000/4); |
| 814 | 814 | memset(m_ss_ram, 0x00, 0x10000); |
| 815 | s | |
| 815 | save_pointer(NAME(m_ss_ram), 0x10000/4); | |
| 816 | 816 | |
| 817 | 817 | m_char_ram = auto_alloc_array(machine(), UINT32, 0x800000/4); |
| 818 | 818 | memset(m_char_ram, 0x00, 0x800000); |
| 819 | s | |
| 819 | save_pointer(NAME(m_char_ram), 0x800000 /4); | |
| 820 | 820 | |
| 821 | 821 | /* create the char set (gfx will then be updated dynamically from RAM) */ |
| 822 | 822 | machine().gfx[0] = auto_alloc(machine(), gfx_element(machine(), cps3_tiles8x8_layout, (UINT8 *)m_ss_ram, machine().total_colors() / 16, 0)); |
| r22709 | r22710 | |
|---|---|---|
| 5850 | 5850 | { |
| 5851 | 5851 | m_tilemap_ram = auto_alloc_array(machine(), UINT8, 0x4000); |
| 5852 | 5852 | memset(m_tilemap_ram, 0xff, 0x4000); |
| 5853 | s | |
| 5853 | save_pointer(NAME(m_tilemap_ram), 0x4000); | |
| 5854 | 5854 | |
| 5855 | 5855 | m_reel_ram = auto_alloc_array(machine(), UINT8, 0x0800); |
| 5856 | 5856 | memset(m_reel_ram, 0xff ,0x0800); |
| 5857 | s | |
| 5857 | save_pointer(NAME(m_reel_ram), 0x0800); | |
| 5858 | 5858 | |
| 5859 | 5859 | m_reel2_ram = auto_alloc_array(machine(), UINT8, 0x0800); |
| 5860 | 5860 | memset(m_reel2_ram, 0xff, 0x0800); |
| 5861 | s | |
| 5861 | save_pointer(NAME(m_reel2_ram), 0x0800); | |
| 5862 | 5862 | |
| 5863 | 5863 | m_reel3_ram = auto_alloc_array(machine(), UINT8, 0x0800); |
| 5864 | 5864 | memset(m_reel3_ram, 0xff, 0x0800); |
| 5865 | s | |
| 5865 | save_pointer(NAME(m_reel3_ram), 0x0800); | |
| 5866 | 5866 | |
| 5867 | 5867 | m_reel4_ram = auto_alloc_array(machine(), UINT8, 0x0800); |
| 5868 | 5868 | memset(m_reel4_ram, 0xff, 0x0800); |
| 5869 | s | |
| 5869 | save_pointer(NAME(m_reel4_ram), 0x0800); | |
| 5870 | 5870 | |
| 5871 | 5871 | m_videoram = auto_alloc_array(machine(), UINT8, 0x10000); |
| 5872 | 5872 | |
| 5873 | 5873 | memset(m_videoram, 0xff, 0x10000); |
| 5874 | 5874 | |
| 5875 | s | |
| 5875 | save_pointer(NAME(m_videoram), 0x10000); | |
| 5876 | 5876 | |
| 5877 | 5877 | // dummy.rom helper |
| 5878 | 5878 | { |
| r22709 | r22710 | |
|---|---|---|
| 101 | 101 | m_pal_ram = auto_alloc_array(machine(), UINT8, 0x200*2); |
| 102 | 102 | m_vram = auto_alloc_array(machine(), UINT8, 0x1000*0x10); |
| 103 | 103 | |
| 104 | s | |
| 104 | save_pointer(NAME(m_vram), 0x1000*0x10); | |
| 105 | 105 | } |
| 106 | 106 | |
| 107 | 107 | UINT32 dblcrown_state::screen_update( screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect ) |
| r22709 | r22710 | |
|---|---|---|
| 367 | 367 | |
| 368 | 368 | m_mute_xor = 0x00; |
| 369 | 369 | |
| 370 | state_save_register_global(machine(), m_dakkochn_mux_data); | |
| 371 | state_save_register_global(machine(), m_videomode_prev); | |
| 372 | state_save_register_global(machine(), m_mcu_control); | |
| 373 | state_save_register_global(machine(), m_nob_maincpu_latch); | |
| 370 | save_item(NAME(m_dakkochn_mux_data)); | |
| 371 | save_item(NAME(m_videomode_prev)); | |
| 372 | save_item(NAME(m_mcu_control)); | |
| 373 | save_item(NAME(m_nob_maincpu_latch)); | |
| 374 | 374 | } |
| 375 | 375 | |
| 376 | 376 |
| r22709 | r22710 | |
|---|---|---|
| 67 | 67 | |
| 68 | 68 | void artmagic_state::machine_start() |
| 69 | 69 | { |
| 70 | state_save_register_global(machine(), m_tms_irq); | |
| 71 | state_save_register_global(machine(), m_hack_irq); | |
| 72 | state_save_register_global(machine(), m_prot_input_index); | |
| 73 | state_save_register_global(machine(), m_prot_output_index); | |
| 74 | state_save_register_global(machine(), m_prot_output_bit); | |
| 75 | state_save_register_global(machine(), m_prot_bit_index); | |
| 76 | state_save_register_global(machine(), m_prot_save); | |
| 77 | state_save_register_global_array(machine(), m_prot_input); | |
| 78 | state_save_register_global_array(machine(), m_prot_output); | |
| 70 | save_item(NAME(m_tms_irq)); | |
| 71 | save_item(NAME(m_hack_irq)); | |
| 72 | save_item(NAME(m_prot_input_index)); | |
| 73 | save_item(NAME(m_prot_output_index)); | |
| 74 | save_item(NAME(m_prot_output_bit)); | |
| 75 | save_item(NAME(m_prot_bit_index)); | |
| 76 | save_item(NAME(m_prot_save)); | |
| 77 | save_item(NAME(m_prot_input)); | |
| 78 | save_item(NAME(m_prot_output)); | |
| 79 | 79 | } |
| 80 | 80 | |
| 81 | 81 | void artmagic_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 479 | 479 | { |
| 480 | 480 | machine().primary_screen->register_screen_bitmap(m_bitmap); |
| 481 | 481 | |
| 482 | state_save_register_global_array(machine(), m_vid_regs); | |
| 483 | state_save_register_global_bitmap(machine(), &m_bitmap); | |
| 482 | save_item(NAME(m_vid_regs)); | |
| 483 | save_item(NAME(m_bitmap)); | |
| 484 | 484 | } |
| 485 | 485 | |
| 486 | 486 | UINT32 smsmfg_state::screen_update_sms(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect) |
| r22709 | r22710 | |
| 544 | 544 | { |
| 545 | 545 | membank("bank1")->configure_entries(0, 16, memregion("questions")->base(), 0x4000); |
| 546 | 546 | |
| 547 | state_save_register_global(machine(), m_communication_port_status); | |
| 548 | state_save_register_global_array(machine(), m_communication_port); | |
| 547 | save_item(NAME(m_communication_port_status)); | |
| 548 | save_item(NAME(m_communication_port)); | |
| 549 | 549 | } |
| 550 | 550 | |
| 551 | 551 | MACHINE_START_MEMBER(smsmfg_state,sureshot) |
| 552 | 552 | { |
| 553 | state_save_register_global(machine(), m_communication_port_status); | |
| 554 | state_save_register_global_array(machine(), m_communication_port); | |
| 553 | save_item(NAME(m_communication_port_status)); | |
| 554 | save_item(NAME(m_communication_port)); | |
| 555 | 555 | } |
| 556 | 556 | |
| 557 | 557 | void smsmfg_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 54 | 54 | |
| 55 | 55 | void espial_state::machine_start() |
| 56 | 56 | { |
| 57 | //s | |
| 57 | //save_item(NAME(mcu_out[1])); | |
| 58 | 58 | save_item(NAME(m_sound_nmi_enabled)); |
| 59 | 59 | } |
| 60 | 60 |
| r22709 | r22710 | |
|---|---|---|
| 619 | 619 | |
| 620 | 620 | MACHINE_START_MEMBER(qdrmfgp_state,qdrmfgp) |
| 621 | 621 | { |
| 622 | state_save_register_global(machine(), m_control); | |
| 623 | state_save_register_global(machine(), m_pal); | |
| 624 | state_save_register_global(machine(), m_gp2_irq_control); | |
| 622 | save_item(NAME(m_control)); | |
| 623 | save_item(NAME(m_pal)); | |
| 624 | save_item(NAME(m_gp2_irq_control)); | |
| 625 | 625 | } |
| 626 | 626 | |
| 627 | 627 | MACHINE_START_MEMBER(qdrmfgp_state,qdrmfgp2) |
| r22709 | r22710 | |
|---|---|---|
| 317 | 317 | create_nmi_timer(); |
| 318 | 318 | |
| 319 | 319 | /* register for state saving */ |
| 320 | state_save_register_global(machine(), m_magicram_control); | |
| 321 | state_save_register_global(machine(), m_last_shift_data); | |
| 322 | state_save_register_global(machine(), m_intercept); | |
| 323 | state_save_register_global(machine(), m_irq_enabled); | |
| 324 | state_save_register_global(machine(), m_nmi_enabled); | |
| 320 | save_item(NAME(m_magicram_control)); | |
| 321 | save_item(NAME(m_last_shift_data)); | |
| 322 | save_item(NAME(m_intercept)); | |
| 323 | save_item(NAME(m_irq_enabled)); | |
| 324 | save_item(NAME(m_nmi_enabled)); | |
| 325 | 325 | } |
| 326 | 326 | |
| 327 | 327 |
| r22709 | r22710 | |
|---|---|---|
| 401 | 401 | void spiders_state::machine_start() |
| 402 | 402 | { |
| 403 | 403 | /* setup for save states */ |
| 404 | state_save_register_global(machine(), m_flipscreen); | |
| 405 | state_save_register_global(machine(), m_gfx_rom_address); | |
| 406 | state_save_register_global(machine(), m_gfx_rom_ctrl_mode); | |
| 407 | state_save_register_global(machine(), m_gfx_rom_ctrl_latch); | |
| 408 | state_save_register_global(machine(), m_gfx_rom_ctrl_data); | |
| 404 | save_item(NAME(m_flipscreen)); | |
| 405 | save_item(NAME(m_gfx_rom_address)); | |
| 406 | save_item(NAME(m_gfx_rom_ctrl_mode)); | |
| 407 | save_item(NAME(m_gfx_rom_ctrl_latch)); | |
| 408 | save_item(NAME(m_gfx_rom_ctrl_data)); | |
| 409 | 409 | } |
| 410 | 410 | |
| 411 | 411 |
| r22709 | r22710 | |
|---|---|---|
| 2831 | 2831 | |
| 2832 | 2832 | /* callback when the game select is toggled */ |
| 2833 | 2833 | gmgalax_game_changed(*machine().ioport().first_port()->first_field(), NULL, 0, 0); |
| 2834 | s | |
| 2834 | save_item(NAME(m_gmgalax_selected_game)); | |
| 2835 | 2835 | } |
| 2836 | 2836 | |
| 2837 | 2837 | |
| r22709 | r22710 | |
| 3309 | 3309 | space.install_write_handler(0xb002, 0xb002, 0, 0x7f8, write8_delegate(FUNC(galaxian_state::kingball_sound2_w),this)); |
| 3310 | 3310 | space.install_write_handler(0xb003, 0xb003, 0, 0x7f8, write8_delegate(FUNC(galaxian_state::kingball_speech_dip_w),this)); |
| 3311 | 3311 | |
| 3312 | state_save_register_global(machine(), m_kingball_speech_dip); | |
| 3313 | state_save_register_global(machine(), m_kingball_sound); | |
| 3312 | save_item(NAME(m_kingball_speech_dip)); | |
| 3313 | save_item(NAME(m_kingball_sound)); | |
| 3314 | 3314 | } |
| 3315 | 3315 | |
| 3316 | 3316 | |
| r22709 | r22710 | |
| 3574 | 3574 | /* video extensions */ |
| 3575 | 3575 | common_init(&galaxian_state::scramble_draw_bullet, &galaxian_state::scramble_draw_background, NULL, NULL); |
| 3576 | 3576 | |
| 3577 | s | |
| 3577 | save_item(NAME(m_moonwar_port_select)); | |
| 3578 | 3578 | } |
| 3579 | 3579 | |
| 3580 | 3580 |
| r22709 | r22710 | |
|---|---|---|
| 556 | 556 | mips3drc_add_fastram(m_maincpu, 0x1fc00000, 0x1fc7ffff, TRUE, m_rombase); |
| 557 | 557 | |
| 558 | 558 | /* register for save states */ |
| 559 | state_save_register_global_array(machine(), m_galileo.reg); | |
| 560 | state_save_register_global(machine(), m_galileo.dma_active); | |
| 561 | state_save_register_global_array(machine(), m_galileo.dma_stalled_on_voodoo); | |
| 562 | state_save_register_global_array(machine(), m_galileo.pci_bridge_regs); | |
| 563 | state_save_register_global_array(machine(), m_galileo.pci_3dfx_regs); | |
| 564 | state_save_register_global_array(machine(), m_galileo.pci_ide_regs); | |
| 559 | save_item(NAME(m_galileo.reg)); | |
| 560 | save_item(NAME(m_galileo.dma_active)); | |
| 561 | save_item(NAME(m_galileo.dma_stalled_on_voodoo)); | |
| 562 | save_item(NAME(m_galileo.pci_bridge_regs)); | |
| 563 | save_item(NAME(m_galileo.pci_3dfx_regs)); | |
| 564 | save_item(NAME(m_galileo.pci_ide_regs)); | |
| 565 | 565 | for (index = 0; index < ARRAY_LENGTH(m_galileo.timer); index++) |
| 566 | 566 | { |
| 567 | 567 | state_save_register_item(machine(), "galileo", NULL, index, m_galileo.timer[index].count); |
| 568 | 568 | state_save_register_item(machine(), "galileo", NULL, index, m_galileo.timer[index].active); |
| 569 | 569 | } |
| 570 | state_save_register_global(machine(), m_widget.ethernet_addr); | |
| 571 | state_save_register_global(machine(), m_widget.irq_num); | |
| 572 | state_save_register_global(machine(), m_widget.irq_mask); | |
| 573 | state_save_register_global(machine(), m_voodoo_stalled); | |
| 574 | state_save_register_global(machine(), m_cpu_stalled_on_voodoo); | |
| 575 | state_save_register_global(machine(), m_cpu_stalled_offset); | |
| 576 | state_save_register_global(machine(), m_cpu_stalled_data); | |
| 577 | state_save_register_global(machine(), m_cpu_stalled_mem_mask); | |
| 578 | state_save_register_global(machine(), m_board_config); | |
| 579 | state_save_register_global(machine(), m_ethernet_irq_num); | |
| 580 | state_save_register_global(machine(), m_ethernet_irq_state); | |
| 581 | state_save_register_global(machine(), m_vblank_irq_num); | |
| 582 | state_save_register_global(machine(), m_vblank_latch); | |
| 583 | state_save_register_global(machine(), m_vblank_state); | |
| 584 | state_save_register_global(machine(), m_pending_analog_read); | |
| 585 | state_save_register_global(machine(), m_status_leds); | |
| 586 | state_save_register_global(machine(), m_cmos_write_enabled); | |
| 570 | save_item(NAME(m_widget.ethernet_addr)); | |
| 571 | save_item(NAME(m_widget.irq_num)); | |
| 572 | save_item(NAME(m_widget.irq_mask)); | |
| 573 | save_item(NAME(m_voodoo_stalled)); | |
| 574 | save_item(NAME(m_cpu_stalled_on_voodoo)); | |
| 575 | save_item(NAME(m_cpu_stalled_offset)); | |
| 576 | save_item(NAME(m_cpu_stalled_data)); | |
| 577 | save_item(NAME(m_cpu_stalled_mem_mask)); | |
| 578 | save_item(NAME(m_board_config)); | |
| 579 | save_item(NAME(m_ethernet_irq_num)); | |
| 580 | save_item(NAME(m_ethernet_irq_state)); | |
| 581 | save_item(NAME(m_vblank_irq_num)); | |
| 582 | save_item(NAME(m_vblank_latch)); | |
| 583 | save_item(NAME(m_vblank_state)); | |
| 584 | save_item(NAME(m_pending_analog_read)); | |
| 585 | save_item(NAME(m_status_leds)); | |
| 586 | save_item(NAME(m_cmos_write_enabled)); | |
| 587 | 587 | } |
| 588 | 588 | |
| 589 | 589 |
| r22709 | r22710 | |
|---|---|---|
| 79 | 79 | m_interrupt_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(magmax_state::scanline_callback),this)); |
| 80 | 80 | |
| 81 | 81 | /* Set up save state */ |
| 82 | state_save_register_global(machine(), m_sound_latch); | |
| 83 | state_save_register_global(machine(), m_LS74_clr); | |
| 84 | state_save_register_global(machine(), m_LS74_q); | |
| 85 | state_save_register_global(machine(), m_gain_control); | |
| 82 | save_item(NAME(m_sound_latch)); | |
| 83 | save_item(NAME(m_LS74_clr)); | |
| 84 | save_item(NAME(m_LS74_q)); | |
| 85 | save_item(NAME(m_gain_control)); | |
| 86 | 86 | } |
| 87 | 87 | |
| 88 | 88 | void magmax_state::machine_reset() |
| r22709 | r22710 | |
|---|---|---|
| 134 | 134 | m_question_address = 0; |
| 135 | 135 | m_ram_palette = auto_alloc_array(machine(), UINT8, RAM_PALETTE_SIZE); |
| 136 | 136 | |
| 137 | state_save_register_global_pointer(machine(), m_ram_palette, RAM_PALETTE_SIZE); | |
| 138 | state_save_register_global(machine(), m_lscnblk); | |
| 139 | state_save_register_global(machine(), m_extra_video_bank_bit); | |
| 140 | state_save_register_global(machine(), m_question_address); | |
| 141 | state_save_register_global(machine(), m_decryption_key); | |
| 137 | save_pointer(NAME(m_ram_palette), RAM_PALETTE_SIZE); | |
| 138 | save_item(NAME(m_lscnblk)); | |
| 139 | save_item(NAME(m_extra_video_bank_bit)); | |
| 140 | save_item(NAME(m_question_address)); | |
| 141 | save_item(NAME(m_decryption_key)); | |
| 142 | 142 | } |
| 143 | 143 | |
| 144 | 144 |
| r22709 | r22710 | |
|---|---|---|
| 1539 | 1539 | m_sprite_clip = clip; |
| 1540 | 1540 | m_sprite_xoffset = xoffset; |
| 1541 | 1541 | |
| 1542 | s | |
| 1542 | save_item(NAME(m_control_word)); | |
| 1543 | 1543 | } |
| 1544 | 1544 | |
| 1545 | 1545 | |
| r22709 | r22710 | |
| 1633 | 1633 | /* Pigskin doesn't care too much about this value; currently taken from Tri-Sports */ |
| 1634 | 1634 | m_timing_factor = attotime::from_hz(m_maincpu->unscaled_clock() / 10) * 115; |
| 1635 | 1635 | |
| 1636 | s | |
| 1636 | save_item(NAME(m_protection_data)); | |
| 1637 | 1637 | } |
| 1638 | 1638 | |
| 1639 | 1639 |
| r22709 | r22710 | |
|---|---|---|
| 876 | 876 | /* create the interrupt timer */ |
| 877 | 877 | m_cpu3_interrupt_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(galaga_state::cpu3_interrupt_callback),this)); |
| 878 | 878 | m_custom_mod = 0; |
| 879 | s | |
| 879 | save_item(NAME(m_custom_mod)); | |
| 880 | 880 | save_item(NAME(m_main_irq_mask)); |
| 881 | 881 | save_item(NAME(m_sub_irq_mask)); |
| 882 | 882 | save_item(NAME(m_sub2_nmi_mask)); |
| r22709 | r22710 | |
|---|---|---|
| 1273 | 1273 | machine().scheduler().timer_pulse(attotime::from_msec(32), timer_expired_delegate(FUNC(tetrisp2_state::rockn_timer_level1_callback),this)); |
| 1274 | 1274 | m_rockn_timer_l4 = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(tetrisp2_state::rockn_timer_level4_callback),this)); |
| 1275 | 1275 | |
| 1276 | state_save_register_global_array(machine(), m_systemregs); | |
| 1277 | state_save_register_global_array(machine(), m_rocknms_sub_systemregs); | |
| 1278 | state_save_register_global(machine(), m_rockn_protectdata); | |
| 1279 | state_save_register_global(machine(), m_rockn_adpcmbank); | |
| 1280 | state_save_register_global(machine(), m_rockn_soundvolume); | |
| 1276 | save_item(NAME(m_systemregs)); | |
| 1277 | save_item(NAME(m_rocknms_sub_systemregs)); | |
| 1278 | save_item(NAME(m_rockn_protectdata)); | |
| 1279 | save_item(NAME(m_rockn_adpcmbank)); | |
| 1280 | save_item(NAME(m_rockn_soundvolume)); | |
| 1281 | 1281 | } |
| 1282 | 1282 | |
| 1283 | 1283 | DRIVER_INIT_MEMBER(tetrisp2_state,rockn) |
| r22709 | r22710 | |
|---|---|---|
| 46 | 46 | |
| 47 | 47 | void midvunit_state::machine_start() |
| 48 | 48 | { |
| 49 | state_save_register_global(machine(), m_cmos_protected); | |
| 50 | state_save_register_global(machine(), m_control_data); | |
| 51 | state_save_register_global(machine(), m_adc_data); | |
| 52 | state_save_register_global(machine(), m_adc_shift); | |
| 53 | state_save_register_global(machine(), m_last_port0); | |
| 54 | state_save_register_global(machine(), m_shifter_state); | |
| 55 | state_save_register_global(machine(), m_timer_rate); | |
| 49 | save_item(NAME(m_cmos_protected)); | |
| 50 | save_item(NAME(m_control_data)); | |
| 51 | save_item(NAME(m_adc_data)); | |
| 52 | save_item(NAME(m_adc_shift)); | |
| 53 | save_item(NAME(m_last_port0)); | |
| 54 | save_item(NAME(m_shifter_state)); | |
| 55 | save_item(NAME(m_timer_rate)); | |
| 56 | 56 | } |
| 57 | 57 | |
| 58 | 58 |
| r22709 | r22710 | |
|---|---|---|
| 326 | 326 | void tubep_state::tubep_setup_save_state() |
| 327 | 327 | { |
| 328 | 328 | /* Set up save state */ |
| 329 | state_save_register_global(machine(), m_sound_latch); | |
| 330 | state_save_register_global(machine(), m_ls74); | |
| 331 | state_save_register_global(machine(), m_ls377); | |
| 329 | save_item(NAME(m_sound_latch)); | |
| 330 | save_item(NAME(m_ls74)); | |
| 331 | save_item(NAME(m_ls377)); | |
| 332 | 332 | } |
| 333 | 333 | |
| 334 | 334 |
| r22709 | r22710 | |
|---|---|---|
| 793 | 793 | |
| 794 | 794 | MACHINE_START_MEMBER(exidy_state,teetert) |
| 795 | 795 | { |
| 796 | s | |
| 796 | save_item(NAME(m_last_dial)); | |
| 797 | 797 | } |
| 798 | 798 | |
| 799 | 799 | /************************************* |
| r22709 | r22710 | |
|---|---|---|
| 82 | 82 | |
| 83 | 83 | MACHINE_START_MEMBER(lvcards_state,lvpoker) |
| 84 | 84 | { |
| 85 | state_save_register_global(machine(), m_payout); | |
| 86 | state_save_register_global(machine(), m_pulse); | |
| 87 | state_save_register_global(machine(), m_result); | |
| 85 | save_item(NAME(m_payout)); | |
| 86 | save_item(NAME(m_pulse)); | |
| 87 | save_item(NAME(m_result)); | |
| 88 | 88 | } |
| 89 | 89 | |
| 90 | 90 | MACHINE_RESET_MEMBER(lvcards_state,lvpoker) |
| r22709 | r22710 | |
|---|---|---|
| 169 | 169 | void segag80v_state::machine_start() |
| 170 | 170 | { |
| 171 | 171 | /* register for save states */ |
| 172 | state_save_register_global_array(machine(), m_mult_data); | |
| 173 | state_save_register_global(machine(), m_mult_result); | |
| 174 | state_save_register_global(machine(), m_spinner_select); | |
| 175 | state_save_register_global(machine(), m_spinner_sign); | |
| 176 | state_save_register_global(machine(), m_spinner_count); | |
| 172 | save_item(NAME(m_mult_data)); | |
| 173 | save_item(NAME(m_mult_result)); | |
| 174 | save_item(NAME(m_spinner_select)); | |
| 175 | save_item(NAME(m_spinner_sign)); | |
| 176 | save_item(NAME(m_spinner_count)); | |
| 177 | 177 | } |
| 178 | 178 | |
| 179 | 179 |
| r22709 | r22710 | |
|---|---|---|
| 99 | 99 | |
| 100 | 100 | MACHINE_START_MEMBER(segac2_state,segac2) |
| 101 | 101 | { |
| 102 | state_save_register_global_array(machine(), m_misc_io_data); | |
| 103 | state_save_register_global(machine(), m_prot_write_buf); | |
| 104 | state_save_register_global(machine(), m_prot_read_buf); | |
| 102 | save_item(NAME(m_misc_io_data)); | |
| 103 | save_item(NAME(m_prot_write_buf)); | |
| 104 | save_item(NAME(m_prot_read_buf)); | |
| 105 | 105 | } |
| 106 | 106 | |
| 107 | 107 |
| r22709 | r22710 | |
|---|---|---|
| 652 | 652 | membank("bank4")->set_base(&rom[0x8000]); |
| 653 | 653 | |
| 654 | 654 | /* Register stuff for state saving */ |
| 655 | state_save_register_global_pointer(machine(), m_fdt_a, FDT_RAM_SIZE); | |
| 656 | state_save_register_global_pointer(machine(), m_fdt_b, FDT_RAM_SIZE); | |
| 657 | state_save_register_global_pointer(machine(), m_cmos_ram, CMOS_RAM_SIZE); | |
| 655 | save_pointer(NAME(m_fdt_a), FDT_RAM_SIZE); | |
| 656 | save_pointer(NAME(m_fdt_b), FDT_RAM_SIZE); | |
| 657 | save_pointer(NAME(m_cmos_ram), CMOS_RAM_SIZE); | |
| 658 | 658 | |
| 659 | state_save_register_global(machine(), m_g_iodata); | |
| 660 | state_save_register_global(machine(), m_g_ioaddr); | |
| 661 | state_save_register_global(machine(), m_coin_latch); | |
| 662 | state_save_register_global(machine(), m_keypad_status); | |
| 663 | state_save_register_global(machine(), m_g_status); | |
| 664 | state_save_register_global(machine(), m_f_status); | |
| 665 | state_save_register_global(machine(), m_io_firq_status); | |
| 666 | state_save_register_global(machine(), m_cmos_ram_a2_0); | |
| 667 | state_save_register_global(machine(), m_cmos_ram_a10_3); | |
| 659 | save_item(NAME(m_g_iodata)); | |
| 660 | save_item(NAME(m_g_ioaddr)); | |
| 661 | save_item(NAME(m_coin_latch)); | |
| 662 | save_item(NAME(m_keypad_status)); | |
| 663 | save_item(NAME(m_g_status)); | |
| 664 | save_item(NAME(m_f_status)); | |
| 665 | save_item(NAME(m_io_firq_status)); | |
| 666 | save_item(NAME(m_cmos_ram_a2_0)); | |
| 667 | save_item(NAME(m_cmos_ram_a10_3)); | |
| 668 | 668 | |
| 669 | state_save_register_global(machine(), m_u56a); | |
| 670 | state_save_register_global(machine(), m_u56b); | |
| 671 | state_save_register_global(machine(), m_g_to_s_latch1); | |
| 672 | state_save_register_global(machine(), m_g_to_s_latch2); | |
| 673 | state_save_register_global(machine(), m_s_to_g_latch1); | |
| 674 | state_save_register_global(machine(), m_s_to_g_latch2); | |
| 675 | state_save_register_global(machine(), m_dac_msb); | |
| 676 | state_save_register_global(machine(), m_dac_vol); | |
| 677 | state_save_register_global(machine(), m_tms_data); | |
| 669 | save_item(NAME(m_u56a)); | |
| 670 | save_item(NAME(m_u56b)); | |
| 671 | save_item(NAME(m_g_to_s_latch1)); | |
| 672 | save_item(NAME(m_g_to_s_latch2)); | |
| 673 | save_item(NAME(m_s_to_g_latch1)); | |
| 674 | save_item(NAME(m_s_to_g_latch2)); | |
| 675 | save_item(NAME(m_dac_msb)); | |
| 676 | save_item(NAME(m_dac_vol)); | |
| 677 | save_item(NAME(m_tms_data)); | |
| 678 | 678 | |
| 679 | 679 | m_fasel = 0; |
| 680 | 680 | m_fbsel = 1; |
| 681 | state_save_register_global(machine(), m_fasel); | |
| 682 | state_save_register_global(machine(), m_fbsel); | |
| 681 | save_item(NAME(m_fasel)); | |
| 682 | save_item(NAME(m_fbsel)); | |
| 683 | 683 | } |
| 684 | 684 | |
| 685 | 685 | static const esrip_config rip_config = |
| r22709 | r22710 | |
|---|---|---|
| 704 | 704 | m_CPUB_register=0; |
| 705 | 705 | |
| 706 | 706 | /* register for savestates */ |
| 707 | state_save_register_global(machine(), m_CPUA_register); | |
| 708 | state_save_register_global(machine(), m_CPUB_register); | |
| 707 | save_item(NAME(m_CPUA_register)); | |
| 708 | save_item(NAME(m_CPUB_register)); | |
| 709 | 709 | |
| 710 | state_save_register_global(machine(), m_sound_command); | |
| 711 | state_save_register_global(machine(), m_cuebrickj_nvram_bank); | |
| 712 | state_save_register_global_array(machine(), m_cuebrickj_nvram); | |
| 710 | save_item(NAME(m_sound_command)); | |
| 711 | save_item(NAME(m_cuebrickj_nvram_bank)); | |
| 712 | save_item(NAME(m_cuebrickj_nvram)); | |
| 713 | 713 | } |
| 714 | 714 | |
| 715 | 715 | static MACHINE_CONFIG_START( twin16, twin16_state ) |
| r22709 | r22710 | |
|---|---|---|
| 2193 | 2193 | |
| 2194 | 2194 | void ms32_state::configure_banks() |
| 2195 | 2195 | { |
| 2196 | s | |
| 2196 | save_item(NAME(m_to_main)); | |
| 2197 | 2197 | membank("bank4")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x14000, 0x4000); |
| 2198 | 2198 | membank("bank5")->configure_entries(0, 16, memregion("audiocpu")->base() + 0x14000, 0x4000); |
| 2199 | 2199 | } |
| r22709 | r22710 | |
|---|---|---|
| 1525 | 1525 | |
| 1526 | 1526 | void mcr3_state::mcr_common_init() |
| 1527 | 1527 | { |
| 1528 | state_save_register_global(machine(), m_input_mux); | |
| 1529 | state_save_register_global(machine(), m_latched_input); | |
| 1530 | state_save_register_global(machine(), m_last_op4); | |
| 1528 | save_item(NAME(m_input_mux)); | |
| 1529 | save_item(NAME(m_latched_input)); | |
| 1530 | save_item(NAME(m_last_op4)); | |
| 1531 | 1531 | } |
| 1532 | 1532 | |
| 1533 | 1533 | |
| r22709 | r22710 | |
| 1555 | 1555 | m_maincpu->space(AS_IO).install_write_handler(0x05, 0x05, write8_delegate(FUNC(mcr3_state::maxrpm_op5_w),this)); |
| 1556 | 1556 | m_maincpu->space(AS_IO).install_write_handler(0x06, 0x06, write8_delegate(FUNC(mcr3_state::maxrpm_op6_w),this)); |
| 1557 | 1557 | |
| 1558 | state_save_register_global(machine(), m_maxrpm_adc_control); | |
| 1559 | state_save_register_global(machine(), m_maxrpm_adc_select); | |
| 1560 | state_save_register_global(machine(), m_maxrpm_last_shift); | |
| 1561 | state_save_register_global(machine(), m_maxrpm_p1_shift); | |
| 1562 | state_save_register_global(machine(), m_maxrpm_p2_shift); | |
| 1558 | save_item(NAME(m_maxrpm_adc_control)); | |
| 1559 | save_item(NAME(m_maxrpm_adc_select)); | |
| 1560 | save_item(NAME(m_maxrpm_last_shift)); | |
| 1561 | save_item(NAME(m_maxrpm_p1_shift)); | |
| 1562 | save_item(NAME(m_maxrpm_p2_shift)); | |
| 1563 | 1563 | } |
| 1564 | 1564 | |
| 1565 | 1565 |
| r22709 | r22710 | |
|---|---|---|
| 841 | 841 | |
| 842 | 842 | m_mw_irq_control = 0; |
| 843 | 843 | |
| 844 | state_save_register_global(machine(), m_mw_irq_control); | |
| 845 | state_save_register_global(machine(), m_cur_sound_region); | |
| 844 | save_item(NAME(m_mw_irq_control)); | |
| 845 | save_item(NAME(m_cur_sound_region)); | |
| 846 | 846 | machine().save().register_postload(save_prepost_delegate(FUNC(mystwarr_state::reset_sound_region), this)); |
| 847 | 847 | } |
| 848 | 848 |
| r22709 | r22710 | |
|---|---|---|
| 910 | 910 | /* configure fast RAM regions for DRC */ |
| 911 | 911 | ppcdrc_add_fastram(m_maincpu, 0x00000000, 0x003fffff, FALSE, m_workram); |
| 912 | 912 | |
| 913 | state_save_register_global(machine(), m_led_reg0); | |
| 914 | state_save_register_global(machine(), m_led_reg1); | |
| 915 | state_save_register_global_pointer(machine(), m_jvs_sdata, 1024); | |
| 916 | state_save_register_global(machine(), m_jvs_sdata_ptr); | |
| 913 | save_item(NAME(m_led_reg0)); | |
| 914 | save_item(NAME(m_led_reg1)); | |
| 915 | save_pointer(NAME(m_jvs_sdata), 1024); | |
| 916 | save_item(NAME(m_jvs_sdata_ptr)); | |
| 917 | 917 | |
| 918 | 918 | m_sound_irq_timer = machine().scheduler().timer_alloc(timer_expired_delegate(FUNC(hornet_state::irq_off),this)); |
| 919 | 919 | } |
| r22709 | r22710 | |
|---|---|---|
| 3618 | 3618 | |
| 3619 | 3619 | MACHINE_START_MEMBER(konamigx_state,konamigx) |
| 3620 | 3620 | { |
| 3621 | state_save_register_global(machine(), konamigx_wrport1_1); | |
| 3622 | state_save_register_global_array(machine(), sndto020); | |
| 3623 | state_save_register_global_array(machine(), sndto000); | |
| 3621 | save_item(NAME(konamigx_wrport1_1)); | |
| 3622 | save_item(NAME(sndto020)); | |
| 3623 | save_item(NAME(sndto000)); | |
| 3624 | 3624 | } |
| 3625 | 3625 | |
| 3626 | 3626 | MACHINE_RESET_MEMBER(konamigx_state,konamigx) |
| r22709 | r22710 | |
|---|---|---|
| 156 | 156 | samples->set_volume(3, 0); |
| 157 | 157 | samples->start_raw(3, sine_wave, 32, 1000, true); |
| 158 | 158 | |
| 159 | state_save_register_global(machine, port_1_last); | |
| 160 | state_save_register_global(machine, port_2_last); | |
| 161 | state_save_register_global(machine, tone_freq); | |
| 162 | state_save_register_global(machine, tone_active); | |
| 159 | machine.save().save_item(NAME(port_1_last)); | |
| 160 | machine.save().save_item(NAME(port_2_last)); | |
| 161 | machine.save().save_item(NAME(tone_freq)); | |
| 162 | machine.save().save_item(NAME(tone_active)); | |
| 163 | 163 | } |
| 164 | 164 | |
| 165 | 165 | |
| r22709 | r22710 | |
| 176 | 176 | |
| 177 | 177 | tone_pointer = 0; |
| 178 | 178 | |
| 179 | s | |
| 179 | machine.save().save_item(NAME(tone_pointer)); | |
| 180 | 180 | } |
| 181 | 181 | |
| 182 | 182 |
| r22709 | r22710 | |
|---|---|---|
| 107 | 107 | |
| 108 | 108 | static void init_save_state(running_machine &machine) |
| 109 | 109 | { |
| 110 | state_save_register_global(machine, overall_volume); | |
| 111 | state_save_register_global(machine, pokey_volume); | |
| 112 | state_save_register_global(machine, ym2151_volume); | |
| 113 | state_save_register_global(machine, tms5220_volume); | |
| 114 | state_save_register_global(machine, oki6295_volume); | |
| 110 | machine.save().save_item(NAME(overall_volume)); | |
| 111 | machine.save().save_item(NAME(pokey_volume)); | |
| 112 | machine.save().save_item(NAME(ym2151_volume)); | |
| 113 | machine.save().save_item(NAME(tms5220_volume)); | |
| 114 | machine.save().save_item(NAME(oki6295_volume)); | |
| 115 | 115 | } |
| 116 | 116 | |
| 117 | 117 |
| r22709 | r22710 | |
|---|---|---|
| 258 | 258 | static SOUND_START( astrob ) |
| 259 | 259 | { |
| 260 | 260 | segag80r_state *state = machine.driver_data<segag80r_state>(); |
| 261 | state_save_register_global_array(machine, state->m_sound_state); | |
| 262 | state_save_register_global(machine, state->m_sound_rate); | |
| 261 | machine.save().save_item(NAME(state->m_sound_state)); | |
| 262 | machine.save().save_item(NAME(state->m_sound_rate)); | |
| 263 | 263 | } |
| 264 | 264 | |
| 265 | 265 | |
| r22709 | r22710 | |
| 488 | 488 | static SOUND_START( sega005 ) |
| 489 | 489 | { |
| 490 | 490 | segag80r_state *state = machine.driver_data<segag80r_state>(); |
| 491 | state_save_register_global_array(machine, state->m_sound_state); | |
| 492 | state_save_register_global(machine, state->m_sound_addr); | |
| 493 | state_save_register_global(machine, state->m_sound_data); | |
| 494 | state_save_register_global(machine, state->m_square_state); | |
| 495 | state_save_register_global(machine, state->m_square_count); | |
| 491 | state->save_item(NAME(state->m_sound_state)); | |
| 492 | state->save_item(NAME(state->m_sound_addr)); | |
| 493 | state->save_item(NAME(state->m_sound_data)); | |
| 494 | state->save_item(NAME(state->m_square_state)); | |
| 495 | state->save_item(NAME(state->m_square_count)); | |
| 496 | 496 | } |
| 497 | 497 | |
| 498 | 498 | |
| r22709 | r22710 | |
| 709 | 709 | static SOUND_START( spaceod ) |
| 710 | 710 | { |
| 711 | 711 | segag80r_state *state = machine.driver_data<segag80r_state>(); |
| 712 | state | |
| 712 | state->save_item(NAME(state->m_sound_state)); | |
| 713 | 713 | } |
| 714 | 714 | |
| 715 | 715 | |
| r22709 | r22710 | |
| 881 | 881 | static SOUND_START( monsterb ) |
| 882 | 882 | { |
| 883 | 883 | segag80r_state *state = machine.driver_data<segag80r_state>(); |
| 884 | state_save_register_global_array(machine, state->m_sound_state); | |
| 885 | state_save_register_global(machine, state->m_sound_addr); | |
| 886 | state_save_register_global(machine, state->m_n7751_command); | |
| 887 | state_save_register_global(machine, state->m_n7751_busy); | |
| 884 | state->save_item(NAME(state->m_sound_state)); | |
| 885 | state->save_item(NAME(state->m_sound_addr)); | |
| 886 | state->save_item(NAME(state->m_n7751_command)); | |
| 887 | state->save_item(NAME(state->m_n7751_busy)); | |
| 888 | 888 | } |
| 889 | 889 | |
| 890 | 890 |
| r22709 | r22710 | |
|---|---|---|
| 75 | 75 | { |
| 76 | 76 | cinemat_state *state = machine.driver_data<cinemat_state>(); |
| 77 | 77 | /* register for save states */ |
| 78 | state_save_register_global(machine, state->m_sound_control); | |
| 79 | state_save_register_global(machine, state->m_current_shift); | |
| 80 | state_save_register_global(machine, state->m_last_shift); | |
| 81 | state_save_register_global(machine, state->m_last_shift2); | |
| 82 | state_save_register_global(machine, state->m_current_pitch); | |
| 83 | state_save_register_global(machine, state->m_last_frame); | |
| 84 | state_save_register_global_array(machine, state->m_sound_fifo); | |
| 85 | state_save_register_global(machine, state->m_sound_fifo_in); | |
| 86 | state_save_register_global(machine, state->m_sound_fifo_out); | |
| 87 | state_save_register_global(machine, state->m_last_portb_write); | |
| 78 | machine.save().save_item(NAME(state->m_sound_control)); | |
| 79 | machine.save().save_item(NAME(state->m_current_shift)); | |
| 80 | machine.save().save_item(NAME(state->m_last_shift)); | |
| 81 | machine.save().save_item(NAME(state->m_last_shift2)); | |
| 82 | machine.save().save_item(NAME(state->m_current_pitch)); | |
| 83 | machine.save().save_item(NAME(state->m_last_frame)); | |
| 84 | machine.save().save_item(NAME(state->m_sound_fifo)); | |
| 85 | machine.save().save_item(NAME(state->m_sound_fifo_in)); | |
| 86 | machine.save().save_item(NAME(state->m_sound_fifo_out)); | |
| 87 | machine.save().save_item(NAME(state->m_last_portb_write)); | |
| 88 | 88 | } |
| 89 | 89 | |
| 90 | 90 |
| r22709 | r22710 | |
|---|---|---|
| 186 | 186 | state->dmadac[chan] = machine.device<dmadac_sound_device>(buffer); |
| 187 | 187 | } |
| 188 | 188 | |
| 189 | state_save_register_global(machine, cage.cpu_to_cage_ready); | |
| 190 | state_save_register_global(machine, cage.cage_to_cpu_ready); | |
| 191 | state_save_register_global(machine, cage.serial_period_per_word); | |
| 192 | state_save_register_global(machine, cage.dma_enabled); | |
| 193 | state_save_register_global(machine, cage.dma_timer_enabled); | |
| 194 | state_save_register_global_array(machine, cage.timer_enabled); | |
| 195 | state_save_register_global(machine, cage.from_main); | |
| 196 | state_save_register_global(machine, cage.control); | |
| 189 | machine.save().save_item(NAME(cage.cpu_to_cage_ready)); | |
| 190 | machine.save().save_item(NAME(cage.cage_to_cpu_ready)); | |
| 191 | machine.save().save_item(NAME(cage.serial_period_per_word)); | |
| 192 | machine.save().save_item(NAME(cage.dma_enabled)); | |
| 193 | machine.save().save_item(NAME(cage.dma_timer_enabled)); | |
| 194 | machine.save().save_item(NAME(cage.timer_enabled)); | |
| 195 | machine.save().save_item(NAME(cage.from_main)); | |
| 196 | machine.save().save_item(NAME(cage.control)); | |
| 197 | 197 | } |
| 198 | 198 | |
| 199 | 199 |
| r22709 | r22710 | |
|---|---|---|
| 172 | 172 | /* reset the system */ |
| 173 | 173 | state->sound_command = 0; |
| 174 | 174 | state->sound_command_ack = 1; |
| 175 | state_save_register_global(machine, state->sound_command); | |
| 176 | state_save_register_global(machine, state->sound_command_ack); | |
| 175 | machine.save().save_item(NAME(state->sound_command)); | |
| 176 | machine.save().save_item(NAME(state->sound_command_ack)); | |
| 177 | 177 | |
| 178 | 178 | /* reset the 6844 */ |
| 179 | 179 | for (i = 0; i < 4; i++) |
| r22709 | r22710 | |
| 185 | 185 | state->m6844_interrupt = 0x00; |
| 186 | 186 | state->m6844_chain = 0x00; |
| 187 | 187 | |
| 188 | state_save_register_global(machine, state->m6844_priority); | |
| 189 | state_save_register_global(machine, state->m6844_interrupt); | |
| 190 | state_save_register_global(machine, state->m6844_chain); | |
| 188 | machine.save().save_item(NAME(state->m6844_priority)); | |
| 189 | machine.save().save_item(NAME(state->m6844_interrupt)); | |
| 190 | machine.save().save_item(NAME(state->m6844_chain)); | |
| 191 | 191 | |
| 192 | 192 | state->channel_frequency[0] = device->clock(); /* channels 0 and 1 are run by FCLK */ |
| 193 | 193 | state->channel_frequency[1] = device->clock(); |
| r22709 | r22710 | |
|---|---|---|
| 883 | 883 | |
| 884 | 884 | static void dcs_register_state(running_machine &machine) |
| 885 | 885 | { |
| 886 | state_save_register_global_array(machine, dcs.sdrc.reg); | |
| 887 | state_save_register_global(machine, dcs.sdrc.seed); | |
| 886 | machine.save().save_item(NAME(dcs.sdrc.reg)); | |
| 887 | machine.save().save_item(NAME(dcs.sdrc.seed)); | |
| 888 | 888 | |
| 889 | state_save_register_global_array(machine, dcs.dsio.reg); | |
| 890 | state_save_register_global(machine, dcs.dsio.start_on_next_write); | |
| 891 | state_save_register_global(machine, dcs.dsio.channelbits); | |
| 889 | machine.save().save_item(NAME(dcs.dsio.reg)); | |
| 890 | machine.save().save_item(NAME(dcs.dsio.start_on_next_write)); | |
| 891 | machine.save().save_item(NAME(dcs.dsio.channelbits)); | |
| 892 | 892 | |
| 893 | state_save_register_global(machine, dcs.channels); | |
| 894 | state_save_register_global(machine, dcs.size); | |
| 895 | state_save_register_global(machine, dcs.incs); | |
| 896 | state_save_register_global(machine, dcs.ireg); | |
| 897 | state_save_register_global(machine, dcs.ireg_base); | |
| 898 | state_save_register_global_array(machine, dcs.control_regs); | |
| 893 | machine.save().save_item(NAME(dcs.channels)); | |
| 894 | machine.save().save_item(NAME(dcs.size)); | |
| 895 | machine.save().save_item(NAME(dcs.incs)); | |
| 896 | machine.save().save_item(NAME(dcs.ireg)); | |
| 897 | machine.save().save_item(NAME(dcs.ireg_base)); | |
| 898 | machine.save().save_item(NAME(dcs.control_regs)); | |
| 899 | 899 | |
| 900 | s | |
| 900 | machine.save().save_item(NAME(dcs.sounddata_bank)); | |
| 901 | 901 | |
| 902 | state_save_register_global(machine, dcs.auto_ack); | |
| 903 | state_save_register_global(machine, dcs.latch_control); | |
| 904 | state_save_register_global(machine, dcs.input_data); | |
| 905 | state_save_register_global(machine, dcs.output_data); | |
| 906 | state_save_register_global(machine, dcs.output_control); | |
| 907 | state_save_register_global(machine, dcs.output_control_cycles); | |
| 908 | state_save_register_global(machine, dcs.last_output_full); | |
| 909 | state_save_register_global(machine, dcs.last_input_empty); | |
| 910 | state_save_register_global(machine, dcs.progflags); | |
| 902 | machine.save().save_item(NAME(dcs.auto_ack)); | |
| 903 | machine.save().save_item(NAME(dcs.latch_control)); | |
| 904 | machine.save().save_item(NAME(dcs.input_data)); | |
| 905 | machine.save().save_item(NAME(dcs.output_data)); | |
| 906 | machine.save().save_item(NAME(dcs.output_control)); | |
| 907 | machine.save().save_item(NAME(dcs.output_control_cycles)); | |
| 908 | machine.save().save_item(NAME(dcs.last_output_full)); | |
| 909 | machine.save().save_item(NAME(dcs.last_input_empty)); | |
| 910 | machine.save().save_item(NAME(dcs.progflags)); | |
| 911 | 911 | |
| 912 | state_save_register_global(machine, dcs.timer_enable); | |
| 913 | state_save_register_global(machine, dcs.timer_ignore); | |
| 914 | state_save_register_global(machine, dcs.timer_start_cycles); | |
| 915 | state_save_register_global(machine, dcs.timer_start_count); | |
| 916 | state_save_register_global(machine, dcs.timer_scale); | |
| 917 | state_save_register_global(machine, dcs.timer_period); | |
| 918 | state_save_register_global(machine, dcs.timers_fired); | |
| 912 | machine.save().save_item(NAME(dcs.timer_enable)); | |
| 913 | machine.save().save_item(NAME(dcs.timer_ignore)); | |
| 914 | machine.save().save_item(NAME(dcs.timer_start_cycles)); | |
| 915 | machine.save().save_item(NAME(dcs.timer_start_count)); | |
| 916 | machine.save().save_item(NAME(dcs.timer_scale)); | |
| 917 | machine.save().save_item(NAME(dcs.timer_period)); | |
| 918 | machine.save().save_item(NAME(dcs.timers_fired)); | |
| 919 | 919 | |
| 920 | state_save_register_global(machine, dcs.transfer.dcs_state); | |
| 921 | state_save_register_global(machine, dcs.transfer.state); | |
| 922 | state_save_register_global(machine, dcs.transfer.start); | |
| 923 | state_save_register_global(machine, dcs.transfer.stop); | |
| 924 | state_save_register_global(machine, dcs.transfer.type); | |
| 925 | state_save_register_global(machine, dcs.transfer.temp); | |
| 926 | state_save_register_global(machine, dcs.transfer.writes_left); | |
| 927 | state_save_register_global(machine, dcs.transfer.sum); | |
| 928 | state_save_register_global(machine, dcs.transfer.fifo_entries); | |
| 920 | machine.save().save_item(NAME(dcs.transfer.dcs_state)); | |
| 921 | machine.save().save_item(NAME(dcs.transfer.state)); | |
| 922 | machine.save().save_item(NAME(dcs.transfer.start)); | |
| 923 | machine.save().save_item(NAME(dcs.transfer.stop)); | |
| 924 | machine.save().save_item(NAME(dcs.transfer.type)); | |
| 925 | machine.save().save_item(NAME(dcs.transfer.temp)); | |
| 926 | machine.save().save_item(NAME(dcs.transfer.writes_left)); | |
| 927 | machine.save().save_item(NAME(dcs.transfer.sum)); | |
| 928 | machine.save().save_item(NAME(dcs.transfer.fifo_entries)); | |
| 929 | 929 | |
| 930 | 930 | if (dcs.sram != NULL) |
| 931 | | |
| 931 | machine.save().save_pointer(NAME(dcs.sram), 0x8000*4 / sizeof(dcs.sram[0])); | |
| 932 | 932 | |
| 933 | 933 | if (dcs.rev == 2) |
| 934 | 934 | machine.save().register_postload(save_prepost_delegate(FUNC(sdrc_remap_memory), &machine)); |
| Previous | 199869 Revisions | Next |