Changed save state system to accept machine parameters where

appropriate, and to keep all global variables hanging off the
machine structure. Once again, this means all state registration
call sites have been touched:

  - state_save_register_global* now takes a machine parameter
  - state_save_register_item* now takes a machine parameter
  - added new state_save_register_device_item* which now uses
     the device name and tag to generate the base name

Extended the fake sound devices to have more populated fields.
Modified sound cores to use tags from the devices and simplified
the start function.

Renumbered CPU and sound get/set info constants to align with
the device constants, and shared values where they were perfectly
aligned.

Set the type field in the fake device_configs for CPU and sound
chips to a get_info stub which calls through to the CPU and sound
specific get_info functions. This means the device_get_info()
functions work for CPU and sound cores, even in their fake state.

Changed device information getters from device_info() to
device_get_info() to match the CPU and sound macros.
This commit is contained in:
Aaron Giles 2008-12-05 08:00:13 +00:00
parent 9c88aa96d0
commit 3c6eacc96f
594 changed files with 6249 additions and 6057 deletions

View File

@ -33,7 +33,7 @@ static UINT8 latch_read[4];
register for save states
-------------------------------------------------*/
int generic_sound_init(void)
int generic_sound_init(running_machine *machine)
{
/* reset latches */
latch_clear_value = 0;
@ -41,8 +41,8 @@ int generic_sound_init(void)
memset(latch_read, 0, sizeof(latch_read));
/* register globals with the save state system */
state_save_register_global_array(latched_value);
state_save_register_global_array(latch_read);
state_save_register_global_array(machine, latched_value);
state_save_register_global_array(machine, latch_read);
return 0;
}

View File

@ -24,7 +24,7 @@
***************************************************************************/
int generic_sound_init(void);
int generic_sound_init(running_machine *machine);
/* latch readers */
READ8_HANDLER( soundlatch_r );

View File

@ -615,85 +615,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", 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);
state_save_register_device_item(device, 0, adsp->core.ax0.u);
state_save_register_device_item(device, 0, adsp->core.ax1.u);
state_save_register_device_item(device, 0, adsp->core.ay0.u);
state_save_register_device_item(device, 0, adsp->core.ay1.u);
state_save_register_device_item(device, 0, adsp->core.ar.u);
state_save_register_device_item(device, 0, adsp->core.af.u);
state_save_register_device_item(device, 0, adsp->core.mx0.u);
state_save_register_device_item(device, 0, adsp->core.mx1.u);
state_save_register_device_item(device, 0, adsp->core.my0.u);
state_save_register_device_item(device, 0, adsp->core.my1.u);
state_save_register_device_item(device, 0, adsp->core.mr.mr);
state_save_register_device_item(device, 0, adsp->core.mf.u);
state_save_register_device_item(device, 0, adsp->core.si.u);
state_save_register_device_item(device, 0, adsp->core.se.u);
state_save_register_device_item(device, 0, adsp->core.sb.u);
state_save_register_device_item(device, 0, adsp->core.sr.sr);
state_save_register_device_item(device, 0, adsp->core.zero.u);
/* "alt" */
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_device_item(device, 0, adsp->alt.ax0.u);
state_save_register_device_item(device, 0, adsp->alt.ax1.u);
state_save_register_device_item(device, 0, adsp->alt.ay0.u);
state_save_register_device_item(device, 0, adsp->alt.ay1.u);
state_save_register_device_item(device, 0, adsp->alt.ar.u);
state_save_register_device_item(device, 0, adsp->alt.af.u);
state_save_register_device_item(device, 0, adsp->alt.mx0.u);
state_save_register_device_item(device, 0, adsp->alt.mx1.u);
state_save_register_device_item(device, 0, adsp->alt.my0.u);
state_save_register_device_item(device, 0, adsp->alt.my1.u);
state_save_register_device_item(device, 0, adsp->alt.mr.mr);
state_save_register_device_item(device, 0, adsp->alt.mf.u);
state_save_register_device_item(device, 0, adsp->alt.si.u);
state_save_register_device_item(device, 0, adsp->alt.se.u);
state_save_register_device_item(device, 0, adsp->alt.sb.u);
state_save_register_device_item(device, 0, adsp->alt.sr.sr);
state_save_register_device_item(device, 0, adsp->alt.zero.u);
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_device_item_array(device, 0, adsp->i);
state_save_register_device_item_array(device, 0, adsp->m);
state_save_register_device_item_array(device, 0, adsp->l);
state_save_register_device_item_array(device, 0, adsp->lmask);
state_save_register_device_item_array(device, 0, adsp->base);
state_save_register_device_item(device, 0, adsp->px);
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_device_item(device, 0, adsp->pc);
state_save_register_device_item(device, 0, adsp->ppc);
state_save_register_device_item(device, 0, adsp->loop);
state_save_register_device_item(device, 0, adsp->loop_condition);
state_save_register_device_item(device, 0, adsp->cntr);
state_save_register_device_item(device, 0, adsp->astat);
state_save_register_device_item(device, 0, adsp->sstat);
state_save_register_device_item(device, 0, adsp->mstat);
state_save_register_device_item(device, 0, adsp->astat_clear);
state_save_register_device_item(device, 0, adsp->idle);
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_device_item_array(device, 0, adsp->loop_stack);
state_save_register_device_item_array(device, 0, adsp->cntr_stack);
state_save_register_device_item_array(device, 0, adsp->pc_stack);
state_save_register_device_item_2d_array(device, 0, adsp->stat_stack);
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_device_item(device, 0, adsp->pc_sp);
state_save_register_device_item(device, 0, adsp->cntr_sp);
state_save_register_device_item(device, 0, adsp->stat_sp);
state_save_register_device_item(device, 0, adsp->loop_sp);
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_device_item(device, 0, adsp->flagout);
state_save_register_device_item(device, 0, adsp->flagin);
state_save_register_device_item(device, 0, adsp->fl0);
state_save_register_device_item(device, 0, adsp->fl1);
state_save_register_device_item(device, 0, adsp->fl2);
state_save_register_device_item(device, 0, adsp->idma_addr);
state_save_register_device_item(device, 0, adsp->idma_cache);
state_save_register_device_item(device, 0, adsp->idma_offs);
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);
state_save_register_device_item(device, 0, adsp->imask);
state_save_register_device_item(device, 0, adsp->icntl);
state_save_register_device_item(device, 0, adsp->ifc);
state_save_register_device_item_array(device, 0, adsp->irq_state);
state_save_register_device_item_array(device, 0, adsp->irq_latch);
return adsp;
}

View File

@ -669,27 +669,27 @@ static CPU_INIT( ALPHA8201 )
R.device = device;
R.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
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);
state_save_register_device_item_array(device, 0, R.RAM);
state_save_register_device_item(device, 0, R.PREVPC);
state_save_register_device_item(device, 0, PC);
state_save_register_device_item(device, 0, regPTR);
state_save_register_device_item(device, 0, ZF);
state_save_register_device_item(device, 0, CF);
state_save_register_device_item(device, 0, R.mb);
#if HANDLE_HALT_LINE
state_save_register_item("ALPHA8201", device->tag, 0, R.halt);
state_save_register_device_item(device, 0, R.halt);
#endif
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);
state_save_register_device_item(device, 0, IX0);
state_save_register_device_item(device, 0, IX1);
state_save_register_device_item(device, 0, IX2);
state_save_register_device_item(device, 0, LP0);
state_save_register_device_item(device, 0, LP1);
state_save_register_device_item(device, 0, LP2);
state_save_register_device_item(device, 0, R.A);
state_save_register_device_item(device, 0, R.B);
state_save_register_device_item(device, 0, R.retptr);
state_save_register_device_item(device, 0, R.savec);
state_save_register_device_item(device, 0, R.savez);
}
/****************************************************************************
* Reset registers to their initial values

View File

@ -511,10 +511,10 @@ static CPU_INIT( arm )
arm.device = device;
arm.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
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);
state_save_register_device_item_array(device, 0, arm.sArmRegister);
state_save_register_device_item_array(device, 0, arm.coproRegister);
state_save_register_device_item(device, 0, arm.pendingIrq);
state_save_register_device_item(device, 0, arm.pendingFiq);
}
/***************************************************************************/

View File

@ -512,13 +512,13 @@ static void arm7_core_init(const char *cpuname, const device_config *device)
{
arm_state *cpustate = device->token;
state_save_register_item_array(cpuname, device->tag, 0, cpustate->sArmRegister);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingIrq);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingFiq);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingAbtD);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingAbtP);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingUnd);
state_save_register_item(cpuname, device->tag, 0, cpustate->pendingSwi);
state_save_register_device_item_array(device, 0, cpustate->sArmRegister);
state_save_register_device_item(device, 0, cpustate->pendingIrq);
state_save_register_device_item(device, 0, cpustate->pendingFiq);
state_save_register_device_item(device, 0, cpustate->pendingAbtD);
state_save_register_device_item(device, 0, cpustate->pendingAbtP);
state_save_register_device_item(device, 0, cpustate->pendingUnd);
state_save_register_device_item(device, 0, cpustate->pendingSwi);
}
// CPU RESET

View File

@ -137,25 +137,25 @@ static CPU_INIT( ccpu )
cpustate->data = memory_find_address_space(device, ADDRESS_SPACE_DATA);
cpustate->io = memory_find_address_space(device, ADDRESS_SPACE_IO);
state_save_register_item("ccpu", device->tag, 0, cpustate->PC);
state_save_register_item("ccpu", device->tag, 0, cpustate->A);
state_save_register_item("ccpu", device->tag, 0, cpustate->B);
state_save_register_item("ccpu", device->tag, 0, cpustate->I);
state_save_register_item("ccpu", device->tag, 0, cpustate->J);
state_save_register_item("ccpu", device->tag, 0, cpustate->P);
state_save_register_item("ccpu", device->tag, 0, cpustate->X);
state_save_register_item("ccpu", device->tag, 0, cpustate->Y);
state_save_register_item("ccpu", device->tag, 0, cpustate->T);
state_save_register_item("ccpu", device->tag, 0, cpustate->a0flag);
state_save_register_item("ccpu", device->tag, 0, cpustate->ncflag);
state_save_register_item("ccpu", device->tag, 0, cpustate->cmpacc);
state_save_register_item("ccpu", device->tag, 0, cpustate->cmpval);
state_save_register_item("ccpu", device->tag, 0, cpustate->miflag);
state_save_register_item("ccpu", device->tag, 0, cpustate->nextmiflag);
state_save_register_item("ccpu", device->tag, 0, cpustate->nextnextmiflag);
state_save_register_item("ccpu", device->tag, 0, cpustate->drflag);
state_save_register_item("ccpu", device->tag, 0, cpustate->waiting);
state_save_register_item("ccpu", device->tag, 0, cpustate->watchdog);
state_save_register_device_item(device, 0, cpustate->PC);
state_save_register_device_item(device, 0, cpustate->A);
state_save_register_device_item(device, 0, cpustate->B);
state_save_register_device_item(device, 0, cpustate->I);
state_save_register_device_item(device, 0, cpustate->J);
state_save_register_device_item(device, 0, cpustate->P);
state_save_register_device_item(device, 0, cpustate->X);
state_save_register_device_item(device, 0, cpustate->Y);
state_save_register_device_item(device, 0, cpustate->T);
state_save_register_device_item(device, 0, cpustate->a0flag);
state_save_register_device_item(device, 0, cpustate->ncflag);
state_save_register_device_item(device, 0, cpustate->cmpacc);
state_save_register_device_item(device, 0, cpustate->cmpval);
state_save_register_device_item(device, 0, cpustate->miflag);
state_save_register_device_item(device, 0, cpustate->nextmiflag);
state_save_register_device_item(device, 0, cpustate->nextnextmiflag);
state_save_register_device_item(device, 0, cpustate->drflag);
state_save_register_device_item(device, 0, cpustate->waiting);
state_save_register_device_item(device, 0, cpustate->watchdog);
}

View File

@ -906,24 +906,24 @@ static CPU_INIT( cdp1802 )
/* register for state saving */
state_save_register_item("cdp1802", device->tag, 0, cpustate->p);
state_save_register_item("cdp1802", device->tag, 0, cpustate->x);
state_save_register_item("cdp1802", device->tag, 0, cpustate->d);
state_save_register_item("cdp1802", device->tag, 0, cpustate->b);
state_save_register_item("cdp1802", device->tag, 0, cpustate->t);
state_save_register_item_array("cdp1802", device->tag, 0, cpustate->r);
state_save_register_item("cdp1802", device->tag, 0, cpustate->df);
state_save_register_item("cdp1802", device->tag, 0, cpustate->ie);
state_save_register_item("cdp1802", device->tag, 0, cpustate->q);
state_save_register_item("cdp1802", device->tag, 0, cpustate->n);
state_save_register_item("cdp1802", device->tag, 0, cpustate->i);
state_save_register_item("cdp1802", device->tag, 0, cpustate->state);
state_save_register_item("cdp1802", device->tag, 0, cpustate->prevmode);
state_save_register_item("cdp1802", device->tag, 0, cpustate->mode);
state_save_register_item("cdp1802", device->tag, 0, cpustate->irq);
state_save_register_item("cdp1802", device->tag, 0, cpustate->dmain);
state_save_register_item("cdp1802", device->tag, 0, cpustate->dmaout);
state_save_register_item("cdp1802", device->tag, 0, cpustate->ef);
state_save_register_device_item(device, 0, cpustate->p);
state_save_register_device_item(device, 0, cpustate->x);
state_save_register_device_item(device, 0, cpustate->d);
state_save_register_device_item(device, 0, cpustate->b);
state_save_register_device_item(device, 0, cpustate->t);
state_save_register_device_item_array(device, 0, cpustate->r);
state_save_register_device_item(device, 0, cpustate->df);
state_save_register_device_item(device, 0, cpustate->ie);
state_save_register_device_item(device, 0, cpustate->q);
state_save_register_device_item(device, 0, cpustate->n);
state_save_register_device_item(device, 0, cpustate->i);
state_save_register_device_item(device, 0, cpustate->state);
state_save_register_device_item(device, 0, cpustate->prevmode);
state_save_register_device_item(device, 0, cpustate->mode);
state_save_register_device_item(device, 0, cpustate->irq);
state_save_register_device_item(device, 0, cpustate->dmain);
state_save_register_device_item(device, 0, cpustate->dmaout);
state_save_register_device_item(device, 0, cpustate->ef);
}
static CPU_GET_CONTEXT( cdp1802 ) { }

View File

@ -218,25 +218,25 @@ static CPU_INIT( cop410 )
/* register for state saving */
state_save_register_item("cop410", device->tag, 0, cop400->pc);
state_save_register_item("cop410", device->tag, 0, cop400->prevpc);
state_save_register_item("cop410", device->tag, 0, cop400->a);
state_save_register_item("cop410", device->tag, 0, cop400->b);
state_save_register_item("cop410", device->tag, 0, cop400->c);
state_save_register_item("cop410", device->tag, 0, cop400->en);
state_save_register_item("cop410", device->tag, 0, cop400->g);
state_save_register_item("cop410", device->tag, 0, cop400->q);
state_save_register_item("cop410", device->tag, 0, cop400->sa);
state_save_register_item("cop410", device->tag, 0, cop400->sb);
state_save_register_item("cop410", device->tag, 0, cop400->sio);
state_save_register_item("cop410", device->tag, 0, cop400->skl);
state_save_register_item("cop410", device->tag, 0, cop400->skip);
state_save_register_item("cop410", device->tag, 0, cop400->skip_lbi);
state_save_register_item("cop410", device->tag, 0, cop400->g_mask);
state_save_register_item("cop410", device->tag, 0, cop400->d_mask);
state_save_register_item("cop410", device->tag, 0, cop400->si);
state_save_register_item("cop410", device->tag, 0, cop400->microbus_int);
state_save_register_item("cop410", device->tag, 0, cop400->halt);
state_save_register_device_item(device, 0, cop400->pc);
state_save_register_device_item(device, 0, cop400->prevpc);
state_save_register_device_item(device, 0, cop400->a);
state_save_register_device_item(device, 0, cop400->b);
state_save_register_device_item(device, 0, cop400->c);
state_save_register_device_item(device, 0, cop400->en);
state_save_register_device_item(device, 0, cop400->g);
state_save_register_device_item(device, 0, cop400->q);
state_save_register_device_item(device, 0, cop400->sa);
state_save_register_device_item(device, 0, cop400->sb);
state_save_register_device_item(device, 0, cop400->sio);
state_save_register_device_item(device, 0, cop400->skl);
state_save_register_device_item(device, 0, cop400->skip);
state_save_register_device_item(device, 0, cop400->skip_lbi);
state_save_register_device_item(device, 0, cop400->g_mask);
state_save_register_device_item(device, 0, cop400->d_mask);
state_save_register_device_item(device, 0, cop400->si);
state_save_register_device_item(device, 0, cop400->microbus_int);
state_save_register_device_item(device, 0, cop400->halt);
}
static CPU_INIT( cop411 )

View File

@ -244,31 +244,31 @@ static CPU_INIT( cop420 )
/* register for state saving */
state_save_register_item("cop420", device->tag, 0, cop400->pc);
state_save_register_item("cop420", device->tag, 0, cop400->prevpc);
state_save_register_item("cop420", device->tag, 0, cop400->a);
state_save_register_item("cop420", device->tag, 0, cop400->b);
state_save_register_item("cop420", device->tag, 0, cop400->c);
state_save_register_item("cop420", device->tag, 0, cop400->en);
state_save_register_item("cop420", device->tag, 0, cop400->g);
state_save_register_item("cop420", device->tag, 0, cop400->q);
state_save_register_item("cop420", device->tag, 0, cop400->sa);
state_save_register_item("cop420", device->tag, 0, cop400->sb);
state_save_register_item("cop420", device->tag, 0, cop400->sc);
state_save_register_item("cop420", device->tag, 0, cop400->sio);
state_save_register_item("cop420", device->tag, 0, cop400->skl);
state_save_register_item("cop420", device->tag, 0, cop400->skip);
state_save_register_item("cop420", device->tag, 0, cop400->skip_lbi);
state_save_register_item("cop420", device->tag, 0, cop400->t);
state_save_register_item("cop420", device->tag, 0, cop400->skt_latch);
state_save_register_item("cop420", device->tag, 0, cop400->g_mask);
state_save_register_item("cop420", device->tag, 0, cop400->d_mask);
state_save_register_item("cop420", device->tag, 0, cop400->in_mask);
state_save_register_item("cop420", device->tag, 0, cop400->si);
state_save_register_item("cop420", device->tag, 0, cop400->last_skip);
state_save_register_item_array("cop420", device->tag, 0, cop400->in);
state_save_register_item("cop420", device->tag, 0, cop400->microbus_int);
state_save_register_item("cop420", device->tag, 0, cop400->halt);
state_save_register_device_item(device, 0, cop400->pc);
state_save_register_device_item(device, 0, cop400->prevpc);
state_save_register_device_item(device, 0, cop400->a);
state_save_register_device_item(device, 0, cop400->b);
state_save_register_device_item(device, 0, cop400->c);
state_save_register_device_item(device, 0, cop400->en);
state_save_register_device_item(device, 0, cop400->g);
state_save_register_device_item(device, 0, cop400->q);
state_save_register_device_item(device, 0, cop400->sa);
state_save_register_device_item(device, 0, cop400->sb);
state_save_register_device_item(device, 0, cop400->sc);
state_save_register_device_item(device, 0, cop400->sio);
state_save_register_device_item(device, 0, cop400->skl);
state_save_register_device_item(device, 0, cop400->skip);
state_save_register_device_item(device, 0, cop400->skip_lbi);
state_save_register_device_item(device, 0, cop400->t);
state_save_register_device_item(device, 0, cop400->skt_latch);
state_save_register_device_item(device, 0, cop400->g_mask);
state_save_register_device_item(device, 0, cop400->d_mask);
state_save_register_device_item(device, 0, cop400->in_mask);
state_save_register_device_item(device, 0, cop400->si);
state_save_register_device_item(device, 0, cop400->last_skip);
state_save_register_device_item_array(device, 0, cop400->in);
state_save_register_device_item(device, 0, cop400->microbus_int);
state_save_register_device_item(device, 0, cop400->halt);
}
static CPU_INIT( cop421 )

