Added "tag" parameter to state_save_register_item_* calls. Removed

state_save_combine_module_and_tag() function in favor of passing
the tag when registering. Revisited all save state item registrations
and changed them to use the tag where appropriate.
This commit is contained in:
Aaron Giles 2008-11-17 06:21:26 +00:00
parent 8aa46743d1
commit a5bf427929
203 changed files with 3393 additions and 3610 deletions

View File

@ -613,85 +613,85 @@ static adsp2100_state *adsp21xx_init(const device_config *device, int index, int
adsp->shift_xregs[7] = &adsp->core.sr.srx.sr1;
/* "core" */
state_save_register_item("adsp2100", index, adsp->core.ax0.u);
state_save_register_item("adsp2100", index, adsp->core.ax1.u);
state_save_register_item("adsp2100", index, adsp->core.ay0.u);
state_save_register_item("adsp2100", index, adsp->core.ay1.u);
state_save_register_item("adsp2100", index, adsp->core.ar.u);
state_save_register_item("adsp2100", index, adsp->core.af.u);
state_save_register_item("adsp2100", index, adsp->core.mx0.u);
state_save_register_item("adsp2100", index, adsp->core.mx1.u);
state_save_register_item("adsp2100", index, adsp->core.my0.u);
state_save_register_item("adsp2100", index, adsp->core.my1.u);
state_save_register_item("adsp2100", index, adsp->core.mr.mr);
state_save_register_item("adsp2100", index, adsp->core.mf.u);
state_save_register_item("adsp2100", index, adsp->core.si.u);
state_save_register_item("adsp2100", index, adsp->core.se.u);
state_save_register_item("adsp2100", index, adsp->core.sb.u);
state_save_register_item("adsp2100", index, adsp->core.sr.sr);
state_save_register_item("adsp2100", index, adsp->core.zero.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.ax0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.ax1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.ay0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.ay1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.ar.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.af.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.mx0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.mx1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.my0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.my1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.mr.mr);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.mf.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.si.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.se.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.sb.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.sr.sr);
state_save_register_item("adsp2100", device->tag, 0, adsp->core.zero.u);
/* "alt" */
state_save_register_item("adsp2100", index, adsp->alt.ax0.u);
state_save_register_item("adsp2100", index, adsp->alt.ax1.u);
state_save_register_item("adsp2100", index, adsp->alt.ay0.u);
state_save_register_item("adsp2100", index, adsp->alt.ay1.u);
state_save_register_item("adsp2100", index, adsp->alt.ar.u);
state_save_register_item("adsp2100", index, adsp->alt.af.u);
state_save_register_item("adsp2100", index, adsp->alt.mx0.u);
state_save_register_item("adsp2100", index, adsp->alt.mx1.u);
state_save_register_item("adsp2100", index, adsp->alt.my0.u);
state_save_register_item("adsp2100", index, adsp->alt.my1.u);
state_save_register_item("adsp2100", index, adsp->alt.mr.mr);
state_save_register_item("adsp2100", index, adsp->alt.mf.u);
state_save_register_item("adsp2100", index, adsp->alt.si.u);
state_save_register_item("adsp2100", index, adsp->alt.se.u);
state_save_register_item("adsp2100", index, adsp->alt.sb.u);
state_save_register_item("adsp2100", index, adsp->alt.sr.sr);
state_save_register_item("adsp2100", index, adsp->alt.zero.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.ax0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.ax1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.ay0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.ay1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.ar.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.af.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.mx0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.mx1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.my0.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.my1.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.mr.mr);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.mf.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.si.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.se.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.sb.u);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.sr.sr);
state_save_register_item("adsp2100", device->tag, 0, adsp->alt.zero.u);
state_save_register_item_array("adsp2100", index, adsp->i);
state_save_register_item_array("adsp2100", index, adsp->m);
state_save_register_item_array("adsp2100", index, adsp->l);
state_save_register_item_array("adsp2100", index, adsp->lmask);
state_save_register_item_array("adsp2100", index, adsp->base);
state_save_register_item("adsp2100", index, adsp->px);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->i);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->m);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->l);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->lmask);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->base);
state_save_register_item("adsp2100", device->tag, 0, adsp->px);
state_save_register_item("adsp2100", index, adsp->pc);
state_save_register_item("adsp2100", index, adsp->ppc);
state_save_register_item("adsp2100", index, adsp->loop);
state_save_register_item("adsp2100", index, adsp->loop_condition);
state_save_register_item("adsp2100", index, adsp->cntr);
state_save_register_item("adsp2100", index, adsp->astat);
state_save_register_item("adsp2100", index, adsp->sstat);
state_save_register_item("adsp2100", index, adsp->mstat);
state_save_register_item("adsp2100", index, adsp->astat_clear);
state_save_register_item("adsp2100", index, adsp->idle);
state_save_register_item("adsp2100", device->tag, 0, adsp->pc);
state_save_register_item("adsp2100", device->tag, 0, adsp->ppc);
state_save_register_item("adsp2100", device->tag, 0, adsp->loop);
state_save_register_item("adsp2100", device->tag, 0, adsp->loop_condition);
state_save_register_item("adsp2100", device->tag, 0, adsp->cntr);
state_save_register_item("adsp2100", device->tag, 0, adsp->astat);
state_save_register_item("adsp2100", device->tag, 0, adsp->sstat);
state_save_register_item("adsp2100", device->tag, 0, adsp->mstat);
state_save_register_item("adsp2100", device->tag, 0, adsp->astat_clear);
state_save_register_item("adsp2100", device->tag, 0, adsp->idle);
state_save_register_item_array("adsp2100", index, adsp->loop_stack);
state_save_register_item_array("adsp2100", index, adsp->cntr_stack);
state_save_register_item_array("adsp2100", index, adsp->pc_stack);
state_save_register_item_2d_array("adsp2100", index, adsp->stat_stack);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->loop_stack);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->cntr_stack);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->pc_stack);
state_save_register_item_2d_array("adsp2100", device->tag, 0, adsp->stat_stack);
state_save_register_item("adsp2100", index, adsp->pc_sp);
state_save_register_item("adsp2100", index, adsp->cntr_sp);
state_save_register_item("adsp2100", index, adsp->stat_sp);
state_save_register_item("adsp2100", index, adsp->loop_sp);
state_save_register_item("adsp2100", device->tag, 0, adsp->pc_sp);
state_save_register_item("adsp2100", device->tag, 0, adsp->cntr_sp);
state_save_register_item("adsp2100", device->tag, 0, adsp->stat_sp);
state_save_register_item("adsp2100", device->tag, 0, adsp->loop_sp);
state_save_register_item("adsp2100", index, adsp->flagout);
state_save_register_item("adsp2100", index, adsp->flagin);
state_save_register_item("adsp2100", index, adsp->fl0);
state_save_register_item("adsp2100", index, adsp->fl1);
state_save_register_item("adsp2100", index, adsp->fl2);
state_save_register_item("adsp2100", index, adsp->idma_addr);
state_save_register_item("adsp2100", index, adsp->idma_cache);
state_save_register_item("adsp2100", index, adsp->idma_offs);
state_save_register_item("adsp2100", device->tag, 0, adsp->flagout);
state_save_register_item("adsp2100", device->tag, 0, adsp->flagin);
state_save_register_item("adsp2100", device->tag, 0, adsp->fl0);
state_save_register_item("adsp2100", device->tag, 0, adsp->fl1);
state_save_register_item("adsp2100", device->tag, 0, adsp->fl2);
state_save_register_item("adsp2100", device->tag, 0, adsp->idma_addr);
state_save_register_item("adsp2100", device->tag, 0, adsp->idma_cache);
state_save_register_item("adsp2100", device->tag, 0, adsp->idma_offs);
state_save_register_item("adsp2100", index, adsp->imask);
state_save_register_item("adsp2100", index, adsp->icntl);
state_save_register_item("adsp2100", index, adsp->ifc);
state_save_register_item_array("adsp2100", index, adsp->irq_state);
state_save_register_item_array("adsp2100", index, adsp->irq_latch);
state_save_register_item("adsp2100", device->tag, 0, adsp->imask);
state_save_register_item("adsp2100", device->tag, 0, adsp->icntl);
state_save_register_item("adsp2100", device->tag, 0, adsp->ifc);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->irq_state);
state_save_register_item_array("adsp2100", device->tag, 0, adsp->irq_latch);
return adsp;
}

View File

@ -664,27 +664,27 @@ static const s_opcode opcode_8301[256]=
****************************************************************************/
static CPU_INIT( ALPHA8201 )
{
state_save_register_item_array("ALPHA8201", index, R.RAM);
state_save_register_item("ALPHA8201", index, R.PREVPC);
state_save_register_item("ALPHA8201", index, PC);
state_save_register_item("ALPHA8201", index, regPTR);
state_save_register_item("ALPHA8201", index, ZF);
state_save_register_item("ALPHA8201", index, CF);
state_save_register_item("ALPHA8201", index, R.mb);
state_save_register_item_array("ALPHA8201", device->tag, 0, R.RAM);
state_save_register_item("ALPHA8201", device->tag, 0, R.PREVPC);
state_save_register_item("ALPHA8201", device->tag, 0, PC);
state_save_register_item("ALPHA8201", device->tag, 0, regPTR);
state_save_register_item("ALPHA8201", device->tag, 0, ZF);
state_save_register_item("ALPHA8201", device->tag, 0, CF);
state_save_register_item("ALPHA8201", device->tag, 0, R.mb);
#if HANDLE_HALT_LINE
state_save_register_item("ALPHA8201", index, R.halt);
state_save_register_item("ALPHA8201", device->tag, 0, R.halt);
#endif
state_save_register_item("ALPHA8201", index, IX0);
state_save_register_item("ALPHA8201", index, IX1);
state_save_register_item("ALPHA8201", index, IX2);
state_save_register_item("ALPHA8201", index, LP0);
state_save_register_item("ALPHA8201", index, LP1);
state_save_register_item("ALPHA8201", index, LP2);
state_save_register_item("ALPHA8201", index, R.A);
state_save_register_item("ALPHA8201", index, R.B);
state_save_register_item("ALPHA8201", index, R.retptr);
state_save_register_item("ALPHA8201", index, R.savec);
state_save_register_item("ALPHA8201", index, R.savez);
state_save_register_item("ALPHA8201", device->tag, 0, IX0);
state_save_register_item("ALPHA8201", device->tag, 0, IX1);
state_save_register_item("ALPHA8201", device->tag, 0, IX2);
state_save_register_item("ALPHA8201", device->tag, 0, LP0);
state_save_register_item("ALPHA8201", device->tag, 0, LP1);
state_save_register_item("ALPHA8201", device->tag, 0, LP2);
state_save_register_item("ALPHA8201", device->tag, 0, R.A);
state_save_register_item("ALPHA8201", device->tag, 0, R.B);
state_save_register_item("ALPHA8201", device->tag, 0, R.retptr);
state_save_register_item("ALPHA8201", device->tag, 0, R.savec);
state_save_register_item("ALPHA8201", device->tag, 0, R.savez);
}
/****************************************************************************
* Reset registers to their initial values

View File

@ -515,10 +515,10 @@ static CPU_INIT( arm )
arm.irq_callback = irqcallback;
arm.device = device;
state_save_register_item_array("arm", index, arm.sArmRegister);
state_save_register_item_array("arm", index, arm.coproRegister);
state_save_register_item("arm", index, arm.pendingIrq);
state_save_register_item("arm", index, arm.pendingFiq);
state_save_register_item_array("arm", device->tag, 0, arm.sArmRegister);
state_save_register_item_array("arm", device->tag, 0, arm.coproRegister);
state_save_register_item("arm", device->tag, 0, arm.pendingIrq);
state_save_register_item("arm", device->tag, 0, arm.pendingFiq);
}
/***************************************************************************/

View File

@ -85,7 +85,7 @@ static int ARM7_ICOUNT;
static CPU_INIT( arm7 )
{
// must call core
arm7_core_init("arm7", index);
arm7_core_init("arm7", device);
ARM7.irq_callback = irqcallback;
ARM7.device = device;

View File

@ -508,15 +508,15 @@ static int storeDec(UINT32 pat, UINT32 rbv)
***************************************************************************/
// CPU INIT
static void arm7_core_init(const char *cpuname, int index)
static void arm7_core_init(const char *cpuname, const device_config *device)
{
state_save_register_item_array(cpuname, index, ARM7.sArmRegister);
state_save_register_item(cpuname, index, ARM7.pendingIrq);
state_save_register_item(cpuname, index, ARM7.pendingFiq);
state_save_register_item(cpuname, index, ARM7.pendingAbtD);
state_save_register_item(cpuname, index, ARM7.pendingAbtP);
state_save_register_item(cpuname, index, ARM7.pendingUnd);
state_save_register_item(cpuname, index, ARM7.pendingSwi);
state_save_register_item_array(cpuname, device->tag, 0, ARM7.sArmRegister);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingIrq);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingFiq);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingAbtD);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingAbtP);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingUnd);
state_save_register_item(cpuname, device->tag, 0, ARM7.pendingSwi);
}
// CPU RESET

View File

@ -141,25 +141,25 @@ static CPU_INIT( ccpu )
ccpu.external_input = configdata->external_input ? configdata->external_input : read_jmi;
ccpu.vector_callback = configdata->vector_callback;
state_save_register_item("ccpu", clock, ccpu.PC);
state_save_register_item("ccpu", clock, ccpu.A);
state_save_register_item("ccpu", clock, ccpu.B);
state_save_register_item("ccpu", clock, ccpu.I);
state_save_register_item("ccpu", clock, ccpu.J);
state_save_register_item("ccpu", clock, ccpu.P);
state_save_register_item("ccpu", clock, ccpu.X);
state_save_register_item("ccpu", clock, ccpu.Y);
state_save_register_item("ccpu", clock, ccpu.T);
state_save_register_item("ccpu", clock, ccpu.a0flag);
state_save_register_item("ccpu", clock, ccpu.ncflag);
state_save_register_item("ccpu", clock, ccpu.cmpacc);
state_save_register_item("ccpu", clock, ccpu.cmpval);
state_save_register_item("ccpu", clock, ccpu.miflag);
state_save_register_item("ccpu", clock, ccpu.nextmiflag);
state_save_register_item("ccpu", clock, ccpu.nextnextmiflag);
state_save_register_item("ccpu", clock, ccpu.drflag);
state_save_register_item("ccpu", clock, ccpu.waiting);
state_save_register_item("ccpu", clock, ccpu.watchdog);
state_save_register_item("ccpu", device->tag, 0, ccpu.PC);
state_save_register_item("ccpu", device->tag, 0, ccpu.A);
state_save_register_item("ccpu", device->tag, 0, ccpu.B);
state_save_register_item("ccpu", device->tag, 0, ccpu.I);
state_save_register_item("ccpu", device->tag, 0, ccpu.J);
state_save_register_item("ccpu", device->tag, 0, ccpu.P);
state_save_register_item("ccpu", device->tag, 0, ccpu.X);
state_save_register_item("ccpu", device->tag, 0, ccpu.Y);
state_save_register_item("ccpu", device->tag, 0, ccpu.T);
state_save_register_item("ccpu", device->tag, 0, ccpu.a0flag);
state_save_register_item("ccpu", device->tag, 0, ccpu.ncflag);
state_save_register_item("ccpu", device->tag, 0, ccpu.cmpacc);
state_save_register_item("ccpu", device->tag, 0, ccpu.cmpval);
state_save_register_item("ccpu", device->tag, 0, ccpu.miflag);
state_save_register_item("ccpu", device->tag, 0, ccpu.nextmiflag);
state_save_register_item("ccpu", device->tag, 0, ccpu.nextnextmiflag);
state_save_register_item("ccpu", device->tag, 0, ccpu.drflag);
state_save_register_item("ccpu", device->tag, 0, ccpu.waiting);
state_save_register_item("ccpu", device->tag, 0, ccpu.watchdog);
}

View File

@ -74,24 +74,24 @@ static CPU_INIT( cdp1802 )
cdp1802.dmain = CLEAR_LINE;
cdp1802.dmaout = CLEAR_LINE;
state_save_register_item("cdp1802", index, cdp1802.p);
state_save_register_item("cdp1802", index, cdp1802.x);
state_save_register_item("cdp1802", index, cdp1802.d);
state_save_register_item("cdp1802", index, cdp1802.b);
state_save_register_item("cdp1802", index, cdp1802.t);
state_save_register_item_array("cdp1802", index, cdp1802.r);
state_save_register_item("cdp1802", index, cdp1802.df);
state_save_register_item("cdp1802", index, cdp1802.ie);
state_save_register_item("cdp1802", index, cdp1802.q);
state_save_register_item("cdp1802", index, cdp1802.n);
state_save_register_item("cdp1802", index, cdp1802.i);
state_save_register_item("cdp1802", index, cdp1802.state);
state_save_register_item("cdp1802", index, cdp1802.prevmode);
state_save_register_item("cdp1802", index, cdp1802.mode);
state_save_register_item("cdp1802", index, cdp1802.irq);
state_save_register_item("cdp1802", index, cdp1802.dmain);
state_save_register_item("cdp1802", index, cdp1802.dmaout);
state_save_register_item("cdp1802", index, cdp1802.ef);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.p);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.x);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.d);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.b);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.t);
state_save_register_item_array("cdp1802", device->tag, 0, cdp1802.r);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.df);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.ie);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.q);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.n);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.i);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.state);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.prevmode);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.mode);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.irq);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.dmain);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.dmaout);
state_save_register_item("cdp1802", device->tag, 0, cdp1802.ef);
}
INLINE void cdp1802_add(int left, int right)

View File

@ -255,25 +255,25 @@ static CPU_INIT( cop410 )
/* register for state saving */
state_save_register_item("cop410", index, PC);
state_save_register_item("cop410", index, R.PREVPC);
state_save_register_item("cop410", index, A);
state_save_register_item("cop410", index, B);
state_save_register_item("cop410", index, C);
state_save_register_item("cop410", index, EN);
state_save_register_item("cop410", index, G);
state_save_register_item("cop410", index, Q);
state_save_register_item("cop410", index, SA);
state_save_register_item("cop410", index, SB);
state_save_register_item("cop410", index, SIO);
state_save_register_item("cop410", index, SKL);
state_save_register_item("cop410", index, skip);
state_save_register_item("cop410", index, skipLBI);
state_save_register_item("cop410", index, R.G_mask);
state_save_register_item("cop410", index, R.D_mask);
state_save_register_item("cop410", index, R.si);
state_save_register_item("cop410", index, R.microbus_int);
state_save_register_item("cop410", index, R.halt);
state_save_register_item("cop410", device->tag, 0, PC);
state_save_register_item("cop410", device->tag, 0, R.PREVPC);
state_save_register_item("cop410", device->tag, 0, A);
state_save_register_item("cop410", device->tag, 0, B);
state_save_register_item("cop410", device->tag, 0, C);
state_save_register_item("cop410", device->tag, 0, EN);
state_save_register_item("cop410", device->tag, 0, G);
state_save_register_item("cop410", device->tag, 0, Q);
state_save_register_item("cop410", device->tag, 0, SA);
state_save_register_item("cop410", device->tag, 0, SB);
state_save_register_item("cop410", device->tag, 0, SIO);
state_save_register_item("cop410", device->tag, 0, SKL);
state_save_register_item("cop410", device->tag, 0, skip);
state_save_register_item("cop410", device->tag, 0, skipLBI);
state_save_register_item("cop410", device->tag, 0, R.G_mask);
state_save_register_item("cop410", device->tag, 0, R.D_mask);
state_save_register_item("cop410", device->tag, 0, R.si);
state_save_register_item("cop410", device->tag, 0, R.microbus_int);
state_save_register_item("cop410", device->tag, 0, R.halt);
}
static CPU_INIT( cop411 )

View File

@ -367,31 +367,31 @@ static CPU_INIT( cop420 )
/* register for state saving */
state_save_register_item("cop420", index, PC);
state_save_register_item("cop420", index, R.PREVPC);
state_save_register_item("cop420", index, A);
state_save_register_item("cop420", index, B);
state_save_register_item("cop420", index, C);
state_save_register_item("cop420", index, EN);
state_save_register_item("cop420", index, G);
state_save_register_item("cop420", index, Q);
state_save_register_item("cop420", index, SA);
state_save_register_item("cop420", index, SB);
state_save_register_item("cop420", index, SC);
state_save_register_item("cop420", index, SIO);
state_save_register_item("cop420", index, SKL);
state_save_register_item("cop420", index, skip);
state_save_register_item("cop420", index, skipLBI);
state_save_register_item("cop420", index, R.timerlatch);
state_save_register_item("cop420", index, R.counter);
state_save_register_item("cop420", index, R.G_mask);
state_save_register_item("cop420", index, R.D_mask);
state_save_register_item("cop420", index, R.IN_mask);
state_save_register_item("cop420", index, R.si);
state_save_register_item("cop420", index, R.last_skip);
state_save_register_item_array("cop420", index, R.in);
state_save_register_item("cop420", index, R.microbus_int);
state_save_register_item("cop420", index, R.halt);
state_save_register_item("cop420", device->tag, 0, PC);
state_save_register_item("cop420", device->tag, 0, R.PREVPC);
state_save_register_item("cop420", device->tag, 0, A);
state_save_register_item("cop420", device->tag, 0, B);
state_save_register_item("cop420", device->tag, 0, C);
state_save_register_item("cop420", device->tag, 0, EN);
state_save_register_item("cop420", device->tag, 0, G);
state_save_register_item("cop420", device->tag, 0, Q);
state_save_register_item("cop420", device->tag, 0, SA);
state_save_register_item("cop420", device->tag, 0, SB);
state_save_register_item("cop420", device->tag, 0, SC);
state_save_register_item("cop420", device->tag, 0, SIO);
state_save_register_item("cop420", device->tag, 0, SKL);
state_save_register_item("cop420", device->tag, 0, skip);
state_save_register_item("cop420", device->tag, 0, skipLBI);
state_save_register_item("cop420", device->tag, 0, R.timerlatch);
state_save_register_item("cop420", device->tag, 0, R.counter);
state_save_register_item("cop420", device->tag, 0, R.G_mask);
state_save_register_item("cop420", device->tag, 0, R.D_mask);
state_save_register_item("cop420", device->tag, 0, R.IN_mask);
state_save_register_item("cop420", device->tag, 0, R.si);
state_save_register_item("cop420", device->tag, 0, R.last_skip);
state_save_register_item_array("cop420", device->tag, 0, R.in);
state_save_register_item("cop420", device->tag, 0, R.microbus_int);
state_save_register_item("cop420", device->tag, 0, R.halt);
}
static CPU_INIT( cop421 )

View File

@ -313,26 +313,26 @@ static STATE_POSTLOAD( cquestsnd_postload )
}
static void cquestsnd_state_register(int index, const char *type)
static void cquestsnd_state_register(const device_config *device, const char *type)
{
state_save_register_item_array(type, index, cquestsnd.ram);
state_save_register_item(type, index, cquestsnd.q);
state_save_register_item(type, index, cquestsnd.f);
state_save_register_item(type, index, cquestsnd.y);
state_save_register_item(type, index, cquestsnd.cflag);
state_save_register_item(type, index, cquestsnd.vflag);
state_save_register_item_array(type, device->tag, 0, cquestsnd.ram);
state_save_register_item(type, device->tag, 0, cquestsnd.q);
state_save_register_item(type, device->tag, 0, cquestsnd.f);
state_save_register_item(type, device->tag, 0, cquestsnd.y);
state_save_register_item(type, device->tag, 0, cquestsnd.cflag);
state_save_register_item(type, device->tag, 0, cquestsnd.vflag);
state_save_register_item(type, index, cquestsnd.pc);
state_save_register_item(type, index, cquestsnd.platch);
state_save_register_item(type, index, cquestsnd.rtnlatch);
state_save_register_item(type, index, cquestsnd.adrcntr);
state_save_register_item(type, index, cquestsnd.adrlatch);
state_save_register_item(type, index, cquestsnd.dinlatch);
state_save_register_item(type, index, cquestsnd.ramwlatch);
state_save_register_item(type, index, cquestsnd.prev_ipram);
state_save_register_item(type, index, cquestsnd.prev_ipwrt);
state_save_register_item(type, device->tag, 0, cquestsnd.pc);
state_save_register_item(type, device->tag, 0, cquestsnd.platch);
state_save_register_item(type, device->tag, 0, cquestsnd.rtnlatch);
state_save_register_item(type, device->tag, 0, cquestsnd.adrcntr);
state_save_register_item(type, device->tag, 0, cquestsnd.adrlatch);
state_save_register_item(type, device->tag, 0, cquestsnd.dinlatch);
state_save_register_item(type, device->tag, 0, cquestsnd.ramwlatch);
state_save_register_item(type, device->tag, 0, cquestsnd.prev_ipram);
state_save_register_item(type, device->tag, 0, cquestsnd.prev_ipwrt);
state_save_register_postload(Machine, cquestsnd_postload, NULL);
state_save_register_postload(device->machine, cquestsnd_postload, (void *)device);
}
static CPU_INIT( cquestsnd )
@ -347,7 +347,7 @@ static CPU_INIT( cquestsnd )
/* Allocate RAM shared with 68000 */
cquestsnd.sram = malloc(4096);
cquestsnd_state_register(index, "cquestsnd");
cquestsnd_state_register(device, "cquestsnd");
}
@ -372,35 +372,35 @@ static STATE_POSTLOAD( cquestrot_postload )
}
static void cquestrot_state_register(int index, const char *type)
static void cquestrot_state_register(const device_config *device, const char *type)
{
state_save_register_item_array(type, index, cquestrot.ram);
state_save_register_item(type, index, cquestrot.q);
state_save_register_item(type, index, cquestrot.f);
state_save_register_item(type, index, cquestrot.y);
state_save_register_item(type, index, cquestrot.cflag);
state_save_register_item(type, index, cquestrot.vflag);
state_save_register_item_array(type, device->tag, 0, cquestrot.ram);
state_save_register_item(type, device->tag, 0, cquestrot.q);
state_save_register_item(type, device->tag, 0, cquestrot.f);
state_save_register_item(type, device->tag, 0, cquestrot.y);
state_save_register_item(type, device->tag, 0, cquestrot.cflag);
state_save_register_item(type, device->tag, 0, cquestrot.vflag);
state_save_register_item(type, index, cquestrot.pc);
state_save_register_item(type, index, cquestrot.seqcnt);
state_save_register_item(type, index, cquestrot.dsrclatch);
state_save_register_item(type, index, cquestrot.rsrclatch);
state_save_register_item(type, index, cquestrot.dynaddr);
state_save_register_item(type, index, cquestrot.dyndata);
state_save_register_item(type, index, cquestrot.yrlatch);
state_save_register_item(type, index, cquestrot.ydlatch);
state_save_register_item(type, index, cquestrot.dinlatch);
state_save_register_item(type, index, cquestrot.divreg);
state_save_register_item(type, index, cquestrot.linedata);
state_save_register_item(type, index, cquestrot.lineaddr);
state_save_register_item(type, index, cquestrot.prev_dred);
state_save_register_item(type, index, cquestrot.prev_dwrt);
state_save_register_item(type, index, cquestrot.wc);
state_save_register_item(type, device->tag, 0, cquestrot.pc);
state_save_register_item(type, device->tag, 0, cquestrot.seqcnt);
state_save_register_item(type, device->tag, 0, cquestrot.dsrclatch);
state_save_register_item(type, device->tag, 0, cquestrot.rsrclatch);
state_save_register_item(type, device->tag, 0, cquestrot.dynaddr);
state_save_register_item(type, device->tag, 0, cquestrot.dyndata);
state_save_register_item(type, device->tag, 0, cquestrot.yrlatch);
state_save_register_item(type, device->tag, 0, cquestrot.ydlatch);
state_save_register_item(type, device->tag, 0, cquestrot.dinlatch);
state_save_register_item(type, device->tag, 0, cquestrot.divreg);
state_save_register_item(type, device->tag, 0, cquestrot.linedata);
state_save_register_item(type, device->tag, 0, cquestrot.lineaddr);
state_save_register_item(type, device->tag, 0, cquestrot.prev_dred);
state_save_register_item(type, device->tag, 0, cquestrot.prev_dwrt);
state_save_register_item(type, device->tag, 0, cquestrot.wc);
state_save_register_item_pointer(type, index, cquestrot.dram, 16384);
state_save_register_item_pointer(type, index, cquestrot.sram, 2048);
state_save_register_item_pointer(type, device->tag, 0, cquestrot.dram, 16384);
state_save_register_item_pointer(type, device->tag, 0, cquestrot.sram, 2048);
state_save_register_postload(Machine, cquestrot_postload, NULL);
state_save_register_postload(device->machine, cquestrot_postload, (void *)device);
}
static CPU_INIT( cquestrot )
@ -411,7 +411,7 @@ static CPU_INIT( cquestrot )
cquestrot.dram = malloc(16384 * sizeof(UINT16)); /* Shared with 68000 */
cquestrot.sram = malloc(2048 * sizeof(UINT16)); /* Private */
cquestrot_state_register(index, "cquestrot");
cquestrot_state_register(device, "cquestrot");
}
@ -444,39 +444,39 @@ static STATE_POSTLOAD( cquestlin_postload )
}
static void cquestlin_state_register(int index, const char *type)
static void cquestlin_state_register(const device_config *device, const char *type)
{
state_save_register_item_array(type, index, cquestlin.ram);
state_save_register_item(type, index, cquestlin.q);
state_save_register_item(type, index, cquestlin.f);
state_save_register_item(type, index, cquestlin.y);
state_save_register_item(type, index, cquestlin.cflag);
state_save_register_item(type, index, cquestlin.vflag);
state_save_register_item_array(type, device->tag, 0, cquestlin.ram);
state_save_register_item(type, device->tag, 0, cquestlin.q);
state_save_register_item(type, device->tag, 0, cquestlin.f);
state_save_register_item(type, device->tag, 0, cquestlin.y);
state_save_register_item(type, device->tag, 0, cquestlin.cflag);
state_save_register_item(type, device->tag, 0, cquestlin.vflag);
state_save_register_item(type, index, cquestlin.pc[0]);
state_save_register_item(type, index, cquestlin.pc[1]);
state_save_register_item(type, index, cquestlin.seqcnt);
state_save_register_item(type, index, cquestlin.clatch);
state_save_register_item(type, index, cquestlin.zlatch);
state_save_register_item(type, index, cquestlin.xcnt);
state_save_register_item(type, index, cquestlin.ycnt);
state_save_register_item(type, index, cquestlin.sreg);
state_save_register_item(type, index, cquestlin.fadlatch);
state_save_register_item(type, index, cquestlin.badlatch);
state_save_register_item(type, index, cquestlin.sramdlatch);
state_save_register_item(type, index, cquestlin.fglatch);
state_save_register_item(type, index, cquestlin.bglatch);
state_save_register_item(type, index, cquestlin.gt0reg);
state_save_register_item(type, index, cquestlin.fdxreg);
state_save_register_item(type, index, cquestlin.field);
state_save_register_item(type, index, cquestlin.clkcnt);
state_save_register_item(type, device->tag, 0, cquestlin.pc[0]);
state_save_register_item(type, device->tag, 0, cquestlin.pc[1]);
state_save_register_item(type, device->tag, 0, cquestlin.seqcnt);
state_save_register_item(type, device->tag, 0, cquestlin.clatch);
state_save_register_item(type, device->tag, 0, cquestlin.zlatch);
state_save_register_item(type, device->tag, 0, cquestlin.xcnt);
state_save_register_item(type, device->tag, 0, cquestlin.ycnt);
state_save_register_item(type, device->tag, 0, cquestlin.sreg);
state_save_register_item(type, device->tag, 0, cquestlin.fadlatch);
state_save_register_item(type, device->tag, 0, cquestlin.badlatch);
state_save_register_item(type, device->tag, 0, cquestlin.sramdlatch);
state_save_register_item(type, device->tag, 0, cquestlin.fglatch);
state_save_register_item(type, device->tag, 0, cquestlin.bglatch);
state_save_register_item(type, device->tag, 0, cquestlin.gt0reg);
state_save_register_item(type, device->tag, 0, cquestlin.fdxreg);
state_save_register_item(type, device->tag, 0, cquestlin.field);
state_save_register_item(type, device->tag, 0, cquestlin.clkcnt);
state_save_register_item_pointer(type, index, cquestlin.sram, 4096);
state_save_register_item_pointer(type, index, cquestlin.ptr_ram, 1024);
state_save_register_item_pointer(type, index, cquestlin.e_stack, 32768);
state_save_register_item_pointer(type, index, cquestlin.o_stack, 32768);
state_save_register_item_pointer(type, device->tag, 0, cquestlin.sram, 4096);
state_save_register_item_pointer(type, device->tag, 0, cquestlin.ptr_ram, 1024);
state_save_register_item_pointer(type, device->tag, 0, cquestlin.e_stack, 32768);
state_save_register_item_pointer(type, device->tag, 0, cquestlin.o_stack, 32768);
state_save_register_postload(Machine, cquestlin_postload, NULL);
state_save_register_postload(device->machine, cquestlin_postload, (void *)device);
}
static CPU_INIT( cquestlin )
@ -489,7 +489,7 @@ static CPU_INIT( cquestlin )
cquestlin.e_stack = malloc(32768 * sizeof(UINT32)); /* Stack DRAM: 32kx20 */
cquestlin.o_stack = malloc(32768 * sizeof(UINT32)); /* Stack DRAM: 32kx20 */
cquestlin_state_register(index, "cquestlin");
cquestlin_state_register(device, "cquestlin");
}