View File

@ -256,31 +256,31 @@ static CPU_INIT( cop444 )
/* register for state saving */
state_save_register_item("cop420", device->tag, 0, cop400->pc);
state_save_register_item("cop420", device->tag, 0, cop400->prevpc);
state_save_register_item("cop420", device->tag, 0, cop400->a);
state_save_register_item("cop420", device->tag, 0, cop400->b);
state_save_register_item("cop420", device->tag, 0, cop400->c);
state_save_register_item("cop420", device->tag, 0, cop400->en);
state_save_register_item("cop420", device->tag, 0, cop400->g);
state_save_register_item("cop420", device->tag, 0, cop400->q);
state_save_register_item("cop420", device->tag, 0, cop400->sa);
state_save_register_item("cop420", device->tag, 0, cop400->sb);
state_save_register_item("cop420", device->tag, 0, cop400->sc);
state_save_register_item("cop420", device->tag, 0, cop400->sio);
state_save_register_item("cop420", device->tag, 0, cop400->skl);
state_save_register_item("cop420", device->tag, 0, cop400->skip);
state_save_register_item("cop420", device->tag, 0, cop400->skip_lbi);
state_save_register_item("cop420", device->tag, 0, cop400->t);
state_save_register_item("cop420", device->tag, 0, cop400->skt_latch);
state_save_register_item("cop420", device->tag, 0, cop400->g_mask);
state_save_register_item("cop420", device->tag, 0, cop400->d_mask);
state_save_register_item("cop420", device->tag, 0, cop400->in_mask);
state_save_register_item("cop420", device->tag, 0, cop400->si);
state_save_register_item("cop420", device->tag, 0, cop400->last_skip);
state_save_register_item_array("cop420", device->tag, 0, cop400->in);
state_save_register_item("cop420", device->tag, 0, cop400->microbus_int);
state_save_register_item("cop420", device->tag, 0, cop400->halt);
state_save_register_device_item(device, 0, cop400->pc);
state_save_register_device_item(device, 0, cop400->prevpc);
state_save_register_device_item(device, 0, cop400->a);
state_save_register_device_item(device, 0, cop400->b);
state_save_register_device_item(device, 0, cop400->c);
state_save_register_device_item(device, 0, cop400->en);
state_save_register_device_item(device, 0, cop400->g);
state_save_register_device_item(device, 0, cop400->q);
state_save_register_device_item(device, 0, cop400->sa);
state_save_register_device_item(device, 0, cop400->sb);
state_save_register_device_item(device, 0, cop400->sc);
state_save_register_device_item(device, 0, cop400->sio);
state_save_register_device_item(device, 0, cop400->skl);
state_save_register_device_item(device, 0, cop400->skip);
state_save_register_device_item(device, 0, cop400->skip_lbi);
state_save_register_device_item(device, 0, cop400->t);
state_save_register_device_item(device, 0, cop400->skt_latch);
state_save_register_device_item(device, 0, cop400->g_mask);
state_save_register_device_item(device, 0, cop400->d_mask);
state_save_register_device_item(device, 0, cop400->in_mask);
state_save_register_device_item(device, 0, cop400->si);
state_save_register_device_item(device, 0, cop400->last_skip);
state_save_register_device_item_array(device, 0, cop400->in);
state_save_register_device_item(device, 0, cop400->microbus_int);
state_save_register_device_item(device, 0, cop400->halt);
}
static CPU_INIT( cop425 )

View File

@ -324,22 +324,22 @@ static STATE_POSTLOAD( cquestsnd_postload )
static void cquestsnd_state_register(const device_config *device, const char *type)
{
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_device_item_array(device, 0, cquestsnd.ram);
state_save_register_device_item(device, 0, cquestsnd.q);
state_save_register_device_item(device, 0, cquestsnd.f);
state_save_register_device_item(device, 0, cquestsnd.y);
state_save_register_device_item(device, 0, cquestsnd.cflag);
state_save_register_device_item(device, 0, cquestsnd.vflag);
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_device_item(device, 0, cquestsnd.pc);
state_save_register_device_item(device, 0, cquestsnd.platch);
state_save_register_device_item(device, 0, cquestsnd.rtnlatch);
state_save_register_device_item(device, 0, cquestsnd.adrcntr);
state_save_register_device_item(device, 0, cquestsnd.adrlatch);
state_save_register_device_item(device, 0, cquestsnd.dinlatch);
state_save_register_device_item(device, 0, cquestsnd.ramwlatch);
state_save_register_device_item(device, 0, cquestsnd.prev_ipram);
state_save_register_device_item(device, 0, cquestsnd.prev_ipwrt);
state_save_register_postload(device->machine, cquestsnd_postload, (void *)device);
}
@ -386,31 +386,31 @@ static STATE_POSTLOAD( cquestrot_postload )
static void cquestrot_state_register(const device_config *device, const char *type)
{
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_device_item_array(device, 0, cquestrot.ram);
state_save_register_device_item(device, 0, cquestrot.q);
state_save_register_device_item(device, 0, cquestrot.f);
state_save_register_device_item(device, 0, cquestrot.y);
state_save_register_device_item(device, 0, cquestrot.cflag);
state_save_register_device_item(device, 0, cquestrot.vflag);
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_device_item(device, 0, cquestrot.pc);
state_save_register_device_item(device, 0, cquestrot.seqcnt);
state_save_register_device_item(device, 0, cquestrot.dsrclatch);
state_save_register_device_item(device, 0, cquestrot.rsrclatch);
state_save_register_device_item(device, 0, cquestrot.dynaddr);
state_save_register_device_item(device, 0, cquestrot.dyndata);
state_save_register_device_item(device, 0, cquestrot.yrlatch);
state_save_register_device_item(device, 0, cquestrot.ydlatch);
state_save_register_device_item(device, 0, cquestrot.dinlatch);
state_save_register_device_item(device, 0, cquestrot.divreg);
state_save_register_device_item(device, 0, cquestrot.linedata);
state_save_register_device_item(device, 0, cquestrot.lineaddr);
state_save_register_device_item(device, 0, cquestrot.prev_dred);
state_save_register_device_item(device, 0, cquestrot.prev_dwrt);
state_save_register_device_item(device, 0, cquestrot.wc);
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_device_item_pointer(device, 0, cquestrot.dram, 16384);
state_save_register_device_item_pointer(device, 0, cquestrot.sram, 2048);
state_save_register_postload(device->machine, cquestrot_postload, (void *)device);
}
@ -461,35 +461,35 @@ static STATE_POSTLOAD( cquestlin_postload )
static void cquestlin_state_register(const device_config *device, const char *type)
{
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_device_item_array(device, 0, cquestlin.ram);
state_save_register_device_item(device, 0, cquestlin.q);
state_save_register_device_item(device, 0, cquestlin.f);
state_save_register_device_item(device, 0, cquestlin.y);
state_save_register_device_item(device, 0, cquestlin.cflag);
state_save_register_device_item(device, 0, cquestlin.vflag);
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_device_item(device, 0, cquestlin.pc[0]);
state_save_register_device_item(device, 0, cquestlin.pc[1]);
state_save_register_device_item(device, 0, cquestlin.seqcnt);
state_save_register_device_item(device, 0, cquestlin.clatch);
state_save_register_device_item(device, 0, cquestlin.zlatch);
state_save_register_device_item(device, 0, cquestlin.xcnt);
state_save_register_device_item(device, 0, cquestlin.ycnt);
state_save_register_device_item(device, 0, cquestlin.sreg);
state_save_register_device_item(device, 0, cquestlin.fadlatch);
state_save_register_device_item(device, 0, cquestlin.badlatch);
state_save_register_device_item(device, 0, cquestlin.sramdlatch);
state_save_register_device_item(device, 0, cquestlin.fglatch);
state_save_register_device_item(device, 0, cquestlin.bglatch);
state_save_register_device_item(device, 0, cquestlin.gt0reg);
state_save_register_device_item(device, 0, cquestlin.fdxreg);
state_save_register_device_item(device, 0, cquestlin.field);
state_save_register_device_item(device, 0, cquestlin.clkcnt);
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_device_item_pointer(device, 0, cquestlin.sram, 4096);
state_save_register_device_item_pointer(device, 0, cquestlin.ptr_ram, 1024);
state_save_register_device_item_pointer(device, 0, cquestlin.e_stack, 32768);
state_save_register_device_item_pointer(device, 0, cquestlin.o_stack, 32768);
state_save_register_postload(device->machine, cquestlin_postload, (void *)device);
}

View File

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

View File

@ -1529,15 +1529,15 @@ static void hyperstone_init(const device_config *device, int index, int clock, c
{
hyperstone_state *cpustate = device->token;
state_save_register_item_array("E132XS", device->tag, 0, cpustate->global_regs);
state_save_register_item_array("E132XS", device->tag, 0, cpustate->local_regs);
state_save_register_item("E132XS", device->tag, 0, cpustate->ppc);
state_save_register_item("E132XS", device->tag, 0, cpustate->trap_entry);
state_save_register_item("E132XS", device->tag, 0, cpustate->delay.delay_pc);
state_save_register_item("E132XS", device->tag, 0, cpustate->instruction_length);
state_save_register_item("E132XS", device->tag, 0, cpustate->intblock);
state_save_register_item("E132XS", device->tag, 0, cpustate->delay.delay_cmd);
state_save_register_item("E132XS", device->tag, 0, cpustate->tr_clocks_per_tick);
state_save_register_device_item_array(device, 0, cpustate->global_regs);
state_save_register_device_item_array(device, 0, cpustate->local_regs);
state_save_register_device_item(device, 0, cpustate->ppc);
state_save_register_device_item(device, 0, cpustate->trap_entry);
state_save_register_device_item(device, 0, cpustate->delay.delay_pc);
state_save_register_device_item(device, 0, cpustate->instruction_length);
state_save_register_device_item(device, 0, cpustate->intblock);
state_save_register_device_item(device, 0, cpustate->delay.delay_cmd);
state_save_register_device_item(device, 0, cpustate->tr_clocks_per_tick);
cpustate->irq_callback = irqcallback;
cpustate->device = device;

View File

@ -332,30 +332,30 @@ static CPU_INIT( g65816 )
cpustate->device = device;
cpustate->program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
state_save_register_item("G65816", device->tag, 0, cpustate->a);
state_save_register_item("G65816", device->tag, 0, cpustate->b);
state_save_register_item("G65816", device->tag, 0, cpustate->x);
state_save_register_item("G65816", device->tag, 0, cpustate->y);
state_save_register_item("G65816", device->tag, 0, cpustate->s);
state_save_register_item("G65816", device->tag, 0, cpustate->pc);
state_save_register_item("G65816", device->tag, 0, cpustate->ppc);
state_save_register_item("G65816", device->tag, 0, cpustate->pb);
state_save_register_item("G65816", device->tag, 0, cpustate->db);
state_save_register_item("G65816", device->tag, 0, cpustate->d);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_e);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_m);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_x);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_n);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_v);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_d);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_i);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_z);
state_save_register_item("G65816", device->tag, 0, cpustate->flag_c);
state_save_register_item("G65816", device->tag, 0, cpustate->line_irq);
state_save_register_item("G65816", device->tag, 0, cpustate->line_nmi);
state_save_register_item("G65816", device->tag, 0, cpustate->ir);
state_save_register_item("G65816", device->tag, 0, cpustate->irq_delay);
state_save_register_item("G65816", device->tag, 0, cpustate->stopped);
state_save_register_device_item(device, 0, cpustate->a);
state_save_register_device_item(device, 0, cpustate->b);
state_save_register_device_item(device, 0, cpustate->x);
state_save_register_device_item(device, 0, cpustate->y);
state_save_register_device_item(device, 0, cpustate->s);
state_save_register_device_item(device, 0, cpustate->pc);
state_save_register_device_item(device, 0, cpustate->ppc);
state_save_register_device_item(device, 0, cpustate->pb);
state_save_register_device_item(device, 0, cpustate->db);
state_save_register_device_item(device, 0, cpustate->d);
state_save_register_device_item(device, 0, cpustate->flag_e);
state_save_register_device_item(device, 0, cpustate->flag_m);
state_save_register_device_item(device, 0, cpustate->flag_x);
state_save_register_device_item(device, 0, cpustate->flag_n);
state_save_register_device_item(device, 0, cpustate->flag_v);
state_save_register_device_item(device, 0, cpustate->flag_d);
state_save_register_device_item(device, 0, cpustate->flag_i);
state_save_register_device_item(device, 0, cpustate->flag_z);
state_save_register_device_item(device, 0, cpustate->flag_c);
state_save_register_device_item(device, 0, cpustate->line_irq);
state_save_register_device_item(device, 0, cpustate->line_nmi);
state_save_register_device_item(device, 0, cpustate->ir);
state_save_register_device_item(device, 0, cpustate->irq_delay);
state_save_register_device_item(device, 0, cpustate->stopped);
state_save_register_postload(device->machine, g65816_restore_state, cpustate);
}

View File

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

View File

@ -215,18 +215,18 @@ static CPU_INIT(h8)
h8->program = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
h8->io = cpu_get_address_space(device, ADDRESS_SPACE_IO);
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("H8/3002", device->tag, 0, h8->mode_8bit);
state_save_register_device_item(device, 0, h8->h8err);
state_save_register_device_item_array(device, 0, h8->regs);
state_save_register_device_item(device, 0, h8->pc);
state_save_register_device_item(device, 0, h8->ppc);
state_save_register_device_item(device, 0, h8->h8_IRQrequestH);
state_save_register_device_item(device, 0, h8->h8_IRQrequestL);
state_save_register_device_item(device, 0, h8->ccr);
state_save_register_device_item(device, 0, h8->mode_8bit);
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_device_item_array(device, 0, h8->per_regs);
state_save_register_device_item(device, 0, h8->h8TSTR);
state_save_register_device_item_array(device, 0, h8->h8TCNT);
state_save_register_postload(device->machine, h8_onstateload, h8);

View File

@ -225,18 +225,18 @@ static CPU_INIT(h8bit)
h8->program = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
h8->io = cpu_get_address_space(device, ADDRESS_SPACE_IO);
state_save_register_item("H8/300", device->tag, 0, h8->h8err);
state_save_register_item_array("H8/300", device->tag, 0, h8->regs);
state_save_register_item("H8/300", device->tag, 0, h8->pc);
state_save_register_item("H8/300", device->tag, 0, h8->ppc);
state_save_register_item("H8/300", device->tag, 0, h8->h8_IRQrequestH);
state_save_register_item("H8/300", device->tag, 0, h8->h8_IRQrequestL);
state_save_register_item("H8/300", device->tag, 0, h8->ccr);
state_save_register_item("H8/300", device->tag, 0, h8->mode_8bit);
state_save_register_device_item(device, 0, h8->h8err);
state_save_register_device_item_array(device, 0, h8->regs);
state_save_register_device_item(device, 0, h8->pc);
state_save_register_device_item(device, 0, h8->ppc);
state_save_register_device_item(device, 0, h8->h8_IRQrequestH);
state_save_register_device_item(device, 0, h8->h8_IRQrequestL);
state_save_register_device_item(device, 0, h8->ccr);
state_save_register_device_item(device, 0, h8->mode_8bit);
state_save_register_item_array("H8/300", device->tag, 0, h8->per_regs);
state_save_register_item("H8/300", device->tag, 0, h8->h8TSTR);
state_save_register_item_array("H8/300", device->tag, 0, h8->h8TCNT);
state_save_register_device_item_array(device, 0, h8->per_regs);
state_save_register_device_item(device, 0, h8->h8TSTR);
state_save_register_device_item_array(device, 0, h8->h8TCNT);
state_save_register_postload(h8->device->machine, h8_onstateload, h8);
}

View File

@ -532,20 +532,20 @@ static CPU_INIT( hd6309 )
m68_state->regTable[2] = &(B);
m68_state->regTable[3] = &m68_state->dummy_byte;
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_device_item(device, 0, PC);
state_save_register_device_item(device, 0, U);
state_save_register_device_item(device, 0, S);
state_save_register_device_item(device, 0, X);
state_save_register_device_item(device, 0, Y);
state_save_register_device_item(device, 0, V);
state_save_register_device_item(device, 0, DP);
state_save_register_device_item(device, 0, CC);
state_save_register_device_item(device, 0, MD);
state_save_register_postload(device->machine, hd6309_postload, (void *) device);
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]);
state_save_register_device_item(device, 0, m68_state->int_state);
state_save_register_device_item(device, 0, m68_state->nmi_state);
state_save_register_device_item(device, 0, m68_state->irq_state[0]);
state_save_register_device_item(device, 0, m68_state->irq_state[1]);
}
/****************************************************************************/

View File

@ -527,59 +527,59 @@ static CPU_INIT( i386 )
I.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
I.io = memory_find_address_space(device, ADDRESS_SPACE_IO);
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_device_item_array(device, 0, I.reg.d);
state_save_register_device_item(device, 0, I.sreg[ES].selector);
state_save_register_device_item(device, 0, I.sreg[ES].base);
state_save_register_device_item(device, 0, I.sreg[ES].limit);
state_save_register_device_item(device, 0, I.sreg[ES].flags);
state_save_register_device_item(device, 0, I.sreg[CS].selector);
state_save_register_device_item(device, 0, I.sreg[CS].base);
state_save_register_device_item(device, 0, I.sreg[CS].limit);
state_save_register_device_item(device, 0, I.sreg[CS].flags);
state_save_register_device_item(device, 0, I.sreg[SS].selector);
state_save_register_device_item(device, 0, I.sreg[SS].base);
state_save_register_device_item(device, 0, I.sreg[SS].limit);
state_save_register_device_item(device, 0, I.sreg[SS].flags);
state_save_register_device_item(device, 0, I.sreg[DS].selector);
state_save_register_device_item(device, 0, I.sreg[DS].base);
state_save_register_device_item(device, 0, I.sreg[DS].limit);
state_save_register_device_item(device, 0, I.sreg[DS].flags);
state_save_register_device_item(device, 0, I.sreg[FS].selector);
state_save_register_device_item(device, 0, I.sreg[FS].base);
state_save_register_device_item(device, 0, I.sreg[FS].limit);
state_save_register_device_item(device, 0, I.sreg[FS].flags);
state_save_register_device_item(device, 0, I.sreg[GS].selector);
state_save_register_device_item(device, 0, I.sreg[GS].base);
state_save_register_device_item(device, 0, I.sreg[GS].limit);
state_save_register_device_item(device, 0, I.sreg[GS].flags);
state_save_register_device_item(device, 0, I.eip);
state_save_register_device_item(device, 0, I.prev_eip);
state_save_register_device_item(device, 0, I.CF);
state_save_register_device_item(device, 0, I.DF);
state_save_register_device_item(device, 0, I.SF);
state_save_register_device_item(device, 0, I.OF);
state_save_register_device_item(device, 0, I.ZF);
state_save_register_device_item(device, 0, I.PF);
state_save_register_device_item(device, 0, I.AF);
state_save_register_device_item(device, 0, I.IF);
state_save_register_device_item(device, 0, I.TF);
state_save_register_device_item_array(device, 0, I.cr);
state_save_register_device_item_array(device, 0, I.dr);
state_save_register_device_item_array(device, 0, I.tr);
state_save_register_device_item(device, 0, I.idtr.base);
state_save_register_device_item(device, 0, I.idtr.limit);
state_save_register_device_item(device, 0, I.gdtr.base);
state_save_register_device_item(device, 0, I.gdtr.limit);
state_save_register_device_item(device, 0, I.task.base);
state_save_register_device_item(device, 0, I.task.segment);
state_save_register_device_item(device, 0, I.task.limit);
state_save_register_device_item(device, 0, I.task.flags);
state_save_register_device_item(device, 0, I.ldtr.base);
state_save_register_device_item(device, 0, I.ldtr.segment);
state_save_register_device_item(device, 0, I.ldtr.limit);
state_save_register_device_item(device, 0, I.ldtr.flags);
state_save_register_device_item(device, 0, I.irq_state);
state_save_register_device_item(device, 0, I.performed_intersegment_jump);
state_save_register_postload(device->machine, i386_postload, NULL);
}