View File

@ -395,7 +395,7 @@ static CPU_INIT( dsp56k )
core.reset_state = FALSE;
/* Save the core's state */
// state_save_register_item("dsp56k", index, modA_state);
// state_save_register_item("dsp56k", device->tag, 0, modA_state);
// ...
//core.config = device->static_config;

View File

@ -1568,15 +1568,15 @@ static void set_irq_line(int irqline, int state)
static void hyperstone_init(const device_config *device, int index, int clock, cpu_irq_callback irqcallback, int scale_mask)
{
state_save_register_item_array("E132XS", index, hyperstone.global_regs);
state_save_register_item_array("E132XS", index, hyperstone.local_regs);
state_save_register_item("E132XS", index, hyperstone.ppc);
state_save_register_item("E132XS", index, hyperstone.trap_entry);
state_save_register_item("E132XS", index, hyperstone.delay.delay_pc);
state_save_register_item("E132XS", index, hyperstone.instruction_length);
state_save_register_item("E132XS", index, hyperstone.intblock);
state_save_register_item("E132XS", index, hyperstone.delay.delay_cmd);
state_save_register_item("E132XS", index, hyperstone.tr_clocks_per_tick);
state_save_register_item_array("E132XS", device->tag, 0, hyperstone.global_regs);
state_save_register_item_array("E132XS", device->tag, 0, hyperstone.local_regs);
state_save_register_item("E132XS", device->tag, 0, hyperstone.ppc);
state_save_register_item("E132XS", device->tag, 0, hyperstone.trap_entry);
state_save_register_item("E132XS", device->tag, 0, hyperstone.delay.delay_pc);
state_save_register_item("E132XS", device->tag, 0, hyperstone.instruction_length);
state_save_register_item("E132XS", device->tag, 0, hyperstone.intblock);
state_save_register_item("E132XS", device->tag, 0, hyperstone.delay.delay_cmd);
state_save_register_item("E132XS", device->tag, 0, hyperstone.tr_clocks_per_tick);
hyperstone.irq_callback = irqcallback;
hyperstone.device = device;

View File

@ -331,30 +331,30 @@ static CPU_INIT( g65816 )
g65816_set_irq_callback(irqcallback);
g65816i_cpu.device = device;
state_save_register_item("G65816", index, g65816i_cpu.a);
state_save_register_item("G65816", index, g65816i_cpu.b);
state_save_register_item("G65816", index, g65816i_cpu.x);
state_save_register_item("G65816", index, g65816i_cpu.y);
state_save_register_item("G65816", index, g65816i_cpu.s);
state_save_register_item("G65816", index, g65816i_cpu.pc);
state_save_register_item("G65816", index, g65816i_cpu.ppc);
state_save_register_item("G65816", index, g65816i_cpu.pb);
state_save_register_item("G65816", index, g65816i_cpu.db);
state_save_register_item("G65816", index, g65816i_cpu.d);
state_save_register_item("G65816", index, g65816i_cpu.flag_e);
state_save_register_item("G65816", index, g65816i_cpu.flag_m);
state_save_register_item("G65816", index, g65816i_cpu.flag_x);
state_save_register_item("G65816", index, g65816i_cpu.flag_n);
state_save_register_item("G65816", index, g65816i_cpu.flag_v);
state_save_register_item("G65816", index, g65816i_cpu.flag_d);
state_save_register_item("G65816", index, g65816i_cpu.flag_i);
state_save_register_item("G65816", index, g65816i_cpu.flag_z);
state_save_register_item("G65816", index, g65816i_cpu.flag_c);
state_save_register_item("G65816", index, g65816i_cpu.line_irq);
state_save_register_item("G65816", index, g65816i_cpu.line_nmi);
state_save_register_item("G65816", index, g65816i_cpu.ir);
state_save_register_item("G65816", index, g65816i_cpu.irq_delay);
state_save_register_item("G65816", index, g65816i_cpu.stopped);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.a);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.b);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.x);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.y);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.s);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.pc);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.ppc);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.pb);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.db);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.d);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_e);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_m);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_x);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_n);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_v);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_d);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_i);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_z);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.flag_c);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.line_irq);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.line_nmi);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.ir);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.irq_delay);
state_save_register_item("G65816", device->tag, 0, g65816i_cpu.stopped);
state_save_register_postload(device->machine, g65816_restore_state, NULL);
}

View File

@ -159,32 +159,32 @@ static void set_irq_line(int irqline, int state);
/*****************************************************************************/
static CPU_INIT( h6280 )
{
state_save_register_item("h6280", index, h6280.ppc.w.l);
state_save_register_item("h6280", index, h6280.pc.w.l);
state_save_register_item("h6280", index, h6280.sp.w.l);
state_save_register_item("h6280", index, h6280.zp.w.l);
state_save_register_item("h6280", index, h6280.ea.w.l);
state_save_register_item("h6280", index, h6280.a);
state_save_register_item("h6280", index, h6280.x);
state_save_register_item("h6280", index, h6280.y);
state_save_register_item("h6280", index, h6280.p);
state_save_register_item_array("h6280", index, h6280.mmr);
state_save_register_item("h6280", index, h6280.irq_mask);
state_save_register_item("h6280", index, h6280.timer_status);
state_save_register_item("h6280", index, h6280.timer_ack);
state_save_register_item("h6280", index, h6280.clocks_per_cycle);
state_save_register_item("h6280", index, h6280.timer_value);
state_save_register_item("h6280", index, h6280.timer_load);
state_save_register_item("h6280", index, h6280.nmi_state);
state_save_register_item("h6280", index, h6280.irq_state[0]);
state_save_register_item("h6280", index, h6280.irq_state[1]);
state_save_register_item("h6280", index, h6280.irq_state[2]);
state_save_register_item("h6280", index, h6280.irq_pending);
state_save_register_item("h6280", device->tag, 0, h6280.ppc.w.l);
state_save_register_item("h6280", device->tag, 0, h6280.pc.w.l);
state_save_register_item("h6280", device->tag, 0, h6280.sp.w.l);
state_save_register_item("h6280", device->tag, 0, h6280.zp.w.l);
state_save_register_item("h6280", device->tag, 0, h6280.ea.w.l);
state_save_register_item("h6280", device->tag, 0, h6280.a);
state_save_register_item("h6280", device->tag, 0, h6280.x);
state_save_register_item("h6280", device->tag, 0, h6280.y);
state_save_register_item("h6280", device->tag, 0, h6280.p);
state_save_register_item_array("h6280", device->tag, 0, h6280.mmr);
state_save_register_item("h6280", device->tag, 0, h6280.irq_mask);
state_save_register_item("h6280", device->tag, 0, h6280.timer_status);
state_save_register_item("h6280", device->tag, 0, h6280.timer_ack);
state_save_register_item("h6280", device->tag, 0, h6280.clocks_per_cycle);
state_save_register_item("h6280", device->tag, 0, h6280.timer_value);
state_save_register_item("h6280", device->tag, 0, h6280.timer_load);
state_save_register_item("h6280", device->tag, 0, h6280.nmi_state);
state_save_register_item("h6280", device->tag, 0, h6280.irq_state[0]);
state_save_register_item("h6280", device->tag, 0, h6280.irq_state[1]);
state_save_register_item("h6280", device->tag, 0, h6280.irq_state[2]);
state_save_register_item("h6280", device->tag, 0, h6280.irq_pending);
#if LAZY_FLAGS
state_save_register_item("h6280", index, h6280.NZ);
state_save_register_item("h6280", device->tag, 0, h6280.NZ);
#endif
state_save_register_item("h6280", index, h6280.io_buffer);
state_save_register_item("h6280", device->tag, 0, h6280.io_buffer);
h6280.irq_callback = irqcallback;
h6280.device = device;

View File

@ -326,17 +326,17 @@ static CPU_INIT( h8 )
h8.irq_cb = irqcallback;
h8.device = device;
state_save_register_item("H8/3002", index, h8.h8err);
state_save_register_item_array("H8/3002", index, h8.regs);
state_save_register_item("H8/3002", index, h8.pc);
state_save_register_item("H8/3002", index, h8.ppc);
state_save_register_item("H8/3002", index, h8.h8_IRQrequestH);
state_save_register_item("H8/3002", index, h8.h8_IRQrequestL);
state_save_register_item("H8/3002", index, h8.ccr);
state_save_register_item("H8/3002", device->tag, 0, h8.h8err);
state_save_register_item_array("H8/3002", device->tag, 0, h8.regs);
state_save_register_item("H8/3002", device->tag, 0, h8.pc);
state_save_register_item("H8/3002", device->tag, 0, h8.ppc);
state_save_register_item("H8/3002", device->tag, 0, h8.h8_IRQrequestH);
state_save_register_item("H8/3002", device->tag, 0, h8.h8_IRQrequestL);
state_save_register_item("H8/3002", device->tag, 0, h8.ccr);
state_save_register_item_array("H8/3002", index, h8.per_regs);
state_save_register_item("H8/3002", index, h8.h8TSTR);
state_save_register_item_array("H8/3002", index, h8.h8TCNT);
state_save_register_item_array("H8/3002", device->tag, 0, h8.per_regs);
state_save_register_item("H8/3002", device->tag, 0, h8.h8TSTR);
state_save_register_item_array("H8/3002", device->tag, 0, h8.h8TCNT);
state_save_register_postload(device->machine, h8_onstateload, NULL);

View File

@ -529,20 +529,20 @@ static CPU_INIT( hd6309 )
m68_state->regTable[2] = &(B);
m68_state->regTable[3] = &m68_state->dummy_byte;
state_save_register_item("hd6309", index, PC);
state_save_register_item("hd6309", index, U);
state_save_register_item("hd6309", index, S);
state_save_register_item("hd6309", index, X);
state_save_register_item("hd6309", index, Y);
state_save_register_item("hd6309", index, V);
state_save_register_item("hd6309", index, DP);
state_save_register_item("hd6309", index, CC);
state_save_register_item("hd6309", index, MD);
state_save_register_item("hd6309", device->tag, 0, PC);
state_save_register_item("hd6309", device->tag, 0, U);
state_save_register_item("hd6309", device->tag, 0, S);
state_save_register_item("hd6309", device->tag, 0, X);
state_save_register_item("hd6309", device->tag, 0, Y);
state_save_register_item("hd6309", device->tag, 0, V);
state_save_register_item("hd6309", device->tag, 0, DP);
state_save_register_item("hd6309", device->tag, 0, CC);
state_save_register_item("hd6309", device->tag, 0, MD);
state_save_register_postload(device->machine, hd6309_postload, (void *) device);
state_save_register_item("hd6309", index, m68_state->int_state);
state_save_register_item("hd6309", index, m68_state->nmi_state);
state_save_register_item("hd6309", index, m68_state->irq_state[0]);
state_save_register_item("hd6309", index, m68_state->irq_state[1]);
state_save_register_item("hd6309", device->tag, 0, m68_state->int_state);
state_save_register_item("hd6309", device->tag, 0, m68_state->nmi_state);
state_save_register_item("hd6309", device->tag, 0, m68_state->irq_state[0]);
state_save_register_item("hd6309", device->tag, 0, m68_state->irq_state[1]);
}
/****************************************************************************/

View File

@ -525,59 +525,59 @@ static CPU_INIT( i386 )
I.irq_callback = irqcallback;
I.device = device;
state_save_register_item_array(state_type, index, I.reg.d);
state_save_register_item(state_type, index, I.sreg[ES].selector);
state_save_register_item(state_type, index, I.sreg[ES].base);
state_save_register_item(state_type, index, I.sreg[ES].limit);
state_save_register_item(state_type, index, I.sreg[ES].flags);
state_save_register_item(state_type, index, I.sreg[CS].selector);
state_save_register_item(state_type, index, I.sreg[CS].base);
state_save_register_item(state_type, index, I.sreg[CS].limit);
state_save_register_item(state_type, index, I.sreg[CS].flags);
state_save_register_item(state_type, index, I.sreg[SS].selector);
state_save_register_item(state_type, index, I.sreg[SS].base);
state_save_register_item(state_type, index, I.sreg[SS].limit);
state_save_register_item(state_type, index, I.sreg[SS].flags);
state_save_register_item(state_type, index, I.sreg[DS].selector);
state_save_register_item(state_type, index, I.sreg[DS].base);
state_save_register_item(state_type, index, I.sreg[DS].limit);
state_save_register_item(state_type, index, I.sreg[DS].flags);
state_save_register_item(state_type, index, I.sreg[FS].selector);
state_save_register_item(state_type, index, I.sreg[FS].base);
state_save_register_item(state_type, index, I.sreg[FS].limit);
state_save_register_item(state_type, index, I.sreg[FS].flags);
state_save_register_item(state_type, index, I.sreg[GS].selector);
state_save_register_item(state_type, index, I.sreg[GS].base);
state_save_register_item(state_type, index, I.sreg[GS].limit);
state_save_register_item(state_type, index, I.sreg[GS].flags);
state_save_register_item(state_type, index, I.eip);
state_save_register_item(state_type, index, I.prev_eip);
state_save_register_item(state_type, index, I.CF);
state_save_register_item(state_type, index, I.DF);
state_save_register_item(state_type, index, I.SF);
state_save_register_item(state_type, index, I.OF);
state_save_register_item(state_type, index, I.ZF);
state_save_register_item(state_type, index, I.PF);
state_save_register_item(state_type, index, I.AF);
state_save_register_item(state_type, index, I.IF);
state_save_register_item(state_type, index, I.TF);
state_save_register_item_array(state_type, index, I.cr);
state_save_register_item_array(state_type, index, I.dr);
state_save_register_item_array(state_type, index, I.tr);
state_save_register_item(state_type, index, I.idtr.base);
state_save_register_item(state_type, index, I.idtr.limit);
state_save_register_item(state_type, index, I.gdtr.base);
state_save_register_item(state_type, index, I.gdtr.limit);
state_save_register_item(state_type, index, I.task.base);
state_save_register_item(state_type, index, I.task.segment);
state_save_register_item(state_type, index, I.task.limit);
state_save_register_item(state_type, index, I.task.flags);
state_save_register_item(state_type, index, I.ldtr.base);
state_save_register_item(state_type, index, I.ldtr.segment);
state_save_register_item(state_type, index, I.ldtr.limit);
state_save_register_item(state_type, index, I.ldtr.flags);
state_save_register_item(state_type, index, I.irq_state);
state_save_register_item(state_type, index, I.performed_intersegment_jump);
state_save_register_item_array(state_type, device->tag, 0, I.reg.d);
state_save_register_item(state_type, device->tag, 0, I.sreg[ES].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[ES].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[ES].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[ES].flags);
state_save_register_item(state_type, device->tag, 0, I.sreg[CS].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[CS].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[CS].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[CS].flags);
state_save_register_item(state_type, device->tag, 0, I.sreg[SS].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[SS].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[SS].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[SS].flags);
state_save_register_item(state_type, device->tag, 0, I.sreg[DS].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[DS].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[DS].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[DS].flags);
state_save_register_item(state_type, device->tag, 0, I.sreg[FS].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[FS].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[FS].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[FS].flags);
state_save_register_item(state_type, device->tag, 0, I.sreg[GS].selector);
state_save_register_item(state_type, device->tag, 0, I.sreg[GS].base);
state_save_register_item(state_type, device->tag, 0, I.sreg[GS].limit);
state_save_register_item(state_type, device->tag, 0, I.sreg[GS].flags);
state_save_register_item(state_type, device->tag, 0, I.eip);
state_save_register_item(state_type, device->tag, 0, I.prev_eip);
state_save_register_item(state_type, device->tag, 0, I.CF);
state_save_register_item(state_type, device->tag, 0, I.DF);
state_save_register_item(state_type, device->tag, 0, I.SF);
state_save_register_item(state_type, device->tag, 0, I.OF);
state_save_register_item(state_type, device->tag, 0, I.ZF);
state_save_register_item(state_type, device->tag, 0, I.PF);
state_save_register_item(state_type, device->tag, 0, I.AF);
state_save_register_item(state_type, device->tag, 0, I.IF);
state_save_register_item(state_type, device->tag, 0, I.TF);
state_save_register_item_array(state_type, device->tag, 0, I.cr);
state_save_register_item_array(state_type, device->tag, 0, I.dr);
state_save_register_item_array(state_type, device->tag, 0, I.tr);
state_save_register_item(state_type, device->tag, 0, I.idtr.base);
state_save_register_item(state_type, device->tag, 0, I.idtr.limit);
state_save_register_item(state_type, device->tag, 0, I.gdtr.base);
state_save_register_item(state_type, device->tag, 0, I.gdtr.limit);
state_save_register_item(state_type, device->tag, 0, I.task.base);
state_save_register_item(state_type, device->tag, 0, I.task.segment);
state_save_register_item(state_type, device->tag, 0, I.task.limit);
state_save_register_item(state_type, device->tag, 0, I.task.flags);
state_save_register_item(state_type, device->tag, 0, I.ldtr.base);
state_save_register_item(state_type, device->tag, 0, I.ldtr.segment);
state_save_register_item(state_type, device->tag, 0, I.ldtr.limit);
state_save_register_item(state_type, device->tag, 0, I.ldtr.flags);
state_save_register_item(state_type, device->tag, 0, I.irq_state);
state_save_register_item(state_type, device->tag, 0, I.performed_intersegment_jump);
state_save_register_postload(device->machine, i386_postload, NULL);
}

View File

@ -1363,21 +1363,21 @@ static CPU_INIT( i8085 )
I.irq_callback = irqcallback;
I.device = device;
state_save_register_item("i8085", index, I.AF.w.l);
state_save_register_item("i8085", index, I.BC.w.l);
state_save_register_item("i8085", index, I.DE.w.l);
state_save_register_item("i8085", index, I.HL.w.l);
state_save_register_item("i8085", index, I.SP.w.l);
state_save_register_item("i8085", index, I.PC.w.l);
state_save_register_item("i8085", index, I.HALT);
state_save_register_item("i8085", index, I.IM);
state_save_register_item("i8085", index, I.IREQ);
state_save_register_item("i8085", index, I.ISRV);
state_save_register_item("i8085", index, I.INTR);
state_save_register_item("i8085", index, I.IRQ2);
state_save_register_item("i8085", index, I.IRQ1);
state_save_register_item("i8085", index, I.STATUS);
state_save_register_item_array("i8085", index, I.irq_state);
state_save_register_item("i8085", device->tag, 0, I.AF.w.l);
state_save_register_item("i8085", device->tag, 0, I.BC.w.l);
state_save_register_item("i8085", device->tag, 0, I.DE.w.l);
state_save_register_item("i8085", device->tag, 0, I.HL.w.l);
state_save_register_item("i8085", device->tag, 0, I.SP.w.l);
state_save_register_item("i8085", device->tag, 0, I.PC.w.l);
state_save_register_item("i8085", device->tag, 0, I.HALT);
state_save_register_item("i8085", device->tag, 0, I.IM);
state_save_register_item("i8085", device->tag, 0, I.IREQ);
state_save_register_item("i8085", device->tag, 0, I.ISRV);
state_save_register_item("i8085", device->tag, 0, I.INTR);
state_save_register_item("i8085", device->tag, 0, I.IRQ2);
state_save_register_item("i8085", device->tag, 0, I.IRQ1);
state_save_register_item("i8085", device->tag, 0, I.STATUS);
state_save_register_item_array("i8085", device->tag, 0, I.irq_state);
}
/****************************************************************************
@ -1600,21 +1600,21 @@ static CPU_INIT( i8080 )
I.irq_callback = irqcallback;
I.device = device;
state_save_register_item("i8080", index, I.AF.w.l);
state_save_register_item("i8080", index, I.BC.w.l);
state_save_register_item("i8080", index, I.DE.w.l);
state_save_register_item("i8080", index, I.HL.w.l);
state_save_register_item("i8080", index, I.SP.w.l);
state_save_register_item("i8080", index, I.PC.w.l);
state_save_register_item("i8080", index, I.HALT);
state_save_register_item("i8085", index, I.IM);
state_save_register_item("i8080", index, I.IREQ);
state_save_register_item("i8080", index, I.ISRV);
state_save_register_item("i8080", index, I.INTR);
state_save_register_item("i8080", index, I.IRQ2);
state_save_register_item("i8080", index, I.IRQ1);
state_save_register_item("i8080", index, I.STATUS);
state_save_register_item_array("i8080", index, I.irq_state);
state_save_register_item("i8080", device->tag, 0, I.AF.w.l);
state_save_register_item("i8080", device->tag, 0, I.BC.w.l);
state_save_register_item("i8080", device->tag, 0, I.DE.w.l);
state_save_register_item("i8080", device->tag, 0, I.HL.w.l);
state_save_register_item("i8080", device->tag, 0, I.SP.w.l);
state_save_register_item("i8080", device->tag, 0, I.PC.w.l);
state_save_register_item("i8080", device->tag, 0, I.HALT);
state_save_register_item("i8085", device->tag, 0, I.IM);
state_save_register_item("i8080", device->tag, 0, I.IREQ);
state_save_register_item("i8080", device->tag, 0, I.ISRV);
state_save_register_item("i8080", device->tag, 0, I.INTR);
state_save_register_item("i8080", device->tag, 0, I.IRQ2);
state_save_register_item("i8080", device->tag, 0, I.IRQ1);
state_save_register_item("i8080", device->tag, 0, I.STATUS);
state_save_register_item_array("i8080", device->tag, 0, I.irq_state);
}
static void i8080_set_irq_line(int irqline, int state)

View File

@ -251,40 +251,40 @@ static CPU_DISASSEMBLE( i80286 )
static CPU_INIT( i80286 )
{
static const char type[] = "80286";
state_save_register_item_array(type, index, I.regs.w);
state_save_register_item(type, index, I.amask);
state_save_register_item(type, index, I.pc);
state_save_register_item(type, index, I.prevpc);
state_save_register_item(type, index, I.msw);
state_save_register_item_array(type, index, I.base);
state_save_register_item_array(type, index, I.sregs);
state_save_register_item_array(type, index, I.limit);
state_save_register_item_array(type, index, I.rights);
state_save_register_item(type, index, I.gdtr.base);
state_save_register_item(type, index, I.gdtr.limit);
state_save_register_item(type, index, I.idtr.base);
state_save_register_item(type, index, I.idtr.limit);
state_save_register_item(type, index, I.ldtr.sel);
state_save_register_item(type, index, I.ldtr.base);
state_save_register_item(type, index, I.ldtr.limit);
state_save_register_item(type, index, I.ldtr.rights);
state_save_register_item(type, index, I.tr.sel);
state_save_register_item(type, index, I.tr.base);
state_save_register_item(type, index, I.tr.limit);
state_save_register_item(type, index, I.tr.rights);
state_save_register_item(type, index, I.AuxVal);
state_save_register_item(type, index, I.OverVal);
state_save_register_item(type, index, I.SignVal);
state_save_register_item(type, index, I.ZeroVal);
state_save_register_item(type, index, I.CarryVal);
state_save_register_item(type, index, I.DirVal);
state_save_register_item(type, index, I.ParityVal);
state_save_register_item(type, index, I.TF);
state_save_register_item(type, index, I.IF);
state_save_register_item(type, index, I.int_vector);
state_save_register_item(type, index, I.nmi_state);
state_save_register_item(type, index, I.irq_state);
state_save_register_item(type, index, I.extra_cycles);
state_save_register_item_array(type, device->tag, 0, I.regs.w);
state_save_register_item(type, device->tag, 0, I.amask);
state_save_register_item(type, device->tag, 0, I.pc);
state_save_register_item(type, device->tag, 0, I.prevpc);
state_save_register_item(type, device->tag, 0, I.msw);
state_save_register_item_array(type, device->tag, 0, I.base);
state_save_register_item_array(type, device->tag, 0, I.sregs);
state_save_register_item_array(type, device->tag, 0, I.limit);
state_save_register_item_array(type, device->tag, 0, I.rights);
state_save_register_item(type, device->tag, 0, I.gdtr.base);
state_save_register_item(type, device->tag, 0, I.gdtr.limit);
state_save_register_item(type, device->tag, 0, I.idtr.base);
state_save_register_item(type, device->tag, 0, I.idtr.limit);
state_save_register_item(type, device->tag, 0, I.ldtr.sel);
state_save_register_item(type, device->tag, 0, I.ldtr.base);
state_save_register_item(type, device->tag, 0, I.ldtr.limit);
state_save_register_item(type, device->tag, 0, I.ldtr.rights);
state_save_register_item(type, device->tag, 0, I.tr.sel);
state_save_register_item(type, device->tag, 0, I.tr.base);
state_save_register_item(type, device->tag, 0, I.tr.limit);
state_save_register_item(type, device->tag, 0, I.tr.rights);
state_save_register_item(type, device->tag, 0, I.AuxVal);
state_save_register_item(type, device->tag, 0, I.OverVal);
state_save_register_item(type, device->tag, 0, I.SignVal);
state_save_register_item(type, device->tag, 0, I.ZeroVal);
state_save_register_item(type, device->tag, 0, I.CarryVal);
state_save_register_item(type, device->tag, 0, I.DirVal);
state_save_register_item(type, device->tag, 0, I.ParityVal);
state_save_register_item(type, device->tag, 0, I.TF);
state_save_register_item(type, device->tag, 0, I.IF);
state_save_register_item(type, device->tag, 0, I.int_vector);
state_save_register_item(type, device->tag, 0, I.nmi_state);
state_save_register_item(type, device->tag, 0, I.irq_state);
state_save_register_item(type, device->tag, 0, I.extra_cycles);
I.irq_callback = irqcallback;
I.device = device;

View File

@ -90,30 +90,30 @@ static struct i80x86_timing timing;
/***************************************************************************/
static void i8086_state_register(int index)
static void i8086_state_register(const device_config *device)
{
static const char type[] = "I8086";
state_save_register_item_array(type, index, I.regs.w);
state_save_register_item(type, index, I.pc);
state_save_register_item(type, index, I.prevpc);
state_save_register_item_array(type, index, I.base);
state_save_register_item_array(type, index, I.sregs);
state_save_register_item(type, index, I.flags);
state_save_register_item(type, index, I.AuxVal);
state_save_register_item(type, index, I.OverVal);
state_save_register_item(type, index, I.SignVal);
state_save_register_item(type, index, I.ZeroVal);
state_save_register_item(type, index, I.CarryVal);
state_save_register_item(type, index, I.DirVal);
state_save_register_item(type, index, I.ParityVal);
state_save_register_item(type, index, I.TF);
state_save_register_item(type, index, I.IF);
state_save_register_item(type, index, I.MF);
state_save_register_item(type, index, I.int_vector);
state_save_register_item(type, index, I.nmi_state);
state_save_register_item(type, index, I.irq_state);
state_save_register_item(type, index, I.extra_cycles);
state_save_register_item(type, index, I.test_state); /* PJB 03/05 */
state_save_register_item_array(type, device->tag, 0, I.regs.w);
state_save_register_item(type, device->tag, 0, I.pc);
state_save_register_item(type, device->tag, 0, I.prevpc);
state_save_register_item_array(type, device->tag, 0, I.base);
state_save_register_item_array(type, device->tag, 0, I.sregs);
state_save_register_item(type, device->tag, 0, I.flags);
state_save_register_item(type, device->tag, 0, I.AuxVal);
state_save_register_item(type, device->tag, 0, I.OverVal);
state_save_register_item(type, device->tag, 0, I.SignVal);
state_save_register_item(type, device->tag, 0, I.ZeroVal);
state_save_register_item(type, device->tag, 0, I.CarryVal);
state_save_register_item(type, device->tag, 0, I.DirVal);
state_save_register_item(type, device->tag, 0, I.ParityVal);
state_save_register_item(type, device->tag, 0, I.TF);
state_save_register_item(type, device->tag, 0, I.IF);
state_save_register_item(type, device->tag, 0, I.MF);
state_save_register_item(type, device->tag, 0, I.int_vector);
state_save_register_item(type, device->tag, 0, I.nmi_state);
state_save_register_item(type, device->tag, 0, I.irq_state);
state_save_register_item(type, device->tag, 0, I.extra_cycles);
state_save_register_item(type, device->tag, 0, I.test_state); /* PJB 03/05 */
}
static CPU_INIT( i8086 )
@ -144,7 +144,7 @@ static CPU_INIT( i8086 )
I.irq_callback = irqcallback;
I.device = device;
i8086_state_register(index);
i8086_state_register(device);
configure_memory_16bit();
}

View File

@ -842,21 +842,21 @@ static CPU_INIT( i8x41 )
upi41_state->subtype = 8041;
upi41_state->ram_mask = I8X41_intRAM_MASK;
state_save_register_item("i8x41", index, upi41_state->ppc);
state_save_register_item("i8x41", index, upi41_state->pc);
state_save_register_item("i8x41", index, upi41_state->timer);
state_save_register_item("i8x41", index, upi41_state->prescaler);
state_save_register_item("i8x41", index, upi41_state->subtype);
state_save_register_item("i8x41", index, upi41_state->a);
state_save_register_item("i8x41", index, upi41_state->psw);
state_save_register_item("i8x41", index, upi41_state->state);
state_save_register_item("i8x41", index, upi41_state->enable);
state_save_register_item("i8x41", index, upi41_state->control);
state_save_register_item("i8x41", index, upi41_state->dbbi);
state_save_register_item("i8x41", index, upi41_state->dbbo);
state_save_register_item("i8x41", index, upi41_state->p1);
state_save_register_item("i8x41", index, upi41_state->p2);
state_save_register_item("i8x41", index, upi41_state->p2_hs);
state_save_register_item("i8x41", device->tag, 0, upi41_state->ppc);
state_save_register_item("i8x41", device->tag, 0, upi41_state->pc);
state_save_register_item("i8x41", device->tag, 0, upi41_state->timer);
state_save_register_item("i8x41", device->tag, 0, upi41_state->prescaler);
state_save_register_item("i8x41", device->tag, 0, upi41_state->subtype);
state_save_register_item("i8x41", device->tag, 0, upi41_state->a);
state_save_register_item("i8x41", device->tag, 0, upi41_state->psw);
state_save_register_item("i8x41", device->tag, 0, upi41_state->state);
state_save_register_item("i8x41", device->tag, 0, upi41_state->enable);
state_save_register_item("i8x41", device->tag, 0, upi41_state->control);
state_save_register_item("i8x41", device->tag, 0, upi41_state->dbbi);
state_save_register_item("i8x41", device->tag, 0, upi41_state->dbbo);
state_save_register_item("i8x41", device->tag, 0, upi41_state->p1);
state_save_register_item("i8x41", device->tag, 0, upi41_state->p2);
state_save_register_item("i8x41", device->tag, 0, upi41_state->p2_hs);
}
static CPU_INIT( i8042 )