View File

@ -1365,21 +1365,21 @@ static CPU_INIT( i8085 )
I.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
I.io = memory_find_address_space(device, ADDRESS_SPACE_IO);
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);
state_save_register_device_item(device, 0, I.AF.w.l);
state_save_register_device_item(device, 0, I.BC.w.l);
state_save_register_device_item(device, 0, I.DE.w.l);
state_save_register_device_item(device, 0, I.HL.w.l);
state_save_register_device_item(device, 0, I.SP.w.l);
state_save_register_device_item(device, 0, I.PC.w.l);
state_save_register_device_item(device, 0, I.HALT);
state_save_register_device_item(device, 0, I.IM);
state_save_register_device_item(device, 0, I.IREQ);
state_save_register_device_item(device, 0, I.ISRV);
state_save_register_device_item(device, 0, I.INTR);
state_save_register_device_item(device, 0, I.IRQ2);
state_save_register_device_item(device, 0, I.IRQ1);
state_save_register_device_item(device, 0, I.STATUS);
state_save_register_device_item_array(device, 0, I.irq_state);
}
/****************************************************************************
@ -1602,21 +1602,21 @@ static CPU_INIT( i8080 )
I.irq_callback = irqcallback;
I.device = device;
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);
state_save_register_device_item(device, 0, I.AF.w.l);
state_save_register_device_item(device, 0, I.BC.w.l);
state_save_register_device_item(device, 0, I.DE.w.l);
state_save_register_device_item(device, 0, I.HL.w.l);
state_save_register_device_item(device, 0, I.SP.w.l);
state_save_register_device_item(device, 0, I.PC.w.l);
state_save_register_device_item(device, 0, I.HALT);
state_save_register_device_item(device, 0, I.IM);
state_save_register_device_item(device, 0, I.IREQ);
state_save_register_device_item(device, 0, I.ISRV);
state_save_register_device_item(device, 0, I.INTR);
state_save_register_device_item(device, 0, I.IRQ2);
state_save_register_device_item(device, 0, I.IRQ1);
state_save_register_device_item(device, 0, I.STATUS);
state_save_register_device_item_array(device, 0, I.irq_state);
}
static void i8080_set_irq_line(int irqline, int state)

View File

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

View File

@ -95,27 +95,27 @@ static struct i80x86_timing timing;
static void i8086_state_register(const device_config *device)
{
static const char type[] = "I8086";
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 */
state_save_register_device_item_array(device, 0, I.regs.w);
state_save_register_device_item(device, 0, I.pc);
state_save_register_device_item(device, 0, I.prevpc);
state_save_register_device_item_array(device, 0, I.base);
state_save_register_device_item_array(device, 0, I.sregs);
state_save_register_device_item(device, 0, I.flags);
state_save_register_device_item(device, 0, I.AuxVal);
state_save_register_device_item(device, 0, I.OverVal);
state_save_register_device_item(device, 0, I.SignVal);
state_save_register_device_item(device, 0, I.ZeroVal);
state_save_register_device_item(device, 0, I.CarryVal);
state_save_register_device_item(device, 0, I.DirVal);
state_save_register_device_item(device, 0, I.ParityVal);
state_save_register_device_item(device, 0, I.TF);
state_save_register_device_item(device, 0, I.IF);
state_save_register_device_item(device, 0, I.MF);
state_save_register_device_item(device, 0, I.int_vector);
state_save_register_device_item(device, 0, I.nmi_state);
state_save_register_device_item(device, 0, I.irq_state);
state_save_register_device_item(device, 0, I.extra_cycles);
state_save_register_device_item(device, 0, I.test_state); /* PJB 03/05 */
}
static CPU_INIT( i8086 )

View File

@ -848,21 +848,21 @@ static CPU_INIT( i8x41 )
upi41_state->subtype = 8041;
upi41_state->ram_mask = I8X41_intRAM_MASK;
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);
state_save_register_device_item(device, 0, upi41_state->ppc);
state_save_register_device_item(device, 0, upi41_state->pc);
state_save_register_device_item(device, 0, upi41_state->timer);
state_save_register_device_item(device, 0, upi41_state->prescaler);
state_save_register_device_item(device, 0, upi41_state->subtype);
state_save_register_device_item(device, 0, upi41_state->a);
state_save_register_device_item(device, 0, upi41_state->psw);
state_save_register_device_item(device, 0, upi41_state->state);
state_save_register_device_item(device, 0, upi41_state->enable);
state_save_register_device_item(device, 0, upi41_state->control);
state_save_register_device_item(device, 0, upi41_state->dbbi);
state_save_register_device_item(device, 0, upi41_state->dbbo);
state_save_register_device_item(device, 0, upi41_state->p1);
state_save_register_device_item(device, 0, upi41_state->p2);
state_save_register_device_item(device, 0, upi41_state->p2_hs);
}
static CPU_INIT( i8042 )

View File

@ -2060,16 +2060,16 @@ static CPU_INIT( i960 )
i960->device = device;
i960->program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
state_save_register_item("i960", device->tag, 0, i960->PIP);
state_save_register_item("i960", device->tag, 0, i960->SAT);
state_save_register_item("i960", device->tag, 0, i960->PRCB);
state_save_register_item("i960", device->tag, 0, i960->PC);
state_save_register_item("i960", device->tag, 0, i960->AC);
state_save_register_item("i960", device->tag, 0, i960->ICR);
state_save_register_item_array("i960", device->tag, 0, i960->r);
state_save_register_item_array("i960", device->tag, 0, i960->fp);
state_save_register_item_2d_array("i960", device->tag, 0, i960->rcache);
state_save_register_item_array("i960", device->tag, 0, i960->rcache_frame_addr);
state_save_register_device_item(device, 0, i960->PIP);
state_save_register_device_item(device, 0, i960->SAT);
state_save_register_device_item(device, 0, i960->PRCB);
state_save_register_device_item(device, 0, i960->PC);
state_save_register_device_item(device, 0, i960->AC);
state_save_register_device_item(device, 0, i960->ICR);
state_save_register_device_item_array(device, 0, i960->r);
state_save_register_device_item_array(device, 0, i960->fp);
state_save_register_device_item_2d_array(device, 0, i960->rcache);
state_save_register_device_item_array(device, 0, i960->rcache_frame_addr);
}
static CPU_DISASSEMBLE( i960 )

View File

@ -422,10 +422,10 @@ static void init_common(int isdsp, const device_config *device, cpu_irq_callback
if (configdata != NULL)
jaguar->cpu_interrupt = configdata->cpu_int_callback;
state_save_register_item_array("jaguar", device->tag, 0, jaguar->r);
state_save_register_item_array("jaguar", device->tag, 0, jaguar->a);
state_save_register_item_array("jaguar", device->tag, 0, jaguar->ctrl);
state_save_register_item("jaguar", device->tag, 0, jaguar->ppc);
state_save_register_device_item_array(device, 0, jaguar->r);
state_save_register_device_item_array(device, 0, jaguar->a);
state_save_register_device_item_array(device, 0, jaguar->ctrl);
state_save_register_device_item(device, 0, jaguar->ppc);
state_save_register_postload(device->machine, jaguar_postload, (void *)device);
}

View File

@ -390,18 +390,18 @@ static CPU_INIT( konami )
konami.device = device;
konami.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
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]);
state_save_register_device_item(device, 0, PC);
state_save_register_device_item(device, 0, U);
state_save_register_device_item(device, 0, S);
state_save_register_device_item(device, 0, X);
state_save_register_device_item(device, 0, Y);
state_save_register_device_item(device, 0, D);
state_save_register_device_item(device, 0, DP);
state_save_register_device_item(device, 0, CC);
state_save_register_device_item(device, 0, konami.int_state);
state_save_register_device_item(device, 0, konami.nmi_state);
state_save_register_device_item(device, 0, konami.irq_state[0]);
state_save_register_device_item(device, 0, konami.irq_state[1]);
}
static CPU_RESET( konami )

View File

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

View File

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

View File

@ -839,47 +839,47 @@ static TIMER_CALLBACK(m6800_rx_tick)
****************************************************************************/
static void state_register(m68_state_t *m68_state, const char *type)
{
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_device_item(m68_state->device, 0, m68_state->ppc.w.l);
state_save_register_device_item(m68_state->device, 0, m68_state->pc.w.l);
state_save_register_device_item(m68_state->device, 0, m68_state->s.w.l);
state_save_register_device_item(m68_state->device, 0, m68_state->x.w.l);
state_save_register_device_item(m68_state->device, 0, m68_state->d.w.l);
state_save_register_device_item(m68_state->device, 0, m68_state->cc);
state_save_register_device_item(m68_state->device, 0, m68_state->wai_state);
state_save_register_device_item(m68_state->device, 0, m68_state->nmi_state);
state_save_register_device_item_array(m68_state->device, 0, m68_state->irq_state);
state_save_register_device_item(m68_state->device, 0, m68_state->ic_eddge);
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_device_item(m68_state->device, 0, m68_state->port1_ddr);
state_save_register_device_item(m68_state->device, 0, m68_state->port2_ddr);
state_save_register_device_item(m68_state->device, 0, m68_state->port3_ddr);
state_save_register_device_item(m68_state->device, 0, m68_state->port4_ddr);
state_save_register_device_item(m68_state->device, 0, m68_state->port1_data);
state_save_register_device_item(m68_state->device, 0, m68_state->port2_data);
state_save_register_device_item(m68_state->device, 0, m68_state->port3_data);
state_save_register_device_item(m68_state->device, 0, m68_state->port4_data);
state_save_register_device_item(m68_state->device, 0, m68_state->tcsr);
state_save_register_device_item(m68_state->device, 0, m68_state->pending_tcsr);
state_save_register_device_item(m68_state->device, 0, m68_state->irq2);
state_save_register_device_item(m68_state->device, 0, m68_state->ram_ctrl);
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_device_item(m68_state->device, 0, m68_state->counter.d);
state_save_register_device_item(m68_state->device, 0, m68_state->output_compare.d);
state_save_register_device_item(m68_state->device, 0, m68_state->input_capture);
state_save_register_device_item(m68_state->device, 0, m68_state->timer_over.d);
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);
state_save_register_device_item(m68_state->device, 0, m68_state->clock);
state_save_register_device_item(m68_state->device, 0, m68_state->trcsr);
state_save_register_device_item(m68_state->device, 0, m68_state->rmcr);
state_save_register_device_item(m68_state->device, 0, m68_state->rdr);
state_save_register_device_item(m68_state->device, 0, m68_state->tdr);
state_save_register_device_item(m68_state->device, 0, m68_state->rsr);
state_save_register_device_item(m68_state->device, 0, m68_state->tsr);
state_save_register_device_item(m68_state->device, 0, m68_state->rxbits);
state_save_register_device_item(m68_state->device, 0, m68_state->txbits);
state_save_register_device_item(m68_state->device, 0, m68_state->txstate);
state_save_register_device_item(m68_state->device, 0, m68_state->trcsr_read);
state_save_register_device_item(m68_state->device, 0, m68_state->tx);
}
static CPU_INIT( m6800 )

View File

@ -515,23 +515,23 @@ static CPU_INIT( m68k )
}
/* Note, D covers A because the dar array is common, REG_A=REG_D+8 */
state_save_register_item_array("m68k", device->tag, 0, REG_D);
state_save_register_item("m68k", device->tag, 0, REG_PPC);
state_save_register_item("m68k", device->tag, 0, REG_PC);
state_save_register_item("m68k", device->tag, 0, REG_USP);
state_save_register_item("m68k", device->tag, 0, REG_ISP);
state_save_register_item("m68k", device->tag, 0, REG_MSP);
state_save_register_item("m68k", device->tag, 0, m68k->vbr);
state_save_register_item("m68k", device->tag, 0, m68k->sfc);
state_save_register_item("m68k", device->tag, 0, m68k->dfc);
state_save_register_item("m68k", device->tag, 0, m68k->cacr);
state_save_register_item("m68k", device->tag, 0, m68k->caar);
state_save_register_item("m68k", device->tag, 0, m68k->save_sr);
state_save_register_item("m68k", device->tag, 0, m68k->int_level);
state_save_register_item("m68k", device->tag, 0, m68k->save_stopped);
state_save_register_item("m68k", device->tag, 0, m68k->save_halted);
state_save_register_item("m68k", device->tag, 0, m68k->pref_addr);
state_save_register_item("m68k", device->tag, 0, m68k->pref_data);
state_save_register_device_item_array(device, 0, REG_D);
state_save_register_device_item(device, 0, REG_PPC);
state_save_register_device_item(device, 0, REG_PC);
state_save_register_device_item(device, 0, REG_USP);
state_save_register_device_item(device, 0, REG_ISP);
state_save_register_device_item(device, 0, REG_MSP);
state_save_register_device_item(device, 0, m68k->vbr);
state_save_register_device_item(device, 0, m68k->sfc);
state_save_register_device_item(device, 0, m68k->dfc);
state_save_register_device_item(device, 0, m68k->cacr);
state_save_register_device_item(device, 0, m68k->caar);
state_save_register_device_item(device, 0, m68k->save_sr);
state_save_register_device_item(device, 0, m68k->int_level);
state_save_register_device_item(device, 0, m68k->save_stopped);
state_save_register_device_item(device, 0, m68k->save_halted);
state_save_register_device_item(device, 0, m68k->pref_addr);
state_save_register_device_item(device, 0, m68k->pref_data);
state_save_register_presave(device->machine, m68k_presave, m68k);
state_save_register_postload(device->machine, m68k_postload, m68k);
}

View File

@ -419,13 +419,13 @@ static void Interrupt(void)
static void state_register(const char *type, const device_config *device)
{
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);
state_save_register_device_item(device, 0, A);
state_save_register_device_item(device, 0, PC);
state_save_register_device_item(device, 0, S);
state_save_register_device_item(device, 0, X);
state_save_register_device_item(device, 0, CC);
state_save_register_device_item(device, 0, m6805.pending_interrupts);
state_save_register_device_item_array(device, 0, m6805.irq_state);
}
static CPU_INIT( m6805 )

View File

@ -388,18 +388,18 @@ static CPU_INIT( m6809 )
/* setup regtable */
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);
state_save_register_device_item(device, 0, PC);
state_save_register_device_item(device, 0, PPC);
state_save_register_device_item(device, 0, D);
state_save_register_device_item(device, 0, DP);
state_save_register_device_item(device, 0, U);
state_save_register_device_item(device, 0, S);
state_save_register_device_item(device, 0, X);
state_save_register_device_item(device, 0, Y);
state_save_register_device_item(device, 0, CC);
state_save_register_device_item_array(device, 0, m68_state->irq_state);
state_save_register_device_item(device, 0, m68_state->int_state);
state_save_register_device_item(device, 0, m68_state->nmi_state);
}

View File

@ -139,7 +139,7 @@ static CPU_INIT( mb86233 )
mb86233.BRAM = &mb86233.RAM[0x200];
mb86233.Tables = (UINT32*) memory_region(device->machine, _config->tablergn);
state_save_register_global_pointer(mb86233.RAM,2 * 0x200 * sizeof(UINT32));
state_save_register_global_pointer(device->machine, mb86233.RAM,2 * 0x200 * sizeof(UINT32));
}
static CPU_RESET( mb86233 )

View File

@ -134,27 +134,27 @@ static CPU_INIT( mb88 )
mb88.data = memory_find_address_space(device, ADDRESS_SPACE_DATA);
mb88.io = memory_find_address_space(device, ADDRESS_SPACE_IO);
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);
state_save_register_device_item(device, 0, mb88.PC);
state_save_register_device_item(device, 0, mb88.PA);
state_save_register_device_item(device, 0, mb88.SP[0]);
state_save_register_device_item(device, 0, mb88.SP[1]);
state_save_register_device_item(device, 0, mb88.SP[2]);
state_save_register_device_item(device, 0, mb88.SP[3]);
state_save_register_device_item(device, 0, mb88.SI);
state_save_register_device_item(device, 0, mb88.A);
state_save_register_device_item(device, 0, mb88.X);
state_save_register_device_item(device, 0, mb88.Y);
state_save_register_device_item(device, 0, mb88.st);
state_save_register_device_item(device, 0, mb88.zf);
state_save_register_device_item(device, 0, mb88.cf);
state_save_register_device_item(device, 0, mb88.vf);
state_save_register_device_item(device, 0, mb88.sf);
state_save_register_device_item(device, 0, mb88.nf);
state_save_register_device_item(device, 0, mb88.pio);
state_save_register_device_item(device, 0, mb88.TH);
state_save_register_device_item(device, 0, mb88.TL);
state_save_register_device_item(device, 0, mb88.SB);
state_save_register_device_item(device, 0, mb88.pending_interrupt);
}
static CPU_RESET( mb88 )

View File

@ -716,25 +716,25 @@ static void mcs48_init(const device_config *device, int index, int clock, cpu_ir
/* ensure that regptr is valid before get_info gets called */
update_regptr(cpustate);
state_save_register_item("mcs48", device->tag, 0, cpustate->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, cpustate->p1);
state_save_register_item("mcs48", device->tag, 0, cpustate->p2);
state_save_register_item("mcs48", device->tag, 0, cpustate->f1);
state_save_register_item("mcs48", device->tag, 0, cpustate->ea);
state_save_register_item("mcs48", device->tag, 0, cpustate->timer);
state_save_register_item("mcs48", device->tag, 0, cpustate->prescaler);
state_save_register_item("mcs48", device->tag, 0, cpustate->t1_history);
state_save_register_item("mcs48", device->tag, 0, cpustate->irq_state);
state_save_register_item("mcs48", device->tag, 0, cpustate->irq_in_progress);
state_save_register_item("mcs48", device->tag, 0, cpustate->timer_overflow);
state_save_register_item("mcs48", device->tag, 0, cpustate->timer_flag);
state_save_register_item("mcs48", device->tag, 0, cpustate->tirq_enabled);
state_save_register_item("mcs48", device->tag, 0, cpustate->xirq_enabled);
state_save_register_item("mcs48", device->tag, 0, cpustate->timecount_enabled);
state_save_register_item("mcs48", device->tag, 0, cpustate->a11);
state_save_register_device_item(device, 0, cpustate->prevpc.w.l);
state_save_register_device_item(device, 0, PC);
state_save_register_device_item(device, 0, A);
state_save_register_device_item(device, 0, PSW);
state_save_register_device_item(device, 0, cpustate->p1);
state_save_register_device_item(device, 0, cpustate->p2);
state_save_register_device_item(device, 0, cpustate->f1);
state_save_register_device_item(device, 0, cpustate->ea);
state_save_register_device_item(device, 0, cpustate->timer);
state_save_register_device_item(device, 0, cpustate->prescaler);
state_save_register_device_item(device, 0, cpustate->t1_history);
state_save_register_device_item(device, 0, cpustate->irq_state);
state_save_register_device_item(device, 0, cpustate->irq_in_progress);
state_save_register_device_item(device, 0, cpustate->timer_overflow);
state_save_register_device_item(device, 0, cpustate->timer_flag);
state_save_register_device_item(device, 0, cpustate->tirq_enabled);
state_save_register_device_item(device, 0, cpustate->xirq_enabled);
state_save_register_device_item(device, 0, cpustate->timecount_enabled);
state_save_register_device_item(device, 0, cpustate->a11);
}

View File

@ -2072,18 +2072,18 @@ static CPU_INIT( mcs51 )
/* Save states */
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 );
state_save_register_device_item(device, 0, mcs51_state->ppc);
state_save_register_device_item(device, 0, mcs51_state->pc);
state_save_register_device_item(device, 0, mcs51_state->rwm );
state_save_register_device_item(device, 0, mcs51_state->cur_irq_prio );
state_save_register_device_item(device, 0, mcs51_state->last_line_state );
state_save_register_device_item(device, 0, mcs51_state->t0_cnt );
state_save_register_device_item(device, 0, mcs51_state->t1_cnt );
state_save_register_device_item(device, 0, mcs51_state->t2_cnt );
state_save_register_device_item(device, 0, mcs51_state->t2ex_cnt );
state_save_register_device_item(device, 0, mcs51_state->recalc_parity );
state_save_register_device_item_array(device, 0, mcs51_state->irq_prio );
state_save_register_device_item(device, 0, mcs51_state->irq_active );
}
static CPU_INIT( i80c51 )
@ -2381,9 +2381,9 @@ static CPU_INIT( ds5002fp )
mcs51_state->sfr_read = ds5002fp_sfr_read;
mcs51_state->sfr_write = ds5002fp_sfr_write;
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 );
state_save_register_device_item(device, 0, mcs51_state->ds5002fp.previous_ta );
state_save_register_device_item(device, 0, mcs51_state->ds5002fp.ta_window );
state_save_register_device_item(device, 0, mcs51_state->ds5002fp.range );
}

View File

@ -101,17 +101,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", 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);
state_save_register_device_item(device, 0, mips->pc);
state_save_register_device_item_array(device, 0, mips->r);
state_save_register_device_item_2d_array(device, 0, mips->cpr);
state_save_register_device_item_2d_array(device, 0, mips->ccr);
state_save_register_device_item(device, 0, mips->llbit);
state_save_register_device_item(device, 0, mips->count_zero_time);
for (tlbindex = 0; tlbindex < ARRAY_LENGTH(mips->tlb); tlbindex++)
{
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);
state_save_register_device_item(device, tlbindex, mips->tlb[tlbindex].page_mask);
state_save_register_device_item(device, tlbindex, mips->tlb[tlbindex].entry_hi);
state_save_register_device_item_array(device, tlbindex, mips->tlb[tlbindex].entry_lo);
}
}

View File

@ -1599,23 +1599,23 @@ static void mips_state_register( const char *type, const device_config *device )
{
psxcpu_state *psxcpu = device->token;
state_save_register_item( type, device->tag, 0, psxcpu->op );
state_save_register_item( type, device->tag, 0, psxcpu->pc );
state_save_register_item( type, device->tag, 0, psxcpu->delayv );
state_save_register_item( type, device->tag, 0, psxcpu->delayr );
state_save_register_item( type, device->tag, 0, psxcpu->hi );
state_save_register_item( type, device->tag, 0, psxcpu->lo );
state_save_register_item( type, device->tag, 0, psxcpu->biu );
state_save_register_item_array( type, device->tag, 0, psxcpu->r );
state_save_register_item_array( type, device->tag, 0, psxcpu->cp0r );
state_save_register_item_array( type, device->tag, 0, psxcpu->cp2cr );
state_save_register_item_array( type, device->tag, 0, psxcpu->cp2dr );
state_save_register_item_array( type, device->tag, 0, psxcpu->icacheTag );
state_save_register_item_array( type, device->tag, 0, psxcpu->icache );
state_save_register_item_array( type, device->tag, 0, psxcpu->dcache );
state_save_register_item( type, device->tag, 0, psxcpu->multiplier_operation );
state_save_register_item( type, device->tag, 0, psxcpu->multiplier_operand1 );
state_save_register_item( type, device->tag, 0, psxcpu->multiplier_operand2 );
state_save_register_device_item( device, 0, psxcpu->op );
state_save_register_device_item( device, 0, psxcpu->pc );
state_save_register_device_item( device, 0, psxcpu->delayv );
state_save_register_device_item( device, 0, psxcpu->delayr );
state_save_register_device_item( device, 0, psxcpu->hi );
state_save_register_device_item( device, 0, psxcpu->lo );
state_save_register_device_item( device, 0, psxcpu->biu );
state_save_register_device_item_array( device, 0, psxcpu->r );
state_save_register_device_item_array( device, 0, psxcpu->cp0r );
state_save_register_device_item_array( device, 0, psxcpu->cp2cr );
state_save_register_device_item_array( device, 0, psxcpu->cp2dr );
state_save_register_device_item_array( device, 0, psxcpu->icacheTag );
state_save_register_device_item_array( device, 0, psxcpu->icache );
state_save_register_device_item_array( device, 0, psxcpu->dcache );
state_save_register_device_item( device, 0, psxcpu->multiplier_operation );
state_save_register_device_item( device, 0, psxcpu->multiplier_operand1 );
state_save_register_device_item( device, 0, psxcpu->multiplier_operand2 );
state_save_register_postload( device->machine, mips_postload, psxcpu );
}

View File

@ -1095,30 +1095,28 @@ static void nec_init(const device_config *device, int index, int clock, cpu_irq_
const nec_config *config = device->static_config ? device->static_config : &default_config;
nec_state_t *nec_state = device->token;
static const char *const names[]={"V20","V30","V33"};
nec_state->config = config;
state_save_register_item_array(names[type], device->tag, 0, nec_state->regs.w);
state_save_register_item_array(names[type], device->tag, 0, nec_state->sregs);
state_save_register_device_item_array(device, 0, nec_state->regs.w);
state_save_register_device_item_array(device, 0, nec_state->sregs);
state_save_register_item(names[type], device->tag, 0, nec_state->ip);
state_save_register_item(names[type], device->tag, 0, nec_state->TF);
state_save_register_item(names[type], device->tag, 0, nec_state->IF);
state_save_register_item(names[type], device->tag, 0, nec_state->DF);
state_save_register_item(names[type], device->tag, 0, nec_state->MF);
state_save_register_item(names[type], device->tag, 0, nec_state->SignVal);
state_save_register_item(names[type], device->tag, 0, nec_state->int_vector);
state_save_register_item(names[type], device->tag, 0, nec_state->pending_irq);
state_save_register_item(names[type], device->tag, 0, nec_state->nmi_state);
state_save_register_item(names[type], device->tag, 0, nec_state->irq_state);
state_save_register_item(names[type], device->tag, 0, nec_state->poll_state);
state_save_register_item(names[type], device->tag, 0, nec_state->AuxVal);
state_save_register_item(names[type], device->tag, 0, nec_state->OverVal);
state_save_register_item(names[type], device->tag, 0, nec_state->ZeroVal);
state_save_register_item(names[type], device->tag, 0, nec_state->CarryVal);
state_save_register_item(names[type], device->tag, 0, nec_state->ParityVal);
state_save_register_device_item(device, 0, nec_state->ip);
state_save_register_device_item(device, 0, nec_state->TF);
state_save_register_device_item(device, 0, nec_state->IF);
state_save_register_device_item(device, 0, nec_state->DF);
state_save_register_device_item(device, 0, nec_state->MF);
state_save_register_device_item(device, 0, nec_state->SignVal);
state_save_register_device_item(device, 0, nec_state->int_vector);
state_save_register_device_item(device, 0, nec_state->pending_irq);
state_save_register_device_item(device, 0, nec_state->nmi_state);
state_save_register_device_item(device, 0, nec_state->irq_state);
state_save_register_device_item(device, 0, nec_state->poll_state);
state_save_register_device_item(device, 0, nec_state->AuxVal);
state_save_register_device_item(device, 0, nec_state->OverVal);
state_save_register_device_item(device, 0, nec_state->ZeroVal);
state_save_register_device_item(device, 0, nec_state->CarryVal);
state_save_register_device_item(device, 0, nec_state->ParityVal);
nec_state->irq_callback = irqcallback;
nec_state->device = device;

View File

@ -693,33 +693,33 @@ static const opcode_fn opcode_000_other[16]=
static CPU_INIT( pic16C5x )
{
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);
state_save_register_device_item(device, 0, old_data);
state_save_register_device_item(device, 0, R.W);
state_save_register_device_item(device, 0, R.ALU);
state_save_register_device_item(device, 0, R.OPTION);
state_save_register_device_item(device, 0, R.TMR0);
state_save_register_device_item(device, 0, R.PCL);
state_save_register_device_item(device, 0, R.STATUS);
state_save_register_device_item(device, 0, R.FSR);
state_save_register_device_item(device, 0, R.PORTA);
state_save_register_device_item(device, 0, R.PORTB);
state_save_register_device_item(device, 0, R.PORTC);
state_save_register_device_item(device, 0, R.TRISA);
state_save_register_device_item(device, 0, R.TRISB);
state_save_register_device_item(device, 0, R.TRISC);
state_save_register_device_item(device, 0, old_T0);
state_save_register_device_item(device, 0, picRAMmask);
state_save_register_device_item(device, 0, R.WDT);
state_save_register_device_item(device, 0, R.prescaler);
state_save_register_device_item(device, 0, R.STACK[0]);
state_save_register_device_item(device, 0, R.STACK[1]);
state_save_register_device_item(device, 0, R.PC);
state_save_register_device_item(device, 0, R.PREVPC);
state_save_register_device_item(device, 0, R.CONFIG);
state_save_register_device_item(device, 0, R.opcode.d);
state_save_register_device_item(device, 0, delay_timer);
state_save_register_device_item(device, 0, picmodel);
state_save_register_device_item(device, 0, pic16C5x_reset_vector);
R.device = device;
R.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);

View File

@ -218,36 +218,36 @@ void ppccom_init(powerpc_state *ppc, powerpc_flavor flavor, UINT8 cap, int tb_di
}
/* register for save states */
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);
state_save_register_device_item(device, 0, ppc->pc);
state_save_register_device_item_array(device, 0, ppc->r);
state_save_register_device_item_array(device, 0, ppc->f);
state_save_register_device_item_array(device, 0, ppc->cr);
state_save_register_device_item(device, 0, ppc->xerso);
state_save_register_device_item(device, 0, ppc->fpscr);
state_save_register_device_item(device, 0, ppc->msr);
state_save_register_device_item_array(device, 0, ppc->sr);
state_save_register_device_item_array(device, 0, ppc->spr);
state_save_register_device_item_array(device, 0, ppc->dcr);
if (cap & PPCCAP_4XX)
{
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);
state_save_register_device_item_array(device, 0, ppc->spu.regs);
state_save_register_device_item(device, 0, ppc->spu.txbuf);
state_save_register_device_item(device, 0, ppc->spu.rxbuf);
state_save_register_device_item_array(device, 0, ppc->spu.rxbuffer);
state_save_register_device_item(device, 0, ppc->spu.rxin);
state_save_register_device_item(device, 0, ppc->spu.rxout);
state_save_register_device_item(device, 0, ppc->pit_reload);
state_save_register_device_item(device, 0, ppc->irqstate);
}
if (cap & PPCCAP_603_MMU)
{
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_device_item(device, 0, ppc->mmu603_cmp);
state_save_register_device_item_array(device, 0, ppc->mmu603_hash);
state_save_register_device_item_array(device, 0, ppc->mmu603_r);
}
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);
state_save_register_device_item(device, 0, ppc->irq_pending);
state_save_register_device_item(device, 0, ppc->tb_zero_cycles);
state_save_register_device_item(device, 0, ppc->dec_zero_cycles);
}

View File

@ -766,18 +766,18 @@ static CPU_INIT( s2650 )
s2650c->program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
s2650c->io = memory_find_address_space(device, ADDRESS_SPACE_IO);
state_save_register_item("s2650", device->tag, 0, s2650c->ppc);
state_save_register_item("s2650", device->tag, 0, s2650c->page);
state_save_register_item("s2650", device->tag, 0, s2650c->iar);
state_save_register_item("s2650", device->tag, 0, s2650c->ea);
state_save_register_item("s2650", device->tag, 0, s2650c->psl);
state_save_register_item("s2650", device->tag, 0, s2650c->psu);
state_save_register_item("s2650", device->tag, 0, s2650c->r);
state_save_register_item_array("s2650", device->tag, 0, s2650c->reg);
state_save_register_item("s2650", device->tag, 0, s2650c->halt);
state_save_register_item("s2650", device->tag, 0, s2650c->ir);
state_save_register_item_array("s2650", device->tag, 0, s2650c->ras);
state_save_register_item("s2650", device->tag, 0, s2650c->irq_state);
state_save_register_device_item(device, 0, s2650c->ppc);
state_save_register_device_item(device, 0, s2650c->page);
state_save_register_device_item(device, 0, s2650c->iar);
state_save_register_device_item(device, 0, s2650c->ea);
state_save_register_device_item(device, 0, s2650c->psl);
state_save_register_device_item(device, 0, s2650c->psu);
state_save_register_device_item(device, 0, s2650c->r);
state_save_register_device_item_array(device, 0, s2650c->reg);
state_save_register_device_item(device, 0, s2650c->halt);
state_save_register_device_item(device, 0, s2650c->ir);
state_save_register_device_item_array(device, 0, s2650c->ras);
state_save_register_device_item(device, 0, s2650c->irq_state);
}
static CPU_RESET( s2650 )

View File

@ -107,29 +107,29 @@ static CPU_INIT( saturn )
saturn.device = device;
saturn.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
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);
state_save_register_device_item_array(device, 0,saturn.reg[R0]);
state_save_register_device_item_array(device, 0,saturn.reg[R1]);
state_save_register_device_item_array(device, 0,saturn.reg[R2]);
state_save_register_device_item_array(device, 0,saturn.reg[R3]);
state_save_register_device_item_array(device, 0,saturn.reg[R4]);
state_save_register_device_item_array(device, 0,saturn.reg[A]);
state_save_register_device_item_array(device, 0,saturn.reg[B]);
state_save_register_device_item_array(device, 0,saturn.reg[C]);
state_save_register_device_item_array(device, 0,saturn.reg[D]);
state_save_register_device_item_array(device, 0,saturn.d);
state_save_register_device_item(device, 0,saturn.pc);
state_save_register_device_item(device, 0,saturn.oldpc);
state_save_register_device_item_array(device, 0,saturn.rstk);
state_save_register_device_item(device, 0,saturn.out);
state_save_register_device_item(device, 0,saturn.carry);
state_save_register_device_item(device, 0,saturn.st);
state_save_register_device_item(device, 0,saturn.hst);
state_save_register_device_item(device, 0,saturn.nmi_state);
state_save_register_device_item(device, 0,saturn.irq_state);
state_save_register_device_item(device, 0,saturn.irq_enable);
state_save_register_device_item(device, 0,saturn.in_irq);
state_save_register_device_item(device, 0,saturn.pending_irq);
state_save_register_device_item(device, 0,saturn.sleeping);
}
static CPU_RESET( saturn )

View File

@ -737,29 +737,29 @@ void sh2_common_init(int alloc, const device_config *device, int index, int cloc
sh2->program = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
sh2->internal = cpu_get_address_space(device, ADDRESS_SPACE_PROGRAM);
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);
state_save_register_device_item(device, 0, sh2->pc);
state_save_register_device_item(device, 0, sh2->r[15]);
state_save_register_device_item(device, 0, sh2->sr);
state_save_register_device_item(device, 0, sh2->pr);
state_save_register_device_item(device, 0, sh2->gbr);
state_save_register_device_item(device, 0, sh2->vbr);
state_save_register_device_item(device, 0, sh2->mach);
state_save_register_device_item(device, 0, sh2->macl);
state_save_register_device_item(device, 0, sh2->r[ 0]);
state_save_register_device_item(device, 0, sh2->r[ 1]);
state_save_register_device_item(device, 0, sh2->r[ 2]);
state_save_register_device_item(device, 0, sh2->r[ 3]);
state_save_register_device_item(device, 0, sh2->r[ 4]);
state_save_register_device_item(device, 0, sh2->r[ 5]);
state_save_register_device_item(device, 0, sh2->r[ 6]);
state_save_register_device_item(device, 0, sh2->r[ 7]);
state_save_register_device_item(device, 0, sh2->r[ 8]);
state_save_register_device_item(device, 0, sh2->r[ 9]);
state_save_register_device_item(device, 0, sh2->r[10]);
state_save_register_device_item(device, 0, sh2->r[11]);
state_save_register_device_item(device, 0, sh2->r[12]);
state_save_register_device_item(device, 0, sh2->r[13]);
state_save_register_device_item(device, 0, sh2->r[14]);
state_save_register_device_item(device, 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", 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);
state_save_register_device_item(device, 0, sh4.pc);
state_save_register_device_item(device, 0, sh4.r[15]);
state_save_register_device_item(device, 0, sh4.sr);
state_save_register_device_item(device, 0, sh4.pr);
state_save_register_device_item(device, 0, sh4.gbr);
state_save_register_device_item(device, 0, sh4.vbr);
state_save_register_device_item(device, 0, sh4.mach);
state_save_register_device_item(device, 0, sh4.macl);
state_save_register_device_item(device, 0, sh4.spc);
state_save_register_device_item(device, 0, sh4.ssr);
state_save_register_device_item(device, 0, sh4.sgr);
state_save_register_device_item(device, 0, sh4.fpscr);
state_save_register_device_item(device, 0, sh4.r[ 0]);
state_save_register_device_item(device, 0, sh4.r[ 1]);
state_save_register_device_item(device, 0, sh4.r[ 2]);
state_save_register_device_item(device, 0, sh4.r[ 3]);
state_save_register_device_item(device, 0, sh4.r[ 4]);
state_save_register_device_item(device, 0, sh4.r[ 5]);
state_save_register_device_item(device, 0, sh4.r[ 6]);
state_save_register_device_item(device, 0, sh4.r[ 7]);
state_save_register_device_item(device, 0, sh4.r[ 8]);
state_save_register_device_item(device, 0, sh4.r[ 9]);
state_save_register_device_item(device, 0, sh4.r[10]);
state_save_register_device_item(device, 0, sh4.r[11]);
state_save_register_device_item(device, 0, sh4.r[12]);
state_save_register_device_item(device, 0, sh4.r[13]);
state_save_register_device_item(device, 0, sh4.r[14]);
state_save_register_device_item(device, 0, sh4.fr[ 0]);
state_save_register_device_item(device, 0, sh4.fr[ 1]);
state_save_register_device_item(device, 0, sh4.fr[ 2]);
state_save_register_device_item(device, 0, sh4.fr[ 3]);
state_save_register_device_item(device, 0, sh4.fr[ 4]);
state_save_register_device_item(device, 0, sh4.fr[ 5]);
state_save_register_device_item(device, 0, sh4.fr[ 6]);
state_save_register_device_item(device, 0, sh4.fr[ 7]);
state_save_register_device_item(device, 0, sh4.fr[ 8]);
state_save_register_device_item(device, 0, sh4.fr[ 9]);
state_save_register_device_item(device, 0, sh4.fr[10]);
state_save_register_device_item(device, 0, sh4.fr[11]);
state_save_register_device_item(device, 0, sh4.fr[12]);
state_save_register_device_item(device, 0, sh4.fr[13]);
state_save_register_device_item(device, 0, sh4.fr[14]);
state_save_register_device_item(device, 0, sh4.fr[15]);
state_save_register_device_item(device, 0, sh4.xf[ 0]);
state_save_register_device_item(device, 0, sh4.xf[ 1]);
state_save_register_device_item(device, 0, sh4.xf[ 2]);
state_save_register_device_item(device, 0, sh4.xf[ 3]);
state_save_register_device_item(device, 0, sh4.xf[ 4]);
state_save_register_device_item(device, 0, sh4.xf[ 5]);
state_save_register_device_item(device, 0, sh4.xf[ 6]);
state_save_register_device_item(device, 0, sh4.xf[ 7]);
state_save_register_device_item(device, 0, sh4.xf[ 8]);
state_save_register_device_item(device, 0, sh4.xf[ 9]);
state_save_register_device_item(device, 0, sh4.xf[10]);
state_save_register_device_item(device, 0, sh4.xf[11]);
state_save_register_device_item(device, 0, sh4.xf[12]);
state_save_register_device_item(device, 0, sh4.xf[13]);
state_save_register_device_item(device, 0, sh4.xf[14]);
state_save_register_device_item(device, 0, sh4.xf[15]);
state_save_register_device_item(device, 0, sh4.ea);
state_save_register_device_item(device, 0, sh4.fpul);
state_save_register_device_item(device, 0, sh4.dbr);
state_save_register_device_item_array(device, 0, sh4.exception_priority);
state_save_register_device_item_array(device, 0, sh4.exception_requesting);
}