View File

@ -2075,16 +2075,16 @@ static CPU_INIT( i960 )
i960_state->irq_cb = irqcallback;
i960_state->device = device;
state_save_register_item("i960", index, i960_state->PIP);
state_save_register_item("i960", index, i960_state->SAT);
state_save_register_item("i960", index, i960_state->PRCB);
state_save_register_item("i960", index, i960_state->PC);
state_save_register_item("i960", index, i960_state->AC);
state_save_register_item("i960", index, i960_state->ICR);
state_save_register_item_array("i960", index, i960_state->r);
state_save_register_item_array("i960", index, i960_state->fp);
state_save_register_item_2d_array("i960", index, i960_state->rcache);
state_save_register_item_array("i960", index, i960_state->rcache_frame_addr);
state_save_register_item("i960", device->tag, 0, i960_state->PIP);
state_save_register_item("i960", device->tag, 0, i960_state->SAT);
state_save_register_item("i960", device->tag, 0, i960_state->PRCB);
state_save_register_item("i960", device->tag, 0, i960_state->PC);
state_save_register_item("i960", device->tag, 0, i960_state->AC);
state_save_register_item("i960", device->tag, 0, i960_state->ICR);
state_save_register_item_array("i960", device->tag, 0, i960_state->r);
state_save_register_item_array("i960", device->tag, 0, i960_state->fp);
state_save_register_item_2d_array("i960", device->tag, 0, i960_state->rcache);
state_save_register_item_array("i960", device->tag, 0, i960_state->rcache_frame_addr);
}
static CPU_DISASSEMBLE( i960 )

View File

@ -423,13 +423,13 @@ static STATE_POSTLOAD( jaguar_postload )
check_irqs();
}
static void jaguar_state_register(int index, const char *type)
static void jaguar_state_register(const device_config *device, const char *type)
{
state_save_register_item_array(type, index, jaguar.r);
state_save_register_item_array(type, index, jaguar.a);
state_save_register_item_array(type, index, jaguar.ctrl);
state_save_register_item(type, index, jaguar.ppc);
state_save_register_postload(Machine, jaguar_postload, NULL);
state_save_register_item_array(type, device->tag, 0, jaguar.r);
state_save_register_item_array(type, device->tag, 0, jaguar.a);
state_save_register_item_array(type, device->tag, 0, jaguar.ctrl);
state_save_register_item(type, device->tag, 0, jaguar.ppc);
state_save_register_postload(device->machine, jaguar_postload, NULL);
}
static CPU_INIT( jaguargpu )
@ -438,7 +438,7 @@ static CPU_INIT( jaguargpu )
memset(&jaguar, 0, sizeof(jaguar));
jaguar_state_register(index, "jaguargpu");
jaguar_state_register(device, "jaguargpu");
jaguar.irq_callback = irqcallback;
jaguar.device = device;
@ -452,7 +452,7 @@ static CPU_INIT( jaguardsp )
memset(&jaguar, 0, sizeof(jaguar));
jaguar_state_register(index, "jaguardsp");
jaguar_state_register(device, "jaguardsp");
jaguar.irq_callback = irqcallback;
jaguar.device = device;

View File

@ -393,18 +393,18 @@ static CPU_INIT( konami )
konami.irq_callback = irqcallback;
konami.device = device;
state_save_register_item("KONAMI", index, PC);
state_save_register_item("KONAMI", index, U);
state_save_register_item("KONAMI", index, S);
state_save_register_item("KONAMI", index, X);
state_save_register_item("KONAMI", index, Y);
state_save_register_item("KONAMI", index, D);
state_save_register_item("KONAMI", index, DP);
state_save_register_item("KONAMI", index, CC);
state_save_register_item("KONAMI", index, konami.int_state);
state_save_register_item("KONAMI", index, konami.nmi_state);
state_save_register_item("KONAMI", index, konami.irq_state[0]);
state_save_register_item("KONAMI", index, konami.irq_state[1]);
state_save_register_item("KONAMI", device->tag, 0, PC);
state_save_register_item("KONAMI", device->tag, 0, U);
state_save_register_item("KONAMI", device->tag, 0, S);
state_save_register_item("KONAMI", device->tag, 0, X);
state_save_register_item("KONAMI", device->tag, 0, Y);
state_save_register_item("KONAMI", device->tag, 0, D);
state_save_register_item("KONAMI", device->tag, 0, DP);
state_save_register_item("KONAMI", device->tag, 0, CC);
state_save_register_item("KONAMI", device->tag, 0, konami.int_state);
state_save_register_item("KONAMI", device->tag, 0, konami.nmi_state);
state_save_register_item("KONAMI", device->tag, 0, konami.irq_state[0]);
state_save_register_item("KONAMI", device->tag, 0, konami.irq_state[1]);
}
static CPU_RESET( konami )

View File

@ -992,54 +992,54 @@ static CPU_INIT( m37710 )
for (i=0; i<8; i++)
m37710i_cpu.timers[i] = timer_alloc(m37710_timer_cb, (void*)(FPTR)i);
state_save_register_item("M377xx", index, m37710i_cpu.a);
state_save_register_item("M377xx", index, m37710i_cpu.b);
state_save_register_item("M377xx", index, m37710i_cpu.ba);
state_save_register_item("M377xx", index, m37710i_cpu.bb);
state_save_register_item("M377xx", index, m37710i_cpu.x);
state_save_register_item("M377xx", index, m37710i_cpu.y);
state_save_register_item("M377xx", index, m37710i_cpu.s);
state_save_register_item("M377xx", index, m37710i_cpu.pc);
state_save_register_item("M377xx", index, m37710i_cpu.ppc);
state_save_register_item("M377xx", index, m37710i_cpu.pb);
state_save_register_item("M377xx", index, m37710i_cpu.db);
state_save_register_item("M377xx", index, m37710i_cpu.d);
state_save_register_item("M377xx", index, m37710i_cpu.flag_e);
state_save_register_item("M377xx", index, m37710i_cpu.flag_m);
state_save_register_item("M377xx", index, m37710i_cpu.flag_x);
state_save_register_item("M377xx", index, m37710i_cpu.flag_n);
state_save_register_item("M377xx", index, m37710i_cpu.flag_v);
state_save_register_item("M377xx", index, m37710i_cpu.flag_d);
state_save_register_item("M377xx", index, m37710i_cpu.flag_i);
state_save_register_item("M377xx", index, m37710i_cpu.flag_z);
state_save_register_item("M377xx", index, m37710i_cpu.flag_c);
state_save_register_item("M377xx", index, m37710i_cpu.line_irq);
state_save_register_item("M377xx", index, m37710i_cpu.ipl);
state_save_register_item("M377xx", index, m37710i_cpu.ir);
state_save_register_item("M377xx", index, m37710i_cpu.im);
state_save_register_item("M377xx", index, m37710i_cpu.im2);
state_save_register_item("M377xx", index, m37710i_cpu.im3);
state_save_register_item("M377xx", index, m37710i_cpu.im4);
state_save_register_item("M377xx", index, m37710i_cpu.irq_delay);
state_save_register_item("M377xx", index, m37710i_cpu.irq_level);
state_save_register_item("M377xx", index, m37710i_cpu.stopped);
state_save_register_item_array("M377xx", index, m37710i_cpu.m37710_regs);
state_save_register_item("M377xx", index, m37710i_cpu.reload[0].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[0].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[1].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[1].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[2].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[2].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[3].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[3].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[4].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[4].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[5].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[5].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[6].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[6].attoseconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[7].seconds);
state_save_register_item("M377xx", index, m37710i_cpu.reload[7].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.a);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.b);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.ba);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.bb);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.x);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.y);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.s);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.pc);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.ppc);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.pb);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.db);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.d);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_e);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_m);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_x);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_n);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_v);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_d);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_i);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_z);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.flag_c);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.line_irq);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.ipl);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.ir);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.im);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.im2);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.im3);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.im4);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.irq_delay);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.irq_level);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.stopped);
state_save_register_item_array("M377xx", device->tag, 0, m37710i_cpu.m37710_regs);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[0].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[0].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[1].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[1].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[2].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[2].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[3].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[3].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[4].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[4].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[5].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[5].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[6].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[6].attoseconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[7].seconds);
state_save_register_item("M377xx", device->tag, 0, m37710i_cpu.reload[7].attoseconds);
state_save_register_postload(device->machine, m37710_restore_state, NULL);
}

View File

@ -147,23 +147,23 @@ static void m6502_common_init(const device_config *device, int index, int clock,
m6502->rdmem_id = default_rdmem_id;
m6502->wrmem_id = default_wdmem_id;
state_save_register_item(type, index, m6502->pc.w.l);
state_save_register_item(type, index, m6502->sp.w.l);
state_save_register_item(type, index, m6502->p);
state_save_register_item(type, index, m6502->a);
state_save_register_item(type, index, m6502->x);
state_save_register_item(type, index, m6502->y);
state_save_register_item(type, index, m6502->pending_irq);
state_save_register_item(type, index, m6502->after_cli);
state_save_register_item(type, index, m6502->nmi_state);
state_save_register_item(type, index, m6502->irq_state);
state_save_register_item(type, index, m6502->so_state);
state_save_register_item(type, device->tag, 0, m6502->pc.w.l);
state_save_register_item(type, device->tag, 0, m6502->sp.w.l);
state_save_register_item(type, device->tag, 0, m6502->p);
state_save_register_item(type, device->tag, 0, m6502->a);
state_save_register_item(type, device->tag, 0, m6502->x);
state_save_register_item(type, device->tag, 0, m6502->y);
state_save_register_item(type, device->tag, 0, m6502->pending_irq);
state_save_register_item(type, device->tag, 0, m6502->after_cli);
state_save_register_item(type, device->tag, 0, m6502->nmi_state);
state_save_register_item(type, device->tag, 0, m6502->irq_state);
state_save_register_item(type, device->tag, 0, m6502->so_state);
#if (HAS_M6510) || (HAS_M6510T) || (HAS_M8502) || (HAS_M7501)
if (subtype == SUBTYPE_6510)
{
state_save_register_item(type, index, m6502->port);
state_save_register_item(type, index, m6502->ddr);
state_save_register_item(type, device->tag, 0, m6502->port);
state_save_register_item(type, device->tag, 0, m6502->ddr);
}
#endif
}

View File

@ -838,49 +838,49 @@ static TIMER_CALLBACK(m6800_rx_tick)
/****************************************************************************
* Reset registers to their initial values
****************************************************************************/
static void state_register(m68_state_t *m68_state, const char *type, int index)
static void state_register(m68_state_t *m68_state, const char *type)
{
state_save_register_item(type, index, m68_state->ppc.w.l);
state_save_register_item(type, index, m68_state->pc.w.l);
state_save_register_item(type, index, m68_state->s.w.l);
state_save_register_item(type, index, m68_state->x.w.l);
state_save_register_item(type, index, m68_state->d.w.l);
state_save_register_item(type, index, m68_state->cc);
state_save_register_item(type, index, m68_state->wai_state);
state_save_register_item(type, index, m68_state->nmi_state);
state_save_register_item_array(type, index, m68_state->irq_state);
state_save_register_item(type, index, m68_state->ic_eddge);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->ppc.w.l);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->pc.w.l);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->s.w.l);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->x.w.l);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->d.w.l);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->cc);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->wai_state);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->nmi_state);
state_save_register_item_array(type, m68_state->device->tag, 0, m68_state->irq_state);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->ic_eddge);
state_save_register_item(type, index, m68_state->port1_ddr);
state_save_register_item(type, index, m68_state->port2_ddr);
state_save_register_item(type, index, m68_state->port3_ddr);
state_save_register_item(type, index, m68_state->port4_ddr);
state_save_register_item(type, index, m68_state->port1_data);
state_save_register_item(type, index, m68_state->port2_data);
state_save_register_item(type, index, m68_state->port3_data);
state_save_register_item(type, index, m68_state->port4_data);
state_save_register_item(type, index, m68_state->tcsr);
state_save_register_item(type, index, m68_state->pending_tcsr);
state_save_register_item(type, index, m68_state->irq2);
state_save_register_item(type, index, m68_state->ram_ctrl);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port1_ddr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port2_ddr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port3_ddr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port4_ddr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port1_data);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port2_data);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port3_data);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->port4_data);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->tcsr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->pending_tcsr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->irq2);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->ram_ctrl);
state_save_register_item(type, index, m68_state->counter.d);
state_save_register_item(type, index, m68_state->output_compare.d);
state_save_register_item(type, index, m68_state->input_capture);
state_save_register_item(type, index, m68_state->timer_over.d);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->counter.d);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->output_compare.d);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->input_capture);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->timer_over.d);
state_save_register_item(type, index, m68_state->clock);
state_save_register_item(type, index, m68_state->trcsr);
state_save_register_item(type, index, m68_state->rmcr);
state_save_register_item(type, index, m68_state->rdr);
state_save_register_item(type, index, m68_state->tdr);
state_save_register_item(type, index, m68_state->rsr);
state_save_register_item(type, index, m68_state->tsr);
state_save_register_item(type, index, m68_state->rxbits);
state_save_register_item(type, index, m68_state->txbits);
state_save_register_item(type, index, m68_state->txstate);
state_save_register_item(type, index, m68_state->trcsr_read);
state_save_register_item(type, index, m68_state->tx);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->clock);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->trcsr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->rmcr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->rdr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->tdr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->rsr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->tsr);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->rxbits);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->txbits);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->txstate);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->trcsr_read);
state_save_register_item(type, m68_state->device->tag, 0, m68_state->tx);
}
static CPU_INIT( m6800 )
@ -891,7 +891,7 @@ static CPU_INIT( m6800 )
m68_state->cycles = cycles_6800;
m68_state->irq_callback = irqcallback;
m68_state->device = device;
state_register(m68_state, "m6800", index);
state_register(m68_state, "m6800");
}
static CPU_RESET( m6800 )
@ -1321,7 +1321,7 @@ static CPU_INIT( m6801 )
m68_state->m6800_rx_timer = timer_alloc(m6800_rx_tick, m68_state);
m68_state->m6800_tx_timer = timer_alloc(m6800_tx_tick, m68_state);
state_register(m68_state, "m6801", index);
state_register(m68_state, "m6801");
}
#endif
@ -1337,7 +1337,7 @@ static CPU_INIT( m6802 )
m68_state->cycles = cycles_6800;
m68_state->irq_callback = irqcallback;
m68_state->device = device;
state_register(m68_state, "m6802", index);
state_register(m68_state, "m6802");
}
#endif
@ -1358,7 +1358,7 @@ static CPU_INIT( m6803 )
m68_state->m6800_rx_timer = timer_alloc(m6800_rx_tick, m68_state);
m68_state->m6800_tx_timer = timer_alloc(m6800_tx_tick, m68_state);
state_register(m68_state, "m6803", index);
state_register(m68_state, "m6803");
}
#endif
@ -1692,7 +1692,7 @@ static CPU_INIT( m6808 )
m68_state->cycles = cycles_6800;
m68_state->irq_callback = irqcallback;
m68_state->device = device;
state_register(m68_state, "m6808", index);
state_register(m68_state, "m6808");
}
#endif
@ -1714,7 +1714,7 @@ static CPU_INIT( hd63701 )
m68_state->m6800_rx_timer = timer_alloc(m6800_rx_tick, m68_state);
m68_state->m6800_tx_timer = timer_alloc(m6800_tx_tick, m68_state);
state_register(m68_state, "hd63701", index);
state_register(m68_state, "hd63701");
}
/****************************************************************************
@ -2059,7 +2059,7 @@ static CPU_INIT( nsc8105 )
// m68_state->subtype = SUBTYPE_NSC8105;
m68_state->insn = nsc8105_insn;
m68_state->cycles = cycles_nsc8105;
state_register(m68_state, "nsc8105", index);
state_register(m68_state, "nsc8105");
}
/****************************************************************************

View File

@ -226,7 +226,7 @@ unsigned int m68k_get_context(void* dst);
void m68k_set_context(void* dst);
/* Register the CPU state information */
void m68k_state_register(m68ki_cpu_core *m68k, const char *type, int index);
void m68k_state_register(m68ki_cpu_core *m68k, const char *type);
/* Peek at the internals of a CPU context. This can either be a context

View File

@ -941,28 +941,28 @@ static void m68k_post_load(running_machine *machine, void *param)
m68ki_jump(m68k, REG_PC);
}
void m68k_state_register(m68ki_cpu_core *m68k, const char *type, int index)
void m68k_state_register(m68ki_cpu_core *m68k, const char *type)
{
/* Note, D covers A because the dar array is common, REG_A=REG_D+8 */
state_save_register_item_array(type, index, REG_D);
state_save_register_item(type, index, REG_PPC);
state_save_register_item(type, index, REG_PC);
state_save_register_item(type, index, REG_USP);
state_save_register_item(type, index, REG_ISP);
state_save_register_item(type, index, REG_MSP);
state_save_register_item(type, index, m68k->vbr);
state_save_register_item(type, index, m68k->sfc);
state_save_register_item(type, index, m68k->dfc);
state_save_register_item(type, index, m68k->cacr);
state_save_register_item(type, index, m68k->caar);
state_save_register_item(type, index, m68k_substate.sr);
state_save_register_item(type, index, m68k->int_level);
state_save_register_item(type, index, m68k_substate.stopped);
state_save_register_item(type, index, m68k_substate.halted);
state_save_register_item(type, index, m68k->pref_addr);
state_save_register_item(type, index, m68k->pref_data);
state_save_register_presave(Machine, m68k_prepare_substate, m68k);
state_save_register_postload(Machine, m68k_post_load, m68k);
state_save_register_item_array(type, m68k->device->tag, 0, REG_D);
state_save_register_item(type, m68k->device->tag, 0, REG_PPC);
state_save_register_item(type, m68k->device->tag, 0, REG_PC);
state_save_register_item(type, m68k->device->tag, 0, REG_USP);
state_save_register_item(type, m68k->device->tag, 0, REG_ISP);
state_save_register_item(type, m68k->device->tag, 0, REG_MSP);
state_save_register_item(type, m68k->device->tag, 0, m68k->vbr);
state_save_register_item(type, m68k->device->tag, 0, m68k->sfc);
state_save_register_item(type, m68k->device->tag, 0, m68k->dfc);
state_save_register_item(type, m68k->device->tag, 0, m68k->cacr);
state_save_register_item(type, m68k->device->tag, 0, m68k->caar);
state_save_register_item(type, m68k->device->tag, 0, m68k_substate.sr);
state_save_register_item(type, m68k->device->tag, 0, m68k->int_level);
state_save_register_item(type, m68k->device->tag, 0, m68k_substate.stopped);
state_save_register_item(type, m68k->device->tag, 0, m68k_substate.halted);
state_save_register_item(type, m68k->device->tag, 0, m68k->pref_addr);
state_save_register_item(type, m68k->device->tag, 0, m68k->pref_data);
state_save_register_presave(m68k->device->machine, m68k_prepare_substate, m68k);
state_save_register_postload(m68k->device->machine, m68k_post_load, m68k);
}
/* ======================================================================== */

View File

@ -161,7 +161,7 @@ static CPU_INIT( m68000 )
m68k->memory = interface_d16;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68000);
m68k_state_register(m68k, "m68000", index);
m68k_state_register(m68k, "m68000");
m68k_set_int_ack_callback(m68k, (void *)device, (int (*)(void *param, int int_level)) irqcallback);
}
@ -206,7 +206,7 @@ static CPU_INIT( m68008 )
m68k->memory = interface_d8;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68008);
m68k_state_register(m68k, "m68008", index);
m68k_state_register(m68k, "m68008");
m68k_set_int_ack_callback(m68k, (void *)device, irqcallback);
}
@ -253,7 +253,7 @@ static CPU_INIT( m68010 )
m68k->memory = interface_d16;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68010);
m68k_state_register(m68k, "m68010", index);
m68k_state_register(m68k, "m68010");
m68k_set_int_ack_callback(m68k, (void *)device, (int (*)(void *param, int int_level)) irqcallback);
}
@ -276,7 +276,7 @@ static CPU_INIT( m68020 )
m68k->memory = interface_d32;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68020);
m68k_state_register(m68k, "m68020", index);
m68k_state_register(m68k, "m68020");
m68k_set_int_ack_callback(m68k, (void *)device, (int (*)(void *param, int int_level)) irqcallback);
}
@ -322,7 +322,7 @@ static CPU_INIT( m68ec020 )
m68k->memory = interface_d32;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68EC020);
m68k_state_register(m68k, "m68ec020", index);
m68k_state_register(m68k, "m68ec020");
m68k_set_int_ack_callback(m68k, (void *)device, (int (*)(void *param, int int_level)) irqcallback);
}
@ -346,7 +346,7 @@ static CPU_INIT( m68040 )
m68k->memory = interface_d32;
m68k_init(m68k);
m68k_set_cpu_type(m68k, M68K_CPU_TYPE_68040);
m68k_state_register(m68k, "m68040", index);
m68k_state_register(m68k, "m68040");
m68k_set_int_ack_callback(m68k, (void *)device, (int (*)(void *param, int int_level)) irqcallback);
}

View File

@ -429,20 +429,20 @@ static void Interrupt(void)
}
}
static void state_register(const char *type, int index)
static void state_register(const char *type, const device_config *device)
{
state_save_register_item(type, index, A);
state_save_register_item(type, index, PC);
state_save_register_item(type, index, S);
state_save_register_item(type, index, X);
state_save_register_item(type, index, CC);
state_save_register_item(type, index, m6805.pending_interrupts);
state_save_register_item_array(type, index, m6805.irq_state);
state_save_register_item(type, device->tag, 0, A);
state_save_register_item(type, device->tag, 0, PC);
state_save_register_item(type, device->tag, 0, S);
state_save_register_item(type, device->tag, 0, X);
state_save_register_item(type, device->tag, 0, CC);
state_save_register_item(type, device->tag, 0, m6805.pending_interrupts);
state_save_register_item_array(type, device->tag, 0, m6805.irq_state);
}
static CPU_INIT( m6805 )
{
state_register("m6805", index);
state_register("m6805", device);
m6805.irq_callback = irqcallback;
m6805.device = device;
}
@ -808,7 +808,7 @@ static CPU_EXECUTE( m6805 )
#if (HAS_M68705)
static CPU_INIT( m68705 )
{
state_register("m68705", index);
state_register("m68705", device);
m6805.irq_callback = irqcallback;
m6805.device = device;
}
@ -836,7 +836,7 @@ static void m68705_set_irq_line(int irqline, int state)
#if (HAS_HD63705)
static CPU_INIT( hd63705 )
{
state_register("hd63705", index);
state_register("hd63705", device);
m6805.irq_callback = irqcallback;
m6805.device = device;
}

View File

@ -374,18 +374,18 @@ static CPU_INIT( m6809 )
m68_state->irq_callback = irqcallback;
m68_state->device = device;
state_save_register_item("m6809", index, PC);
state_save_register_item("m6809", index, PPC);
state_save_register_item("m6809", index, D);
state_save_register_item("m6809", index, DP);
state_save_register_item("m6809", index, U);
state_save_register_item("m6809", index, S);
state_save_register_item("m6809", index, X);
state_save_register_item("m6809", index, Y);
state_save_register_item("m6809", index, CC);
state_save_register_item_array("m6809", index, m68_state->irq_state);
state_save_register_item("m6809", index, m68_state->int_state);
state_save_register_item("m6809", index, m68_state->nmi_state);
state_save_register_item("m6809", device->tag, 0, PC);
state_save_register_item("m6809", device->tag, 0, PPC);
state_save_register_item("m6809", device->tag, 0, D);
state_save_register_item("m6809", device->tag, 0, DP);
state_save_register_item("m6809", device->tag, 0, U);
state_save_register_item("m6809", device->tag, 0, S);
state_save_register_item("m6809", device->tag, 0, X);
state_save_register_item("m6809", device->tag, 0, Y);
state_save_register_item("m6809", device->tag, 0, CC);
state_save_register_item_array("m6809", device->tag, 0, m68_state->irq_state);
state_save_register_item("m6809", device->tag, 0, m68_state->int_state);
state_save_register_item("m6809", device->tag, 0, m68_state->nmi_state);
}

View File

@ -129,27 +129,27 @@ static CPU_INIT( mb88 )
mb88.irqcallback = irqcallback;
mb88.device = device;
state_save_register_item("mb88", clock, mb88.PC);
state_save_register_item("mb88", clock, mb88.PA);
state_save_register_item("mb88", clock, mb88.SP[0]);
state_save_register_item("mb88", clock, mb88.SP[1]);
state_save_register_item("mb88", clock, mb88.SP[2]);
state_save_register_item("mb88", clock, mb88.SP[3]);
state_save_register_item("mb88", clock, mb88.SI);
state_save_register_item("mb88", clock, mb88.A);
state_save_register_item("mb88", clock, mb88.X);
state_save_register_item("mb88", clock, mb88.Y);
state_save_register_item("mb88", clock, mb88.st);
state_save_register_item("mb88", clock, mb88.zf);
state_save_register_item("mb88", clock, mb88.cf);
state_save_register_item("mb88", clock, mb88.vf);
state_save_register_item("mb88", clock, mb88.sf);
state_save_register_item("mb88", clock, mb88.nf);
state_save_register_item("mb88", clock, mb88.pio);
state_save_register_item("mb88", clock, mb88.TH);
state_save_register_item("mb88", clock, mb88.TL);
state_save_register_item("mb88", clock, mb88.SB);
state_save_register_item("mb88", clock, mb88.pending_interrupt);
state_save_register_item("mb88", device->tag, 0, mb88.PC);
state_save_register_item("mb88", device->tag, 0, mb88.PA);
state_save_register_item("mb88", device->tag, 0, mb88.SP[0]);
state_save_register_item("mb88", device->tag, 0, mb88.SP[1]);
state_save_register_item("mb88", device->tag, 0, mb88.SP[2]);
state_save_register_item("mb88", device->tag, 0, mb88.SP[3]);
state_save_register_item("mb88", device->tag, 0, mb88.SI);
state_save_register_item("mb88", device->tag, 0, mb88.A);
state_save_register_item("mb88", device->tag, 0, mb88.X);
state_save_register_item("mb88", device->tag, 0, mb88.Y);
state_save_register_item("mb88", device->tag, 0, mb88.st);
state_save_register_item("mb88", device->tag, 0, mb88.zf);
state_save_register_item("mb88", device->tag, 0, mb88.cf);
state_save_register_item("mb88", device->tag, 0, mb88.vf);
state_save_register_item("mb88", device->tag, 0, mb88.sf);
state_save_register_item("mb88", device->tag, 0, mb88.nf);
state_save_register_item("mb88", device->tag, 0, mb88.pio);
state_save_register_item("mb88", device->tag, 0, mb88.TH);
state_save_register_item("mb88", device->tag, 0, mb88.TL);
state_save_register_item("mb88", device->tag, 0, mb88.SB);
state_save_register_item("mb88", device->tag, 0, mb88.pending_interrupt);
}
static CPU_RESET( mb88 )

View File

@ -708,25 +708,25 @@ static void mcs48_init(const device_config *device, int index, int clock, cpu_ir
mcs48->device = device;
mcs48->int_rom_size = romsize;
state_save_register_item("mcs48", index, mcs48->prevpc.w.l);
state_save_register_item("mcs48", index, PC);
state_save_register_item("mcs48", index, A);
state_save_register_item("mcs48", index, PSW);
state_save_register_item("mcs48", index, mcs48->p1);
state_save_register_item("mcs48", index, mcs48->p2);
state_save_register_item("mcs48", index, mcs48->f1);
state_save_register_item("mcs48", index, mcs48->ea);
state_save_register_item("mcs48", index, mcs48->timer);
state_save_register_item("mcs48", index, mcs48->prescaler);
state_save_register_item("mcs48", index, mcs48->t1_history);
state_save_register_item("mcs48", index, mcs48->irq_state);
state_save_register_item("mcs48", index, mcs48->irq_in_progress);
state_save_register_item("mcs48", index, mcs48->timer_overflow);
state_save_register_item("mcs48", index, mcs48->timer_flag);
state_save_register_item("mcs48", index, mcs48->tirq_enabled);
state_save_register_item("mcs48", index, mcs48->xirq_enabled);
state_save_register_item("mcs48", index, mcs48->timecount_enabled);
state_save_register_item("mcs48", index, mcs48->a11);
state_save_register_item("mcs48", device->tag, 0, mcs48->prevpc.w.l);
state_save_register_item("mcs48", device->tag, 0, PC);
state_save_register_item("mcs48", device->tag, 0, A);
state_save_register_item("mcs48", device->tag, 0, PSW);
state_save_register_item("mcs48", device->tag, 0, mcs48->p1);
state_save_register_item("mcs48", device->tag, 0, mcs48->p2);
state_save_register_item("mcs48", device->tag, 0, mcs48->f1);
state_save_register_item("mcs48", device->tag, 0, mcs48->ea);
state_save_register_item("mcs48", device->tag, 0, mcs48->timer);
state_save_register_item("mcs48", device->tag, 0, mcs48->prescaler);
state_save_register_item("mcs48", device->tag, 0, mcs48->t1_history);
state_save_register_item("mcs48", device->tag, 0, mcs48->irq_state);
state_save_register_item("mcs48", device->tag, 0, mcs48->irq_in_progress);
state_save_register_item("mcs48", device->tag, 0, mcs48->timer_overflow);
state_save_register_item("mcs48", device->tag, 0, mcs48->timer_flag);
state_save_register_item("mcs48", device->tag, 0, mcs48->tirq_enabled);
state_save_register_item("mcs48", device->tag, 0, mcs48->xirq_enabled);
state_save_register_item("mcs48", device->tag, 0, mcs48->timecount_enabled);
state_save_register_item("mcs48", device->tag, 0, mcs48->a11);
}

View File

@ -2067,18 +2067,18 @@ static CPU_INIT( mcs51 )
mcs51_state->sfr_write = mcs51_sfr_write;
/* Save states */
state_save_register_item("mcs51", index, mcs51_state->ppc);
state_save_register_item("mcs51", index, mcs51_state->pc);
state_save_register_item("mcs51", index, mcs51_state->rwm );
state_save_register_item("mcs51", index, mcs51_state->cur_irq_prio );
state_save_register_item("mcs51", index, mcs51_state->last_line_state );
state_save_register_item("mcs51", index, mcs51_state->t0_cnt );
state_save_register_item("mcs51", index, mcs51_state->t1_cnt );
state_save_register_item("mcs51", index, mcs51_state->t2_cnt );
state_save_register_item("mcs51", index, mcs51_state->t2ex_cnt );
state_save_register_item("mcs51", index, mcs51_state->recalc_parity );
state_save_register_item_array("mcs51", index, mcs51_state->irq_prio );
state_save_register_item("mcs51", index, mcs51_state->irq_active );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->ppc);
state_save_register_item("mcs51", device->tag, 0, mcs51_state->pc);
state_save_register_item("mcs51", device->tag, 0, mcs51_state->rwm );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->cur_irq_prio );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->last_line_state );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->t0_cnt );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->t1_cnt );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->t2_cnt );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->t2ex_cnt );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->recalc_parity );
state_save_register_item_array("mcs51", device->tag, 0, mcs51_state->irq_prio );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->irq_active );
}
static CPU_INIT( i80c51 )
@ -2376,9 +2376,9 @@ static CPU_INIT( ds5002fp )
mcs51_state->sfr_read = ds5002fp_sfr_read;
mcs51_state->sfr_write = ds5002fp_sfr_write;
state_save_register_item("mcs51", index, mcs51_state->ds5002fp.previous_ta );
state_save_register_item("mcs51", index, mcs51_state->ds5002fp.ta_window );
state_save_register_item("mcs51", index, mcs51_state->ds5002fp.range );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->ds5002fp.previous_ta );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->ds5002fp.ta_window );
state_save_register_item("mcs51", device->tag, 0, mcs51_state->ds5002fp.range );
}

View File

@ -100,17 +100,17 @@ void mips3com_init(mips3_state *mips, mips3_flavor flavor, int bigendian, const
mips3com_reset(mips);
/* register for save states */
state_save_register_item("mips3", index, mips->pc);
state_save_register_item_array("mips3", index, mips->r);
state_save_register_item_2d_array("mips3", index, mips->cpr);
state_save_register_item_2d_array("mips3", index, mips->ccr);
state_save_register_item("mips3", index, mips->llbit);
state_save_register_item("mips3", index, mips->count_zero_time);
state_save_register_item("mips3", device->tag, 0, mips->pc);
state_save_register_item_array("mips3", device->tag, 0, mips->r);
state_save_register_item_2d_array("mips3", device->tag, 0, mips->cpr);
state_save_register_item_2d_array("mips3", device->tag, 0, mips->ccr);
state_save_register_item("mips3", device->tag, 0, mips->llbit);
state_save_register_item("mips3", device->tag, 0, mips->count_zero_time);
for (tlbindex = 0; tlbindex < ARRAY_LENGTH(mips->tlb); tlbindex++)
{
state_save_register_item("mips3", index * ARRAY_LENGTH(mips->tlb) + tlbindex, mips->tlb[tlbindex].page_mask);
state_save_register_item("mips3", index * ARRAY_LENGTH(mips->tlb) + tlbindex, mips->tlb[tlbindex].entry_hi);
state_save_register_item_array("mips3", index * ARRAY_LENGTH(mips->tlb) + tlbindex, mips->tlb[tlbindex].entry_lo);
state_save_register_item("mips3", device->tag, tlbindex, mips->tlb[tlbindex].page_mask);
state_save_register_item("mips3", device->tag, tlbindex, mips->tlb[tlbindex].entry_hi);
state_save_register_item_array("mips3", device->tag, tlbindex, mips->tlb[tlbindex].entry_lo);
}
}

View File

@ -1559,26 +1559,26 @@ static STATE_POSTLOAD( mips_postload )
mips_update_scratchpad(machine);
}
static void mips_state_register( const char *type, int index )
static void mips_state_register( const char *type, const device_config *device )
{
state_save_register_item( type, index, mipscpu.op );
state_save_register_item( type, index, mipscpu.pc );
state_save_register_item( type, index, mipscpu.delayv );
state_save_register_item( type, index, mipscpu.delayr );
state_save_register_item( type, index, mipscpu.hi );
state_save_register_item( type, index, mipscpu.lo );
state_save_register_item( type, index, mipscpu.biu );
state_save_register_item_array( type, index, mipscpu.r );
state_save_register_item_array( type, index, mipscpu.cp0r );
state_save_register_item_array( type, index, mipscpu.cp2cr );
state_save_register_item_array( type, index, mipscpu.cp2dr );
state_save_register_item_array( type, index, mipscpu.icacheTag );
state_save_register_item_array( type, index, mipscpu.icache );
state_save_register_item_array( type, index, mipscpu.dcache );
state_save_register_item( type, index, mipscpu.multiplier_operation );
state_save_register_item( type, index, mipscpu.multiplier_operand1 );
state_save_register_item( type, index, mipscpu.multiplier_operand2 );
state_save_register_postload( Machine, mips_postload, NULL );
state_save_register_item( type, device->tag, 0, mipscpu.op );
state_save_register_item( type, device->tag, 0, mipscpu.pc );
state_save_register_item( type, device->tag, 0, mipscpu.delayv );
state_save_register_item( type, device->tag, 0, mipscpu.delayr );
state_save_register_item( type, device->tag, 0, mipscpu.hi );
state_save_register_item( type, device->tag, 0, mipscpu.lo );
state_save_register_item( type, device->tag, 0, mipscpu.biu );
state_save_register_item_array( type, device->tag, 0, mipscpu.r );
state_save_register_item_array( type, device->tag, 0, mipscpu.cp0r );
state_save_register_item_array( type, device->tag, 0, mipscpu.cp2cr );
state_save_register_item_array( type, device->tag, 0, mipscpu.cp2dr );
state_save_register_item_array( type, device->tag, 0, mipscpu.icacheTag );
state_save_register_item_array( type, device->tag, 0, mipscpu.icache );
state_save_register_item_array( type, device->tag, 0, mipscpu.dcache );
state_save_register_item( type, device->tag, 0, mipscpu.multiplier_operation );
state_save_register_item( type, device->tag, 0, mipscpu.multiplier_operand1 );
state_save_register_item( type, device->tag, 0, mipscpu.multiplier_operand2 );
state_save_register_postload( device->machine, mips_postload, NULL );
}
static CPU_INIT( mips )
@ -1586,7 +1586,7 @@ static CPU_INIT( mips )
mipscpu.irq_callback = irqcallback;
mipscpu.device = device;
mips_state_register( "psxcpu", index );
mips_state_register( "psxcpu", device );
}
static CPU_RESET( mips )

View File

@ -1118,25 +1118,25 @@ static void nec_init(const device_config *device, int index, int clock, cpu_irq_
I.config = config;
state_save_register_item_array(names[type], index, I.regs.w);
state_save_register_item_array(names[type], index, I.sregs);
state_save_register_item_array(names[type], device->tag, 0, I.regs.w);
state_save_register_item_array(names[type], device->tag, 0, I.sregs);
state_save_register_item(names[type], index, I.ip);
state_save_register_item(names[type], index, I.TF);
state_save_register_item(names[type], index, I.IF);
state_save_register_item(names[type], index, I.DF);
state_save_register_item(names[type], index, I.MF);
state_save_register_item(names[type], index, I.SignVal);
state_save_register_item(names[type], index, I.int_vector);
state_save_register_item(names[type], index, I.pending_irq);
state_save_register_item(names[type], index, I.nmi_state);
state_save_register_item(names[type], index, I.irq_state);
state_save_register_item(names[type], index, I.poll_state);
state_save_register_item(names[type], index, I.AuxVal);
state_save_register_item(names[type], index, I.OverVal);
state_save_register_item(names[type], index, I.ZeroVal);
state_save_register_item(names[type], index, I.CarryVal);
state_save_register_item(names[type], index, I.ParityVal);
state_save_register_item(names[type], device->tag, 0, I.ip);
state_save_register_item(names[type], device->tag, 0, I.TF);
state_save_register_item(names[type], device->tag, 0, I.IF);
state_save_register_item(names[type], device->tag, 0, I.DF);
state_save_register_item(names[type], device->tag, 0, I.MF);
state_save_register_item(names[type], device->tag, 0, I.SignVal);
state_save_register_item(names[type], device->tag, 0, I.int_vector);
state_save_register_item(names[type], device->tag, 0, I.pending_irq);
state_save_register_item(names[type], device->tag, 0, I.nmi_state);
state_save_register_item(names[type], device->tag, 0, I.irq_state);
state_save_register_item(names[type], device->tag, 0, I.poll_state);
state_save_register_item(names[type], device->tag, 0, I.AuxVal);
state_save_register_item(names[type], device->tag, 0, I.OverVal);
state_save_register_item(names[type], device->tag, 0, I.ZeroVal);
state_save_register_item(names[type], device->tag, 0, I.CarryVal);
state_save_register_item(names[type], device->tag, 0, I.ParityVal);
I.irq_callback = irqcallback;
I.device = device;

View File

@ -691,33 +691,33 @@ static const opcode_fn opcode_000_other[16]=
static CPU_INIT( pic16C5x )
{
state_save_register_item("pic16C5x", index, old_data);
state_save_register_item("pic16C5x", index, R.W);
state_save_register_item("pic16C5x", index, R.ALU);
state_save_register_item("pic16C5x", index, R.OPTION);
state_save_register_item("pic16C5x", index, R.TMR0);
state_save_register_item("pic16C5x", index, R.PCL);
state_save_register_item("pic16C5x", index, R.STATUS);
state_save_register_item("pic16C5x", index, R.FSR);
state_save_register_item("pic16C5x", index, R.PORTA);
state_save_register_item("pic16C5x", index, R.PORTB);
state_save_register_item("pic16C5x", index, R.PORTC);
state_save_register_item("pic16C5x", index, R.TRISA);
state_save_register_item("pic16C5x", index, R.TRISB);
state_save_register_item("pic16C5x", index, R.TRISC);
state_save_register_item("pic16C5x", index, old_T0);
state_save_register_item("pic16C5x", index, picRAMmask);
state_save_register_item("pic16C5x", index, R.WDT);
state_save_register_item("pic16C5x", index, R.prescaler);
state_save_register_item("pic16C5x", index, R.STACK[0]);
state_save_register_item("pic16C5x", index, R.STACK[1]);
state_save_register_item("pic16C5x", index, R.PC);
state_save_register_item("pic16C5x", index, R.PREVPC);
state_save_register_item("pic16C5x", index, R.CONFIG);
state_save_register_item("pic16C5x", index, R.opcode.d);
state_save_register_item("pic16C5x", index, delay_timer);
state_save_register_item("pic16C5x", index, picmodel);
state_save_register_item("pic16C5x", index, pic16C5x_reset_vector);
state_save_register_item("pic16C5x", device->tag, 0, old_data);
state_save_register_item("pic16C5x", device->tag, 0, R.W);
state_save_register_item("pic16C5x", device->tag, 0, R.ALU);
state_save_register_item("pic16C5x", device->tag, 0, R.OPTION);
state_save_register_item("pic16C5x", device->tag, 0, R.TMR0);
state_save_register_item("pic16C5x", device->tag, 0, R.PCL);
state_save_register_item("pic16C5x", device->tag, 0, R.STATUS);
state_save_register_item("pic16C5x", device->tag, 0, R.FSR);
state_save_register_item("pic16C5x", device->tag, 0, R.PORTA);
state_save_register_item("pic16C5x", device->tag, 0, R.PORTB);
state_save_register_item("pic16C5x", device->tag, 0, R.PORTC);
state_save_register_item("pic16C5x", device->tag, 0, R.TRISA);
state_save_register_item("pic16C5x", device->tag, 0, R.TRISB);
state_save_register_item("pic16C5x", device->tag, 0, R.TRISC);
state_save_register_item("pic16C5x", device->tag, 0, old_T0);
state_save_register_item("pic16C5x", device->tag, 0, picRAMmask);
state_save_register_item("pic16C5x", device->tag, 0, R.WDT);
state_save_register_item("pic16C5x", device->tag, 0, R.prescaler);
state_save_register_item("pic16C5x", device->tag, 0, R.STACK[0]);
state_save_register_item("pic16C5x", device->tag, 0, R.STACK[1]);
state_save_register_item("pic16C5x", device->tag, 0, R.PC);
state_save_register_item("pic16C5x", device->tag, 0, R.PREVPC);
state_save_register_item("pic16C5x", device->tag, 0, R.CONFIG);
state_save_register_item("pic16C5x", device->tag, 0, R.opcode.d);
state_save_register_item("pic16C5x", device->tag, 0, delay_timer);
state_save_register_item("pic16C5x", device->tag, 0, picmodel);
state_save_register_item("pic16C5x", device->tag, 0, pic16C5x_reset_vector);
}

View File

@ -221,36 +221,36 @@ void ppccom_init(powerpc_state *ppc, powerpc_flavor flavor, UINT8 cap, int tb_di
ppccom_reset(ppc);
/* register for save states */
state_save_register_item("ppc", index, ppc->pc);
state_save_register_item_array("ppc", index, ppc->r);
state_save_register_item_array("ppc", index, ppc->f);
state_save_register_item_array("ppc", index, ppc->cr);
state_save_register_item("ppc", index, ppc->xerso);
state_save_register_item("ppc", index, ppc->fpscr);
state_save_register_item("ppc", index, ppc->msr);
state_save_register_item_array("ppc", index, ppc->sr);
state_save_register_item_array("ppc", index, ppc->spr);
state_save_register_item_array("ppc", index, ppc->dcr);
state_save_register_item("ppc", device->tag, 0, ppc->pc);
state_save_register_item_array("ppc", device->tag, 0, ppc->r);
state_save_register_item_array("ppc", device->tag, 0, ppc->f);
state_save_register_item_array("ppc", device->tag, 0, ppc->cr);
state_save_register_item("ppc", device->tag, 0, ppc->xerso);
state_save_register_item("ppc", device->tag, 0, ppc->fpscr);
state_save_register_item("ppc", device->tag, 0, ppc->msr);
state_save_register_item_array("ppc", device->tag, 0, ppc->sr);
state_save_register_item_array("ppc", device->tag, 0, ppc->spr);
state_save_register_item_array("ppc", device->tag, 0, ppc->dcr);
if (cap & PPCCAP_4XX)
{
state_save_register_item_array("ppc", index, ppc->spu.regs);
state_save_register_item("ppc", index, ppc->spu.txbuf);
state_save_register_item("ppc", index, ppc->spu.rxbuf);
state_save_register_item_array("ppc", index, ppc->spu.rxbuffer);
state_save_register_item("ppc", index, ppc->spu.rxin);
state_save_register_item("ppc", index, ppc->spu.rxout);
state_save_register_item("ppc", index, ppc->pit_reload);
state_save_register_item("ppc", index, ppc->irqstate);
state_save_register_item_array("ppc", device->tag, 0, ppc->spu.regs);
state_save_register_item("ppc", device->tag, 0, ppc->spu.txbuf);
state_save_register_item("ppc", device->tag, 0, ppc->spu.rxbuf);
state_save_register_item_array("ppc", device->tag, 0, ppc->spu.rxbuffer);
state_save_register_item("ppc", device->tag, 0, ppc->spu.rxin);
state_save_register_item("ppc", device->tag, 0, ppc->spu.rxout);
state_save_register_item("ppc", device->tag, 0, ppc->pit_reload);
state_save_register_item("ppc", device->tag, 0, ppc->irqstate);
}
if (cap & PPCCAP_603_MMU)
{
state_save_register_item("ppc", index, ppc->mmu603_cmp);
state_save_register_item_array("ppc", index, ppc->mmu603_hash);
state_save_register_item_array("ppc", index, ppc->mmu603_r);
state_save_register_item("ppc", device->tag, 0, ppc->mmu603_cmp);
state_save_register_item_array("ppc", device->tag, 0, ppc->mmu603_hash);
state_save_register_item_array("ppc", device->tag, 0, ppc->mmu603_r);
}
state_save_register_item("ppc", index, ppc->irq_pending);
state_save_register_item("ppc", index, ppc->tb_zero_cycles);
state_save_register_item("ppc", index, ppc->dec_zero_cycles);
state_save_register_item("ppc", device->tag, 0, ppc->irq_pending);
state_save_register_item("ppc", device->tag, 0, ppc->tb_zero_cycles);
state_save_register_item("ppc", device->tag, 0, ppc->dec_zero_cycles);
}

View File

@ -771,18 +771,18 @@ static CPU_INIT( s2650 )
S.irq_callback = irqcallback;
S.device = device;
state_save_register_item("s2650", index, S.ppc);
state_save_register_item("s2650", index, S.page);
state_save_register_item("s2650", index, S.iar);
state_save_register_item("s2650", index, S.ea);
state_save_register_item("s2650", index, S.psl);
state_save_register_item("s2650", index, S.psu);
state_save_register_item("s2650", index, S.r);
state_save_register_item_array("s2650", index, S.reg);
state_save_register_item("s2650", index, S.halt);
state_save_register_item("s2650", index, S.ir);
state_save_register_item_array("s2650", index, S.ras);
state_save_register_item("s2650", index, S.irq_state);
state_save_register_item("s2650", device->tag, 0, S.ppc);
state_save_register_item("s2650", device->tag, 0, S.page);
state_save_register_item("s2650", device->tag, 0, S.iar);
state_save_register_item("s2650", device->tag, 0, S.ea);
state_save_register_item("s2650", device->tag, 0, S.psl);
state_save_register_item("s2650", device->tag, 0, S.psu);
state_save_register_item("s2650", device->tag, 0, S.r);
state_save_register_item_array("s2650", device->tag, 0, S.reg);
state_save_register_item("s2650", device->tag, 0, S.halt);
state_save_register_item("s2650", device->tag, 0, S.ir);
state_save_register_item_array("s2650", device->tag, 0, S.ras);
state_save_register_item("s2650", device->tag, 0, S.irq_state);
}
static CPU_RESET( s2650 )

View File

@ -104,29 +104,29 @@ static CPU_INIT( saturn )
saturn.irq_callback = irqcallback;
saturn.device = device;
state_save_register_item_array("saturn",index,saturn.reg[R0]);
state_save_register_item_array("saturn",index,saturn.reg[R1]);
state_save_register_item_array("saturn",index,saturn.reg[R2]);
state_save_register_item_array("saturn",index,saturn.reg[R3]);
state_save_register_item_array("saturn",index,saturn.reg[R4]);
state_save_register_item_array("saturn",index,saturn.reg[A]);
state_save_register_item_array("saturn",index,saturn.reg[B]);
state_save_register_item_array("saturn",index,saturn.reg[C]);
state_save_register_item_array("saturn",index,saturn.reg[D]);
state_save_register_item_array("saturn",index,saturn.d);
state_save_register_item("saturn",index,saturn.pc);
state_save_register_item("saturn",index,saturn.oldpc);
state_save_register_item_array("saturn",index,saturn.rstk);
state_save_register_item("saturn",index,saturn.out);
state_save_register_item("saturn",index,saturn.carry);
state_save_register_item("saturn",index,saturn.st);
state_save_register_item("saturn",index,saturn.hst);
state_save_register_item("saturn",index,saturn.nmi_state);
state_save_register_item("saturn",index,saturn.irq_state);
state_save_register_item("saturn",index,saturn.irq_enable);
state_save_register_item("saturn",index,saturn.in_irq);
state_save_register_item("saturn",index,saturn.pending_irq);
state_save_register_item("saturn",index,saturn.sleeping);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[R0]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[R1]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[R2]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[R3]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[R4]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[A]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[B]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[C]);
state_save_register_item_array("saturn",device->tag, 0,saturn.reg[D]);
state_save_register_item_array("saturn",device->tag, 0,saturn.d);
state_save_register_item("saturn",device->tag, 0,saturn.pc);
state_save_register_item("saturn",device->tag, 0,saturn.oldpc);
state_save_register_item_array("saturn",device->tag, 0,saturn.rstk);
state_save_register_item("saturn",device->tag, 0,saturn.out);
state_save_register_item("saturn",device->tag, 0,saturn.carry);
state_save_register_item("saturn",device->tag, 0,saturn.st);
state_save_register_item("saturn",device->tag, 0,saturn.hst);
state_save_register_item("saturn",device->tag, 0,saturn.nmi_state);
state_save_register_item("saturn",device->tag, 0,saturn.irq_state);
state_save_register_item("saturn",device->tag, 0,saturn.irq_enable);
state_save_register_item("saturn",device->tag, 0,saturn.in_irq);
state_save_register_item("saturn",device->tag, 0,saturn.pending_irq);
state_save_register_item("saturn",device->tag, 0,saturn.sleeping);
}
static CPU_RESET( saturn )

View File

@ -736,29 +736,29 @@ void sh2_common_init(int alloc, const device_config *device, int index, int cloc
sh2->device = device;
sh2->internal = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
state_save_register_item("sh2", index, sh2->pc);
state_save_register_item("sh2", index, sh2->r[15]);
state_save_register_item("sh2", index, sh2->sr);
state_save_register_item("sh2", index, sh2->pr);
state_save_register_item("sh2", index, sh2->gbr);
state_save_register_item("sh2", index, sh2->vbr);
state_save_register_item("sh2", index, sh2->mach);
state_save_register_item("sh2", index, sh2->macl);
state_save_register_item("sh2", index, sh2->r[ 0]);
state_save_register_item("sh2", index, sh2->r[ 1]);
state_save_register_item("sh2", index, sh2->r[ 2]);
state_save_register_item("sh2", index, sh2->r[ 3]);
state_save_register_item("sh2", index, sh2->r[ 4]);
state_save_register_item("sh2", index, sh2->r[ 5]);
state_save_register_item("sh2", index, sh2->r[ 6]);
state_save_register_item("sh2", index, sh2->r[ 7]);
state_save_register_item("sh2", index, sh2->r[ 8]);
state_save_register_item("sh2", index, sh2->r[ 9]);
state_save_register_item("sh2", index, sh2->r[10]);
state_save_register_item("sh2", index, sh2->r[11]);
state_save_register_item("sh2", index, sh2->r[12]);
state_save_register_item("sh2", index, sh2->r[13]);
state_save_register_item("sh2", index, sh2->r[14]);
state_save_register_item("sh2", index, sh2->ea);
state_save_register_item("sh2", device->tag, 0, sh2->pc);
state_save_register_item("sh2", device->tag, 0, sh2->r[15]);
state_save_register_item("sh2", device->tag, 0, sh2->sr);
state_save_register_item("sh2", device->tag, 0, sh2->pr);
state_save_register_item("sh2", device->tag, 0, sh2->gbr);
state_save_register_item("sh2", device->tag, 0, sh2->vbr);
state_save_register_item("sh2", device->tag, 0, sh2->mach);
state_save_register_item("sh2", device->tag, 0, sh2->macl);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 0]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 1]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 2]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 3]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 4]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 5]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 6]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 7]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 8]);
state_save_register_item("sh2", device->tag, 0, sh2->r[ 9]);
state_save_register_item("sh2", device->tag, 0, sh2->r[10]);
state_save_register_item("sh2", device->tag, 0, sh2->r[11]);
state_save_register_item("sh2", device->tag, 0, sh2->r[12]);
state_save_register_item("sh2", device->tag, 0, sh2->r[13]);
state_save_register_item("sh2", device->tag, 0, sh2->r[14]);
state_save_register_item("sh2", device->tag, 0, sh2->ea);
}

View File

@ -3406,70 +3406,70 @@ static CPU_INIT( sh4 )
sh4.irln = 15;
sh4.test_irq = 0;
state_save_register_item("sh4", index, sh4.pc);
state_save_register_item("sh4", index, sh4.r[15]);
state_save_register_item("sh4", index, sh4.sr);
state_save_register_item("sh4", index, sh4.pr);
state_save_register_item("sh4", index, sh4.gbr);
state_save_register_item("sh4", index, sh4.vbr);
state_save_register_item("sh4", index, sh4.mach);
state_save_register_item("sh4", index, sh4.macl);
state_save_register_item("sh4", index, sh4.spc);
state_save_register_item("sh4", index, sh4.ssr);
state_save_register_item("sh4", index, sh4.sgr);
state_save_register_item("sh4", index, sh4.fpscr);
state_save_register_item("sh4", index, sh4.r[ 0]);
state_save_register_item("sh4", index, sh4.r[ 1]);
state_save_register_item("sh4", index, sh4.r[ 2]);
state_save_register_item("sh4", index, sh4.r[ 3]);
state_save_register_item("sh4", index, sh4.r[ 4]);
state_save_register_item("sh4", index, sh4.r[ 5]);
state_save_register_item("sh4", index, sh4.r[ 6]);
state_save_register_item("sh4", index, sh4.r[ 7]);
state_save_register_item("sh4", index, sh4.r[ 8]);
state_save_register_item("sh4", index, sh4.r[ 9]);
state_save_register_item("sh4", index, sh4.r[10]);
state_save_register_item("sh4", index, sh4.r[11]);
state_save_register_item("sh4", index, sh4.r[12]);
state_save_register_item("sh4", index, sh4.r[13]);
state_save_register_item("sh4", index, sh4.r[14]);
state_save_register_item("sh4", index, sh4.fr[ 0]);
state_save_register_item("sh4", index, sh4.fr[ 1]);
state_save_register_item("sh4", index, sh4.fr[ 2]);
state_save_register_item("sh4", index, sh4.fr[ 3]);
state_save_register_item("sh4", index, sh4.fr[ 4]);
state_save_register_item("sh4", index, sh4.fr[ 5]);
state_save_register_item("sh4", index, sh4.fr[ 6]);
state_save_register_item("sh4", index, sh4.fr[ 7]);
state_save_register_item("sh4", index, sh4.fr[ 8]);
state_save_register_item("sh4", index, sh4.fr[ 9]);
state_save_register_item("sh4", index, sh4.fr[10]);
state_save_register_item("sh4", index, sh4.fr[11]);
state_save_register_item("sh4", index, sh4.fr[12]);
state_save_register_item("sh4", index, sh4.fr[13]);
state_save_register_item("sh4", index, sh4.fr[14]);
state_save_register_item("sh4", index, sh4.fr[15]);
state_save_register_item("sh4", index, sh4.xf[ 0]);
state_save_register_item("sh4", index, sh4.xf[ 1]);
state_save_register_item("sh4", index, sh4.xf[ 2]);
state_save_register_item("sh4", index, sh4.xf[ 3]);
state_save_register_item("sh4", index, sh4.xf[ 4]);
state_save_register_item("sh4", index, sh4.xf[ 5]);
state_save_register_item("sh4", index, sh4.xf[ 6]);
state_save_register_item("sh4", index, sh4.xf[ 7]);
state_save_register_item("sh4", index, sh4.xf[ 8]);
state_save_register_item("sh4", index, sh4.xf[ 9]);
state_save_register_item("sh4", index, sh4.xf[10]);
state_save_register_item("sh4", index, sh4.xf[11]);
state_save_register_item("sh4", index, sh4.xf[12]);
state_save_register_item("sh4", index, sh4.xf[13]);
state_save_register_item("sh4", index, sh4.xf[14]);
state_save_register_item("sh4", index, sh4.xf[15]);
state_save_register_item("sh4", index, sh4.ea);
state_save_register_item("sh4", index, sh4.fpul);
state_save_register_item("sh4", index, sh4.dbr);
state_save_register_item_array("sh4", index, sh4.exception_priority);
state_save_register_item_array("sh4", index, sh4.exception_requesting);
state_save_register_item("sh4", device->tag, 0, sh4.pc);
state_save_register_item("sh4", device->tag, 0, sh4.r[15]);
state_save_register_item("sh4", device->tag, 0, sh4.sr);
state_save_register_item("sh4", device->tag, 0, sh4.pr);
state_save_register_item("sh4", device->tag, 0, sh4.gbr);
state_save_register_item("sh4", device->tag, 0, sh4.vbr);
state_save_register_item("sh4", device->tag, 0, sh4.mach);
state_save_register_item("sh4", device->tag, 0, sh4.macl);
state_save_register_item("sh4", device->tag, 0, sh4.spc);
state_save_register_item("sh4", device->tag, 0, sh4.ssr);
state_save_register_item("sh4", device->tag, 0, sh4.sgr);
state_save_register_item("sh4", device->tag, 0, sh4.fpscr);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 0]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 1]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 2]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 3]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 4]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 5]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 6]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 7]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 8]);
state_save_register_item("sh4", device->tag, 0, sh4.r[ 9]);
state_save_register_item("sh4", device->tag, 0, sh4.r[10]);
state_save_register_item("sh4", device->tag, 0, sh4.r[11]);
state_save_register_item("sh4", device->tag, 0, sh4.r[12]);
state_save_register_item("sh4", device->tag, 0, sh4.r[13]);
state_save_register_item("sh4", device->tag, 0, sh4.r[14]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 0]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 1]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 2]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 3]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 4]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 5]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 6]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 7]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 8]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[ 9]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[10]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[11]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[12]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[13]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[14]);
state_save_register_item("sh4", device->tag, 0, sh4.fr[15]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 0]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 1]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 2]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 3]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 4]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 5]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 6]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 7]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 8]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[ 9]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[10]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[11]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[12]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[13]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[14]);
state_save_register_item("sh4", device->tag, 0, sh4.xf[15]);
state_save_register_item("sh4", device->tag, 0, sh4.ea);
state_save_register_item("sh4", device->tag, 0, sh4.fpul);
state_save_register_item("sh4", device->tag, 0, sh4.dbr);
state_save_register_item_array("sh4", device->tag, 0, sh4.exception_priority);
state_save_register_item_array("sh4", device->tag, 0, sh4.exception_requesting);
}

View File