View File

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

View File

@ -504,17 +504,17 @@ static CPU_INIT( ssp1601 )
{
ssp1601_state_t *ssp1601_state = device->token;
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_state->stack);
state_save_register_item_array(CHIP_NAME, device->tag, 0, ssp1601_state->r);
state_save_register_item_array(CHIP_NAME, device->tag, 0, ssp1601_state->RAM);
state_save_register_device_item(device, 0, rX);
state_save_register_device_item(device, 0, rY);
state_save_register_device_item(device, 0, rA32);
state_save_register_device_item(device, 0, rST);
state_save_register_device_item(device, 0, rSTACK);
state_save_register_device_item(device, 0, rPC);
state_save_register_device_item(device, 0, rP.d);
state_save_register_device_item(device, 0, PPC);
state_save_register_device_item_array(device, 0, ssp1601_state->stack);
state_save_register_device_item_array(device, 0, ssp1601_state->r);
state_save_register_device_item_array(device, 0, ssp1601_state->RAM);
/* clear the state */
memset(ssp1601_state, 0, sizeof(ssp1601_state_t));

View File

@ -277,19 +277,19 @@ static CPU_INIT( t11 )
cpustate->device = device;
cpustate->program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
state_save_register_item("t11", device->tag, 0, cpustate->ppc.w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[0].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[1].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[2].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[3].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[4].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[5].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[6].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->reg[7].w.l);
state_save_register_item("t11", device->tag, 0, cpustate->psw.w.l);
state_save_register_item("t11", device->tag, 0, cpustate->initial_pc);
state_save_register_item("t11", device->tag, 0, cpustate->wait_state);
state_save_register_item("t11", device->tag, 0, cpustate->irq_state);
state_save_register_device_item(device, 0, cpustate->ppc.w.l);
state_save_register_device_item(device, 0, cpustate->reg[0].w.l);
state_save_register_device_item(device, 0, cpustate->reg[1].w.l);
state_save_register_device_item(device, 0, cpustate->reg[2].w.l);
state_save_register_device_item(device, 0, cpustate->reg[3].w.l);
state_save_register_device_item(device, 0, cpustate->reg[4].w.l);
state_save_register_device_item(device, 0, cpustate->reg[5].w.l);
state_save_register_device_item(device, 0, cpustate->reg[6].w.l);
state_save_register_device_item(device, 0, cpustate->reg[7].w.l);
state_save_register_device_item(device, 0, cpustate->psw.w.l);
state_save_register_device_item(device, 0, cpustate->initial_pc);
state_save_register_device_item(device, 0, cpustate->wait_state);
state_save_register_device_item(device, 0, cpustate->irq_state);
}

View File

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

View File

@ -715,21 +715,21 @@ static const opcode_fn opcode_7F_other[32]=
****************************************************************************/
static CPU_INIT( tms32010 )
{
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);
state_save_register_device_item(device, 0, R.PC);
state_save_register_device_item(device, 0, R.PREVPC);
state_save_register_device_item(device, 0, R.STR);
state_save_register_device_item(device, 0, R.ACC.d);
state_save_register_device_item(device, 0, R.ALU.d);
state_save_register_device_item(device, 0, R.Preg.d);
state_save_register_device_item(device, 0, R.Treg);
state_save_register_device_item(device, 0, R.AR[0]);
state_save_register_device_item(device, 0, R.AR[1]);
state_save_register_device_item(device, 0, R.STACK[0]);
state_save_register_device_item(device, 0, R.STACK[1]);
state_save_register_device_item(device, 0, R.STACK[2]);
state_save_register_device_item(device, 0, R.STACK[3]);
state_save_register_device_item(device, 0, R.INTF);
state_save_register_device_item(device, 0, R.opcode.d);
R.device = device;
R.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);

View File

@ -1740,38 +1740,38 @@ static CPU_INIT( tms32025 )
R.data = memory_find_address_space(device, ADDRESS_SPACE_DATA);
R.io = memory_find_address_space(device, ADDRESS_SPACE_IO);
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_device_item(device, 0, R.PC);
state_save_register_device_item(device, 0, R.STR0);
state_save_register_device_item(device, 0, R.STR1);
state_save_register_device_item(device, 0, R.PFC);
state_save_register_device_item(device, 0, R.IFR);
state_save_register_device_item(device, 0, R.RPTC);
state_save_register_device_item(device, 0, R.ACC.d);
state_save_register_device_item(device, 0, R.ALU.d);
state_save_register_device_item(device, 0, R.Preg.d);
state_save_register_device_item(device, 0, R.Treg);
state_save_register_device_item(device, 0, R.AR[0]);
state_save_register_device_item(device, 0, R.AR[1]);
state_save_register_device_item(device, 0, R.AR[2]);
state_save_register_device_item(device, 0, R.AR[3]);
state_save_register_device_item(device, 0, R.AR[4]);
state_save_register_device_item(device, 0, R.AR[5]);
state_save_register_device_item(device, 0, R.AR[6]);
state_save_register_device_item(device, 0, R.AR[7]);
state_save_register_device_item(device, 0, R.STACK[0]);
state_save_register_device_item(device, 0, R.STACK[1]);
state_save_register_device_item(device, 0, R.STACK[2]);
state_save_register_device_item(device, 0, R.STACK[3]);
state_save_register_device_item(device, 0, R.STACK[4]);
state_save_register_device_item(device, 0, R.STACK[5]);
state_save_register_device_item(device, 0, R.STACK[6]);
state_save_register_device_item(device, 0, R.STACK[7]);
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);
state_save_register_device_item(device, 0, R.idle);
state_save_register_device_item(device, 0, R.hold);
state_save_register_device_item(device, 0, R.external_mem_access);
state_save_register_device_item(device, 0, R.init_load_addr);
state_save_register_device_item(device, 0, R.PREVPC);
}
/****************************************************************************

View File

@ -387,15 +387,15 @@ static CPU_INIT( tms32031 )
tms->iack_w = configdata->iack_w;
}
state_save_register_item("tms32031", device->tag, 0, tms->pc);
state_save_register_device_item(device, 0, tms->pc);
for (i = 0; i < 36; i++)
state_save_register_generic("tms32031", device->tag, i, "reg", tms->r[i].i8, UINT8, 8);
state_save_register_item("tms32031", device->tag, 0, tms->bkmask);
state_save_register_item("tms32031", device->tag, 0, tms->irq_state);
state_save_register_item("tms32031", device->tag, 0, tms->delayed);
state_save_register_item("tms32031", device->tag, 0, tms->irq_pending);
state_save_register_item("tms32031", device->tag, 0, tms->mcu_mode);
state_save_register_item("tms32031", device->tag, 0, tms->is_idling);
state_save_register_generic(device->machine, "tms32031", device->tag, i, "reg", tms->r[i].i8, UINT8, 8);
state_save_register_device_item(device, 0, tms->bkmask);
state_save_register_device_item(device, 0, tms->irq_state);
state_save_register_device_item(device, 0, tms->delayed);
state_save_register_device_item(device, 0, tms->irq_pending);
state_save_register_device_item(device, 0, tms->mcu_mode);
state_save_register_device_item(device, 0, tms->is_idling);
}
static CPU_RESET( tms32031 )

View File

@ -633,17 +633,17 @@ static CPU_INIT( tms34010 )
/* allocate the shiftreg */
tms->shiftreg = auto_malloc(SHIFTREG_SIZE);
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_device_item(device, 0, tms->pc);
state_save_register_device_item(device, 0, tms->st);
state_save_register_device_item(device, 0, tms->reset_deferred);
state_save_register_device_item_pointer(device, 0, tms->shiftreg, SHIFTREG_SIZE / 2);
state_save_register_device_item_array(device, 0, tms->IOregs);
state_save_register_device_item(device, 0, tms->convsp);
state_save_register_device_item(device, 0, tms->convdp);
state_save_register_device_item(device, 0, tms->convmp);
state_save_register_device_item(device, 0, tms->pixelshift);
state_save_register_device_item(device, 0, tms->gfxcycles);
state_save_register_device_item_pointer(device, 0, (&tms->regs[0].reg), ARRAY_LENGTH(tms->regs));
state_save_register_postload(device->machine, tms34010_state_postload, tms);
}
@ -1107,12 +1107,16 @@ VIDEO_UPDATE( tms340x0 )
for (cpunum = 0; cpunum < ARRAY_LENGTH(screen->machine->cpu); cpunum++)
{
const device_config *cpudevice = screen->machine->cpu[cpunum];
if (cpudevice != NULL && (cpudevice->type == (device_type)CPU_TMS34010 || cpudevice->type == (device_type)CPU_TMS34020))
if (cpudevice != NULL)
{
tms = cpudevice->token;
if (tms->config != NULL && tms->config->scanline_callback != NULL && tms->screen == screen)
break;
tms = NULL;
const cpu_class_header *classdata = cpudevice->classtoken;
if (classdata->cputype == CPU_TMS34010 || classdata->cputype == CPU_TMS34020)
{
tms = cpudevice->token;
if (tms->config != NULL && tms->config->scanline_callback != NULL && tms->screen == screen)
break;
tms = NULL;
}
}
}
if (tms == NULL)

View File

@ -195,23 +195,23 @@ static CPU_INIT( tms7000 )
memset(tms7000.rf, 0, 0x80);
/* Save register state */
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);
state_save_register_device_item(device, 0, pPC);
state_save_register_device_item(device, 0, pSP);
state_save_register_device_item(device, 0, pSR);
/* Save Interrupt state */
state_save_register_item_array("tms7000", device->tag, 0, tms7000.irq_state);
state_save_register_device_item_array(device, 0, tms7000.irq_state);
/* Save register and perpherial file state */
state_save_register_item_array("tms7000", device->tag, 0, tms7000.rf);
state_save_register_item_array("tms7000", device->tag, 0, tms7000.pf);
state_save_register_device_item_array(device, 0, tms7000.rf);
state_save_register_device_item_array(device, 0, tms7000.pf);
/* Save timer state */
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_device_item(device, 0, tms7000.t1_prescaler);
state_save_register_device_item(device, 0, tms7000.t1_capture_latch);
state_save_register_device_item(device, 0, tms7000.t1_decrementer);
state_save_register_item("tms7000", device->tag, 0, tms7000.idle_state);
state_save_register_device_item(device, 0, tms7000.idle_state);
}
static CPU_RESET( tms7000 )

View File

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

View File

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

View File

@ -926,26 +926,24 @@ static CPU_DISASSEMBLE( nec )
static void nec_init(const device_config *device, int index, int clock, cpu_irq_callback irqcallback, int type)
{
static const char *const names[]={"V20","V30","V33","V30MZ"};
state_save_register_device_item_array(device, 0, I.regs.w);
state_save_register_device_item_array(device, 0, 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], 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);
state_save_register_device_item(device, 0, I.ip);
state_save_register_device_item(device, 0, I.TF);
state_save_register_device_item(device, 0, I.IF);
state_save_register_device_item(device, 0, I.DF);
state_save_register_device_item(device, 0, I.MF);
state_save_register_device_item(device, 0, I.SignVal);
state_save_register_device_item(device, 0, I.int_vector);
state_save_register_device_item(device, 0, I.pending_irq);
state_save_register_device_item(device, 0, I.nmi_state);
state_save_register_device_item(device, 0, I.irq_state);
state_save_register_device_item(device, 0, I.AuxVal);
state_save_register_device_item(device, 0, I.OverVal);
state_save_register_device_item(device, 0, I.ZeroVal);
state_save_register_device_item(device, 0, I.CarryVal);
state_save_register_device_item(device, 0, I.ParityVal);
I.irq_callback = irqcallback;
I.device = device;

View File

@ -310,14 +310,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, 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);
state_save_register_device_item_array(device, 0, v60.reg);
state_save_register_device_item(device, 0, v60.irq_line);
state_save_register_device_item(device, 0, v60.nmi_line);
state_save_register_device_item(device, 0, v60.PPC);
state_save_register_device_item(device, 0, _CY);
state_save_register_device_item(device, 0, _OV);
state_save_register_device_item(device, 0, _S);
state_save_register_device_item(device, 0, _Z);
}
static CPU_INIT( v60 )

View File

@ -957,10 +957,10 @@ static CPU_INIT( v810 )
v810.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
v810.io = memory_find_address_space(device, ADDRESS_SPACE_IO);
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);
state_save_register_device_item_array(device, 0, v810.reg);
state_save_register_device_item(device, 0, v810.irq_line);
state_save_register_device_item(device, 0, v810.nmi_line);
state_save_register_device_item(device, 0, v810.PPC);
}

View File