@ -434,120 +434,120 @@ static CPU_INIT( sharc )
sharc.internal_ram_block0 = &sharc.internal_ram[0];
sharc.internal_ram_block1 = &sharc.internal_ram[0x20000/2];
state_save_register_item("sharc", index, sharc.pc);
state_save_register_item_pointer("sharc", index, (&sharc.r[0].r), ARRAY_LENGTH(sharc.r));
state_save_register_item_pointer("sharc", index, (&sharc.reg_alt[0].r), ARRAY_LENGTH(sharc.reg_alt));
state_save_register_item("sharc", index, sharc.mrf);
state_save_register_item("sharc", index, sharc.mrb);
state_save_register_item("sharc", device->tag, 0, sharc.pc);
state_save_register_item_pointer("sharc", device->tag, 0, (&sharc.r[0].r), ARRAY_LENGTH(sharc.r));
state_save_register_item_pointer("sharc", device->tag, 0, (&sharc.reg_alt[0].r), ARRAY_LENGTH(sharc.reg_alt));
state_save_register_item("sharc", device->tag, 0, sharc.mrf);
state_save_register_item("sharc", device->tag, 0, sharc.mrb);
state_save_register_item_array("sharc", index, sharc.pcstack);
state_save_register_item_array("sharc", index, sharc.lcstack);
state_save_register_item_array("sharc", index, sharc.lastack);
state_save_register_item("sharc", index, sharc.lstkp);
state_save_register_item_array("sharc", device->tag, 0, sharc.pcstack);
state_save_register_item_array("sharc", device->tag, 0, sharc.lcstack);
state_save_register_item_array("sharc", device->tag, 0, sharc.lastack);
state_save_register_item("sharc", device->tag, 0, sharc.lstkp);
state_save_register_item("sharc", index, sharc.faddr);
state_save_register_item("sharc", index, sharc.daddr);
state_save_register_item("sharc", index, sharc.pcstk);
state_save_register_item("sharc", index, sharc.pcstkp);
state_save_register_item("sharc", index, sharc.laddr);
state_save_register_item("sharc", index, sharc.curlcntr);
state_save_register_item("sharc", index, sharc.lcntr);
state_save_register_item("sharc", device->tag, 0, sharc.faddr);
state_save_register_item("sharc", device->tag, 0, sharc.daddr);
state_save_register_item("sharc", device->tag, 0, sharc.pcstk);
state_save_register_item("sharc", device->tag, 0, sharc.pcstkp);
state_save_register_item("sharc", device->tag, 0, sharc.laddr);
state_save_register_item("sharc", device->tag, 0, sharc.curlcntr);
state_save_register_item("sharc", device->tag, 0, sharc.lcntr);
state_save_register_item_array("sharc", index, sharc.dag1.i);
state_save_register_item_array("sharc", index, sharc.dag1.m);
state_save_register_item_array("sharc", index, sharc.dag1.b);
state_save_register_item_array("sharc", index, sharc.dag1.l);
state_save_register_item_array("sharc", index, sharc.dag2.i);
state_save_register_item_array("sharc", index, sharc.dag2.m);
state_save_register_item_array("sharc", index, sharc.dag2.b);
state_save_register_item_array("sharc", index, sharc.dag2.l);
state_save_register_item_array("sharc", index, sharc.dag1_alt.i);
state_save_register_item_array("sharc", index, sharc.dag1_alt.m);
state_save_register_item_array("sharc", index, sharc.dag1_alt.b);
state_save_register_item_array("sharc", index, sharc.dag1_alt.l);
state_save_register_item_array("sharc", index, sharc.dag2_alt.i);
state_save_register_item_array("sharc", index, sharc.dag2_alt.m);
state_save_register_item_array("sharc", index, sharc.dag2_alt.b);
state_save_register_item_array("sharc", index, sharc.dag2_alt.l);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1.i);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1.m);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1.b);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1.l);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2.i);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2.m);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2.b);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2.l);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1_alt.i);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1_alt.m);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1_alt.b);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag1_alt.l);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2_alt.i);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2_alt.m);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2_alt.b);
state_save_register_item_array("sharc", device->tag, 0, sharc.dag2_alt.l);
for (saveindex = 0; saveindex < ARRAY_LENGTH(sharc.dma); saveindex++)
{
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].control);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].int_index);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].int_modifier);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].int_count);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].chain_ptr);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].gen_purpose);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].ext_index);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].ext_modifier);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.dma) + saveindex, sharc.dma[saveindex].ext_count);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].control);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].int_index);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].int_modifier);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].int_count);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].chain_ptr);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].gen_purpose);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].ext_index);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].ext_modifier);
state_save_register_item("sharc", device->tag, saveindex, sharc.dma[saveindex].ext_count);
}
state_save_register_item("sharc", index, sharc.mode1);
state_save_register_item("sharc", index, sharc.mode2);
state_save_register_item("sharc", index, sharc.astat);
state_save_register_item("sharc", index, sharc.stky);
state_save_register_item("sharc", index, sharc.irptl);
state_save_register_item("sharc", index, sharc.imask);
state_save_register_item("sharc", index, sharc.imaskp);
state_save_register_item("sharc", index, sharc.ustat1);
state_save_register_item("sharc", index, sharc.ustat2);
state_save_register_item("sharc", device->tag, 0, sharc.mode1);
state_save_register_item("sharc", device->tag, 0, sharc.mode2);
state_save_register_item("sharc", device->tag, 0, sharc.astat);
state_save_register_item("sharc", device->tag, 0, sharc.stky);
state_save_register_item("sharc", device->tag, 0, sharc.irptl);
state_save_register_item("sharc", device->tag, 0, sharc.imask);
state_save_register_item("sharc", device->tag, 0, sharc.imaskp);
state_save_register_item("sharc", device->tag, 0, sharc.ustat1);
state_save_register_item("sharc", device->tag, 0, sharc.ustat2);
state_save_register_item_array("sharc", index, sharc.flag);
state_save_register_item_array("sharc", device->tag, 0, sharc.flag);
state_save_register_item("sharc", index, sharc.syscon);
state_save_register_item("sharc", index, sharc.sysstat);
state_save_register_item("sharc", device->tag, 0, sharc.syscon);
state_save_register_item("sharc", device->tag, 0, sharc.sysstat);
for (saveindex = 0; saveindex < ARRAY_LENGTH(sharc.status_stack); saveindex++)
{
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.status_stack) + saveindex, sharc.status_stack[saveindex].mode1);
state_save_register_item("sharc", index * ARRAY_LENGTH(sharc.status_stack) + saveindex, sharc.status_stack[saveindex].astat);
state_save_register_item("sharc", device->tag, saveindex, sharc.status_stack[saveindex].mode1);
state_save_register_item("sharc", device->tag, saveindex, sharc.status_stack[saveindex].astat);
}
state_save_register_item("sharc", index, sharc.status_stkp);
state_save_register_item("sharc", device->tag, 0, sharc.status_stkp);
state_save_register_item("sharc", index, sharc.px);
state_save_register_item("sharc", device->tag, 0, sharc.px);
state_save_register_item_pointer("sharc", index, sharc.internal_ram, 2 * 0x10000);
state_save_register_item_pointer("sharc", device->tag, 0, sharc.internal_ram, 2 * 0x10000);
state_save_register_item("sharc", index, sharc.opcode);
state_save_register_item("sharc", index, sharc.fetch_opcode);
state_save_register_item("sharc", index, sharc.decode_opcode);
state_save_register_item("sharc", device->tag, 0, sharc.opcode);
state_save_register_item("sharc", device->tag, 0, sharc.fetch_opcode);
state_save_register_item("sharc", device->tag, 0, sharc.decode_opcode);
state_save_register_item("sharc", index, sharc.nfaddr);
state_save_register_item("sharc", device->tag, 0, sharc.nfaddr);
state_save_register_item("sharc", index, sharc.idle);
state_save_register_item("sharc", index, sharc.irq_active);
state_save_register_item("sharc", index, sharc.active_irq_num);
state_save_register_item("sharc", device->tag, 0, sharc.idle);
state_save_register_item("sharc", device->tag, 0, sharc.irq_active);
state_save_register_item("sharc", device->tag, 0, sharc.active_irq_num);
state_save_register_item("sharc", index, sharc.dmaop_src);
state_save_register_item("sharc", index, sharc.dmaop_dst);
state_save_register_item("sharc", index, sharc.dmaop_chain_ptr);
state_save_register_item("sharc", index, sharc.dmaop_src_modifier);
state_save_register_item("sharc", index, sharc.dmaop_dst_modifier);
state_save_register_item("sharc", index, sharc.dmaop_src_count);
state_save_register_item("sharc", index, sharc.dmaop_dst_count);
state_save_register_item("sharc", index, sharc.dmaop_pmode);
state_save_register_item("sharc", index, sharc.dmaop_cycles);
state_save_register_item("sharc", index, sharc.dmaop_channel);
state_save_register_item("sharc", index, sharc.dmaop_chained_direction);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_src);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_dst);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_chain_ptr);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_src_modifier);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_dst_modifier);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_src_count);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_dst_count);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_pmode);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_cycles);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_channel);
state_save_register_item("sharc", device->tag, 0, sharc.dmaop_chained_direction);
state_save_register_item("sharc", index, sharc.interrupt_active);
state_save_register_item("sharc", device->tag, 0, sharc.interrupt_active);
state_save_register_item("sharc", index, sharc.iop_latency_cycles);
state_save_register_item("sharc", index, sharc.iop_latency_reg);
state_save_register_item("sharc", index, sharc.iop_latency_data);
state_save_register_item("sharc", device->tag, 0, sharc.iop_latency_cycles);
state_save_register_item("sharc", device->tag, 0, sharc.iop_latency_reg);
state_save_register_item("sharc", device->tag, 0, sharc.iop_latency_data);
state_save_register_item("sharc", index, sharc.delay_slot1);
state_save_register_item("sharc", index, sharc.delay_slot2);
state_save_register_item("sharc", device->tag, 0, sharc.delay_slot1);
state_save_register_item("sharc", device->tag, 0, sharc.delay_slot2);
state_save_register_item("sharc", index, sharc.systemreg_latency_cycles);
state_save_register_item("sharc", index, sharc.systemreg_latency_reg);
state_save_register_item("sharc", index, sharc.systemreg_latency_data);
state_save_register_item("sharc", index, sharc.systemreg_previous_data);
state_save_register_item("sharc", device->tag, 0, sharc.systemreg_latency_cycles);
state_save_register_item("sharc", device->tag, 0, sharc.systemreg_latency_reg);
state_save_register_item("sharc", device->tag, 0, sharc.systemreg_latency_data);
state_save_register_item("sharc", device->tag, 0, sharc.systemreg_previous_data);
state_save_register_item("sharc", index, sharc.astat_old);
state_save_register_item("sharc", index, sharc.astat_old_old);
state_save_register_item("sharc", index, sharc.astat_old_old_old);
state_save_register_item("sharc", device->tag, 0, sharc.astat_old);
state_save_register_item("sharc", device->tag, 0, sharc.astat_old_old);
state_save_register_item("sharc", device->tag, 0, sharc.astat_old_old_old);
}
static CPU_RESET( sharc )

View File

@ -498,17 +498,17 @@ static UINT32 ptr2_read(int op)
static CPU_INIT( ssp1601 )
{
state_save_register_item(CHIP_NAME, index, rX);
state_save_register_item(CHIP_NAME, index, rY);
state_save_register_item(CHIP_NAME, index, rA32);
state_save_register_item(CHIP_NAME, index, rST);
state_save_register_item(CHIP_NAME, index, rSTACK);
state_save_register_item(CHIP_NAME, index, rPC);
state_save_register_item(CHIP_NAME, index, rP.d);
state_save_register_item(CHIP_NAME, index, PPC);
state_save_register_item_array(CHIP_NAME, index, ssp1601.stack);
state_save_register_item_array(CHIP_NAME, index, ssp1601.r);
state_save_register_item_array(CHIP_NAME, index, ssp1601.RAM);
state_save_register_item(CHIP_NAME, device->tag, 0, rX);
state_save_register_item(CHIP_NAME, device->tag, 0, rY);
state_save_register_item(CHIP_NAME, device->tag, 0, rA32);
state_save_register_item(CHIP_NAME, device->tag, 0, rST);
state_save_register_item(CHIP_NAME, device->tag, 0, rSTACK);
state_save_register_item(CHIP_NAME, device->tag, 0, rPC);
state_save_register_item(CHIP_NAME, device->tag, 0, rP.d);
state_save_register_item(CHIP_NAME, device->tag, 0, PPC);
state_save_register_item_array(CHIP_NAME, device->tag, 0, ssp1601.stack);
state_save_register_item_array(CHIP_NAME, device->tag, 0, ssp1601.r);
state_save_register_item_array(CHIP_NAME, device->tag, 0, ssp1601.RAM);
/* clear the state */
memset(&ssp1601, 0, sizeof(ssp1601));

View File

@ -297,21 +297,21 @@ static CPU_INIT( t11 )
t11.irq_callback = irqcallback;
t11.device = device;
state_save_register_item("t11", index, t11.ppc.w.l);
state_save_register_item("t11", index, t11.reg[0].w.l);
state_save_register_item("t11", index, t11.reg[1].w.l);
state_save_register_item("t11", index, t11.reg[2].w.l);
state_save_register_item("t11", index, t11.reg[3].w.l);
state_save_register_item("t11", index, t11.reg[4].w.l);
state_save_register_item("t11", index, t11.reg[5].w.l);
state_save_register_item("t11", index, t11.reg[6].w.l);
state_save_register_item("t11", index, t11.reg[7].w.l);
state_save_register_item("t11", index, t11.psw.w.l);
state_save_register_item("t11", index, t11.op);
state_save_register_item("t11", index, t11.initial_pc);
state_save_register_item("t11", index, t11.wait_state);
state_save_register_item("t11", index, t11.irq_state);
state_save_register_item("t11", index, t11.interrupt_cycles);
state_save_register_item("t11", device->tag, 0, t11.ppc.w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[0].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[1].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[2].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[3].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[4].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[5].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[6].w.l);
state_save_register_item("t11", device->tag, 0, t11.reg[7].w.l);
state_save_register_item("t11", device->tag, 0, t11.psw.w.l);
state_save_register_item("t11", device->tag, 0, t11.op);
state_save_register_item("t11", device->tag, 0, t11.initial_pc);
state_save_register_item("t11", device->tag, 0, t11.wait_state);
state_save_register_item("t11", device->tag, 0, t11.irq_state);
state_save_register_item("t11", device->tag, 0, t11.interrupt_cycles);
}

View File

@ -2626,7 +2626,7 @@ static CPU_INIT( t90 )
{
int i, p;
// state_save_register_item("z80", index, Z80.prvpc.w.l);
// state_save_register_item("z80", device->tag, 0, Z80.prvpc.w.l);
for (i = 0; i < 256; i++)
{

View File

@ -711,21 +711,21 @@ static const opcode_fn opcode_7F_other[32]=
****************************************************************************/
static CPU_INIT( tms32010 )
{
state_save_register_item("tms32010", index, R.PC);
state_save_register_item("tms32010", index, R.PREVPC);
state_save_register_item("tms32010", index, R.STR);
state_save_register_item("tms32010", index, R.ACC.d);
state_save_register_item("tms32010", index, R.ALU.d);
state_save_register_item("tms32010", index, R.Preg.d);
state_save_register_item("tms32010", index, R.Treg);
state_save_register_item("tms32010", index, R.AR[0]);
state_save_register_item("tms32010", index, R.AR[1]);
state_save_register_item("tms32010", index, R.STACK[0]);
state_save_register_item("tms32010", index, R.STACK[1]);
state_save_register_item("tms32010", index, R.STACK[2]);
state_save_register_item("tms32010", index, R.STACK[3]);
state_save_register_item("tms32010", index, R.INTF);
state_save_register_item("tms32010", index, R.opcode.d);
state_save_register_item("tms32010", device->tag, 0, R.PC);
state_save_register_item("tms32010", device->tag, 0, R.PREVPC);
state_save_register_item("tms32010", device->tag, 0, R.STR);
state_save_register_item("tms32010", device->tag, 0, R.ACC.d);
state_save_register_item("tms32010", device->tag, 0, R.ALU.d);
state_save_register_item("tms32010", device->tag, 0, R.Preg.d);
state_save_register_item("tms32010", device->tag, 0, R.Treg);
state_save_register_item("tms32010", device->tag, 0, R.AR[0]);
state_save_register_item("tms32010", device->tag, 0, R.AR[1]);
state_save_register_item("tms32010", device->tag, 0, R.STACK[0]);
state_save_register_item("tms32010", device->tag, 0, R.STACK[1]);
state_save_register_item("tms32010", device->tag, 0, R.STACK[2]);
state_save_register_item("tms32010", device->tag, 0, R.STACK[3]);
state_save_register_item("tms32010", device->tag, 0, R.INTF);
state_save_register_item("tms32010", device->tag, 0, R.opcode.d);
}
/****************************************************************************

View File

@ -1734,38 +1734,38 @@ static CPU_INIT( tms32025 )
R.irq_callback = irqcallback;
R.device = device;
state_save_register_item("tms32025", index, R.PC);
state_save_register_item("tms32025", index, R.STR0);
state_save_register_item("tms32025", index, R.STR1);
state_save_register_item("tms32025", index, R.PFC);
state_save_register_item("tms32025", index, R.IFR);
state_save_register_item("tms32025", index, R.RPTC);
state_save_register_item("tms32025", index, R.ACC.d);
state_save_register_item("tms32025", index, R.ALU.d);
state_save_register_item("tms32025", index, R.Preg.d);
state_save_register_item("tms32025", index, R.Treg);
state_save_register_item("tms32025", index, R.AR[0]);
state_save_register_item("tms32025", index, R.AR[1]);
state_save_register_item("tms32025", index, R.AR[2]);
state_save_register_item("tms32025", index, R.AR[3]);
state_save_register_item("tms32025", index, R.AR[4]);
state_save_register_item("tms32025", index, R.AR[5]);
state_save_register_item("tms32025", index, R.AR[6]);
state_save_register_item("tms32025", index, R.AR[7]);
state_save_register_item("tms32025", index, R.STACK[0]);
state_save_register_item("tms32025", index, R.STACK[1]);
state_save_register_item("tms32025", index, R.STACK[2]);
state_save_register_item("tms32025", index, R.STACK[3]);
state_save_register_item("tms32025", index, R.STACK[4]);
state_save_register_item("tms32025", index, R.STACK[5]);
state_save_register_item("tms32025", index, R.STACK[6]);
state_save_register_item("tms32025", index, R.STACK[7]);
state_save_register_item("tms32025", device->tag, 0, R.PC);
state_save_register_item("tms32025", device->tag, 0, R.STR0);
state_save_register_item("tms32025", device->tag, 0, R.STR1);
state_save_register_item("tms32025", device->tag, 0, R.PFC);
state_save_register_item("tms32025", device->tag, 0, R.IFR);
state_save_register_item("tms32025", device->tag, 0, R.RPTC);
state_save_register_item("tms32025", device->tag, 0, R.ACC.d);
state_save_register_item("tms32025", device->tag, 0, R.ALU.d);
state_save_register_item("tms32025", device->tag, 0, R.Preg.d);
state_save_register_item("tms32025", device->tag, 0, R.Treg);
state_save_register_item("tms32025", device->tag, 0, R.AR[0]);
state_save_register_item("tms32025", device->tag, 0, R.AR[1]);
state_save_register_item("tms32025", device->tag, 0, R.AR[2]);
state_save_register_item("tms32025", device->tag, 0, R.AR[3]);
state_save_register_item("tms32025", device->tag, 0, R.AR[4]);
state_save_register_item("tms32025", device->tag, 0, R.AR[5]);
state_save_register_item("tms32025", device->tag, 0, R.AR[6]);
state_save_register_item("tms32025", device->tag, 0, R.AR[7]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[0]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[1]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[2]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[3]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[4]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[5]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[6]);
state_save_register_item("tms32025", device->tag, 0, R.STACK[7]);
state_save_register_item("tms32025", index, R.idle);
state_save_register_item("tms32025", index, R.hold);
state_save_register_item("tms32025", index, R.external_mem_access);
state_save_register_item("tms32025", index, R.init_load_addr);
state_save_register_item("tms32025", index, R.PREVPC);
state_save_register_item("tms32025", device->tag, 0, R.idle);
state_save_register_item("tms32025", device->tag, 0, R.hold);
state_save_register_item("tms32025", device->tag, 0, R.external_mem_access);
state_save_register_item("tms32025", device->tag, 0, R.init_load_addr);
state_save_register_item("tms32025", device->tag, 0, R.PREVPC);
}
/****************************************************************************

View File

@ -429,20 +429,20 @@ static CPU_INIT( tms32031 )
tms32031.iack_w = configdata->iack_w;
}
state_save_register_item("tms32031", index, tms32031.pc);
state_save_register_item("tms32031", device->tag, 0, tms32031.pc);
for (i=0;i<36;i++)
{
sprintf(namebuf,"tms32031.r[%d]",i);
state_save_register_generic("tms32031", index, namebuf, tms32031.r[i].i8, UINT8, 8);
state_save_register_generic("tms32031", device->tag, 0, namebuf, tms32031.r[i].i8, UINT8, 8);
}
state_save_register_item("tms32031", index, tms32031.bkmask);
state_save_register_item("tms32031", index, tms32031.op);
state_save_register_item("tms32031", index, tms32031.irq_state);
state_save_register_item("tms32031", index, tms32031.delayed);
state_save_register_item("tms32031", index, tms32031.irq_pending);
state_save_register_item("tms32031", index, tms32031.mcu_mode);
state_save_register_item("tms32031", index, tms32031.is_idling);
state_save_register_item("tms32031", index, tms32031.interrupt_cycles);
state_save_register_item("tms32031", device->tag, 0, tms32031.bkmask);
state_save_register_item("tms32031", device->tag, 0, tms32031.op);
state_save_register_item("tms32031", device->tag, 0, tms32031.irq_state);
state_save_register_item("tms32031", device->tag, 0, tms32031.delayed);
state_save_register_item("tms32031", device->tag, 0, tms32031.irq_pending);
state_save_register_item("tms32031", device->tag, 0, tms32031.mcu_mode);
state_save_register_item("tms32031", device->tag, 0, tms32031.is_idling);
state_save_register_item("tms32031", device->tag, 0, tms32031.interrupt_cycles);
}

View File

@ -633,17 +633,17 @@ static CPU_INIT( tms34010 )
/* allocate the shiftreg */
tms->shiftreg = auto_malloc(SHIFTREG_SIZE);
state_save_register_item("tms34010", index, tms->pc);
state_save_register_item("tms34010", index, tms->st);
state_save_register_item("tms34010", index, tms->reset_deferred);
state_save_register_item_pointer("tms34010", index, tms->shiftreg, SHIFTREG_SIZE / 2);
state_save_register_item_array("tms34010", index, tms->IOregs);
state_save_register_item("tms34010", index, tms->convsp);
state_save_register_item("tms34010", index, tms->convdp);
state_save_register_item("tms34010", index, tms->convmp);
state_save_register_item("tms34010", index, tms->pixelshift);
state_save_register_item("tms34010", index, tms->gfxcycles);
state_save_register_item_pointer("tms34010", index, (&tms->regs[0].reg), ARRAY_LENGTH(tms->regs));
state_save_register_item("tms34010", device->tag, 0, tms->pc);
state_save_register_item("tms34010", device->tag, 0, tms->st);
state_save_register_item("tms34010", device->tag, 0, tms->reset_deferred);
state_save_register_item_pointer("tms34010", device->tag, 0, tms->shiftreg, SHIFTREG_SIZE / 2);
state_save_register_item_array("tms34010", device->tag, 0, tms->IOregs);
state_save_register_item("tms34010", device->tag, 0, tms->convsp);
state_save_register_item("tms34010", device->tag, 0, tms->convdp);
state_save_register_item("tms34010", device->tag, 0, tms->convmp);
state_save_register_item("tms34010", device->tag, 0, tms->pixelshift);
state_save_register_item("tms34010", device->tag, 0, tms->gfxcycles);
state_save_register_item_pointer("tms34010", device->tag, 0, (&tms->regs[0].reg), ARRAY_LENGTH(tms->regs));
state_save_register_postload(device->machine, tms34010_state_postload, tms);
}

View File

@ -187,8 +187,6 @@ static CPU_SET_CONTEXT( tms7000 )
static CPU_INIT( tms7000 )
{
int cpu = cpunum_get_active();
tms7000.irq_callback = irqcallback;
tms7000.device = device;
@ -196,23 +194,23 @@ static CPU_INIT( tms7000 )
memset(tms7000.rf, 0, 0x80);
/* Save register state */
state_save_register_item("tms7000", cpu, pPC);
state_save_register_item("tms7000", cpu, pSP);
state_save_register_item("tms7000", cpu, pSR);
state_save_register_item("tms7000", device->tag, 0, pPC);
state_save_register_item("tms7000", device->tag, 0, pSP);
state_save_register_item("tms7000", device->tag, 0, pSR);
/* Save Interrupt state */
state_save_register_item_array("tms7000", cpu, tms7000.irq_state);
state_save_register_item_array("tms7000", device->tag, 0, tms7000.irq_state);
/* Save register and perpherial file state */
state_save_register_item_array("tms7000", cpu, tms7000.rf);
state_save_register_item_array("tms7000", cpu, tms7000.pf);
state_save_register_item_array("tms7000", device->tag, 0, tms7000.rf);
state_save_register_item_array("tms7000", device->tag, 0, tms7000.pf);
/* Save timer state */
state_save_register_item("tms7000", cpu, tms7000.t1_prescaler);
state_save_register_item("tms7000", cpu, tms7000.t1_capture_latch);
state_save_register_item("tms7000", cpu, tms7000.t1_decrementer);
state_save_register_item("tms7000", device->tag, 0, tms7000.t1_prescaler);
state_save_register_item("tms7000", device->tag, 0, tms7000.t1_capture_latch);
state_save_register_item("tms7000", device->tag, 0, tms7000.t1_decrementer);
state_save_register_item("tms7000", cpu, tms7000.idle_state);
state_save_register_item("tms7000", device->tag, 0, tms7000.idle_state);
}
static CPU_RESET( tms7000 )

View File

@ -1203,78 +1203,78 @@ static void set_flag1(int val);
/**************************************************************************/
static void register_for_save_state(int index)
static void register_for_save_state(const device_config *device)
{
state_save_register_item("tms99xx", index, I.WP);
state_save_register_item("tms99xx", index, I.PC);
state_save_register_item("tms99xx", index, I.STATUS);
state_save_register_item("tms99xx", index, I.interrupt_pending);
state_save_register_item("tms99xx", device->tag, 0, I.WP);
state_save_register_item("tms99xx", device->tag, 0, I.PC);
state_save_register_item("tms99xx", device->tag, 0, I.STATUS);
state_save_register_item("tms99xx", device->tag, 0, I.interrupt_pending);
#if ! ((TMS99XX_MODEL == TMS9940_ID) || (TMS99XX_MODEL == TMS9985_ID))
state_save_register_item("tms99xx", index, I.load_state);
state_save_register_item("tms99xx", device->tag, 0, I.load_state);
#endif
#if (TMS99XX_MODEL == TI990_10_ID) || (TMS99XX_MODEL == TMS9900_ID) || (TMS99XX_MODEL == TMS9980_ID)
state_save_register_item("tms99xx", index, I.irq_level);
state_save_register_item("tms99xx", index, I.irq_state);
state_save_register_item("tms99xx", device->tag, 0, I.irq_level);
state_save_register_item("tms99xx", device->tag, 0, I.irq_state);
#elif (TMS99XX_MODEL == TMS9995_ID)
state_save_register_item("tms99xx", index, I.irq_level);
state_save_register_item("tms99xx", index, I.int_state);
state_save_register_item("tms99xx", index, I.int_latch);
state_save_register_item("tms99xx", device->tag, 0, I.irq_level);
state_save_register_item("tms99xx", device->tag, 0, I.int_state);
state_save_register_item("tms99xx", device->tag, 0, I.int_latch);
#endif
state_save_register_item("tms99xx", index, I.IDLE);
state_save_register_item("tms99xx", device->tag, 0, I.IDLE);
#if HAS_MAPPING
state_save_register_item("tms99xx", index, I.mapping_on);
state_save_register_item_array("tms99xx", index, I.map_files[0].L);
state_save_register_item_array("tms99xx", index, I.map_files[0].B);
state_save_register_item_array("tms99xx", index, I.map_files[0].limit);
state_save_register_item_array("tms99xx", index, I.map_files[0].bias);
state_save_register_item_array("tms99xx", index, I.map_files[1].L);
state_save_register_item_array("tms99xx", index, I.map_files[1].B);
state_save_register_item_array("tms99xx", index, I.map_files[1].limit);
state_save_register_item_array("tms99xx", index, I.map_files[1].bias);
state_save_register_item_array("tms99xx", index, I.map_files[2].L);
state_save_register_item_array("tms99xx", index, I.map_files[2].B);
state_save_register_item_array("tms99xx", index, I.map_files[2].limit);
state_save_register_item_array("tms99xx", index, I.map_files[2].bias);
state_save_register_item("tms99xx", index, I.cur_map);
state_save_register_item("tms99xx", index, I.cur_src_map);
state_save_register_item("tms99xx", index, I.cur_dst_map);
state_save_register_item("tms99xx", device->tag, 0, I.mapping_on);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[0].L);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[0].B);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[0].limit);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[0].bias);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[1].L);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[1].B);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[1].limit);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[1].bias);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[2].L);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[2].B);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[2].limit);
state_save_register_item_array("tms99xx", device->tag, 0, I.map_files[2].bias);
state_save_register_item("tms99xx", device->tag, 0, I.cur_map);
state_save_register_item("tms99xx", device->tag, 0, I.cur_src_map);
state_save_register_item("tms99xx", device->tag, 0, I.cur_dst_map);
#if (TMS99XX_MODEL == TI990_10_ID)
state_save_register_item("tms99xx", index, I.reset_maperr);
state_save_register_item("tms99xx", index, I.mapper_address_latch);
state_save_register_item("tms99xx", index, I.mapper_cru_read_register);
state_save_register_item("tms99xx", index, I.diaglat);
state_save_register_item_array("tms99xx", index, I.latch_control);
state_save_register_item("tms99xx", device->tag, 0, I.reset_maperr);
state_save_register_item("tms99xx", device->tag, 0, I.mapper_address_latch);
state_save_register_item("tms99xx", device->tag, 0, I.mapper_cru_read_register);
state_save_register_item("tms99xx", device->tag, 0, I.diaglat);
state_save_register_item_array("tms99xx", device->tag, 0, I.latch_control);
#endif
#endif
#if (TMS99XX_MODEL == TI990_10_ID)
state_save_register_item("tms99xx", index, I.error_interrupt_register);
state_save_register_item("tms99xx", device->tag, 0, I.error_interrupt_register);
#endif
#if (TMS99XX_MODEL == TMS9985_ID) || (TMS99XX_MODEL == TMS9995_ID)
state_save_register_item_array("tms99xx", index, I.RAM);
state_save_register_item_array("tms99xx", device->tag, 0, I.RAM);
#endif
#if (TMS99XX_MODEL == TMS9940_ID) || (TMS99XX_MODEL == TMS9985_ID) || (TMS99XX_MODEL == TMS9995_ID)
state_save_register_item("tms99xx", index, I.decrementer_enabled);
state_save_register_item("tms99xx", index, I.decrementer_interval);
state_save_register_item("tms99xx", index, I.decrementer_count);
state_save_register_item("tms99xx", device->tag, 0, I.decrementer_enabled);
state_save_register_item("tms99xx", device->tag, 0, I.decrementer_interval);
state_save_register_item("tms99xx", device->tag, 0, I.decrementer_count);
#endif
#if (TMS99XX_MODEL == TMS9995_ID)
state_save_register_item("tms99xx", index, I.flag);
state_save_register_item("tms99xx", index, I.MID_flag);
state_save_register_item("tms99xx", index, I.memory_wait_states_byte);
state_save_register_item("tms99xx", index, I.memory_wait_states_word);
state_save_register_item("tms99xx", index, I.is_mp9537);
state_save_register_item("tms99xx", device->tag, 0, I.flag);
state_save_register_item("tms99xx", device->tag, 0, I.MID_flag);
state_save_register_item("tms99xx", device->tag, 0, I.memory_wait_states_byte);
state_save_register_item("tms99xx", device->tag, 0, I.memory_wait_states_word);
state_save_register_item("tms99xx", device->tag, 0, I.is_mp9537);
#endif
state_save_register_item("tms99xx", index, I.disable_interrupt_recognition);
state_save_register_item("tms99xx", device->tag, 0, I.disable_interrupt_recognition);
}
@ -1282,7 +1282,7 @@ static CPU_INIT( tms99xx )
{
const TMS99XX_RESET_PARAM *param = (const TMS99XX_RESET_PARAM *) device->static_config;
register_for_save_state(index);
register_for_save_state(device);
I.irq_level = 16;
I.irq_callback = irqcallback;

View File

@ -1535,68 +1535,68 @@ static CPU_INIT( upd7810 )
upd7810.irq_callback = irqcallback;
upd7810.device = device;
state_save_register_item("upd7810", index, upd7810.ppc.w.l);
state_save_register_item("upd7810", index, upd7810.pc.w.l);
state_save_register_item("upd7810", index, upd7810.sp.w.l);
state_save_register_item("upd7810", index, upd7810.psw);
state_save_register_item("upd7810", index, upd7810.op);
state_save_register_item("upd7810", index, upd7810.op2);
state_save_register_item("upd7810", index, upd7810.iff);
state_save_register_item("upd7810", index, upd7810.ea.w.l);
state_save_register_item("upd7810", index, upd7810.va.w.l);
state_save_register_item("upd7810", index, upd7810.bc.w.l);
state_save_register_item("upd7810", index, upd7810.de.w.l);
state_save_register_item("upd7810", index, upd7810.hl.w.l);
state_save_register_item("upd7810", index, upd7810.ea2.w.l);
state_save_register_item("upd7810", index, upd7810.va2.w.l);
state_save_register_item("upd7810", index, upd7810.bc2.w.l);
state_save_register_item("upd7810", index, upd7810.de2.w.l);
state_save_register_item("upd7810", index, upd7810.hl2.w.l);
state_save_register_item("upd7810", index, upd7810.cnt.d);
state_save_register_item("upd7810", index, upd7810.tm.d);
state_save_register_item("upd7810", index, upd7810.ecnt.d);
state_save_register_item("upd7810", index, upd7810.etm.d);
state_save_register_item("upd7810", index, upd7810.ma);
state_save_register_item("upd7810", index, upd7810.mb);
state_save_register_item("upd7810", index, upd7810.mcc);
state_save_register_item("upd7810", index, upd7810.mc);
state_save_register_item("upd7810", index, upd7810.mm);
state_save_register_item("upd7810", index, upd7810.mf);
state_save_register_item("upd7810", index, upd7810.tmm);
state_save_register_item("upd7810", index, upd7810.etmm);
state_save_register_item("upd7810", index, upd7810.eom);
state_save_register_item("upd7810", index, upd7810.sml);
state_save_register_item("upd7810", index, upd7810.smh);
state_save_register_item("upd7810", index, upd7810.anm);
state_save_register_item("upd7810", index, upd7810.mkl);
state_save_register_item("upd7810", index, upd7810.mkh);
state_save_register_item("upd7810", index, upd7810.zcm);
state_save_register_item("upd7810", index, upd7810.pa_out);
state_save_register_item("upd7810", index, upd7810.pb_out);
state_save_register_item("upd7810", index, upd7810.pc_out);
state_save_register_item("upd7810", index, upd7810.pd_out);
state_save_register_item("upd7810", index, upd7810.pf_out);
state_save_register_item("upd7810", index, upd7810.cr0);
state_save_register_item("upd7810", index, upd7810.cr1);
state_save_register_item("upd7810", index, upd7810.cr2);
state_save_register_item("upd7810", index, upd7810.cr3);
state_save_register_item("upd7810", index, upd7810.txb);
state_save_register_item("upd7810", index, upd7810.rxb);
state_save_register_item("upd7810", index, upd7810.txd);
state_save_register_item("upd7810", index, upd7810.rxd);
state_save_register_item("upd7810", index, upd7810.sck);
state_save_register_item("upd7810", index, upd7810.ti);
state_save_register_item("upd7810", index, upd7810.to);
state_save_register_item("upd7810", index, upd7810.ci);
state_save_register_item("upd7810", index, upd7810.co0);
state_save_register_item("upd7810", index, upd7810.co1);
state_save_register_item("upd7810", index, upd7810.irr);
state_save_register_item("upd7810", index, upd7810.itf);
state_save_register_item("upd7810", index, upd7810.ovc0);
state_save_register_item("upd7810", index, upd7810.ovc1);
state_save_register_item("upd7810", index, upd7810.ovcf);
state_save_register_item("upd7810", index, upd7810.ovcs);
state_save_register_item("upd7810", index, upd7810.edges);
state_save_register_item("upd7810", device->tag, 0, upd7810.ppc.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.pc.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.sp.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.psw);
state_save_register_item("upd7810", device->tag, 0, upd7810.op);
state_save_register_item("upd7810", device->tag, 0, upd7810.op2);
state_save_register_item("upd7810", device->tag, 0, upd7810.iff);
state_save_register_item("upd7810", device->tag, 0, upd7810.ea.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.va.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.bc.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.de.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.hl.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.ea2.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.va2.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.bc2.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.de2.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.hl2.w.l);
state_save_register_item("upd7810", device->tag, 0, upd7810.cnt.d);
state_save_register_item("upd7810", device->tag, 0, upd7810.tm.d);
state_save_register_item("upd7810", device->tag, 0, upd7810.ecnt.d);
state_save_register_item("upd7810", device->tag, 0, upd7810.etm.d);
state_save_register_item("upd7810", device->tag, 0, upd7810.ma);
state_save_register_item("upd7810", device->tag, 0, upd7810.mb);
state_save_register_item("upd7810", device->tag, 0, upd7810.mcc);
state_save_register_item("upd7810", device->tag, 0, upd7810.mc);
state_save_register_item("upd7810", device->tag, 0, upd7810.mm);
state_save_register_item("upd7810", device->tag, 0, upd7810.mf);
state_save_register_item("upd7810", device->tag, 0, upd7810.tmm);
state_save_register_item("upd7810", device->tag, 0, upd7810.etmm);
state_save_register_item("upd7810", device->tag, 0, upd7810.eom);
state_save_register_item("upd7810", device->tag, 0, upd7810.sml);
state_save_register_item("upd7810", device->tag, 0, upd7810.smh);
state_save_register_item("upd7810", device->tag, 0, upd7810.anm);
state_save_register_item("upd7810", device->tag, 0, upd7810.mkl);
state_save_register_item("upd7810", device->tag, 0, upd7810.mkh);
state_save_register_item("upd7810", device->tag, 0, upd7810.zcm);
state_save_register_item("upd7810", device->tag, 0, upd7810.pa_out);
state_save_register_item("upd7810", device->tag, 0, upd7810.pb_out);
state_save_register_item("upd7810", device->tag, 0, upd7810.pc_out);
state_save_register_item("upd7810", device->tag, 0, upd7810.pd_out);
state_save_register_item("upd7810", device->tag, 0, upd7810.pf_out);
state_save_register_item("upd7810", device->tag, 0, upd7810.cr0);
state_save_register_item("upd7810", device->tag, 0, upd7810.cr1);
state_save_register_item("upd7810", device->tag, 0, upd7810.cr2);
state_save_register_item("upd7810", device->tag, 0, upd7810.cr3);
state_save_register_item("upd7810", device->tag, 0, upd7810.txb);
state_save_register_item("upd7810", device->tag, 0, upd7810.rxb);
state_save_register_item("upd7810", device->tag, 0, upd7810.txd);
state_save_register_item("upd7810", device->tag, 0, upd7810.rxd);
state_save_register_item("upd7810", device->tag, 0, upd7810.sck);
state_save_register_item("upd7810", device->tag, 0, upd7810.ti);
state_save_register_item("upd7810", device->tag, 0, upd7810.to);
state_save_register_item("upd7810", device->tag, 0, upd7810.ci);
state_save_register_item("upd7810", device->tag, 0, upd7810.co0);
state_save_register_item("upd7810", device->tag, 0, upd7810.co1);
state_save_register_item("upd7810", device->tag, 0, upd7810.irr);
state_save_register_item("upd7810", device->tag, 0, upd7810.itf);
state_save_register_item("upd7810", device->tag, 0, upd7810.ovc0);
state_save_register_item("upd7810", device->tag, 0, upd7810.ovc1);
state_save_register_item("upd7810", device->tag, 0, upd7810.ovcf);
state_save_register_item("upd7810", device->tag, 0, upd7810.ovcs);
state_save_register_item("upd7810", device->tag, 0, upd7810.edges);
}
#include "7810tbl.c"

View File

@ -928,24 +928,24 @@ static void nec_init(const device_config *device, int index, int clock, cpu_irq_
{
static const char *const names[]={"V20","V30","V33","V30MZ"};
state_save_register_item_array(names[type], index, I.regs.w);
state_save_register_item_array(names[type], index, I.sregs);
state_save_register_item_array(names[type], device->tag, 0, I.regs.w);
state_save_register_item_array(names[type], device->tag, 0, I.sregs);
state_save_register_item(names[type], index, I.ip);
state_save_register_item(names[type], index, I.TF);
state_save_register_item(names[type], index, I.IF);
state_save_register_item(names[type], index, I.DF);
state_save_register_item(names[type], index, I.MF);
state_save_register_item(names[type], index, I.SignVal);
state_save_register_item(names[type], index, I.int_vector);
state_save_register_item(names[type], index, I.pending_irq);
state_save_register_item(names[type], index, I.nmi_state);
state_save_register_item(names[type], index, I.irq_state);
state_save_register_item(names[type], index, I.AuxVal);
state_save_register_item(names[type], index, I.OverVal);
state_save_register_item(names[type], index, I.ZeroVal);
state_save_register_item(names[type], index, I.CarryVal);
state_save_register_item(names[type], index, I.ParityVal);
state_save_register_item(names[type], device->tag, 0, I.ip);
state_save_register_item(names[type], device->tag, 0, I.TF);
state_save_register_item(names[type], device->tag, 0, I.IF);
state_save_register_item(names[type], device->tag, 0, I.DF);
state_save_register_item(names[type], device->tag, 0, I.MF);
state_save_register_item(names[type], device->tag, 0, I.SignVal);
state_save_register_item(names[type], device->tag, 0, I.int_vector);
state_save_register_item(names[type], device->tag, 0, I.pending_irq);
state_save_register_item(names[type], device->tag, 0, I.nmi_state);
state_save_register_item(names[type], device->tag, 0, I.irq_state);
state_save_register_item(names[type], device->tag, 0, I.AuxVal);
state_save_register_item(names[type], device->tag, 0, I.OverVal);
state_save_register_item(names[type], device->tag, 0, I.ZeroVal);
state_save_register_item(names[type], device->tag, 0, I.CarryVal);
state_save_register_item(names[type], device->tag, 0, I.ParityVal);
I.irq_callback = irqcallback;
I.device = device;

View File

@ -308,14 +308,14 @@ static void base_init(const char *type, const device_config *device, int index,
v60.irq_line = CLEAR_LINE;
v60.nmi_line = CLEAR_LINE;
state_save_register_item_array(type, index, v60.reg);
state_save_register_item(type, index, v60.irq_line);
state_save_register_item(type, index, v60.nmi_line);
state_save_register_item(type, index, v60.PPC);
state_save_register_item(type, index, _CY);
state_save_register_item(type, index, _OV);
state_save_register_item(type, index, _S);
state_save_register_item(type, index, _Z);
state_save_register_item_array(type, device->tag, 0, v60.reg);
state_save_register_item(type, device->tag, 0, v60.irq_line);
state_save_register_item(type, device->tag, 0, v60.nmi_line);
state_save_register_item(type, device->tag, 0, v60.PPC);
state_save_register_item(type, device->tag, 0, _CY);
state_save_register_item(type, device->tag, 0, _OV);
state_save_register_item(type, device->tag, 0, _S);
state_save_register_item(type, device->tag, 0, _Z);
}
static CPU_INIT( v60 )

View File

@ -953,10 +953,10 @@ static CPU_INIT( v810 )
v810.irq_cb = irqcallback;
v810.device = device;
state_save_register_item_array("v810", index, v810.reg);
state_save_register_item("v810", index, v810.irq_line);
state_save_register_item("v810", index, v810.nmi_line);
state_save_register_item("v810", index, v810.PPC);
state_save_register_item_array("v810", device->tag, 0, v810.reg);
state_save_register_item("v810", device->tag, 0, v810.irq_line);
state_save_register_item("v810", device->tag, 0, v810.nmi_line);
state_save_register_item("v810", device->tag, 0, v810.PPC);
}

View File

@ -57,7 +57,6 @@ struct _vtlb_state
vtlb_state *vtlb_alloc(const device_config *cpu, int space, int fixed_entries, int dynamic_entries)
{
char tempname[100];
vtlb_state *vtlb;
/* allocate memory for the core structure */
@ -78,24 +77,22 @@ vtlb_state *vtlb_alloc(const device_config *cpu, int space, int fixed_entries, i
assert(vtlb->translate != NULL);
assert(vtlb->addrwidth > vtlb->pageshift);
state_save_combine_module_and_tag(tempname, "vtlb", cpu->tag);
/* allocate the entry array */
vtlb->live = malloc_or_die(sizeof(vtlb->live[0]) * (fixed_entries + dynamic_entries));
memset(vtlb->live, 0, sizeof(vtlb->live[0]) * (fixed_entries + dynamic_entries));
state_save_register_item_pointer(tempname, space, vtlb->live, fixed_entries + dynamic_entries);
state_save_register_item_pointer("vtlb", cpu->tag, space, vtlb->live, fixed_entries + dynamic_entries);
/* allocate the lookup table */
vtlb->table = malloc_or_die(sizeof(vtlb->table[0]) << (vtlb->addrwidth - vtlb->pageshift));
memset(vtlb->table, 0, sizeof(vtlb->table[0]) << (vtlb->addrwidth - vtlb->pageshift));
state_save_register_item_pointer(tempname, space, vtlb->table, 1 << (vtlb->addrwidth - vtlb->pageshift));
state_save_register_item_pointer("vtlb", cpu->tag, space, vtlb->table, 1 << (vtlb->addrwidth - vtlb->pageshift));
/* allocate the fixed page count array */
if (fixed_entries > 0)
{
vtlb->fixedpages = malloc_or_die(sizeof(vtlb->fixedpages[0]) * fixed_entries);
memset(vtlb->fixedpages, 0, sizeof(vtlb->fixedpages[0]) * fixed_entries);
state_save_register_item_pointer(tempname, space, vtlb->fixedpages, fixed_entries);
state_save_register_item_pointer("vtlb", cpu->tag, space, vtlb->fixedpages, fixed_entries);
}
return vtlb;
}

View File

@ -1905,31 +1905,31 @@ static CPU_INIT( z180 )
Z180.irq_callback = irqcallback;
Z180.device = device;
state_save_register_item("z180", index, Z180.AF.w.l);
state_save_register_item("z180", index, Z180.BC.w.l);
state_save_register_item("z180", index, Z180.DE.w.l);
state_save_register_item("z180", index, Z180.HL.w.l);
state_save_register_item("z180", index, Z180.IX.w.l);
state_save_register_item("z180", index, Z180.IY.w.l);
state_save_register_item("z180", index, Z180.PC.w.l);
state_save_register_item("z180", index, Z180.SP.w.l);
state_save_register_item("z180", index, Z180.AF2.w.l);
state_save_register_item("z180", index, Z180.BC2.w.l);
state_save_register_item("z180", index, Z180.DE2.w.l);
state_save_register_item("z180", index, Z180.HL2.w.l);
state_save_register_item("z180", index, Z180.R);
state_save_register_item("z180", index, Z180.R2);
state_save_register_item("z180", index, Z180.IFF1);
state_save_register_item("z180", index, Z180.IFF2);
state_save_register_item("z180", index, Z180.HALT);
state_save_register_item("z180", index, Z180.IM);
state_save_register_item("z180", index, Z180.I);
state_save_register_item("z180", index, Z180.nmi_state);
state_save_register_item("z180", index, Z180.nmi_pending);
state_save_register_item("z180", index, Z180.irq_state[0]);
state_save_register_item("z180", index, Z180.irq_state[1]);
state_save_register_item("z180", index, Z180.irq_state[2]);
state_save_register_item("z180", index, Z180.after_EI);
state_save_register_item("z180", device->tag, 0, Z180.AF.w.l);
state_save_register_item("z180", device->tag, 0, Z180.BC.w.l);
state_save_register_item("z180", device->tag, 0, Z180.DE.w.l);
state_save_register_item("z180", device->tag, 0, Z180.HL.w.l);
state_save_register_item("z180", device->tag, 0, Z180.IX.w.l);
state_save_register_item("z180", device->tag, 0, Z180.IY.w.l);
state_save_register_item("z180", device->tag, 0, Z180.PC.w.l);
state_save_register_item("z180", device->tag, 0, Z180.SP.w.l);
state_save_register_item("z180", device->tag, 0, Z180.AF2.w.l);
state_save_register_item("z180", device->tag, 0, Z180.BC2.w.l);
state_save_register_item("z180", device->tag, 0, Z180.DE2.w.l);
state_save_register_item("z180", device->tag, 0, Z180.HL2.w.l);
state_save_register_item("z180", device->tag, 0, Z180.R);
state_save_register_item("z180", device->tag, 0, Z180.R2);
state_save_register_item("z180", device->tag, 0, Z180.IFF1);
state_save_register_item("z180", device->tag, 0, Z180.IFF2);
state_save_register_item("z180", device->tag, 0, Z180.HALT);
state_save_register_item("z180", device->tag, 0, Z180.IM);
state_save_register_item("z180", device->tag, 0, Z180.I);
state_save_register_item("z180", device->tag, 0, Z180.nmi_state);
state_save_register_item("z180", device->tag, 0, Z180.nmi_pending);
state_save_register_item("z180", device->tag, 0, Z180.irq_state[0]);
state_save_register_item("z180", device->tag, 0, Z180.irq_state[1]);
state_save_register_item("z180", device->tag, 0, Z180.irq_state[2]);
state_save_register_item("z180", device->tag, 0, Z180.after_EI);
}
/****************************************************************************

View File

@ -3518,31 +3518,31 @@ static CPU_INIT( z80 )
if( (i & 0x0f) == 0x0f ) SZHV_dec[i] |= HF;
}
state_save_register_item("z80", index, z80->prvpc.w.l);
state_save_register_item("z80", index, z80->pc.w.l);
state_save_register_item("z80", index, z80->sp.w.l);
state_save_register_item("z80", index, z80->af.w.l);
state_save_register_item("z80", index, z80->bc.w.l);
state_save_register_item("z80", index, z80->de.w.l);
state_save_register_item("z80", index, z80->hl.w.l);
state_save_register_item("z80", index, z80->ix.w.l);
state_save_register_item("z80", index, z80->iy.w.l);
state_save_register_item("z80", index, z80->memptr.w.l);
state_save_register_item("z80", index, z80->af2.w.l);
state_save_register_item("z80", index, z80->bc2.w.l);
state_save_register_item("z80", index, z80->de2.w.l);
state_save_register_item("z80", index, z80->hl2.w.l);
state_save_register_item("z80", index, z80->r);
state_save_register_item("z80", index, z80->r2);
state_save_register_item("z80", index, z80->iff1);
state_save_register_item("z80", index, z80->iff2);
state_save_register_item("z80", index, z80->halt);
state_save_register_item("z80", index, z80->im);
state_save_register_item("z80", index, z80->i);
state_save_register_item("z80", index, z80->nmi_state);
state_save_register_item("z80", index, z80->nmi_pending);
state_save_register_item("z80", index, z80->irq_state);
state_save_register_item("z80", index, z80->after_ei);
state_save_register_item("z80", device->tag, 0, z80->prvpc.w.l);
state_save_register_item("z80", device->tag, 0, z80->pc.w.l);
state_save_register_item("z80", device->tag, 0, z80->sp.w.l);
state_save_register_item("z80", device->tag, 0, z80->af.w.l);
state_save_register_item("z80", device->tag, 0, z80->bc.w.l);
state_save_register_item("z80", device->tag, 0, z80->de.w.l);
state_save_register_item("z80", device->tag, 0, z80->hl.w.l);
state_save_register_item("z80", device->tag, 0, z80->ix.w.l);
state_save_register_item("z80", device->tag, 0, z80->iy.w.l);
state_save_register_item("z80", device->tag, 0, z80->memptr.w.l);
state_save_register_item("z80", device->tag, 0, z80->af2.w.l);
state_save_register_item("z80", device->tag, 0, z80->bc2.w.l);
state_save_register_item("z80", device->tag, 0, z80->de2.w.l);
state_save_register_item("z80", device->tag, 0, z80->hl2.w.l);
state_save_register_item("z80", device->tag, 0, z80->r);
state_save_register_item("z80", device->tag, 0, z80->r2);
state_save_register_item("z80", device->tag, 0, z80->iff1);
state_save_register_item("z80", device->tag, 0, z80->iff2);
state_save_register_item("z80", device->tag, 0, z80->halt);
state_save_register_item("z80", device->tag, 0, z80->im);
state_save_register_item("z80", device->tag, 0, z80->i);
state_save_register_item("z80", device->tag, 0, z80->nmi_state);
state_save_register_item("z80", device->tag, 0, z80->nmi_pending);
state_save_register_item("z80", device->tag, 0, z80->irq_state);
state_save_register_item("z80", device->tag, 0, z80->after_ei);
/* Reset registers to their initial values */
memset(z80, 0, sizeof(*z80));

View File

@ -1376,27 +1376,26 @@ static void register_save_states(const device_config *device)
cpu_class_data *classdata = device->classtoken;
int line;
state_save_register_item("cpu", classdata->header.index, classdata->suspend);
state_save_register_item("cpu", classdata->header.index, classdata->nextsuspend);
state_save_register_item("cpu", classdata->header.index, classdata->eatcycles);
state_save_register_item("cpu", classdata->header.index, classdata->nexteatcycles);
state_save_register_item("cpu", classdata->header.index, classdata->trigger);
state_save_register_item("cpu", device->tag, 0, classdata->suspend);
state_save_register_item("cpu", device->tag, 0, classdata->nextsuspend);
state_save_register_item("cpu", device->tag, 0, classdata->eatcycles);
state_save_register_item("cpu", device->tag, 0, classdata->nexteatcycles);
state_save_register_item("cpu", device->tag, 0, classdata->trigger);
state_save_register_item("cpu", classdata->header.index, classdata->iloops);
state_save_register_item("cpu", device->tag, 0, classdata->iloops);
state_save_register_item("cpu", classdata->header.index, classdata->totalcycles);
state_save_register_item("cpu", classdata->header.index, classdata->localtime.seconds);
state_save_register_item("cpu", classdata->header.index, classdata->localtime.attoseconds);
state_save_register_item("cpu", classdata->header.index, classdata->clock);
state_save_register_item("cpu", classdata->header.index, classdata->clockscale);
state_save_register_item("cpu", device->tag, 0, classdata->totalcycles);
state_save_register_item("cpu", device->tag, 0, classdata->localtime.seconds);
state_save_register_item("cpu", device->tag, 0, classdata->localtime.attoseconds);
state_save_register_item("cpu", device->tag, 0, classdata->clock);
state_save_register_item("cpu", device->tag, 0, classdata->clockscale);
for (line = 0; line < ARRAY_LENGTH(classdata->input); line++)
{
cpu_input_data *inputline = &classdata->input[line];
int index = classdata->header.index * ARRAY_LENGTH(classdata->input) + line;
state_save_register_item("cpu", index, inputline->vector);
state_save_register_item("cpu", index, inputline->curvector);
state_save_register_item("cpu", index, inputline->curstate);
state_save_register_item("cpu", device->tag, line, inputline->vector);
state_save_register_item("cpu", device->tag, line, inputline->curvector);
state_save_register_item("cpu", device->tag, line, inputline->curstate);
}
}

View File

@ -187,38 +187,38 @@ void cia_config(running_machine *machine, int which, const cia6526_interface *in
add_exit_callback(machine, cia_exit);
/* state save support */
state_save_register_item("6526cia", which, cia->port[0].ddr);
state_save_register_item("6526cia", which, cia->port[0].latch);
state_save_register_item("6526cia", which, cia->port[0].in);
state_save_register_item("6526cia", which, cia->port[0].out);
state_save_register_item("6526cia", which, cia->port[0].mask_value);
state_save_register_item("6526cia", which, cia->port[1].ddr);
state_save_register_item("6526cia", which, cia->port[1].latch);
state_save_register_item("6526cia", which, cia->port[1].in);
state_save_register_item("6526cia", which, cia->port[1].out);
state_save_register_item("6526cia", which, cia->port[1].mask_value);
state_save_register_item("6526cia", which, cia->timer[0].latch);
state_save_register_item("6526cia", which, cia->timer[0].count);
state_save_register_item("6526cia", which, cia->timer[0].mode);
state_save_register_item("6526cia", which, cia->timer[0].irq);
state_save_register_item("6526cia", which, cia->timer[1].latch);
state_save_register_item("6526cia", which, cia->timer[1].count);
state_save_register_item("6526cia", which, cia->timer[1].mode);
state_save_register_item("6526cia", which, cia->timer[1].irq);
state_save_register_item("6526cia", which, cia->tod);
state_save_register_item("6526cia", which, cia->tod_latch);
state_save_register_item("6526cia", which, cia->tod_latched);
state_save_register_item("6526cia", which, cia->tod_running);
state_save_register_item("6526cia", which, cia->alarm);
state_save_register_item("6526cia", which, cia->icr);
state_save_register_item("6526cia", which, cia->ics);
state_save_register_item("6526cia", which, cia->irq);
state_save_register_item("6526cia", which, cia->loaded);
state_save_register_item("6526cia", which, cia->sdr);
state_save_register_item("6526cia", which, cia->sp);
state_save_register_item("6526cia", which, cia->cnt);
state_save_register_item("6526cia", which, cia->shift);
state_save_register_item("6526cia", which, cia->serial);
state_save_register_item("6526cia", NULL, which, cia->port[0].ddr);
state_save_register_item("6526cia", NULL, which, cia->port[0].latch);
state_save_register_item("6526cia", NULL, which, cia->port[0].in);
state_save_register_item("6526cia", NULL, which, cia->port[0].out);
state_save_register_item("6526cia", NULL, which, cia->port[0].mask_value);
state_save_register_item("6526cia", NULL, which, cia->port[1].ddr);
state_save_register_item("6526cia", NULL, which, cia->port[1].latch);
state_save_register_item("6526cia", NULL, which, cia->port[1].in);
state_save_register_item("6526cia", NULL, which, cia->port[1].out);
state_save_register_item("6526cia", NULL, which, cia->port[1].mask_value);
state_save_register_item("6526cia", NULL, which, cia->timer[0].latch);
state_save_register_item("6526cia", NULL, which, cia->timer[0].count);
state_save_register_item("6526cia", NULL, which, cia->timer[0].mode);
state_save_register_item("6526cia", NULL, which, cia->timer[0].irq);
state_save_register_item("6526cia", NULL, which, cia->timer[1].latch);
state_save_register_item("6526cia", NULL, which, cia->timer[1].count);
state_save_register_item("6526cia", NULL, which, cia->timer[1].mode);
state_save_register_item("6526cia", NULL, which, cia->timer[1].irq);
state_save_register_item("6526cia", NULL, which, cia->tod);
state_save_register_item("6526cia", NULL, which, cia->tod_latch);
state_save_register_item("6526cia", NULL, which, cia->tod_latched);
state_save_register_item("6526cia", NULL, which, cia->tod_running);
state_save_register_item("6526cia", NULL, which, cia->alarm);
state_save_register_item("6526cia", NULL, which, cia->icr);
state_save_register_item("6526cia", NULL, which, cia->ics);
state_save_register_item("6526cia", NULL, which, cia->irq);
state_save_register_item("6526cia", NULL, which, cia->loaded);
state_save_register_item("6526cia", NULL, which, cia->sdr);
state_save_register_item("6526cia", NULL, which, cia->sp);
state_save_register_item("6526cia", NULL, which, cia->cnt);
state_save_register_item("6526cia", NULL, which, cia->shift);
state_save_register_item("6526cia", NULL, which, cia->serial);
}
void cia_set_port_mask_value(int which, int port, int data)

View File

@ -428,7 +428,6 @@ static DEVICE_START( riot6532 )
{
const riot6532_config *config = device->inline_config;
riot6532_state *riot = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(device != NULL);
@ -450,23 +449,21 @@ static DEVICE_START( riot6532 )
riot->timer = timer_alloc(timer_end_callback, (void *)device);
/* register for save states */
state_save_combine_module_and_tag(unique_tag, "riot6532", device->tag);
state_save_register_item("riot6532", device->tag, 0, riot->port[0].in);
state_save_register_item("riot6532", device->tag, 0, riot->port[0].out);
state_save_register_item("riot6532", device->tag, 0, riot->port[0].ddr);
state_save_register_item("riot6532", device->tag, 0, riot->port[1].in);
state_save_register_item("riot6532", device->tag, 0, riot->port[1].out);
state_save_register_item("riot6532", device->tag, 0, riot->port[1].ddr);
state_save_register_item(unique_tag, 0, riot->port[0].in);
state_save_register_item(unique_tag, 0, riot->port[0].out);
state_save_register_item(unique_tag, 0, riot->port[0].ddr);
state_save_register_item(unique_tag, 0, riot->port[1].in);
state_save_register_item(unique_tag, 0, riot->port[1].out);
state_save_register_item(unique_tag, 0, riot->port[1].ddr);
state_save_register_item("riot6532", device->tag, 0, riot->irqstate);
state_save_register_item("riot6532", device->tag, 0, riot->irqenable);
state_save_register_item(unique_tag, 0, riot->irqstate);
state_save_register_item(unique_tag, 0, riot->irqenable);
state_save_register_item("riot6532", device->tag, 0, riot->pa7dir);
state_save_register_item("riot6532", device->tag, 0, riot->pa7prev);
state_save_register_item(unique_tag, 0, riot->pa7dir);
state_save_register_item(unique_tag, 0, riot->pa7prev);
state_save_register_item(unique_tag, 0, riot->timershift);
state_save_register_item(unique_tag, 0, riot->timerstate);
state_save_register_item("riot6532", device->tag, 0, riot->timershift);
state_save_register_item("riot6532", device->tag, 0, riot->timerstate);
return DEVICE_START_OK;
}

View File

@ -127,38 +127,38 @@ void pia_config(int which, const pia6821_interface *intf)
p->intf = intf;
state_save_register_item("6821pia", which, p->in_a);
state_save_register_item("6821pia", which, p->in_ca1);
state_save_register_item("6821pia", which, p->in_ca2);
state_save_register_item("6821pia", which, p->out_a);
state_save_register_item("6821pia", which, p->out_ca2);
state_save_register_item("6821pia", which, p->port_a_z_mask);
state_save_register_item("6821pia", which, p->ddr_a);
state_save_register_item("6821pia", which, p->ctl_a);
state_save_register_item("6821pia", which, p->irq_a1);
state_save_register_item("6821pia", which, p->irq_a2);
state_save_register_item("6821pia", which, p->irq_a_state);
state_save_register_item("6821pia", which, p->in_b);
state_save_register_item("6821pia", which, p->in_cb1);
state_save_register_item("6821pia", which, p->in_cb2);
state_save_register_item("6821pia", which, p->out_b);
state_save_register_item("6821pia", which, p->out_cb2);
state_save_register_item("6821pia", which, p->last_out_cb2_z);
state_save_register_item("6821pia", which, p->ddr_b);
state_save_register_item("6821pia", which, p->ctl_b);
state_save_register_item("6821pia", which, p->irq_b1);
state_save_register_item("6821pia", which, p->irq_b2);
state_save_register_item("6821pia", which, p->irq_b_state);
state_save_register_item("6821pia", which, p->in_a_pushed);
state_save_register_item("6821pia", which, p->out_a_needs_pulled);
state_save_register_item("6821pia", which, p->in_ca1_pushed);
state_save_register_item("6821pia", which, p->in_ca2_pushed);
state_save_register_item("6821pia", which, p->out_ca2_needs_pulled);
state_save_register_item("6821pia", which, p->in_b_pushed);
state_save_register_item("6821pia", which, p->out_b_needs_pulled);
state_save_register_item("6821pia", which, p->in_cb1_pushed);
state_save_register_item("6821pia", which, p->in_cb2_pushed);
state_save_register_item("6821pia", which, p->out_cb2_needs_pulled);
state_save_register_item("6821pia", NULL, which, p->in_a);
state_save_register_item("6821pia", NULL, which, p->in_ca1);
state_save_register_item("6821pia", NULL, which, p->in_ca2);
state_save_register_item("6821pia", NULL, which, p->out_a);
state_save_register_item("6821pia", NULL, which, p->out_ca2);
state_save_register_item("6821pia", NULL, which, p->port_a_z_mask);
state_save_register_item("6821pia", NULL, which, p->ddr_a);
state_save_register_item("6821pia", NULL, which, p->ctl_a);
state_save_register_item("6821pia", NULL, which, p->irq_a1);
state_save_register_item("6821pia", NULL, which, p->irq_a2);
state_save_register_item("6821pia", NULL, which, p->irq_a_state);
state_save_register_item("6821pia", NULL, which, p->in_b);
state_save_register_item("6821pia", NULL, which, p->in_cb1);
state_save_register_item("6821pia", NULL, which, p->in_cb2);
state_save_register_item("6821pia", NULL, which, p->out_b);
state_save_register_item("6821pia", NULL, which, p->out_cb2);
state_save_register_item("6821pia", NULL, which, p->last_out_cb2_z);
state_save_register_item("6821pia", NULL, which, p->ddr_b);
state_save_register_item("6821pia", NULL, which, p->ctl_b);
state_save_register_item("6821pia", NULL, which, p->irq_b1);
state_save_register_item("6821pia", NULL, which, p->irq_b2);
state_save_register_item("6821pia", NULL, which, p->irq_b_state);
state_save_register_item("6821pia", NULL, which, p->in_a_pushed);
state_save_register_item("6821pia", NULL, which, p->out_a_needs_pulled);
state_save_register_item("6821pia", NULL, which, p->in_ca1_pushed);
state_save_register_item("6821pia", NULL, which, p->in_ca2_pushed);
state_save_register_item("6821pia", NULL, which, p->out_ca2_needs_pulled);
state_save_register_item("6821pia", NULL, which, p->in_b_pushed);
state_save_register_item("6821pia", NULL, which, p->out_b_needs_pulled);
state_save_register_item("6821pia", NULL, which, p->in_cb1_pushed);
state_save_register_item("6821pia", NULL, which, p->in_cb2_pushed);
state_save_register_item("6821pia", NULL, which, p->out_cb2_needs_pulled);
}