@ -80,19 +80,19 @@ vtlb_state *vtlb_alloc(const device_config *cpu, int space, int fixed_entries, i
/* 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("vtlb", cpu->tag, space, vtlb->live, fixed_entries + dynamic_entries);
state_save_register_device_item_pointer(cpu, 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("vtlb", cpu->tag, space, vtlb->table, 1 << (vtlb->addrwidth - vtlb->pageshift));
state_save_register_device_item_pointer(cpu, 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("vtlb", cpu->tag, space, vtlb->fixedpages, fixed_entries);
state_save_register_device_item_pointer(cpu, space, vtlb->fixedpages, fixed_entries);
}
return vtlb;
}

View File

@ -1909,31 +1909,31 @@ static CPU_INIT( z180 )
Z180.program = memory_find_address_space(device, ADDRESS_SPACE_PROGRAM);
Z180.iospace = memory_find_address_space(device, ADDRESS_SPACE_IO);
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);
state_save_register_device_item(device, 0, Z180.AF.w.l);
state_save_register_device_item(device, 0, Z180.BC.w.l);
state_save_register_device_item(device, 0, Z180.DE.w.l);
state_save_register_device_item(device, 0, Z180.HL.w.l);
state_save_register_device_item(device, 0, Z180.IX.w.l);
state_save_register_device_item(device, 0, Z180.IY.w.l);
state_save_register_device_item(device, 0, Z180.PC.w.l);
state_save_register_device_item(device, 0, Z180.SP.w.l);
state_save_register_device_item(device, 0, Z180.AF2.w.l);
state_save_register_device_item(device, 0, Z180.BC2.w.l);
state_save_register_device_item(device, 0, Z180.DE2.w.l);
state_save_register_device_item(device, 0, Z180.HL2.w.l);
state_save_register_device_item(device, 0, Z180.R);
state_save_register_device_item(device, 0, Z180.R2);
state_save_register_device_item(device, 0, Z180.IFF1);
state_save_register_device_item(device, 0, Z180.IFF2);
state_save_register_device_item(device, 0, Z180.HALT);
state_save_register_device_item(device, 0, Z180.IM);
state_save_register_device_item(device, 0, Z180.I);
state_save_register_device_item(device, 0, Z180.nmi_state);
state_save_register_device_item(device, 0, Z180.nmi_pending);
state_save_register_device_item(device, 0, Z180.irq_state[0]);
state_save_register_device_item(device, 0, Z180.irq_state[1]);
state_save_register_device_item(device, 0, Z180.irq_state[2]);
state_save_register_device_item(device, 0, Z180.after_EI);
}
/****************************************************************************

View File

@ -3358,31 +3358,31 @@ static CPU_INIT( z80 )
if( (i & 0x0f) == 0x0f ) SZHV_dec[i] |= HF;
}
state_save_register_item("z80", device->tag, 0, z80->prvpc.w.l);
state_save_register_item("z80", device->tag, 0, z80->PC);
state_save_register_item("z80", device->tag, 0, z80->SP);
state_save_register_item("z80", device->tag, 0, z80->AF);
state_save_register_item("z80", device->tag, 0, z80->BC);
state_save_register_item("z80", device->tag, 0, z80->DE);
state_save_register_item("z80", device->tag, 0, z80->HL);
state_save_register_item("z80", device->tag, 0, z80->IX);
state_save_register_item("z80", device->tag, 0, z80->IY);
state_save_register_item("z80", device->tag, 0, z80->MEMPTR);
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);
state_save_register_device_item(device, 0, z80->prvpc.w.l);
state_save_register_device_item(device, 0, z80->PC);
state_save_register_device_item(device, 0, z80->SP);
state_save_register_device_item(device, 0, z80->AF);
state_save_register_device_item(device, 0, z80->BC);
state_save_register_device_item(device, 0, z80->DE);
state_save_register_device_item(device, 0, z80->HL);
state_save_register_device_item(device, 0, z80->IX);
state_save_register_device_item(device, 0, z80->IY);
state_save_register_device_item(device, 0, z80->MEMPTR);
state_save_register_device_item(device, 0, z80->af2.w.l);
state_save_register_device_item(device, 0, z80->bc2.w.l);
state_save_register_device_item(device, 0, z80->de2.w.l);
state_save_register_device_item(device, 0, z80->hl2.w.l);
state_save_register_device_item(device, 0, z80->r);
state_save_register_device_item(device, 0, z80->r2);
state_save_register_device_item(device, 0, z80->iff1);
state_save_register_device_item(device, 0, z80->iff2);
state_save_register_device_item(device, 0, z80->halt);
state_save_register_device_item(device, 0, z80->im);
state_save_register_device_item(device, 0, z80->i);
state_save_register_device_item(device, 0, z80->nmi_state);
state_save_register_device_item(device, 0, z80->nmi_pending);
state_save_register_device_item(device, 0, z80->irq_state);
state_save_register_device_item(device, 0, z80->after_ei);
/* Reset registers to their initial values */
memset(z80, 0, sizeof(*z80));

View File

@ -167,6 +167,12 @@ INLINE void suspend_until_trigger(const device_config *device, int trigger, int
each CPU
-------------------------------------------------*/
static DEVICE_GET_INFO( cpuclass )
{
cpu_class_data *classdata = device->classtoken;
(*classdata->header.get_info)(device, state, (cpuinfo *)info);
}
const device_config *cpuexec_create_cpu_device(const cpu_config *config)
{
device_config *device;
@ -175,7 +181,7 @@ const device_config *cpuexec_create_cpu_device(const cpu_config *config)
device = malloc_or_die(sizeof(*device) + strlen(config->tag));
memset(device, 0, sizeof(*device));
strcpy(device->tag, config->tag);
device->type = (device_type)config->type;
device->type = DEVICE_GET_INFO_NAME(cpuclass);
device->class = DEVICE_CLASS_CPU_CHIP;
device->inline_config = (void *)config;
device->static_config = config->reset_param;
@ -245,9 +251,9 @@ void cpuexec_init(running_machine *machine)
/* initialize this CPU */
state_save_push_tag(cpunum + 1);
num_regs = state_save_get_reg_count();
num_regs = state_save_get_reg_count(machine);
cpu_init(device, cpunum, classdata->clock, standard_irq_callback);
num_regs = state_save_get_reg_count() - num_regs;
num_regs = state_save_get_reg_count(machine) - num_regs;
state_save_pop_tag();
/* fetch post-initialization data */
@ -917,7 +923,7 @@ void cpu_set_input_line_and_vector(const device_config *device, int line, int st
/* catch errors where people use PULSE_LINE for CPUs that don't support it */
if (state == PULSE_LINE && line != INPUT_LINE_NMI && line != INPUT_LINE_RESET)
{
switch ((cpu_type)device->type)
switch (classdata->header.cputype)
{
case CPU_Z80:
case CPU_Z180:
@ -1341,7 +1347,7 @@ static TIMER_CALLBACK( empty_event_queue )
{
case PULSE_LINE:
/* temporary: PULSE_LINE only makes sense for NMI lines on Z80 */
assert((cpu_type)device->type != CPU_Z80 || param == INPUT_LINE_NMI);
assert(classdata->header.cputype != CPU_Z80 || param == INPUT_LINE_NMI);
cpu_set_info_int(device, CPUINFO_INT_INPUT_STATE + param, ASSERT_LINE);
cpu_set_info_int(device, CPUINFO_INT_INPUT_STATE + param, CLEAR_LINE);
break;
@ -1418,26 +1424,26 @@ static void register_save_states(const device_config *device)
cpu_class_data *classdata = device->classtoken;
int line;
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_device_item(device, 0, classdata->suspend);
state_save_register_device_item(device, 0, classdata->nextsuspend);
state_save_register_device_item(device, 0, classdata->eatcycles);
state_save_register_device_item(device, 0, classdata->nexteatcycles);
state_save_register_device_item(device, 0, classdata->trigger);
state_save_register_item("cpu", device->tag, 0, classdata->iloops);
state_save_register_device_item(device, 0, classdata->iloops);
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);
state_save_register_device_item(device, 0, classdata->totalcycles);
state_save_register_device_item(device, 0, classdata->localtime.seconds);
state_save_register_device_item(device, 0, classdata->localtime.attoseconds);
state_save_register_device_item(device, 0, classdata->clock);
state_save_register_device_item(device, 0, classdata->clockscale);
for (line = 0; line < ARRAY_LENGTH(classdata->input); line++)
{
cpu_input_data *inputline = &classdata->input[line];
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);
state_save_register_device_item(device, line, inputline->vector);
state_save_register_device_item(device, line, inputline->curvector);
state_save_register_device_item(device, line, inputline->curstate);
}
}

View File

@ -71,81 +71,95 @@ enum
enum
{
/* --- the following bits of info are returned as 64-bit signed integers --- */
CPUINFO_INT_FIRST = 0x00000,
CPUINFO_INT_FIRST = DEVINFO_INT_FIRST,
CPUINFO_INT_CONTEXT_SIZE = CPUINFO_INT_FIRST, /* R/O: size of CPU context in bytes */
CPUINFO_INT_INPUT_LINES, /* R/O: number of input lines */
CPUINFO_INT_OUTPUT_LINES, /* R/O: number of output lines */
CPUINFO_INT_DEFAULT_IRQ_VECTOR, /* R/O: default IRQ vector */
CPUINFO_INT_ENDIANNESS, /* R/O: either ENDIANNESS_BIG or ENDIANNESS_LITTLE */
CPUINFO_INT_CLOCK_MULTIPLIER, /* R/O: internal clock multiplier */
CPUINFO_INT_CLOCK_DIVIDER, /* R/O: internal clock divider */
CPUINFO_INT_MIN_INSTRUCTION_BYTES, /* R/O: minimum bytes per instruction */
CPUINFO_INT_MAX_INSTRUCTION_BYTES, /* R/O: maximum bytes per instruction */
CPUINFO_INT_MIN_CYCLES, /* R/O: minimum cycles for a single instruction */
CPUINFO_INT_MAX_CYCLES, /* R/O: maximum cycles for a single instruction */
/* direct map to device data */
CPUINFO_INT_CONTEXT_SIZE = DEVINFO_INT_TOKEN_BYTES, /* R/O: size of CPU context in bytes */
CPUINFO_INT_DATABUS_WIDTH, /* R/O: data bus size for each address space (8,16,32,64) */
CPUINFO_INT_DATABUS_WIDTH_LAST = CPUINFO_INT_DATABUS_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_ADDRBUS_WIDTH, /* R/O: address bus size for each address space (12-32) */
CPUINFO_INT_ADDRBUS_WIDTH_LAST = CPUINFO_INT_ADDRBUS_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_ADDRBUS_SHIFT, /* R/O: shift applied to addresses each address space (+3 means >>3, -1 means <<1) */
CPUINFO_INT_ADDRBUS_SHIFT_LAST = CPUINFO_INT_ADDRBUS_SHIFT + ADDRESS_SPACES - 1,
CPUINFO_INT_LOGADDR_WIDTH, /* R/O: address bus size for logical accesses in each space (0=same as physical) */
CPUINFO_INT_LOGADDR_WIDTH_LAST = CPUINFO_INT_LOGADDR_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_PAGE_SHIFT, /* R/O: size of a page log 2 (i.e., 12=4096), or 0 if paging not supported */
CPUINFO_INT_PAGE_SHIFT_LAST = CPUINFO_INT_PAGE_SHIFT + ADDRESS_SPACES - 1,
/* CPU-specific additions */
CPUINFO_INT_INPUT_LINES = DEVINFO_INT_CLASS_SPECIFIC, /* R/O: number of input lines */
CPUINFO_INT_OUTPUT_LINES, /* R/O: number of output lines */
CPUINFO_INT_DEFAULT_IRQ_VECTOR, /* R/O: default IRQ vector */
CPUINFO_INT_ENDIANNESS, /* R/O: either ENDIANNESS_BIG or ENDIANNESS_LITTLE */
CPUINFO_INT_CLOCK_MULTIPLIER, /* R/O: internal clock multiplier */
CPUINFO_INT_CLOCK_DIVIDER, /* R/O: internal clock divider */
CPUINFO_INT_MIN_INSTRUCTION_BYTES, /* R/O: minimum bytes per instruction */
CPUINFO_INT_MAX_INSTRUCTION_BYTES, /* R/O: maximum bytes per instruction */
CPUINFO_INT_MIN_CYCLES, /* R/O: minimum cycles for a single instruction */
CPUINFO_INT_MAX_CYCLES, /* R/O: maximum cycles for a single instruction */
CPUINFO_INT_SP, /* R/W: the current stack pointer value */
CPUINFO_INT_PC, /* R/W: the current PC value */
CPUINFO_INT_PREVIOUSPC, /* R/W: the previous PC value */
CPUINFO_INT_INPUT_STATE, /* R/W: states for each input line */
CPUINFO_INT_INPUT_STATE_LAST = CPUINFO_INT_INPUT_STATE + MAX_INPUT_LINES - 1,
CPUINFO_INT_OUTPUT_STATE, /* R/W: states for each output line */
CPUINFO_INT_OUTPUT_STATE_LAST = CPUINFO_INT_OUTPUT_STATE + MAX_OUTPUT_LINES - 1,
CPUINFO_INT_REGISTER, /* R/W: values of up to MAX_REGs registers */
CPUINFO_INT_REGISTER_LAST = CPUINFO_INT_REGISTER + MAX_REGS - 1,
CPUINFO_INT_DATABUS_WIDTH, /* R/O: data bus size for each address space (8,16,32,64) */
CPUINFO_INT_DATABUS_WIDTH_LAST = CPUINFO_INT_DATABUS_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_ADDRBUS_WIDTH, /* R/O: address bus size for each address space (12-32) */
CPUINFO_INT_ADDRBUS_WIDTH_LAST = CPUINFO_INT_ADDRBUS_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_ADDRBUS_SHIFT, /* R/O: shift applied to addresses each address space (+3 means >>3, -1 means <<1) */
CPUINFO_INT_ADDRBUS_SHIFT_LAST = CPUINFO_INT_ADDRBUS_SHIFT + ADDRESS_SPACES - 1,
CPUINFO_INT_LOGADDR_WIDTH, /* R/O: address bus size for logical accesses in each space (0=same as physical) */
CPUINFO_INT_LOGADDR_WIDTH_LAST = CPUINFO_INT_LOGADDR_WIDTH + ADDRESS_SPACES - 1,
CPUINFO_INT_PAGE_SHIFT, /* R/O: size of a page log 2 (i.e., 12=4096), or 0 if paging not supported */
CPUINFO_INT_PAGE_SHIFT_LAST = CPUINFO_INT_PAGE_SHIFT + ADDRESS_SPACES - 1,
CPUINFO_INT_CPU_SPECIFIC = 0x08000, /* R/W: CPU-specific values start here */
CPUINFO_INT_SP, /* R/W: the current stack pointer value */
CPUINFO_INT_PC, /* R/W: the current PC value */
CPUINFO_INT_PREVIOUSPC, /* R/W: the previous PC value */
CPUINFO_INT_INPUT_STATE, /* R/W: states for each input line */
CPUINFO_INT_INPUT_STATE_LAST = CPUINFO_INT_INPUT_STATE + MAX_INPUT_LINES - 1,
CPUINFO_INT_OUTPUT_STATE, /* R/W: states for each output line */
CPUINFO_INT_OUTPUT_STATE_LAST = CPUINFO_INT_OUTPUT_STATE + MAX_OUTPUT_LINES - 1,
CPUINFO_INT_REGISTER, /* R/W: values of up to MAX_REGs registers */
CPUINFO_INT_REGISTER_LAST = CPUINFO_INT_REGISTER + MAX_REGS - 1,
CPUINFO_INT_CPU_SPECIFIC = 0x08000, /* R/W: CPU-specific values start here */
/* --- the following bits of info are returned as pointers to data or functions --- */
CPUINFO_PTR_FIRST = 0x10000,
CPUINFO_PTR_FIRST = DEVINFO_PTR_FIRST,
CPUINFO_PTR_SET_INFO = CPUINFO_PTR_FIRST, /* R/O: void (*set_info)(UINT32 state, INT64 data, void *ptr) */
CPUINFO_PTR_GET_CONTEXT, /* R/O: void (*get_context)(void *buffer) */
CPUINFO_PTR_SET_CONTEXT, /* R/O: void (*set_context)(void *buffer) */
CPUINFO_PTR_INIT, /* R/O: void (*init)(int index, int clock, int (*irqcallback)(const device_config *device, int)) */
CPUINFO_PTR_RESET, /* R/O: void (*reset)(void) */
CPUINFO_PTR_EXIT, /* R/O: void (*exit)(void) */
CPUINFO_PTR_EXECUTE, /* R/O: int (*execute)(int cycles) */
CPUINFO_PTR_BURN, /* R/O: void (*burn)(int cycles) */
CPUINFO_PTR_DISASSEMBLE, /* R/O: offs_t (*disassemble)(char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram) */
CPUINFO_PTR_TRANSLATE, /* R/O: int (*translate)(int space, int intention, offs_t *address) */
CPUINFO_PTR_READ, /* R/O: int (*read)(int space, UINT32 offset, int size, UINT64 *value) */
CPUINFO_PTR_WRITE, /* R/O: int (*write)(int space, UINT32 offset, int size, UINT64 value) */
CPUINFO_PTR_READOP, /* R/O: int (*readop)(UINT32 offset, int size, UINT64 *value) */
CPUINFO_PTR_DEBUG_INIT, /* R/O: void (*debug_init)(void) */
CPUINFO_PTR_INSTRUCTION_COUNTER, /* R/O: int *icount */
CPUINFO_PTR_INTERNAL_MEMORY_MAP, /* R/O: const addrmap_token *map */
CPUINFO_PTR_INTERNAL_MEMORY_MAP_LAST = CPUINFO_PTR_INTERNAL_MEMORY_MAP + ADDRESS_SPACES - 1,
CPUINFO_PTR_DEBUG_REGISTER_LIST, /* R/O: int *list: list of registers for the debugger */
CPUINFO_PTR_VALIDITY_CHECK, /* R/O: int (*validity_check)(const void *config) */
/* CPU-specific additions */
CPUINFO_PTR_INSTRUCTION_COUNTER = DEVINFO_PTR_CLASS_SPECIFIC,
/* R/O: int *icount */
CPUINFO_PTR_INTERNAL_MEMORY_MAP, /* R/O: const addrmap_token *map */
CPUINFO_PTR_INTERNAL_MEMORY_MAP_LAST = CPUINFO_PTR_INTERNAL_MEMORY_MAP + ADDRESS_SPACES - 1,
CPUINFO_PTR_DEBUG_REGISTER_LIST, /* R/O: int *list: list of registers for the debugger */
CPUINFO_PTR_CPU_SPECIFIC = 0x18000, /* R/W: CPU-specific values start here */
CPUINFO_PTR_CPU_SPECIFIC = DEVINFO_PTR_DEVICE_SPECIFIC, /* R/W: CPU-specific values start here */
/* --- the following bits of info are returned as pointers to functions --- */
CPUINFO_FCT_FIRST = DEVINFO_FCT_FIRST,
/* CPU-specific additions */
CPUINFO_PTR_RESET = DEVINFO_FCT_RESET, /* R/O: void (*reset)(const device_config *device) */
CPUINFO_PTR_EXIT = DEVINFO_FCT_STOP, /* R/O: void (*exit)(const device_config *device) */
CPUINFO_PTR_SET_INFO = DEVINFO_FCT_CLASS_SPECIFIC, /* R/O: void (*set_info)(const device_config *device, UINT32 state, INT64 data, void *ptr) */
CPUINFO_PTR_GET_CONTEXT, /* R/O: void (*get_context)(void *buffer) */
CPUINFO_PTR_SET_CONTEXT, /* R/O: void (*set_context)(void *buffer) */
CPUINFO_PTR_INIT, /* R/O: void (*init)(const device_config *device, int index, int clock, int (*irqcallback)(const device_config *device, int)) */
CPUINFO_PTR_EXECUTE, /* R/O: int (*execute)(const device_config *device, int cycles) */
CPUINFO_PTR_BURN, /* R/O: void (*burn)(const device_config *device, int cycles) */
CPUINFO_PTR_DISASSEMBLE, /* R/O: offs_t (*disassemble)(const device_config *device, char *buffer, offs_t pc, const UINT8 *oprom, const UINT8 *opram) */
CPUINFO_PTR_TRANSLATE, /* R/O: int (*translate)(const device_config *device, int space, int intention, offs_t *address) */
CPUINFO_PTR_READ, /* R/O: int (*read)(const device_config *device, int space, UINT32 offset, int size, UINT64 *value) */
CPUINFO_PTR_WRITE, /* R/O: int (*write)(const device_config *device, int space, UINT32 offset, int size, UINT64 value) */
CPUINFO_PTR_READOP, /* R/O: int (*readop)(const device_config *device, UINT32 offset, int size, UINT64 *value) */
CPUINFO_PTR_DEBUG_INIT, /* R/O: void (*debug_init)(const device_config *device) */
CPUINFO_PTR_VALIDITY_CHECK, /* R/O: int (*validity_check)(const game_driver *driver, const void *config) */
/* --- the following bits of info are returned as NULL-terminated strings --- */
CPUINFO_STR_FIRST = 0x20000,
CPUINFO_STR_FIRST = DEVINFO_STR_FIRST,
CPUINFO_STR_NAME = CPUINFO_STR_FIRST, /* R/O: name of the CPU */
CPUINFO_STR_CORE_FAMILY, /* R/O: family of the CPU */
CPUINFO_STR_CORE_VERSION, /* R/O: version of the CPU core */
CPUINFO_STR_CORE_FILE, /* R/O: file containing the CPU core */
CPUINFO_STR_CORE_CREDITS, /* R/O: credits for the CPU core */
CPUINFO_STR_FLAGS, /* R/O: string representation of the main flags value */
CPUINFO_STR_REGISTER, /* R/O: string representation of up to MAX_REGs registers */
CPUINFO_STR_REGISTER_LAST = CPUINFO_STR_REGISTER + MAX_REGS - 1,
/* direct map to device data */
CPUINFO_STR_NAME = DEVINFO_STR_NAME, /* R/O: name of the CPU */
CPUINFO_STR_CORE_FAMILY = DEVINFO_STR_FAMILY, /* R/O: family of the CPU */
CPUINFO_STR_CORE_VERSION = DEVINFO_STR_VERSION, /* R/O: version of the CPU core */
CPUINFO_STR_CORE_FILE = DEVINFO_STR_SOURCE_FILE, /* R/O: file containing the CPU core */
CPUINFO_STR_CORE_CREDITS = DEVINFO_STR_CREDITS, /* R/O: credits for the CPU core */
CPUINFO_STR_CPU_SPECIFIC = 0x28000 /* R/W: CPU-specific values start here */
/* CPU-specific additions */
CPUINFO_STR_FLAGS = DEVINFO_STR_CLASS_SPECIFIC, /* R/O: string representation of the main flags value */
CPUINFO_STR_REGISTER, /* R/O: string representation of up to MAX_REGs registers */
CPUINFO_STR_REGISTER_LAST = CPUINFO_STR_REGISTER + MAX_REGS - 1,
CPUINFO_STR_CPU_SPECIFIC = DEVINFO_STR_DEVICE_SPECIFIC /* R/W: CPU-specific values start here */
};

View File

@ -140,7 +140,7 @@ void debug_command_init(running_machine *machine)
void *base;
/* stop when we run out of items */
name = state_save_get_indexed_item(itemnum, &base, &valsize, &valcount);
name = state_save_get_indexed_item(machine, itemnum, &base, &valsize, &valcount);
if (name == NULL)
break;

View File

@ -2458,7 +2458,7 @@ static const memory_subview_item *memory_view_enumerate_subviews(running_machine
void *base;
/* stop when we run out of items */
name = state_save_get_indexed_item(itemnum, &base, &valsize, &valcount);
name = state_save_get_indexed_item(machine, itemnum, &base, &valsize, &valcount);
if (name == NULL)
break;

View File

@ -10,6 +10,7 @@
***************************************************************************/
#include "driver.h"
#include "cpuintrf.h"
@ -93,7 +94,7 @@ device_config *device_list_add(device_config **listheadptr, device_type type, co
/* find the end of the list, and ensure no duplicates along the way */
for (devptr = listheadptr; *devptr != NULL; devptr = &(*devptr)->next)
if (type == (*devptr)->type && strcmp(tag, (*devptr)->tag) == 0)
fatalerror("Attempted to add duplicate device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("Attempted to add duplicate device: type=%s tag=%s\n", devtype_get_name(type), tag);
/* get the size of the inline config */
configlen = (UINT32)devtype_get_info_int(type, DEVINFO_INT_INLINE_CONFIG_BYTES);
@ -164,7 +165,7 @@ void device_list_remove(device_config **listheadptr, device_type type, const cha
if (type == (*devptr)->type && strcmp(tag, (*devptr)->tag) == 0)
break;
if (*devptr == NULL)
fatalerror("Attempted to remove non-existant device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("Attempted to remove non-existant device: type=%s tag=%s\n", devtype_get_name(type), tag);
/* remove the device from the list */
device = *devptr;
@ -515,7 +516,7 @@ void device_list_start(running_machine *machine)
/* get the size of the token data */
tokenlen = (UINT32)devtype_get_info_int(device->type, DEVINFO_INT_TOKEN_BYTES);
if (tokenlen == 0)
fatalerror("Device %s specifies a 0 token length!\n", devtype_name(device->type));
fatalerror("Device %s specifies a 0 token length!\n", devtype_get_name(device->type));
/* allocate memory for the token */
device->token = malloc_or_die(tokenlen);
@ -626,7 +627,7 @@ void devtag_reset(running_machine *machine, device_type type, const char *tag)
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_reset failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_reset failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
device_reset(device);
}
@ -651,7 +652,7 @@ void *devtag_get_token(running_machine *machine, device_type type, const char *t
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_token failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_token failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device->token;
}
@ -671,7 +672,7 @@ const device_config *devtag_get_device(running_machine *machine, device_type typ
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_device failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_device failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device;
}
@ -692,7 +693,7 @@ const void *devtag_get_static_config(running_machine *machine, device_type type,
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_static_config failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_static_config failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device->static_config;
}
@ -713,7 +714,7 @@ const void *devtag_get_inline_config(running_machine *machine, device_type type,
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_inline_config failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_inline_config failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device->inline_config;
}
@ -750,7 +751,7 @@ INT64 devtag_get_info_int(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_info_int failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_info_int failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device_get_info_int(device, state);
}
@ -786,7 +787,7 @@ void *devtag_get_info_ptr(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_get_info_ptr failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_get_info_ptr failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device_get_info_ptr(device, state);
}
@ -822,7 +823,7 @@ genf *devtag_get_info_fct(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("device_get_info_fct failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("device_get_info_fct failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device_get_info_fct(device, state);
}
@ -858,7 +859,7 @@ const char *devtag_get_info_string(running_machine *machine, device_type type, c
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("device_get_info_string failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("device_get_info_string failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
return device_get_info_string(device, state);
}
@ -900,7 +901,7 @@ const char *devtype_get_info_string(device_type type, UINT32 state)
assert(type != NULL);
assert(state >= DEVINFO_STR_FIRST && state <= DEVINFO_STR_LAST);
/* retrieve the value */
info.s = get_temp_string_buffer();
(*type)(NULL, state, &info);
@ -944,7 +945,7 @@ void devtag_set_info_int(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_set_info_int failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_set_info_int failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
device_set_info_int(device, state, data);
}
@ -980,7 +981,7 @@ void devtag_set_info_ptr(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_set_info_ptr failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_set_info_ptr failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
device_set_info_ptr(device, state, data);
}
@ -1016,6 +1017,6 @@ void devtag_set_info_fct(running_machine *machine, device_type type, const char
device = device_list_find_by_tag(machine->config->devicelist, type, tag);
if (device == NULL)
fatalerror("devtag_set_info_fct failed to find device: type=%s tag=%s\n", devtype_name(type), tag);
fatalerror("devtag_set_info_fct failed to find device: type=%s tag=%s\n", devtype_get_name(type), tag);
device_set_info_fct(device, state, data);
}

View File

@ -60,6 +60,7 @@ enum
DEVINFO_INT_INLINE_CONFIG_BYTES, /* R/O: bytes to allocate for the inline configuration */
DEVINFO_INT_CLASS, /* R/O: the device's class */
DEVINFO_INT_CLASS_SPECIFIC = 0x04000, /* R/W: device-specific values start here */
DEVINFO_INT_DEVICE_SPECIFIC = 0x08000, /* R/W: device-specific values start here */
DEVINFO_INT_LAST = 0x0ffff,
@ -69,6 +70,7 @@ enum
DEVINFO_PTR_ROM_REGION = DEVINFO_PTR_FIRST, /* R/O: pointer to device-specific ROM region */
DEVINFO_PTR_MACHINE_CONFIG, /* R/O: pointer to device-specific machine config */
DEVINFO_PTR_CLASS_SPECIFIC = 0x14000, /* R/W: device-specific values start here */
DEVINFO_PTR_DEVICE_SPECIFIC = 0x18000, /* R/W: device-specific values start here */
DEVINFO_PTR_LAST = 0x1ffff,
@ -82,6 +84,7 @@ enum
DEVINFO_FCT_VALIDITY_CHECK, /* R/O: device_validity_check_func */
DEVINFO_FCT_NVRAM, /* R/O: device_nvram_func */
DEVINFO_FCT_CLASS_SPECIFIC = 0x24000, /* R/W: device-specific values start here */
DEVINFO_FCT_DEVICE_SPECIFIC = 0x28000, /* R/W: device-specific values start here */
DEVINFO_FCT_LAST = 0x2ffff,
@ -94,6 +97,7 @@ enum
DEVINFO_STR_SOURCE_FILE, /* R/O: file containing the device implementation */
DEVINFO_STR_CREDITS, /* R/O: credits for the device implementation */
DEVINFO_STR_CLASS_SPECIFIC = 0x34000, /* R/W: device-specific values start here */
DEVINFO_STR_DEVICE_SPECIFIC = 0x38000, /* R/W: device-specific values start here */
DEVINFO_STR_LAST = 0x3ffff
};
@ -341,12 +345,19 @@ void devtag_set_info_fct(running_machine *machine, device_type type, const char
INLINE FUNCTIONS
***************************************************************************/
/* return common strings based on device instances */
INLINE const char *device_get_name(const device_config *device) { return device_get_info_string(device, DEVINFO_STR_NAME); }
INLINE const char *device_get_family(const device_config *device) { return device_get_info_string(device, DEVINFO_STR_FAMILY); }
INLINE const char *device_get_version(const device_config *device) { return device_get_info_string(device, DEVINFO_STR_VERSION); }
INLINE const char *device_get_source_file(const device_config *device) { return device_get_info_string(device, DEVINFO_STR_SOURCE_FILE); }
INLINE const char *device_get_credits(const device_config *device) { return device_get_info_string(device, DEVINFO_STR_CREDITS); }
/* return common strings based on device types */
INLINE const char *devtype_name(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_NAME); }
INLINE const char *devtype_family(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_FAMILY); }
INLINE const char *devtype_version(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_VERSION); }
INLINE const char *devtype_source_file(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_SOURCE_FILE); }
INLINE const char *devtype_credits(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_CREDITS); }
INLINE const char *devtype_get_name(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_NAME); }
INLINE const char *devtype_get_family(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_FAMILY); }
INLINE const char *devtype_get_version(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_VERSION); }
INLINE const char *devtype_get_source_file(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_SOURCE_FILE); }
INLINE const char *devtype_get_credits(device_type devtype) { return devtype_get_info_string(devtype, DEVINFO_STR_CREDITS); }
#endif /* __DEVINTRF_H__ */

View File

@ -148,8 +148,8 @@ void palette_init(running_machine *machine)
numcolors = palette_get_num_colors(machine->palette);
palette->save_pen = auto_malloc(sizeof(*palette->save_pen) * numcolors);
palette->save_bright = auto_malloc(sizeof(*palette->save_bright) * numcolors);
state_save_register_global_pointer(palette->save_pen, numcolors);
state_save_register_global_pointer(palette->save_bright, numcolors);
state_save_register_global_pointer(machine, palette->save_pen, numcolors);
state_save_register_global_pointer(machine, palette->save_bright, numcolors);
state_save_register_presave(machine, palette_presave, palette);
state_save_register_postload(machine, palette_postload, palette);
}
@ -342,13 +342,13 @@ colortable_t *colortable_alloc(running_machine *machine, UINT32 palettesize)
ctable->raw = auto_malloc(ctable->entries * sizeof(*ctable->raw));
for (index = 0; index < ctable->entries; index++)
ctable->raw[index] = index % ctable->palentries;
state_save_register_global_pointer(ctable->raw, ctable->entries);
state_save_register_global_pointer(machine, ctable->raw, ctable->entries);
/* allocate the palette */
ctable->palette = auto_malloc(ctable->palentries * sizeof(*ctable->palette));
for (index = 0; index < ctable->palentries; index++)
ctable->palette[index] = MAKE_ARGB(0x80,0xff,0xff,0xff);
state_save_register_global_pointer(ctable->palette, ctable->palentries);
state_save_register_global_pointer(machine, ctable->palette, ctable->palentries);
return ctable;
}