View File

@ -402,25 +402,25 @@ void ptm6840_config(running_machine *machine, int which, const ptm6840_interface
timer_enable(ptm[which].timer[i], FALSE);
}
state_save_register_item("6840ptm", which, currptr->lsb_buffer);
state_save_register_item("6840ptm", which, currptr->msb_buffer);
state_save_register_item("6840ptm", which, currptr->status_read_since_int);
state_save_register_item("6840ptm", which, currptr->status_reg);
state_save_register_item("6840ptm", which, currptr->t3_divisor);
state_save_register_item("6840ptm", which, currptr->t3_scaler);
state_save_register_item("6840ptm", which, currptr->internal_clock);
state_save_register_item("6840ptm", which, currptr->IRQ);
state_save_register_item("6840ptm", NULL, which, currptr->lsb_buffer);
state_save_register_item("6840ptm", NULL, which, currptr->msb_buffer);
state_save_register_item("6840ptm", NULL, which, currptr->status_read_since_int);
state_save_register_item("6840ptm", NULL, which, currptr->status_reg);
state_save_register_item("6840ptm", NULL, which, currptr->t3_divisor);
state_save_register_item("6840ptm", NULL, which, currptr->t3_scaler);
state_save_register_item("6840ptm", NULL, which, currptr->internal_clock);
state_save_register_item("6840ptm", NULL, which, currptr->IRQ);
state_save_register_item_array("6840ptm", which, currptr->control_reg);
state_save_register_item_array("6840ptm", which, currptr->output);
state_save_register_item_array("6840ptm", which, currptr->gate);
state_save_register_item_array("6840ptm", which, currptr->clock);
state_save_register_item_array("6840ptm", which, currptr->mode);
state_save_register_item_array("6840ptm", which, currptr->fired);
state_save_register_item_array("6840ptm", which, currptr->enabled);
state_save_register_item_array("6840ptm", which, currptr->external_clock);
state_save_register_item_array("6840ptm", which, currptr->counter);
state_save_register_item_array("6840ptm", which, currptr->latch);
state_save_register_item_array("6840ptm", NULL, which, currptr->control_reg);
state_save_register_item_array("6840ptm", NULL, which, currptr->output);
state_save_register_item_array("6840ptm", NULL, which, currptr->gate);
state_save_register_item_array("6840ptm", NULL, which, currptr->clock);
state_save_register_item_array("6840ptm", NULL, which, currptr->mode);
state_save_register_item_array("6840ptm", NULL, which, currptr->fired);
state_save_register_item_array("6840ptm", NULL, which, currptr->enabled);
state_save_register_item_array("6840ptm", NULL, which, currptr->external_clock);
state_save_register_item_array("6840ptm", NULL, which, currptr->counter);
state_save_register_item_array("6840ptm", NULL, which, currptr->latch);
ptm6840_reset(which);
}

View File

@ -186,29 +186,29 @@ void acia6850_config(int which, const struct acia6850_interface *intf)
timer_reset(acia_p->rx_timer, attotime_never);
timer_reset(acia_p->tx_timer, attotime_never);
state_save_register_item("acia6850", which, acia_p->ctrl);
state_save_register_item("acia6850", which, acia_p->status);
state_save_register_item("acia6850", which, acia_p->rx_clock);
state_save_register_item("acia6850", which, acia_p->tx_clock);
state_save_register_item("acia6850", which, acia_p->rx_counter);
state_save_register_item("acia6850", which, acia_p->tx_counter);
state_save_register_item("acia6850", which, acia_p->rx_shift);
state_save_register_item("acia6850", which, acia_p->tx_shift);
state_save_register_item("acia6850", which, acia_p->rdr);
state_save_register_item("acia6850", which, acia_p->tdr);
state_save_register_item("acia6850", which, acia_p->rx_bits);
state_save_register_item("acia6850", which, acia_p->tx_bits);
state_save_register_item("acia6850", which, acia_p->rx_parity);
state_save_register_item("acia6850", which, acia_p->tx_parity);
state_save_register_item("acia6850", which, acia_p->tx_int);
state_save_register_item("acia6850", NULL, which, acia_p->ctrl);
state_save_register_item("acia6850", NULL, which, acia_p->status);
state_save_register_item("acia6850", NULL, which, acia_p->rx_clock);
state_save_register_item("acia6850", NULL, which, acia_p->tx_clock);
state_save_register_item("acia6850", NULL, which, acia_p->rx_counter);
state_save_register_item("acia6850", NULL, which, acia_p->tx_counter);
state_save_register_item("acia6850", NULL, which, acia_p->rx_shift);
state_save_register_item("acia6850", NULL, which, acia_p->tx_shift);
state_save_register_item("acia6850", NULL, which, acia_p->rdr);
state_save_register_item("acia6850", NULL, which, acia_p->tdr);
state_save_register_item("acia6850", NULL, which, acia_p->rx_bits);
state_save_register_item("acia6850", NULL, which, acia_p->tx_bits);
state_save_register_item("acia6850", NULL, which, acia_p->rx_parity);
state_save_register_item("acia6850", NULL, which, acia_p->tx_parity);
state_save_register_item("acia6850", NULL, which, acia_p->tx_int);
state_save_register_item("acia6850", which, acia_p->divide);
state_save_register_item("acia6850", which, acia_p->overrun);
state_save_register_item("acia6850", which, acia_p->reset);
state_save_register_item("acia6850", which, acia_p->first_reset);
state_save_register_item("acia6850", which, acia_p->rts);
state_save_register_item("acia6850", which, acia_p->brk);
state_save_register_item("acia6850", which, acia_p->status_read);
state_save_register_item("acia6850", NULL, which, acia_p->divide);
state_save_register_item("acia6850", NULL, which, acia_p->overrun);
state_save_register_item("acia6850", NULL, which, acia_p->reset);
state_save_register_item("acia6850", NULL, which, acia_p->first_reset);
state_save_register_item("acia6850", NULL, which, acia_p->rts);
state_save_register_item("acia6850", NULL, which, acia_p->brk);
state_save_register_item("acia6850", NULL, which, acia_p->status_read);
}

View File

@ -537,54 +537,50 @@ void duart68681_rx_data( const device_config* device, int ch, UINT8 data )
static DEVICE_START(duart68681)
{
duart68681_state *duart68681 = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(device != NULL);
assert(device->tag != NULL);
assert(strlen(device->tag) < 20);
state_save_combine_module_and_tag(unique_tag, "DUART 68681", device->tag);
state_save_register_item("DUART68681", device->tag, 0, duart68681->ACR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->IMR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->ISR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->IVR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->OPCR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->CTR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->IP_last_state);
state_save_register_item(unique_tag, 0, duart68681->ACR);
state_save_register_item(unique_tag, 0, duart68681->IMR);
state_save_register_item(unique_tag, 0, duart68681->ISR);
state_save_register_item(unique_tag, 0, duart68681->IVR);
state_save_register_item(unique_tag, 0, duart68681->OPCR);
state_save_register_item(unique_tag, 0, duart68681->CTR);
state_save_register_item(unique_tag, 0, duart68681->IP_last_state);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].CR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].CSR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].MR1);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].MR2);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].MR_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].SR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].baud_rate);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].rx_enabled);
state_save_register_item_array("DUART68681", device->tag, 0, duart68681->channel[0].rx_fifo);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].rx_fifo_read_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].rx_fifo_write_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].rx_fifo_num);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].tx_enabled);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].tx_data);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[0].tx_ready);
state_save_register_item(unique_tag, 0, duart68681->channel[0].CR);
state_save_register_item(unique_tag, 0, duart68681->channel[0].CSR);
state_save_register_item(unique_tag, 0, duart68681->channel[0].MR1);
state_save_register_item(unique_tag, 0, duart68681->channel[0].MR2);
state_save_register_item(unique_tag, 0, duart68681->channel[0].MR_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[0].SR);
state_save_register_item(unique_tag, 0, duart68681->channel[0].baud_rate);
state_save_register_item(unique_tag, 0, duart68681->channel[0].rx_enabled);
state_save_register_item_array(unique_tag, 0, duart68681->channel[0].rx_fifo);
state_save_register_item(unique_tag, 0, duart68681->channel[0].rx_fifo_read_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[0].rx_fifo_write_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[0].rx_fifo_num);
state_save_register_item(unique_tag, 0, duart68681->channel[0].tx_enabled);
state_save_register_item(unique_tag, 0, duart68681->channel[0].tx_data);
state_save_register_item(unique_tag, 0, duart68681->channel[0].tx_ready);
state_save_register_item(unique_tag, 0, duart68681->channel[1].CR);
state_save_register_item(unique_tag, 0, duart68681->channel[1].CSR);
state_save_register_item(unique_tag, 0, duart68681->channel[1].MR1);
state_save_register_item(unique_tag, 0, duart68681->channel[1].MR2);
state_save_register_item(unique_tag, 0, duart68681->channel[1].MR_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[1].SR);
state_save_register_item(unique_tag, 0, duart68681->channel[1].baud_rate);
state_save_register_item(unique_tag, 0, duart68681->channel[1].rx_enabled);
state_save_register_item_array(unique_tag, 0, duart68681->channel[1].rx_fifo);
state_save_register_item(unique_tag, 0, duart68681->channel[1].rx_fifo_read_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[1].rx_fifo_write_ptr);
state_save_register_item(unique_tag, 0, duart68681->channel[1].rx_fifo_num);
state_save_register_item(unique_tag, 0, duart68681->channel[1].tx_enabled);
state_save_register_item(unique_tag, 0, duart68681->channel[1].tx_data);
state_save_register_item(unique_tag, 0, duart68681->channel[1].tx_ready);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].CR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].CSR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].MR1);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].MR2);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].MR_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].SR);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].baud_rate);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].rx_enabled);
state_save_register_item_array("DUART68681", device->tag, 0, duart68681->channel[1].rx_fifo);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].rx_fifo_read_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].rx_fifo_write_ptr);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].rx_fifo_num);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].tx_enabled);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].tx_data);
state_save_register_item("DUART68681", device->tag, 0, duart68681->channel[1].tx_ready);
return DEVICE_START_OK;
}

View File

@ -189,11 +189,8 @@ WRITE8_DEVICE_HANDLER( ttl74123_reset_w )
static DEVICE_START( ttl74123 )
{
ttl74123_t *chip = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(strlen(device->tag) < 20);
chip->intf = device->static_config;
assert_always(chip->intf, "No interface specified");
@ -208,12 +205,9 @@ static DEVICE_START( ttl74123 )
chip->clear = chip->intf->clear;
/* register for state saving */
state_save_combine_module_and_tag(unique_tag, "ttl74123", device->tag);
state_save_register_item(unique_tag, 0, chip->a);
state_save_register_item(unique_tag, 0, chip->b);
state_save_register_item(unique_tag, 0, chip->clear);
state_save_register_item("ttl74123", device->tag, 0, chip->a);
state_save_register_item("ttl74123", device->tag, 0, chip->b);
state_save_register_item("ttl74123", device->tag, 0, chip->clear);
return DEVICE_START_OK;
}

View File

@ -39,9 +39,9 @@ void TTL74181_config(running_machine *machine, int which, void *intf)
c->dirty = 1;
state_save_register_item_array("TTL74181", which, c->inputs);
state_save_register_item_array("TTL74181", which, c->outputs);
state_save_register_item ("TTL74181", which, c->dirty);
state_save_register_item_array("TTL74181", NULL, which, c->inputs);
state_save_register_item_array("TTL74181", NULL, which, c->outputs);
state_save_register_item ("TTL74181", NULL, which, c->dirty);
}

View File

@ -161,13 +161,13 @@ void TTL7474_config(int which, const struct TTL7474_interface *intf)
chip->last_output = -1;
chip->last_output_comp = -1;
state_save_register_item("ttl7474", which, chip->clear);
state_save_register_item("ttl7474", which, chip->preset);
state_save_register_item("ttl7474", which, chip->clock);
state_save_register_item("ttl7474", which, chip->d);
state_save_register_item("ttl7474", which, chip->output);
state_save_register_item("ttl7474", which, chip->output_comp);
state_save_register_item("ttl7474", which, chip->last_clock);
state_save_register_item("ttl7474", which, chip->last_output);
state_save_register_item("ttl7474", which, chip->last_output_comp);
state_save_register_item("ttl7474", NULL, which, chip->clear);
state_save_register_item("ttl7474", NULL, which, chip->preset);
state_save_register_item("ttl7474", NULL, which, chip->clock);
state_save_register_item("ttl7474", NULL, which, chip->d);
state_save_register_item("ttl7474", NULL, which, chip->output);
state_save_register_item("ttl7474", NULL, which, chip->output_comp);
state_save_register_item("ttl7474", NULL, which, chip->last_clock);
state_save_register_item("ttl7474", NULL, which, chip->last_output);
state_save_register_item("ttl7474", NULL, which, chip->last_output_comp);
}

View File

@ -506,7 +506,6 @@ UINT8 ppi8255_get_port_c( const device_config *device ) {
static DEVICE_START( ppi8255 ) {
ppi8255_t *ppi8255 = get_safe_token(device);
char unique_tag[30];
ppi8255->intf = device->static_config;
@ -519,24 +518,22 @@ static DEVICE_START( ppi8255 ) {
ppi8255->port_write[2] = ppi8255->intf->port_c_write;
/* register for state saving */
state_save_combine_module_and_tag(unique_tag, "ppi8255", device->tag);
state_save_register_item(unique_tag, 0, ppi8255->group_a_mode);
state_save_register_item(unique_tag, 0, ppi8255->group_b_mode);
state_save_register_item(unique_tag, 0, ppi8255->port_a_dir);
state_save_register_item(unique_tag, 0, ppi8255->port_b_dir);
state_save_register_item(unique_tag, 0, ppi8255->port_ch_dir);
state_save_register_item(unique_tag, 0, ppi8255->port_cl_dir);
state_save_register_item(unique_tag, 0, ppi8255->obf_a);
state_save_register_item(unique_tag, 0, ppi8255->obf_b);
state_save_register_item(unique_tag, 0, ppi8255->ibf_a);
state_save_register_item(unique_tag, 0, ppi8255->ibf_b);
state_save_register_item(unique_tag, 0, ppi8255->inte_a);
state_save_register_item(unique_tag, 0, ppi8255->inte_b);
state_save_register_item_array(unique_tag, 0, ppi8255->in_mask);
state_save_register_item_array(unique_tag, 0, ppi8255->out_mask);
state_save_register_item_array(unique_tag, 0, ppi8255->read);
state_save_register_item_array(unique_tag, 0, ppi8255->latch);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->group_a_mode);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->group_b_mode);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->port_a_dir);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->port_b_dir);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->port_ch_dir);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->port_cl_dir);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->obf_a);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->obf_b);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->ibf_a);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->ibf_b);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->inte_a);
state_save_register_item("ppi8255", device->tag, 0, ppi8255->inte_b);
state_save_register_item_array("ppi8255", device->tag, 0, ppi8255->in_mask);
state_save_register_item_array("ppi8255", device->tag, 0, ppi8255->out_mask);
state_save_register_item_array("ppi8255", device->tag, 0, ppi8255->read);
state_save_register_item_array("ppi8255", device->tag, 0, ppi8255->latch);
return DEVICE_START_OK;
}

View File

@ -362,12 +362,10 @@ WRITE8_DEVICE_HANDLER( dma8257_drq_w )
static DEVICE_START( dma8257 )
{
dma8257_t *dma8257 = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(device != NULL);
assert(device->tag != NULL);
assert(strlen(device->tag) < 20);
//dma8257->device_type = device_type;
dma8257->intf = device->static_config;
@ -376,18 +374,16 @@ static DEVICE_START( dma8257 )
dma8257->timer = timer_alloc(dma8257_timerproc, (void *) device);
dma8257->msbflip_timer = timer_alloc(dma8257_msbflip_timerproc, (void *) device);
state_save_combine_module_and_tag(unique_tag, "dma8257", device->tag);
state_save_register_item_array("dma8257", device->tag, 0, dma8257->address);
state_save_register_item_array("dma8257", device->tag, 0, dma8257->count);
state_save_register_item_array("dma8257", device->tag, 0, dma8257->rwmode);
state_save_register_item_array("dma8257", device->tag, 0, dma8257->registers);
state_save_register_item_array(unique_tag, 0, dma8257->address);
state_save_register_item_array(unique_tag, 0, dma8257->count);
state_save_register_item_array(unique_tag, 0, dma8257->rwmode);
state_save_register_item_array(unique_tag, 0, dma8257->registers);
state_save_register_item(unique_tag, 0, dma8257->mode);
state_save_register_item(unique_tag, 0, dma8257->rr);
state_save_register_item(unique_tag, 0, dma8257->msb);
state_save_register_item(unique_tag, 0, dma8257->drq);
state_save_register_item(unique_tag, 0, dma8257->status);
state_save_register_item("dma8257", device->tag, 0, dma8257->mode);
state_save_register_item("dma8257", device->tag, 0, dma8257->rr);
state_save_register_item("dma8257", device->tag, 0, dma8257->msb);
state_save_register_item("dma8257", device->tag, 0, dma8257->drq);
state_save_register_item("dma8257", device->tag, 0, dma8257->status);
return DEVICE_START_OK;
}

View File

@ -114,19 +114,19 @@ void adc083x_init( int chip, int type, double (*input_callback)(int input) )
break;
}
state_save_register_item( "adc083x", chip, c->CS );
state_save_register_item( "adc083x", chip, c->CLK );
state_save_register_item( "adc083x", chip, c->DI );
state_save_register_item( "adc083x", chip, c->SE );
state_save_register_item( "adc083x", chip, c->SARS );
state_save_register_item( "adc083x", chip, c->DO );
state_save_register_item( "adc083x", chip, c->SGL );
state_save_register_item( "adc083x", chip, c->ODD );
state_save_register_item( "adc083x", chip, c->SEL1 );
state_save_register_item( "adc083x", chip, c->SEL0 );
state_save_register_item( "adc083x", chip, c->state );
state_save_register_item( "adc083x", chip, c->bit );
state_save_register_item( "adc083x", chip, c->output );
state_save_register_item( "adc083x", NULL, chip, c->CS );
state_save_register_item( "adc083x", NULL, chip, c->CLK );
state_save_register_item( "adc083x", NULL, chip, c->DI );
state_save_register_item( "adc083x", NULL, chip, c->SE );
state_save_register_item( "adc083x", NULL, chip, c->SARS );
state_save_register_item( "adc083x", NULL, chip, c->DO );
state_save_register_item( "adc083x", NULL, chip, c->SGL );
state_save_register_item( "adc083x", NULL, chip, c->ODD );
state_save_register_item( "adc083x", NULL, chip, c->SEL1 );
state_save_register_item( "adc083x", NULL, chip, c->SEL0 );
state_save_register_item( "adc083x", NULL, chip, c->state );
state_save_register_item( "adc083x", NULL, chip, c->bit );
state_save_register_item( "adc083x", NULL, chip, c->output );
}
void adc083x_cs_write( int chip, int cs )

View File

@ -120,7 +120,6 @@ static DEVICE_START(at28c16)
{
at28c16_state *c = get_safe_token(device);
const at28c16_config *config;
char unique_tag[50];
/* validate some basic stuff */
assert(device != NULL);
@ -148,14 +147,11 @@ static DEVICE_START(at28c16)
}
/* create the name for save states */
assert( strlen( device->tag ) < 30 );
state_save_combine_module_and_tag( unique_tag, "at28c16", device->tag );
state_save_register_item_pointer( unique_tag, 0, c->data, SIZE_DATA );
state_save_register_item_pointer( unique_tag, 0, c->id, SIZE_ID );
state_save_register_item( unique_tag, 0, c->a9_12v );
state_save_register_item( unique_tag, 0, c->oe_12v );
state_save_register_item( unique_tag, 0, c->last_write );
state_save_register_item_pointer( "at28c16", device->tag, 0, c->data, SIZE_DATA );
state_save_register_item_pointer( "at28c16", device->tag, 0, c->id, SIZE_ID );
state_save_register_item( "at28c16", device->tag, 0, c->a9_12v );
state_save_register_item( "at28c16", device->tag, 0, c->oe_12v );
state_save_register_item( "at28c16", device->tag, 0, c->last_write );
return DEVICE_START_OK;
}

View File

@ -120,12 +120,10 @@ WRITE8_DEVICE_HANDLER( cdp1852_data_w )
static DEVICE_START( cdp1852 )
{
cdp1852_t *cdp1852 = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(device != NULL);
assert(device->tag != NULL);
assert(strlen(device->tag) < 20);
cdp1852->intf = device->static_config;
@ -149,13 +147,11 @@ static DEVICE_START( cdp1852 )
}
/* register for state saving */
state_save_combine_module_and_tag(unique_tag, "CDP1852", device->tag);
state_save_register_item(unique_tag, 0, cdp1852->new_data);
state_save_register_item(unique_tag, 0, cdp1852->data);
state_save_register_item(unique_tag, 0, cdp1852->next_data);
state_save_register_item(unique_tag, 0, cdp1852->sr);
state_save_register_item(unique_tag, 0, cdp1852->next_sr);
state_save_register_item("cdp1852", device->tag, 0, cdp1852->new_data);
state_save_register_item("cdp1852", device->tag, 0, cdp1852->data);
state_save_register_item("cdp1852", device->tag, 0, cdp1852->next_data);
state_save_register_item("cdp1852", device->tag, 0, cdp1852->sr);
state_save_register_item("cdp1852", device->tag, 0, cdp1852->next_sr);
return DEVICE_START_OK;
}

View File

@ -111,16 +111,13 @@ static void cr589_write_data( SCSIInstance *scsiInstance, UINT8 *data, int dataL
static void cr589_alloc_instance( SCSIInstance *scsiInstance, const char *diskregion )
{
SCSICr589 *our_this = SCSIThis( &SCSIClassCr589, scsiInstance );
char tag[256];
our_this->download = 0;
memcpy( &our_this->buffer[ identity_offset ], "MATSHITACD-ROM CR-589 GS0N", 28 );
state_save_combine_module_and_tag(tag, "cr589", diskregion);
state_save_register_item( tag, 0, our_this->download );
state_save_register_item_array( tag, 0, our_this->buffer );
state_save_register_item( tag, 0, our_this->bufferOffset );
state_save_register_item( "cr589", diskregion, 0, our_this->download );
state_save_register_item_array( "cr589", diskregion, 0, our_this->buffer );
state_save_register_item( "cr589", diskregion, 0, our_this->bufferOffset );
}
static int cr589_dispatch( int operation, void *file, INT64 intparm, void *ptrparm )

View File

@ -156,12 +156,12 @@ void ds2401_init( int which, const UINT8 *data )
c->t_pdh = ATTOTIME_IN_USEC( 15 );
c->t_pdl = ATTOTIME_IN_USEC( 60 );
state_save_register_item( "ds2401", which, c->state );
state_save_register_item( "ds2401", which, c->bit );
state_save_register_item( "ds2401", which, c->byte );
state_save_register_item( "ds2401", which, c->shift );
state_save_register_item( "ds2401", which, c->rx );
state_save_register_item( "ds2401", which, c->tx );
state_save_register_item( "ds2401", NULL, which, c->state );
state_save_register_item( "ds2401", NULL, which, c->bit );
state_save_register_item( "ds2401", NULL, which, c->byte );
state_save_register_item( "ds2401", NULL, which, c->shift );
state_save_register_item( "ds2401", NULL, which, c->rx );
state_save_register_item( "ds2401", NULL, which, c->tx );
c->timer = timer_alloc( ds2401_tick , NULL);
c->reset_timer = timer_alloc( ds2401_reset , NULL);

View File

@ -72,9 +72,9 @@ void generic_machine_init(running_machine *machine)
}
/* register coin save state */
state_save_register_item_array("coin", 0, coin_count);
state_save_register_item_array("coin", 0, coinlockedout);
state_save_register_item_array("coin", 0, lastcoin);
state_save_register_item_array("coin", NULL, 0, coin_count);
state_save_register_item_array("coin", NULL, 0, coinlockedout);
state_save_register_item_array("coin", NULL, 0, lastcoin);
/* reset NVRAM size and pointers */
generic_nvram_size = 0;
@ -87,7 +87,7 @@ void generic_machine_init(running_machine *machine)
/* register a reset callback and save state for interrupt enable */
add_reset_callback(machine, interrupt_reset);
state_save_register_item_array("cpu", 0, interrupt_enable);
state_save_register_item_array("cpu", NULL, 0, interrupt_enable);
/* register for configuration */
config_register(machine, "counters", counters_load, counters_save);

View File

@ -121,19 +121,19 @@ void i2cmem_init( int chip, int slave_address, int page_size, int data_size, uns
c->data = data;
c->page = page;
state_save_register_item( "i2cmem", chip, c->scl );
state_save_register_item( "i2cmem", chip, c->sdaw );
state_save_register_item( "i2cmem", chip, c->e0 );
state_save_register_item( "i2cmem", chip, c->e1 );
state_save_register_item( "i2cmem", chip, c->e2 );
state_save_register_item( "i2cmem", chip, c->wc );
state_save_register_item( "i2cmem", chip, c->sdar );
state_save_register_item( "i2cmem", chip, c->state );
state_save_register_item( "i2cmem", chip, c->bits );
state_save_register_item( "i2cmem", chip, c->shift );
state_save_register_item( "i2cmem", chip, c->devsel );
state_save_register_item( "i2cmem", chip, c->byteaddr );
state_save_register_item_pointer( "i2cmem", chip, c->data, c->data_size );
state_save_register_item( "i2cmem", NULL, chip, c->scl );
state_save_register_item( "i2cmem", NULL, chip, c->sdaw );
state_save_register_item( "i2cmem", NULL, chip, c->e0 );
state_save_register_item( "i2cmem", NULL, chip, c->e1 );
state_save_register_item( "i2cmem", NULL, chip, c->e2 );
state_save_register_item( "i2cmem", NULL, chip, c->wc );
state_save_register_item( "i2cmem", NULL, chip, c->sdar );
state_save_register_item( "i2cmem", NULL, chip, c->state );
state_save_register_item( "i2cmem", NULL, chip, c->bits );
state_save_register_item( "i2cmem", NULL, chip, c->shift );
state_save_register_item( "i2cmem", NULL, chip, c->devsel );
state_save_register_item( "i2cmem", NULL, chip, c->byteaddr );
state_save_register_item_pointer( "i2cmem", NULL, chip, c->data, c->data_size );
}
static int select_device( struct i2cmem_chip *c )

View File

@ -1670,7 +1670,6 @@ static DEVICE_START( ide_controller )
ide_state *ide = get_safe_token(device);
const hard_disk_info *hdinfo;
const ide_config *config;
char unique_tag[50];
/* validate some basic stuff */
assert(device != NULL);
@ -1707,55 +1706,51 @@ static DEVICE_START( ide_controller )
ide->last_status_timer = timer_alloc(NULL, NULL);
ide->reset_timer = timer_alloc(reset_callback, (void *)device);
/* create the name for save states */
assert(strlen(device->tag) < 30);
state_save_combine_module_and_tag(unique_tag, "ide_controller", device->tag);
/* register ide states */
state_save_register_item(unique_tag, 0, ide->adapter_control);
state_save_register_item(unique_tag, 0, ide->status);
state_save_register_item(unique_tag, 0, ide->error);
state_save_register_item(unique_tag, 0, ide->command);
state_save_register_item(unique_tag, 0, ide->interrupt_pending);
state_save_register_item(unique_tag, 0, ide->precomp_offset);
state_save_register_item("ide_controller", device->tag, 0, ide->adapter_control);
state_save_register_item("ide_controller", device->tag, 0, ide->status);
state_save_register_item("ide_controller", device->tag, 0, ide->error);
state_save_register_item("ide_controller", device->tag, 0, ide->command);
state_save_register_item("ide_controller", device->tag, 0, ide->interrupt_pending);
state_save_register_item("ide_controller", device->tag, 0, ide->precomp_offset);
state_save_register_item_array(unique_tag, 0, ide->buffer);
state_save_register_item_array(unique_tag, 0, ide->features);
state_save_register_item(unique_tag, 0, ide->buffer_offset);
state_save_register_item(unique_tag, 0, ide->sector_count);
state_save_register_item_array("ide_controller", device->tag, 0, ide->buffer);
state_save_register_item_array("ide_controller", device->tag, 0, ide->features);
state_save_register_item("ide_controller", device->tag, 0, ide->buffer_offset);
state_save_register_item("ide_controller", device->tag, 0, ide->sector_count);
state_save_register_item(unique_tag, 0, ide->block_count);
state_save_register_item(unique_tag, 0, ide->sectors_until_int);
state_save_register_item("ide_controller", device->tag, 0, ide->block_count);
state_save_register_item("ide_controller", device->tag, 0, ide->sectors_until_int);
state_save_register_item(unique_tag, 0, ide->dma_active);
state_save_register_item(unique_tag, 0, ide->dma_cpu);
state_save_register_item(unique_tag, 0, ide->dma_address_xor);
state_save_register_item(unique_tag, 0, ide->dma_last_buffer);
state_save_register_item(unique_tag, 0, ide->dma_address);
state_save_register_item(unique_tag, 0, ide->dma_descriptor);
state_save_register_item(unique_tag, 0, ide->dma_bytes_left);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_active);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_cpu);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_address_xor);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_last_buffer);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_address);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_descriptor);
state_save_register_item("ide_controller", device->tag, 0, ide->dma_bytes_left);
state_save_register_item(unique_tag, 0, ide->bus_master_command);
state_save_register_item(unique_tag, 0, ide->bus_master_status);
state_save_register_item(unique_tag, 0, ide->bus_master_descriptor);
state_save_register_item("ide_controller", device->tag, 0, ide->bus_master_command);
state_save_register_item("ide_controller", device->tag, 0, ide->bus_master_status);
state_save_register_item("ide_controller", device->tag, 0, ide->bus_master_descriptor);
state_save_register_item(unique_tag, 0, ide->cur_cylinder);
state_save_register_item(unique_tag, 0, ide->cur_sector);
state_save_register_item(unique_tag, 0, ide->cur_head);
state_save_register_item(unique_tag, 0, ide->cur_head_reg);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_cylinder);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_sector);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_head);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_head_reg);
state_save_register_item(unique_tag, 0, ide->cur_lba);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_lba);
state_save_register_item(unique_tag, 0, ide->num_cylinders);
state_save_register_item(unique_tag, 0, ide->num_sectors);
state_save_register_item(unique_tag, 0, ide->num_heads);
state_save_register_item("ide_controller", device->tag, 0, ide->num_cylinders);
state_save_register_item("ide_controller", device->tag, 0, ide->num_sectors);
state_save_register_item("ide_controller", device->tag, 0, ide->num_heads);
state_save_register_item(unique_tag, 0, ide->config_unknown);
state_save_register_item_array(unique_tag, 0, ide->config_register);
state_save_register_item(unique_tag, 0, ide->config_register_num);
state_save_register_item("ide_controller", device->tag, 0, ide->config_unknown);
state_save_register_item_array("ide_controller", device->tag, 0, ide->config_register);
state_save_register_item("ide_controller", device->tag, 0, ide->config_register_num);
state_save_register_item(unique_tag, 0, ide->master_password_enable);
state_save_register_item(unique_tag, 0, ide->user_password_enable);
state_save_register_item("ide_controller", device->tag, 0, ide->master_password_enable);
state_save_register_item("ide_controller", device->tag, 0, ide->user_password_enable);
return DEVICE_START_OK;
}

View File

@ -134,10 +134,10 @@ void intelflash_init(int chip, int type, void *data)
c->timer = timer_alloc(erase_finished, c);
c->flash_memory = data;
state_save_register_item( "intelfsh", chip, c->status );
state_save_register_item( "intelfsh", chip, c->flash_mode );
state_save_register_item( "intelfsh", chip, c->flash_master_lock );
state_save_register_memory( "intelfsh", chip, "flash_memory", c->flash_memory, c->bits/8, c->size / (c->bits/8) );
state_save_register_item( "intelfsh", NULL, chip, c->status );
state_save_register_item( "intelfsh", NULL, chip, c->flash_mode );
state_save_register_item( "intelfsh", NULL, chip, c->flash_master_lock );
state_save_register_memory( "intelfsh", NULL, chip, "flash_memory", c->flash_memory, c->bits/8, c->size / (c->bits/8) );
}
UINT32 intelflash_read(int chip, UINT32 address)

View File

@ -186,12 +186,9 @@ WRITE8_DEVICE_HANDLER( latch8_bit7_w ) { latch8_bitx_w(device, 0, offset, data);
static DEVICE_START( latch8 )
{
latch8_t *latch8 = get_safe_token(device);
char unique_tag[30];
int i;
/* validate arguments */
assert(strlen(device->tag) < 20);
latch8->intf = device->inline_config;
latch8->value = 0x0;
@ -224,9 +221,7 @@ static DEVICE_START( latch8 )
latch8->has_read = 1;
}
state_save_combine_module_and_tag(unique_tag, "latch8", device->tag);
state_save_register_item(unique_tag, 0, latch8->value);
state_save_register_item("latch8", device->tag, 0, latch8->value);
return DEVICE_START_OK;
}

View File

@ -119,18 +119,18 @@ void microtouch_init(void (*tx_cb)(UINT8 data),
microtouch.timer = timer_alloc(microtouch_timer_callback, NULL);
timer_adjust_periodic(microtouch.timer, ATTOTIME_IN_HZ(167*5), 0, ATTOTIME_IN_HZ(167*5));
state_save_register_item("microtouch", 0, microtouch.reset_done);
state_save_register_item("microtouch", 0, microtouch.format_tablet);
state_save_register_item("microtouch", 0, microtouch.mode_inactive);
state_save_register_item("microtouch", 0, microtouch.mode_stream);
state_save_register_item("microtouch", 0, microtouch.last_touch_state);
state_save_register_item("microtouch", 0, microtouch.last_x);
state_save_register_item("microtouch", 0, microtouch.last_y);
state_save_register_item_array("microtouch", 0, microtouch.rx_buffer);
state_save_register_item("microtouch", 0, microtouch.rx_buffer_ptr);
state_save_register_item_array("microtouch", 0, microtouch.tx_buffer);
state_save_register_item("microtouch", 0, microtouch.tx_buffer_num);
state_save_register_item("microtouch", 0, microtouch.tx_buffer_ptr);
state_save_register_item("microtouch", NULL, 0, microtouch.reset_done);
state_save_register_item("microtouch", NULL, 0, microtouch.format_tablet);
state_save_register_item("microtouch", NULL, 0, microtouch.mode_inactive);
state_save_register_item("microtouch", NULL, 0, microtouch.mode_stream);
state_save_register_item("microtouch", NULL, 0, microtouch.last_touch_state);
state_save_register_item("microtouch", NULL, 0, microtouch.last_x);
state_save_register_item("microtouch", NULL, 0, microtouch.last_y);
state_save_register_item_array("microtouch", NULL, 0, microtouch.rx_buffer);
state_save_register_item("microtouch", NULL, 0, microtouch.rx_buffer_ptr);
state_save_register_item_array("microtouch", NULL, 0, microtouch.tx_buffer);
state_save_register_item("microtouch", NULL, 0, microtouch.tx_buffer_num);
state_save_register_item("microtouch", NULL, 0, microtouch.tx_buffer_ptr);
};

View File

@ -342,27 +342,27 @@ void pd4990a_init(void)
clock_line = 0;
command_line =0;
state_save_register_item("pd4990a", 0, pd4990a.seconds);
state_save_register_item("pd4990a", 0, pd4990a.minutes);
state_save_register_item("pd4990a", 0, pd4990a.hours);
state_save_register_item("pd4990a", 0, pd4990a.days);
state_save_register_item("pd4990a", 0, pd4990a.month);
state_save_register_item("pd4990a", 0, pd4990a.year);
state_save_register_item("pd4990a", 0, pd4990a.weekday);
state_save_register_item("pd4990a", NULL, 0, pd4990a.seconds);
state_save_register_item("pd4990a", NULL, 0, pd4990a.minutes);
state_save_register_item("pd4990a", NULL, 0, pd4990a.hours);
state_save_register_item("pd4990a", NULL, 0, pd4990a.days);
state_save_register_item("pd4990a", NULL, 0, pd4990a.month);
state_save_register_item("pd4990a", NULL, 0, pd4990a.year);
state_save_register_item("pd4990a", NULL, 0, pd4990a.weekday);
state_save_register_item("pd4990a", 0, shiftlo);
state_save_register_item("pd4990a", 0, shifthi);
state_save_register_item("pd4990a", NULL, 0, shiftlo);
state_save_register_item("pd4990a", NULL, 0, shifthi);
state_save_register_item("pd4990a", 0, retraces);
state_save_register_item("pd4990a", 0, testwaits);
state_save_register_item("pd4990a", 0, maxwaits);
state_save_register_item("pd4990a", 0, testbit);
state_save_register_item("pd4990a", NULL, 0, retraces);
state_save_register_item("pd4990a", NULL, 0, testwaits);
state_save_register_item("pd4990a", NULL, 0, maxwaits);
state_save_register_item("pd4990a", NULL, 0, testbit);
state_save_register_item("pd4990a", 0, outputbit);
state_save_register_item("pd4990a", 0, bitno);
state_save_register_item("pd4990a", 0, reading);
state_save_register_item("pd4990a", 0, writting);
state_save_register_item("pd4990a", NULL, 0, outputbit);
state_save_register_item("pd4990a", NULL, 0, bitno);
state_save_register_item("pd4990a", NULL, 0, reading);
state_save_register_item("pd4990a", NULL, 0, writting);
state_save_register_item("pd4990a", 0, clock_line);
state_save_register_item("pd4990a", 0, command_line);
state_save_register_item("pd4990a", NULL, 0, clock_line);
state_save_register_item("pd4990a", NULL, 0, command_line);
}

View File

@ -1046,15 +1046,12 @@ void pit8253_set_clock_signal(const device_config *device, int timerno, int stat
static device_start_err common_start( const device_config *device, int device_type ) {
pit8253_t *pit8253 = get_safe_token(device);
char unique_tag[30];
int timerno;
pit8253->config = device->static_config;
pit8253->device_type = device_type;
/* register for state saving */
state_save_combine_module_and_tag(unique_tag, device_tags[device_type], device->tag);
for (timerno = 0; timerno < MAX_TIMER; timerno++)
{
struct pit8253_timer *timer = get_timer(pit8253,timerno);
@ -1066,26 +1063,26 @@ static device_start_err common_start( const device_config *device, int device_ty
timer_adjust_oneshot(timer->updatetimer, attotime_never, timerno);
/* set up state save values */
state_save_register_item(unique_tag, timerno, timer->clockin);
state_save_register_item(unique_tag, timerno, timer->control);
state_save_register_item(unique_tag, timerno, timer->status);
state_save_register_item(unique_tag, timerno, timer->lowcount);
state_save_register_item(unique_tag, timerno, timer->latch);
state_save_register_item(unique_tag, timerno, timer->count);
state_save_register_item(unique_tag, timerno, timer->value);
state_save_register_item(unique_tag, timerno, timer->wmsb);
state_save_register_item(unique_tag, timerno, timer->rmsb);
state_save_register_item(unique_tag, timerno, timer->output);
state_save_register_item(unique_tag, timerno, timer->gate);
state_save_register_item(unique_tag, timerno, timer->latched_count);
state_save_register_item(unique_tag, timerno, timer->latched_status);
state_save_register_item(unique_tag, timerno, timer->null_count);
state_save_register_item(unique_tag, timerno, timer->phase);
state_save_register_item(unique_tag, timerno, timer->cycles_to_output);
state_save_register_item(unique_tag, timerno, timer->last_updated.seconds);
state_save_register_item(unique_tag, timerno, timer->last_updated.attoseconds);
state_save_register_item(unique_tag, timerno, timer->programmed);
state_save_register_item(unique_tag, timerno, timer->clock);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->clockin);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->control);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->status);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->lowcount);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->latch);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->count);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->value);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->wmsb);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->rmsb);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->output);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->gate);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->latched_count);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->latched_status);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->null_count);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->phase);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->cycles_to_output);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->last_updated.seconds);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->last_updated.attoseconds);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->programmed);
state_save_register_item(device_tags[device_type], device->tag, timerno, timer->clock);
}
return DEVICE_START_OK;

View File

@ -674,7 +674,6 @@ static void scsicd_write_data( SCSIInstance *scsiInstance, UINT8 *data, int data
static void scsicd_alloc_instance( SCSIInstance *scsiInstance, const char *diskregion )
{
SCSICd *our_this = SCSIThis( &SCSIClassCDROM, scsiInstance );
char tag[256];
our_this->lba = 0;
our_this->blocks = 0;
@ -684,15 +683,13 @@ static void scsicd_alloc_instance( SCSIInstance *scsiInstance, const char *diskr
our_this->cur_subblock = 0;
our_this->play_err_flag = 0;
state_save_combine_module_and_tag(tag, "scsicd", diskregion);
state_save_register_item( tag, 0, our_this->lba );
state_save_register_item( tag, 0, our_this->blocks );
state_save_register_item( tag, 0, our_this->last_lba );
state_save_register_item( tag, 0, our_this->bytes_per_sector );
state_save_register_item( tag, 0, our_this->num_subblocks );
state_save_register_item( tag, 0, our_this->cur_subblock );
state_save_register_item( tag, 0, our_this->play_err_flag );
state_save_register_item( "scsicd", diskregion, 0, our_this->lba );
state_save_register_item( "scsicd", diskregion, 0, our_this->blocks );
state_save_register_item( "scsicd", diskregion, 0, our_this->last_lba );
state_save_register_item( "scsicd", diskregion, 0, our_this->bytes_per_sector );
state_save_register_item( "scsicd", diskregion, 0, our_this->num_subblocks );
state_save_register_item( "scsicd", diskregion, 0, our_this->cur_subblock );
state_save_register_item( "scsicd", diskregion, 0, our_this->play_err_flag );
#ifdef MESS
/* TODO: get rid of this ifdef MESS section */

View File

@ -101,13 +101,10 @@ static int scsidev_get_command( SCSIInstance *scsiInstance, void **command )
static void scsidev_alloc_instance( SCSIInstance *scsiInstance, const char *diskregion )
{
SCSIDev *our_this = SCSIThis( &SCSIClassDevice, scsiInstance );
char tag[256];
state_save_combine_module_and_tag(tag, "scsidev", diskregion);
state_save_register_item_array( tag, 0, our_this->command );
state_save_register_item( tag, 0, our_this->commandLength );
state_save_register_item( tag, 0, our_this->phase );
state_save_register_item_array( "scsidev", diskregion, 0, our_this->command );
state_save_register_item( "scsidev", diskregion, 0, our_this->commandLength );
state_save_register_item( "scsidev", diskregion, 0, our_this->phase );
}
static int scsidev_dispatch( int operation, void *file, INT64 intparm, void *ptrparm )

View File

@ -226,15 +226,12 @@ static void scsihd_write_data( SCSIInstance *scsiInstance, UINT8 *data, int data
static void scsihd_alloc_instance( SCSIInstance *scsiInstance, const char *diskregion )
{
SCSIHd *our_this = SCSIThis( &SCSIClassHARDDISK, scsiInstance );
char tag[256];
our_this->lba = 0;
our_this->blocks = 0;
state_save_combine_module_and_tag(tag, "scsihd", diskregion);
state_save_register_item( tag, 0, our_this->lba );
state_save_register_item( tag, 0, our_this->blocks );
state_save_register_item( "scsihd", diskregion, 0, our_this->lba );
state_save_register_item( "scsihd", diskregion, 0, our_this->blocks );
#ifdef MESS
/* TODO: get rid of this ifdef MESS section */

View File

@ -512,7 +512,6 @@ static DEVICE_START( smc91c9x )
{
const smc91c9x_config *config = device->inline_config;
smc91c9x_state *smc = get_safe_token(device);
char unique_tag[50];
/* validate some basic stuff */
assert(device != NULL);
@ -525,20 +524,16 @@ static DEVICE_START( smc91c9x )
smc->device = device;
smc->irq_handler = config->interrupt;
/* create the name for save states */
assert(strlen(device->tag) < 30);
state_save_combine_module_and_tag(unique_tag, "smc91c9x", device->tag);
/* register ide states */
state_save_register_item_array(unique_tag, 0, smc->reg);
state_save_register_item_array(unique_tag, 0, smc->regmask);
state_save_register_item(unique_tag, 0, smc->irq_state);
state_save_register_item(unique_tag, 0, smc->alloc_count);
state_save_register_item(unique_tag, 0, smc->fifo_count);
state_save_register_item_array(unique_tag, 0, smc->rx);
state_save_register_item_array(unique_tag, 0, smc->tx);
state_save_register_item(unique_tag, 0, smc->sent);
state_save_register_item(unique_tag, 0, smc->recd);
state_save_register_item_array("smc91c9x", device->tag, 0, smc->reg);
state_save_register_item_array("smc91c9x", device->tag, 0, smc->regmask);
state_save_register_item("smc91c9x", device->tag, 0, smc->irq_state);
state_save_register_item("smc91c9x", device->tag, 0, smc->alloc_count);
state_save_register_item("smc91c9x", device->tag, 0, smc->fifo_count);
state_save_register_item_array("smc91c9x", device->tag, 0, smc->rx);
state_save_register_item_array("smc91c9x", device->tag, 0, smc->tx);
state_save_register_item("smc91c9x", device->tag, 0, smc->sent);
state_save_register_item("smc91c9x", device->tag, 0, smc->recd);
return DEVICE_START_OK;
}

View File

@ -286,7 +286,6 @@ static DEVICE_START(timekeeper)
{
timekeeper_state *c = get_safe_token(device);
const timekeeper_config *config;
char unique_tag[50];
emu_timer *timer;
attotime duration;
mame_system_time systime;
@ -322,19 +321,16 @@ static DEVICE_START(timekeeper)
}
}
assert( strlen( device->tag ) < 30 );
state_save_combine_module_and_tag( unique_tag, "timekeeper", device->tag );
state_save_register_item( unique_tag, 0, c->control );
state_save_register_item( unique_tag, 0, c->seconds );
state_save_register_item( unique_tag, 0, c->minutes );
state_save_register_item( unique_tag, 0, c->hours );
state_save_register_item( unique_tag, 0, c->day );
state_save_register_item( unique_tag, 0, c->date );
state_save_register_item( unique_tag, 0, c->month );
state_save_register_item( unique_tag, 0, c->year );
state_save_register_item( unique_tag, 0, c->century );
state_save_register_item_pointer( unique_tag, 0, c->data, c->size );
state_save_register_item( "timekeeper", device->tag, 0, c->control );
state_save_register_item( "timekeeper", device->tag, 0, c->seconds );
state_save_register_item( "timekeeper", device->tag, 0, c->minutes );
state_save_register_item( "timekeeper", device->tag, 0, c->hours );
state_save_register_item( "timekeeper", device->tag, 0, c->day );
state_save_register_item( "timekeeper", device->tag, 0, c->date );
state_save_register_item( "timekeeper", device->tag, 0, c->month );
state_save_register_item( "timekeeper", device->tag, 0, c->year );
state_save_register_item( "timekeeper", device->tag, 0, c->century );
state_save_register_item_pointer( "timekeeper", device->tag, 0, c->data, c->size );
timer = timer_alloc( timekeeper_tick, c );
duration = ATTOTIME_IN_SEC(1);

View File

@ -58,20 +58,20 @@ void uPD4701_init( int chip )
c->latchswitches = 0;
c->cf = 1;
state_save_register_item( "uPD4701", chip, c->cs );
state_save_register_item( "uPD4701", chip, c->xy );
state_save_register_item( "uPD4701", chip, c->ul );
state_save_register_item( "uPD4701", chip, c->resetx );
state_save_register_item( "uPD4701", chip, c->resety );
state_save_register_item( "uPD4701", chip, c->latchx );
state_save_register_item( "uPD4701", chip, c->latchy );
state_save_register_item( "uPD4701", chip, c->startx );
state_save_register_item( "uPD4701", chip, c->starty );
state_save_register_item( "uPD4701", chip, c->x );
state_save_register_item( "uPD4701", chip, c->y );
state_save_register_item( "uPD4701", chip, c->switches );
state_save_register_item( "uPD4701", chip, c->latchswitches );
state_save_register_item( "uPD4701", chip, c->cf );
state_save_register_item( "uPD4701", NULL, chip, c->cs );
state_save_register_item( "uPD4701", NULL, chip, c->xy );
state_save_register_item( "uPD4701", NULL, chip, c->ul );
state_save_register_item( "uPD4701", NULL, chip, c->resetx );
state_save_register_item( "uPD4701", NULL, chip, c->resety );
state_save_register_item( "uPD4701", NULL, chip, c->latchx );
state_save_register_item( "uPD4701", NULL, chip, c->latchy );
state_save_register_item( "uPD4701", NULL, chip, c->startx );
state_save_register_item( "uPD4701", NULL, chip, c->starty );
state_save_register_item( "uPD4701", NULL, chip, c->x );
state_save_register_item( "uPD4701", NULL, chip, c->y );
state_save_register_item( "uPD4701", NULL, chip, c->switches );
state_save_register_item( "uPD4701", NULL, chip, c->latchswitches );
state_save_register_item( "uPD4701", NULL, chip, c->cf );
}
void uPD4701_ul_w( int chip, int ul )

View File

@ -800,7 +800,7 @@ extern void wd33c93_init( const struct WD33C93interface *interface )
scsi_data.temp_input = auto_malloc( TEMP_INPUT_LEN );
// state_save_register_item_array("wd33c93", 0, scsi_data);
// state_save_register_item_array("wd33c93", NULL, 0, scsi_data);
}
extern void wd33c93_exit( const struct WD33C93interface *interface )

View File

@ -80,7 +80,6 @@ static DEVICE_START(x2212)
{
x2212_state *c = get_safe_token(device);
const x2212_config *config;
char unique_tag[50];
/* validate some basic stuff */
assert(device != NULL);
@ -100,14 +99,10 @@ static DEVICE_START(x2212)
c->default_data = memory_region( device->machine, config->data );
}
/* create the name for save states */
assert( strlen( device->tag ) < 30 );
state_save_combine_module_and_tag( unique_tag, "x2212", device->tag );
state_save_register_item_pointer( unique_tag, 0, c->sram, SIZE_DATA );
state_save_register_item_pointer( unique_tag, 0, c->e2prom, SIZE_DATA );
state_save_register_item( unique_tag, 0, c->store );
state_save_register_item( unique_tag, 0, c->array_recall );
state_save_register_item_pointer( "x2212", device->tag, 0, c->sram, SIZE_DATA );
state_save_register_item_pointer( "x2212", device->tag, 0, c->e2prom, SIZE_DATA );
state_save_register_item( "x2212", device->tag, 0, c->store );
state_save_register_item( "x2212", device->tag, 0, c->array_recall );
return DEVICE_START_OK;
}

View File

@ -153,24 +153,24 @@ void x76f041_init( int chip, UINT8 *data )
c->configuration_registers = &data[ offset ]; offset += SIZE_CONFIGURATION_REGISTERS;
c->data = &data[ offset ]; offset += SIZE_DATA;
state_save_register_item( "x76f041", chip, c->cs );
state_save_register_item( "x76f041", chip, c->rst );
state_save_register_item( "x76f041", chip, c->scl );
state_save_register_item( "x76f041", chip, c->sdaw );
state_save_register_item( "x76f041", chip, c->sdar );
state_save_register_item( "x76f041", chip, c->state );
state_save_register_item( "x76f041", chip, c->shift );
state_save_register_item( "x76f041", chip, c->bit );
state_save_register_item( "x76f041", chip, c->byte );
state_save_register_item( "x76f041", chip, c->command );
state_save_register_item( "x76f041", chip, c->address );
state_save_register_item_array( "x76f041", chip, c->write_buffer );
state_save_register_item_pointer( "x76f041", chip, c->response_to_reset, SIZE_RESPONSE_TO_RESET );
state_save_register_item_pointer( "x76f041", chip, c->write_password, SIZE_WRITE_PASSWORD );
state_save_register_item_pointer( "x76f041", chip, c->read_password, SIZE_READ_PASSWORD );
state_save_register_item_pointer( "x76f041", chip, c->configuration_password, SIZE_CONFIGURATION_PASSWORD );
state_save_register_item_pointer( "x76f041", chip, c->configuration_registers, SIZE_CONFIGURATION_REGISTERS );
state_save_register_item_pointer( "x76f041", chip, c->data, SIZE_DATA );
state_save_register_item( "x76f041", NULL, chip, c->cs );
state_save_register_item( "x76f041", NULL, chip, c->rst );
state_save_register_item( "x76f041", NULL, chip, c->scl );
state_save_register_item( "x76f041", NULL, chip, c->sdaw );
state_save_register_item( "x76f041", NULL, chip, c->sdar );
state_save_register_item( "x76f041", NULL, chip, c->state );
state_save_register_item( "x76f041", NULL, chip, c->shift );
state_save_register_item( "x76f041", NULL, chip, c->bit );
state_save_register_item( "x76f041", NULL, chip, c->byte );
state_save_register_item( "x76f041", NULL, chip, c->command );
state_save_register_item( "x76f041", NULL, chip, c->address );
state_save_register_item_array( "x76f041", NULL, chip, c->write_buffer );
state_save_register_item_pointer( "x76f041", NULL, chip, c->response_to_reset, SIZE_RESPONSE_TO_RESET );
state_save_register_item_pointer( "x76f041", NULL, chip, c->write_password, SIZE_WRITE_PASSWORD );
state_save_register_item_pointer( "x76f041", NULL, chip, c->read_password, SIZE_READ_PASSWORD );
state_save_register_item_pointer( "x76f041", NULL, chip, c->configuration_password, SIZE_CONFIGURATION_PASSWORD );
state_save_register_item_pointer( "x76f041", NULL, chip, c->configuration_registers, SIZE_CONFIGURATION_REGISTERS );
state_save_register_item_pointer( "x76f041", NULL, chip, c->data, SIZE_DATA );
}
void x76f041_cs_write( int chip, int cs )

View File

@ -117,21 +117,21 @@ void x76f100_init( int chip, UINT8 *data )
c->read_password = &data[ offset ]; offset += SIZE_READ_PASSWORD;
c->data = &data[ offset ]; offset += SIZE_DATA;
state_save_register_item( "x76f100", chip, c->cs );
state_save_register_item( "x76f100", chip, c->rst );
state_save_register_item( "x76f100", chip, c->scl );
state_save_register_item( "x76f100", chip, c->sdaw );
state_save_register_item( "x76f100", chip, c->sdar );
state_save_register_item( "x76f100", chip, c->state );
state_save_register_item( "x76f100", chip, c->shift );
state_save_register_item( "x76f100", chip, c->bit );
state_save_register_item( "x76f100", chip, c->byte );
state_save_register_item( "x76f100", chip, c->command );
state_save_register_item_array( "x76f100", chip, c->write_buffer );
state_save_register_item_pointer( "x76f100", chip, c->response_to_reset, SIZE_RESPONSE_TO_RESET );
state_save_register_item_pointer( "x76f100", chip, c->write_password, SIZE_WRITE_PASSWORD );
state_save_register_item_pointer( "x76f100", chip, c->read_password, SIZE_READ_PASSWORD );
state_save_register_item_pointer( "x76f100", chip, c->data, SIZE_DATA );
state_save_register_item( "x76f100", NULL, chip, c->cs );
state_save_register_item( "x76f100", NULL, chip, c->rst );
state_save_register_item( "x76f100", NULL, chip, c->scl );
state_save_register_item( "x76f100", NULL, chip, c->sdaw );
state_save_register_item( "x76f100", NULL, chip, c->sdar );
state_save_register_item( "x76f100", NULL, chip, c->state );
state_save_register_item( "x76f100", NULL, chip, c->shift );
state_save_register_item( "x76f100", NULL, chip, c->bit );
state_save_register_item( "x76f100", NULL, chip, c->byte );
state_save_register_item( "x76f100", NULL, chip, c->command );
state_save_register_item_array( "x76f100", NULL, chip, c->write_buffer );
state_save_register_item_pointer( "x76f100", NULL, chip, c->response_to_reset, SIZE_RESPONSE_TO_RESET );
state_save_register_item_pointer( "x76f100", NULL, chip, c->write_password, SIZE_WRITE_PASSWORD );
state_save_register_item_pointer( "x76f100", NULL, chip, c->read_password, SIZE_READ_PASSWORD );
state_save_register_item_pointer( "x76f100", NULL, chip, c->data, SIZE_DATA );
}
void x76f100_cs_write( int chip, int cs )

View File

@ -465,7 +465,6 @@ static DEVICE_START( z80ctc )
const z80ctc_interface *intf = device->static_config;
astring *tempstring = astring_alloc();
z80ctc *ctc = get_safe_token(device);
char unique_tag[30];
int cpunum = -1;
int ch;
@ -495,17 +494,15 @@ static DEVICE_START( z80ctc )
ctc->channel[3].zc = NULL;
/* register for save states */
state_save_combine_module_and_tag(unique_tag, "z80ctc", device->tag);
state_save_register_item(unique_tag, 0, ctc->vector);
state_save_register_item("z80ctc", device->tag, 0, ctc->vector);
for (ch = 0; ch < 4; ch++)
{
ctc_channel *channel = &ctc->channel[ch];
state_save_register_item(unique_tag, ch, channel->mode);
state_save_register_item(unique_tag, ch, channel->tconst);
state_save_register_item(unique_tag, ch, channel->down);
state_save_register_item(unique_tag, ch, channel->extclk);
state_save_register_item(unique_tag, ch, channel->int_state);
state_save_register_item("z80ctc", device->tag, ch, channel->mode);
state_save_register_item("z80ctc", device->tag, ch, channel->tconst);
state_save_register_item("z80ctc", device->tag, ch, channel->down);
state_save_register_item("z80ctc", device->tag, ch, channel->extclk);
state_save_register_item("z80ctc", device->tag, ch, channel->int_state);
}
astring_free(tempstring);

View File

@ -419,34 +419,30 @@ WRITE8_DEVICE_HANDLER( z80dma_rdy_w)
static DEVICE_START( z80dma )
{
z80dma_t *z80dma = get_safe_token(device);
char unique_tag[30];
/* validate arguments */
assert(device != NULL);
assert(device->tag != NULL);
assert(strlen(device->tag) < 20);
z80dma->intf = device->static_config;
z80dma->timer = timer_alloc(z80dma_timerproc, (void *) device);
state_save_combine_module_and_tag(unique_tag, "z80dma", device->tag);
state_save_register_item_array("z80dma", device->tag, 0, z80dma->regs);
state_save_register_item_array("z80dma", device->tag, 0, z80dma->regs_follow);
state_save_register_item_array(unique_tag, 0, z80dma->regs);
state_save_register_item_array(unique_tag, 0, z80dma->regs_follow);
state_save_register_item("z80dma", device->tag, 0, z80dma->num_follow);
state_save_register_item("z80dma", device->tag, 0, z80dma->cur_follow);
state_save_register_item("z80dma", device->tag, 0, z80dma->status);
state_save_register_item("z80dma", device->tag, 0, z80dma->dma_enabled);
state_save_register_item(unique_tag, 0, z80dma->num_follow);
state_save_register_item(unique_tag, 0, z80dma->cur_follow);
state_save_register_item(unique_tag, 0, z80dma->status);
state_save_register_item(unique_tag, 0, z80dma->dma_enabled);
state_save_register_item(unique_tag, 0, z80dma->addressA);
state_save_register_item(unique_tag, 0, z80dma->addressB);
state_save_register_item(unique_tag, 0, z80dma->count);
state_save_register_item(unique_tag, 0, z80dma->rdy);
state_save_register_item(unique_tag, 0, z80dma->is_read);
state_save_register_item(unique_tag, 0, z80dma->cur_cycle);
state_save_register_item(unique_tag, 0, z80dma->latch);
state_save_register_item("z80dma", device->tag, 0, z80dma->addressA);
state_save_register_item("z80dma", device->tag, 0, z80dma->addressB);
state_save_register_item("z80dma", device->tag, 0, z80dma->count);
state_save_register_item("z80dma", device->tag, 0, z80dma->rdy);
state_save_register_item("z80dma", device->tag, 0, z80dma->is_read);
state_save_register_item("z80dma", device->tag, 0, z80dma->cur_cycle);
state_save_register_item("z80dma", device->tag, 0, z80dma->latch);
return DEVICE_START_OK;
}

View File

@ -537,7 +537,6 @@ static DEVICE_START( z80pio )
{
const z80pio_interface *intf = device->static_config;
z80pio_t *z80pio = get_safe_token( device );
char unique_tag[30];
z80pio->intr = intf->intr;
z80pio->port_read[0] = intf->portAread;
@ -548,18 +547,16 @@ static DEVICE_START( z80pio )
z80pio->rdyr[1] = intf->rdyB;
/* register for save states */
state_save_combine_module_and_tag(unique_tag, "z80pio", device->tag);
state_save_register_item_array(unique_tag, 0, z80pio->vector);
state_save_register_item_array(unique_tag, 0, z80pio->mode);
state_save_register_item_array(unique_tag, 0, z80pio->enable);
state_save_register_item_array(unique_tag, 0, z80pio->mask);
state_save_register_item_array(unique_tag, 0, z80pio->dir);
state_save_register_item_array(unique_tag, 0, z80pio->rdy);
state_save_register_item_array(unique_tag, 0, z80pio->in);
state_save_register_item_array(unique_tag, 0, z80pio->out);
state_save_register_item_array(unique_tag, 0, z80pio->strobe);
state_save_register_item_array(unique_tag, 0, z80pio->int_state);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->vector);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->mode);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->enable);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->mask);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->dir);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->rdy);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->in);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->out);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->strobe);
state_save_register_item_array("z80pio", device->tag, 0, z80pio->int_state);
return DEVICE_START_OK;
}

View File

@ -1971,7 +1971,7 @@ static void bank_assign_static(int banknum, int cpunum, int spacenum, read_or_wr
{
/* if we're allowed to, wire up state saving for the entry */
if (state_save_registration_allowed())
state_save_register_item("memory", banknum, bank->curentry);
state_save_register_item("memory", NULL, banknum, bank->curentry);
/* fill in information about the bank */
bank->used = TRUE;
@ -2632,8 +2632,8 @@ static void register_for_save(int cpunum, int spacenum, offs_t bytestart, void *
int bytes_per_element = cpudata[cpunum].space[spacenum].dbits/8;
char name[256];
sprintf(name, "%d.%08x-%08x", spacenum, bytestart, (int)(bytestart + numbytes - 1));
state_save_register_memory("memory", cpunum, name, base, bytes_per_element, (UINT32)numbytes / bytes_per_element);
sprintf(name, "%08x-%08x", bytestart, (int)(bytestart + numbytes - 1));
state_save_register_memory("memory", address_space_names[spacenum], cpunum, name, base, bytes_per_element, (UINT32)numbytes / bytes_per_element);
}

Some files were not shown because too many files have changed in this diff Show More