View File

@ -166,38 +166,38 @@ static DEVICE_START( cia )
timer_pulse(device->machine, ATTOTIME_IN_HZ(intf->tod_clock), (void *) device, 0, cia_clock_tod_callback);
/* state save support */
state_save_register_item("6526cia", device->tag, 0, cia->port[0].ddr);
state_save_register_item("6526cia", device->tag, 0, cia->port[0].latch);
state_save_register_item("6526cia", device->tag, 0, cia->port[0].in);
state_save_register_item("6526cia", device->tag, 0, cia->port[0].out);
state_save_register_item("6526cia", device->tag, 0, cia->port[0].mask_value);
state_save_register_item("6526cia", device->tag, 0, cia->port[1].ddr);
state_save_register_item("6526cia", device->tag, 0, cia->port[1].latch);
state_save_register_item("6526cia", device->tag, 0, cia->port[1].in);
state_save_register_item("6526cia", device->tag, 0, cia->port[1].out);
state_save_register_item("6526cia", device->tag, 0, cia->port[1].mask_value);
state_save_register_item("6526cia", device->tag, 0, cia->timer[0].latch);
state_save_register_item("6526cia", device->tag, 0, cia->timer[0].count);
state_save_register_item("6526cia", device->tag, 0, cia->timer[0].mode);
state_save_register_item("6526cia", device->tag, 0, cia->timer[0].irq);
state_save_register_item("6526cia", device->tag, 0, cia->timer[1].latch);
state_save_register_item("6526cia", device->tag, 0, cia->timer[1].count);
state_save_register_item("6526cia", device->tag, 0, cia->timer[1].mode);
state_save_register_item("6526cia", device->tag, 0, cia->timer[1].irq);
state_save_register_item("6526cia", device->tag, 0, cia->tod);
state_save_register_item("6526cia", device->tag, 0, cia->tod_latch);
state_save_register_item("6526cia", device->tag, 0, cia->tod_latched);
state_save_register_item("6526cia", device->tag, 0, cia->tod_running);
state_save_register_item("6526cia", device->tag, 0, cia->alarm);
state_save_register_item("6526cia", device->tag, 0, cia->icr);
state_save_register_item("6526cia", device->tag, 0, cia->ics);
state_save_register_item("6526cia", device->tag, 0, cia->irq);
state_save_register_item("6526cia", device->tag, 0, cia->loaded);
state_save_register_item("6526cia", device->tag, 0, cia->sdr);
state_save_register_item("6526cia", device->tag, 0, cia->sp);
state_save_register_item("6526cia", device->tag, 0, cia->cnt);
state_save_register_item("6526cia", device->tag, 0, cia->shift);
state_save_register_item("6526cia", device->tag, 0, cia->serial);
state_save_register_device_item(device, 0, cia->port[0].ddr);
state_save_register_device_item(device, 0, cia->port[0].latch);
state_save_register_device_item(device, 0, cia->port[0].in);
state_save_register_device_item(device, 0, cia->port[0].out);
state_save_register_device_item(device, 0, cia->port[0].mask_value);
state_save_register_device_item(device, 0, cia->port[1].ddr);
state_save_register_device_item(device, 0, cia->port[1].latch);
state_save_register_device_item(device, 0, cia->port[1].in);
state_save_register_device_item(device, 0, cia->port[1].out);
state_save_register_device_item(device, 0, cia->port[1].mask_value);
state_save_register_device_item(device, 0, cia->timer[0].latch);
state_save_register_device_item(device, 0, cia->timer[0].count);
state_save_register_device_item(device, 0, cia->timer[0].mode);
state_save_register_device_item(device, 0, cia->timer[0].irq);
state_save_register_device_item(device, 0, cia->timer[1].latch);
state_save_register_device_item(device, 0, cia->timer[1].count);
state_save_register_device_item(device, 0, cia->timer[1].mode);
state_save_register_device_item(device, 0, cia->timer[1].irq);
state_save_register_device_item(device, 0, cia->tod);
state_save_register_device_item(device, 0, cia->tod_latch);
state_save_register_device_item(device, 0, cia->tod_latched);
state_save_register_device_item(device, 0, cia->tod_running);
state_save_register_device_item(device, 0, cia->alarm);
state_save_register_device_item(device, 0, cia->icr);
state_save_register_device_item(device, 0, cia->ics);
state_save_register_device_item(device, 0, cia->irq);
state_save_register_device_item(device, 0, cia->loaded);
state_save_register_device_item(device, 0, cia->sdr);
state_save_register_device_item(device, 0, cia->sp);
state_save_register_device_item(device, 0, cia->cnt);
state_save_register_device_item(device, 0, cia->shift);
state_save_register_device_item(device, 0, cia->serial);
return DEVICE_START_OK;
}

View File

@ -449,21 +449,21 @@ static DEVICE_START( riot6532 )
riot->timer = timer_alloc(device->machine, timer_end_callback, (void *)device);
/* register for save states */
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_device_item(device, 0, riot->port[0].in);
state_save_register_device_item(device, 0, riot->port[0].out);
state_save_register_device_item(device, 0, riot->port[0].ddr);
state_save_register_device_item(device, 0, riot->port[1].in);
state_save_register_device_item(device, 0, riot->port[1].out);
state_save_register_device_item(device, 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_device_item(device, 0, riot->irqstate);
state_save_register_device_item(device, 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_device_item(device, 0, riot->pa7dir);
state_save_register_device_item(device, 0, riot->pa7prev);
state_save_register_item("riot6532", device->tag, 0, riot->timershift);
state_save_register_item("riot6532", device->tag, 0, riot->timerstate);
state_save_register_device_item(device, 0, riot->timershift);
state_save_register_device_item(device, 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", 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);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_a);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_ca1);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_ca2);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_a);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_ca2);
state_save_register_item(Machine, "6821pia", NULL, which, p->port_a_z_mask);
state_save_register_item(Machine, "6821pia", NULL, which, p->ddr_a);
state_save_register_item(Machine, "6821pia", NULL, which, p->ctl_a);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_a1);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_a2);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_a_state);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_b);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_cb1);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_cb2);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_b);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_cb2);
state_save_register_item(Machine, "6821pia", NULL, which, p->last_out_cb2_z);
state_save_register_item(Machine, "6821pia", NULL, which, p->ddr_b);
state_save_register_item(Machine, "6821pia", NULL, which, p->ctl_b);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_b1);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_b2);
state_save_register_item(Machine, "6821pia", NULL, which, p->irq_b_state);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_a_pushed);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_a_needs_pulled);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_ca1_pushed);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_ca2_pushed);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_ca2_needs_pulled);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_b_pushed);
state_save_register_item(Machine, "6821pia", NULL, which, p->out_b_needs_pulled);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_cb1_pushed);
state_save_register_item(Machine, "6821pia", NULL, which, p->in_cb2_pushed);
state_save_register_item(Machine, "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", 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(machine, "6840ptm", NULL, which, currptr->lsb_buffer);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->msb_buffer);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->status_read_since_int);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->status_reg);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->t3_divisor);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->t3_scaler);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->internal_clock);
state_save_register_item(machine, "6840ptm", NULL, which, currptr->IRQ);
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);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->control_reg);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->output);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->gate);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->clock);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->mode);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->fired);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->enabled);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->external_clock);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->counter);
state_save_register_item_array(machine, "6840ptm", NULL, which, currptr->latch);
ptm6840_reset(which);
}

View File

@ -234,29 +234,29 @@ static DEVICE_START( acia6850 )
timer_reset(acia_p->rx_timer, attotime_never);
timer_reset(acia_p->tx_timer, attotime_never);
state_save_register_item("acia6850", device->tag, 0, acia_p->ctrl);
state_save_register_item("acia6850", device->tag, 0, acia_p->status);
state_save_register_item("acia6850", device->tag, 0, acia_p->rx_clock);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_clock);
state_save_register_item("acia6850", device->tag, 0, acia_p->rx_counter);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_counter);
state_save_register_item("acia6850", device->tag, 0, acia_p->rx_shift);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_shift);
state_save_register_item("acia6850", device->tag, 0, acia_p->rdr);
state_save_register_item("acia6850", device->tag, 0, acia_p->tdr);
state_save_register_item("acia6850", device->tag, 0, acia_p->rx_bits);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_bits);
state_save_register_item("acia6850", device->tag, 0, acia_p->rx_parity);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_parity);
state_save_register_item("acia6850", device->tag, 0, acia_p->tx_int);
state_save_register_device_item(device, 0, acia_p->ctrl);
state_save_register_device_item(device, 0, acia_p->status);
state_save_register_device_item(device, 0, acia_p->rx_clock);
state_save_register_device_item(device, 0, acia_p->tx_clock);
state_save_register_device_item(device, 0, acia_p->rx_counter);
state_save_register_device_item(device, 0, acia_p->tx_counter);
state_save_register_device_item(device, 0, acia_p->rx_shift);
state_save_register_device_item(device, 0, acia_p->tx_shift);
state_save_register_device_item(device, 0, acia_p->rdr);
state_save_register_device_item(device, 0, acia_p->tdr);
state_save_register_device_item(device, 0, acia_p->rx_bits);
state_save_register_device_item(device, 0, acia_p->tx_bits);
state_save_register_device_item(device, 0, acia_p->rx_parity);
state_save_register_device_item(device, 0, acia_p->tx_parity);
state_save_register_device_item(device, 0, acia_p->tx_int);
state_save_register_item("acia6850", device->tag, 0, acia_p->divide);
state_save_register_item("acia6850", device->tag, 0, acia_p->overrun);
state_save_register_item("acia6850", device->tag, 0, acia_p->reset);
state_save_register_item("acia6850", device->tag, 0, acia_p->first_reset);
state_save_register_item("acia6850", device->tag, 0, acia_p->rts);
state_save_register_item("acia6850", device->tag, 0, acia_p->brk);
state_save_register_item("acia6850", device->tag, 0, acia_p->status_read);
state_save_register_device_item(device, 0, acia_p->divide);
state_save_register_device_item(device, 0, acia_p->overrun);
state_save_register_device_item(device, 0, acia_p->reset);
state_save_register_device_item(device, 0, acia_p->first_reset);
state_save_register_device_item(device, 0, acia_p->rts);
state_save_register_device_item(device, 0, acia_p->brk);
state_save_register_device_item(device, 0, acia_p->status_read);
return DEVICE_START_OK;
}

View File

@ -542,45 +542,45 @@ static DEVICE_START(duart68681)
assert(device != NULL);
assert(device->tag != NULL);
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_device_item(device, 0, duart68681->ACR);
state_save_register_device_item(device, 0, duart68681->IMR);
state_save_register_device_item(device, 0, duart68681->ISR);
state_save_register_device_item(device, 0, duart68681->IVR);
state_save_register_device_item(device, 0, duart68681->OPCR);
state_save_register_device_item(device, 0, duart68681->CTR);
state_save_register_device_item(device, 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_device_item(device, 0, duart68681->channel[0].CR);
state_save_register_device_item(device, 0, duart68681->channel[0].CSR);
state_save_register_device_item(device, 0, duart68681->channel[0].MR1);
state_save_register_device_item(device, 0, duart68681->channel[0].MR2);
state_save_register_device_item(device, 0, duart68681->channel[0].MR_ptr);
state_save_register_device_item(device, 0, duart68681->channel[0].SR);
state_save_register_device_item(device, 0, duart68681->channel[0].baud_rate);
state_save_register_device_item(device, 0, duart68681->channel[0].rx_enabled);
state_save_register_device_item_array(device, 0, duart68681->channel[0].rx_fifo);
state_save_register_device_item(device, 0, duart68681->channel[0].rx_fifo_read_ptr);
state_save_register_device_item(device, 0, duart68681->channel[0].rx_fifo_write_ptr);
state_save_register_device_item(device, 0, duart68681->channel[0].rx_fifo_num);
state_save_register_device_item(device, 0, duart68681->channel[0].tx_enabled);
state_save_register_device_item(device, 0, duart68681->channel[0].tx_data);
state_save_register_device_item(device, 0, duart68681->channel[0].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);
state_save_register_device_item(device, 0, duart68681->channel[1].CR);
state_save_register_device_item(device, 0, duart68681->channel[1].CSR);
state_save_register_device_item(device, 0, duart68681->channel[1].MR1);
state_save_register_device_item(device, 0, duart68681->channel[1].MR2);
state_save_register_device_item(device, 0, duart68681->channel[1].MR_ptr);
state_save_register_device_item(device, 0, duart68681->channel[1].SR);
state_save_register_device_item(device, 0, duart68681->channel[1].baud_rate);
state_save_register_device_item(device, 0, duart68681->channel[1].rx_enabled);
state_save_register_device_item_array(device, 0, duart68681->channel[1].rx_fifo);
state_save_register_device_item(device, 0, duart68681->channel[1].rx_fifo_read_ptr);
state_save_register_device_item(device, 0, duart68681->channel[1].rx_fifo_write_ptr);
state_save_register_device_item(device, 0, duart68681->channel[1].rx_fifo_num);
state_save_register_device_item(device, 0, duart68681->channel[1].tx_enabled);
state_save_register_device_item(device, 0, duart68681->channel[1].tx_data);
state_save_register_device_item(device, 0, duart68681->channel[1].tx_ready);
return DEVICE_START_OK;
}

View File

@ -205,9 +205,9 @@ static DEVICE_START( ttl74123 )
chip->clear = chip->intf->clear;
/* register for state saving */
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);
state_save_register_device_item(device, 0, chip->a);
state_save_register_device_item(device, 0, chip->b);
state_save_register_device_item(device, 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", NULL, which, c->inputs);
state_save_register_item_array("TTL74181", NULL, which, c->outputs);
state_save_register_item ("TTL74181", NULL, which, c->dirty);
state_save_register_item_array(machine, "TTL74181", NULL, which, c->inputs);
state_save_register_item_array(machine, "TTL74181", NULL, which, c->outputs);
state_save_register_item (machine, "TTL74181", NULL, which, c->dirty);
}

View File

@ -38,6 +38,7 @@
*****************************************************************************/
#include "driver.h"
#include "deprecat.h"
#include "7474.h"
@ -161,13 +162,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", 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);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->clear);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->preset);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->clock);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->d);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->output);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->output_comp);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->last_clock);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->last_output);
state_save_register_item(Machine, "ttl7474", NULL, which, chip->last_output_comp);
}

View File

@ -518,22 +518,22 @@ static DEVICE_START( ppi8255 ) {
ppi8255->port_write[2] = ppi8255->intf->port_c_write;
/* register for state saving */
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);
state_save_register_device_item(device, 0, ppi8255->group_a_mode);
state_save_register_device_item(device, 0, ppi8255->group_b_mode);
state_save_register_device_item(device, 0, ppi8255->port_a_dir);
state_save_register_device_item(device, 0, ppi8255->port_b_dir);
state_save_register_device_item(device, 0, ppi8255->port_ch_dir);
state_save_register_device_item(device, 0, ppi8255->port_cl_dir);
state_save_register_device_item(device, 0, ppi8255->obf_a);
state_save_register_device_item(device, 0, ppi8255->obf_b);
state_save_register_device_item(device, 0, ppi8255->ibf_a);
state_save_register_device_item(device, 0, ppi8255->ibf_b);
state_save_register_device_item(device, 0, ppi8255->inte_a);
state_save_register_device_item(device, 0, ppi8255->inte_b);
state_save_register_device_item_array(device, 0, ppi8255->in_mask);
state_save_register_device_item_array(device, 0, ppi8255->out_mask);
state_save_register_device_item_array(device, 0, ppi8255->read);
state_save_register_device_item_array(device, 0, ppi8255->latch);
return DEVICE_START_OK;
}

View File

@ -374,16 +374,16 @@ static DEVICE_START( dma8257 )
dma8257->timer = timer_alloc(device->machine, dma8257_timerproc, (void *) device);
dma8257->msbflip_timer = timer_alloc(device->machine, dma8257_msbflip_timerproc, (void *) device);
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_device_item_array(device, 0, dma8257->address);
state_save_register_device_item_array(device, 0, dma8257->count);
state_save_register_device_item_array(device, 0, dma8257->rwmode);
state_save_register_device_item_array(device, 0, dma8257->registers);
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);
state_save_register_device_item(device, 0, dma8257->mode);
state_save_register_device_item(device, 0, dma8257->rr);
state_save_register_device_item(device, 0, dma8257->msb);
state_save_register_device_item(device, 0, dma8257->drq);
state_save_register_device_item(device, 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", 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 );
state_save_register_item( Machine, "adc083x", NULL, chip, c->CS );
state_save_register_item( Machine, "adc083x", NULL, chip, c->CLK );
state_save_register_item( Machine, "adc083x", NULL, chip, c->DI );
state_save_register_item( Machine, "adc083x", NULL, chip, c->SE );
state_save_register_item( Machine, "adc083x", NULL, chip, c->SARS );
state_save_register_item( Machine, "adc083x", NULL, chip, c->DO );
state_save_register_item( Machine, "adc083x", NULL, chip, c->SGL );
state_save_register_item( Machine, "adc083x", NULL, chip, c->ODD );
state_save_register_item( Machine, "adc083x", NULL, chip, c->SEL1 );
state_save_register_item( Machine, "adc083x", NULL, chip, c->SEL0 );
state_save_register_item( Machine, "adc083x", NULL, chip, c->state );
state_save_register_item( Machine, "adc083x", NULL, chip, c->bit );
state_save_register_item( Machine, "adc083x", NULL, chip, c->output );
}
void adc083x_cs_write( int chip, int cs )

View File

@ -10,6 +10,7 @@
*/
#include "driver.h"
#include "deprecat.h"
#include "am53cf96.h"
static UINT8 scsi_regs[32], fifo[16], fptr = 0, xfer_state, last_id;
@ -224,11 +225,11 @@ void am53cf96_init( const struct AM53CF96interface *interface )
SCSIAllocInstance( interface->scsidevs->devices[i].scsiClass, &devices[interface->scsidevs->devices[i].scsiID], interface->scsidevs->devices[i].diskregion );
}
state_save_register_global_array(scsi_regs);
state_save_register_global_array(fifo);
state_save_register_global(fptr);
state_save_register_global(xfer_state);
state_save_register_global(last_id);
state_save_register_global_array(Machine, scsi_regs);
state_save_register_global_array(Machine, fifo);
state_save_register_global(Machine, fptr);
state_save_register_global(Machine, xfer_state);
state_save_register_global(Machine, last_id);
}
void am53cf96_exit( const struct AM53CF96interface *interface )

View File

@ -147,11 +147,11 @@ static DEVICE_START(at28c16)
}
/* create the name for save states */
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 );
state_save_register_device_item_pointer( device, 0, c->data, SIZE_DATA );
state_save_register_device_item_pointer( device, 0, c->id, SIZE_ID );
state_save_register_device_item( device, 0, c->a9_12v );
state_save_register_device_item( device, 0, c->oe_12v );
state_save_register_device_item( device, 0, c->last_write );
return DEVICE_START_OK;
}

View File

@ -147,11 +147,11 @@ static DEVICE_START( cdp1852 )
}
/* register for state saving */
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);
state_save_register_device_item(device, 0, cdp1852->new_data);
state_save_register_device_item(device, 0, cdp1852->data);
state_save_register_device_item(device, 0, cdp1852->next_data);
state_save_register_device_item(device, 0, cdp1852->sr);
state_save_register_device_item(device, 0, cdp1852->next_sr);
return DEVICE_START_OK;
}

View File

@ -4,6 +4,7 @@
*/
#include "driver.h"
#include "deprecat.h"
#include "cr589.h"
typedef struct
@ -115,9 +116,9 @@ static void cr589_alloc_instance( SCSIInstance *scsiInstance, const char *diskre
our_this->download = 0;
memcpy( &our_this->buffer[ identity_offset ], "MATSHITACD-ROM CR-589 GS0N", 28 );
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 );
state_save_register_item( Machine, "cr589", diskregion, 0, our_this->download );
state_save_register_item_array( Machine, "cr589", diskregion, 0, our_this->buffer );
state_save_register_item( Machine, "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", 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 );
state_save_register_item(Machine, "ds2401", NULL, which, c->state );
state_save_register_item(Machine, "ds2401", NULL, which, c->bit );
state_save_register_item(Machine, "ds2401", NULL, which, c->byte );
state_save_register_item(Machine, "ds2401", NULL, which, c->shift );
state_save_register_item(Machine, "ds2401", NULL, which, c->rx );
state_save_register_item(Machine, "ds2401", NULL, which, c->tx );
c->timer = timer_alloc(Machine, ds2401_tick , NULL);
c->reset_timer = timer_alloc(Machine, ds2401_reset , NULL);

View File

@ -1,4 +1,5 @@
#include "driver.h"
#include "deprecat.h"
#include "eeprom.h"
#define VERBOSE 0
@ -146,17 +147,17 @@ void eeprom_init(const eeprom_interface *interface)
if (intf->cmd_unlock) locked = 1;
else locked = 0;
state_save_register_global_array(eeprom_data);
state_save_register_global_array(serial_buffer);
state_save_register_global(clock_line);
state_save_register_global(reset_line);
state_save_register_global(locked);
state_save_register_global(serial_count);
state_save_register_global(latch);
state_save_register_global(reset_delay);
state_save_register_global(eeprom_clock_count);
state_save_register_global(eeprom_data_bits);
state_save_register_global(eeprom_read_address);
state_save_register_global_array(Machine, eeprom_data);
state_save_register_global_array(Machine, serial_buffer);
state_save_register_global(Machine, clock_line);
state_save_register_global(Machine, reset_line);
state_save_register_global(Machine, locked);
state_save_register_global(Machine, serial_count);
state_save_register_global(Machine, latch);
state_save_register_global(Machine, reset_delay);
state_save_register_global(Machine, eeprom_clock_count);
state_save_register_global(Machine, eeprom_data_bits);
state_save_register_global(Machine, eeprom_read_address);
}
static void eeprom_write(int bit)

View File

@ -72,9 +72,9 @@ void generic_machine_init(running_machine *machine)
}
/* register coin save state */
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);
state_save_register_item_array(machine, "coin", NULL, 0, coin_count);
state_save_register_item_array(machine, "coin", NULL, 0, coinlockedout);
state_save_register_item_array(machine, "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", NULL, 0, interrupt_enable);
state_save_register_item_array(machine, "cpu", NULL, 0, interrupt_enable);
/* register for configuration */
config_register(machine, "counters", counters_load, counters_save);
@ -95,7 +95,7 @@ void generic_machine_init(running_machine *machine)
/* for memory cards, request save state and an exit callback */
if (machine->config->memcard_handler != NULL)
{
state_save_register_global(memcard_inserted);
state_save_register_global(machine, memcard_inserted);
add_exit_callback(machine, memcard_eject);
}
}

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", 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 );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->scl );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->sdaw );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->e0 );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->e1 );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->e2 );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->wc );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->sdar );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->state );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->bits );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->shift );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->devsel );
state_save_register_item( Machine, "i2cmem", NULL, chip, c->byteaddr );
state_save_register_item_pointer( Machine, "i2cmem", NULL, chip, c->data, c->data_size );
}
static int select_device( struct i2cmem_chip *c )

View File

@ -1709,50 +1709,50 @@ static DEVICE_START( ide_controller )
ide->reset_timer = timer_alloc(device->machine, reset_callback, (void *)device);
/* register ide states */
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_device_item(device, 0, ide->adapter_control);
state_save_register_device_item(device, 0, ide->status);
state_save_register_device_item(device, 0, ide->error);
state_save_register_device_item(device, 0, ide->command);
state_save_register_device_item(device, 0, ide->interrupt_pending);
state_save_register_device_item(device, 0, ide->precomp_offset);
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_device_item_array(device, 0, ide->buffer);
state_save_register_device_item_array(device, 0, ide->features);
state_save_register_device_item(device, 0, ide->buffer_offset);
state_save_register_device_item(device, 0, ide->sector_count);
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_device_item(device, 0, ide->block_count);
state_save_register_device_item(device, 0, ide->sectors_until_int);
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_device_item(device, 0, ide->dma_active);
state_save_register_device_item(device, 0, ide->dma_cpu);
state_save_register_device_item(device, 0, ide->dma_address_xor);
state_save_register_device_item(device, 0, ide->dma_last_buffer);
state_save_register_device_item(device, 0, ide->dma_address);
state_save_register_device_item(device, 0, ide->dma_descriptor);
state_save_register_device_item(device, 0, ide->dma_bytes_left);
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_device_item(device, 0, ide->bus_master_command);
state_save_register_device_item(device, 0, ide->bus_master_status);
state_save_register_device_item(device, 0, ide->bus_master_descriptor);
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_device_item(device, 0, ide->cur_cylinder);
state_save_register_device_item(device, 0, ide->cur_sector);
state_save_register_device_item(device, 0, ide->cur_head);
state_save_register_device_item(device, 0, ide->cur_head_reg);
state_save_register_item("ide_controller", device->tag, 0, ide->cur_lba);
state_save_register_device_item(device, 0, ide->cur_lba);
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_device_item(device, 0, ide->num_cylinders);
state_save_register_device_item(device, 0, ide->num_sectors);
state_save_register_device_item(device, 0, ide->num_heads);
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_device_item(device, 0, ide->config_unknown);
state_save_register_device_item_array(device, 0, ide->config_register);
state_save_register_device_item(device, 0, ide->config_register_num);
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);
state_save_register_device_item(device, 0, ide->master_password_enable);
state_save_register_device_item(device, 0, ide->user_password_enable);
return DEVICE_START_OK;
}

View File

@ -135,10 +135,10 @@ void intelflash_init(int chip, int type, void *data)
c->timer = timer_alloc(Machine, erase_finished, c);
c->flash_memory = data;
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) );
state_save_register_item( Machine, "intelfsh", NULL, chip, c->status );
state_save_register_item( Machine, "intelfsh", NULL, chip, c->flash_mode );
state_save_register_item( Machine, "intelfsh", NULL, chip, c->flash_master_lock );
state_save_register_memory( Machine, "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

@ -221,7 +221,7 @@ static DEVICE_START( latch8 )
latch8->has_read = 1;
}
state_save_register_item("latch8", device->tag, 0, latch8->value);
state_save_register_device_item(device, 0, latch8->value);
return DEVICE_START_OK;
}

View File

@ -36,5 +36,5 @@ void mb3773_init( void )
{
watchdog_timer = timer_alloc(Machine, watchdog_timeout, NULL);
reset_timer();
state_save_register_global( ck );
state_save_register_global(Machine, ck );
}

View File

@ -120,18 +120,18 @@ void microtouch_init(void (*tx_cb)(UINT8 data),
microtouch.timer = timer_alloc(Machine, 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", 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);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.reset_done);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.format_tablet);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.mode_inactive);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.mode_stream);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.last_touch_state);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.last_x);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.last_y);
state_save_register_item_array(Machine, "microtouch", NULL, 0, microtouch.rx_buffer);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.rx_buffer_ptr);
state_save_register_item_array(Machine, "microtouch", NULL, 0, microtouch.tx_buffer);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.tx_buffer_num);
state_save_register_item(Machine, "microtouch", NULL, 0, microtouch.tx_buffer_ptr);
};

View File

@ -31,6 +31,7 @@
*/
#include "driver.h"
#include "deprecat.h"
#include "machine/pd4990a.h"
@ -342,27 +343,27 @@ void pd4990a_init(void)
clock_line = 0;
command_line =0;
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(Machine, "pd4990a", NULL, 0, pd4990a.seconds);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.minutes);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.hours);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.days);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.month);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.year);
state_save_register_item(Machine, "pd4990a", NULL, 0, pd4990a.weekday);
state_save_register_item("pd4990a", NULL, 0, shiftlo);
state_save_register_item("pd4990a", NULL, 0, shifthi);
state_save_register_item(Machine, "pd4990a", NULL, 0, shiftlo);
state_save_register_item(Machine, "pd4990a", NULL, 0, shifthi);
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(Machine, "pd4990a", NULL, 0, retraces);
state_save_register_item(Machine, "pd4990a", NULL, 0, testwaits);
state_save_register_item(Machine, "pd4990a", NULL, 0, maxwaits);
state_save_register_item(Machine, "pd4990a", NULL, 0, testbit);
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(Machine, "pd4990a", NULL, 0, outputbit);
state_save_register_item(Machine, "pd4990a", NULL, 0, bitno);
state_save_register_item(Machine, "pd4990a", NULL, 0, reading);
state_save_register_item(Machine, "pd4990a", NULL, 0, writting);
state_save_register_item("pd4990a", NULL, 0, clock_line);
state_save_register_item("pd4990a", NULL, 0, command_line);
state_save_register_item(Machine, "pd4990a", NULL, 0, clock_line);
state_save_register_item(Machine, "pd4990a", NULL, 0, command_line);
}

View File

@ -1063,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(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);
state_save_register_device_item(device, timerno, timer->clockin);
state_save_register_device_item(device, timerno, timer->control);
state_save_register_device_item(device, timerno, timer->status);
state_save_register_device_item(device, timerno, timer->lowcount);
state_save_register_device_item(device, timerno, timer->latch);
state_save_register_device_item(device, timerno, timer->count);
state_save_register_device_item(device, timerno, timer->value);
state_save_register_device_item(device, timerno, timer->wmsb);
state_save_register_device_item(device, timerno, timer->rmsb);
state_save_register_device_item(device, timerno, timer->output);
state_save_register_device_item(device, timerno, timer->gate);
state_save_register_device_item(device, timerno, timer->latched_count);
state_save_register_device_item(device, timerno, timer->latched_status);
state_save_register_device_item(device, timerno, timer->null_count);
state_save_register_device_item(device, timerno, timer->phase);
state_save_register_device_item(device, timerno, timer->cycles_to_output);
state_save_register_device_item(device, timerno, timer->last_updated.seconds);
state_save_register_device_item(device, timerno, timer->last_updated.attoseconds);
state_save_register_device_item(device, timerno, timer->programmed);
state_save_register_device_item(device, timerno, timer->clock);
}
return DEVICE_START_OK;

View File

@ -4,14 +4,14 @@
***************************************************************************/
#include "state.h"
#include "scsidev.h"
#include "cdrom.h"
#include "sound/cdda.h"
#include "state.h"
#ifdef MESS
#include "devices/chd_cd.h"
#include "deprecat.h"
#endif
#include "deprecat.h"
#include "scsicd.h"
typedef struct
@ -683,13 +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_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 );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->lba );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->blocks );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->last_lba );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->bytes_per_sector );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->num_subblocks );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->cur_subblock );
state_save_register_item( Machine, "scsicd", diskregion, 0, our_this->play_err_flag );
#ifdef MESS
/* TODO: get rid of this ifdef MESS section */

View File

@ -102,9 +102,9 @@ static void scsidev_alloc_instance( SCSIInstance *scsiInstance, const char *disk
{
SCSIDev *our_this = SCSIThis( &SCSIClassDevice, scsiInstance );
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 );
state_save_register_item_array( Machine, "scsidev", diskregion, 0, our_this->command );
state_save_register_item( Machine, "scsidev", diskregion, 0, our_this->commandLength );
state_save_register_item( Machine, "scsidev", diskregion, 0, our_this->phase );
}
static int scsidev_dispatch( int operation, void *file, INT64 intparm, void *ptrparm )

View File

@ -10,8 +10,8 @@
#ifdef MESS
#include "devices/harddriv.h"
#include "deprecat.h"
#endif
#include "deprecat.h"
#include "scsihd.h"
typedef struct
@ -230,8 +230,8 @@ static void scsihd_alloc_instance( SCSIInstance *scsiInstance, const char *diskr
our_this->lba = 0;
our_this->blocks = 0;
state_save_register_item( "scsihd", diskregion, 0, our_this->lba );
state_save_register_item( "scsihd", diskregion, 0, our_this->blocks );
state_save_register_item( Machine, "scsihd", diskregion, 0, our_this->lba );
state_save_register_item( Machine, "scsihd", diskregion, 0, our_this->blocks );
#ifdef MESS
/* TODO: get rid of this ifdef MESS section */

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