ROM_END /*------------------------------------------------- DEVICE_START( c1551 ) -------------------------------------------------*/ static DEVICE_START( c1551 ) { c1551_t *c1551 = get_safe_token(device); const c1551_config *config = get_safe_config(device); /* set address */ assert((config->address > 7) && (config->address < 10)); c1551->address = config->address - 8; /* find our CPU */ c1551->cpu = device->subdevice(M6510T_TAG); /* find devices */ c1551->tpi0 = device->subdevice(M6523_0_TAG); c1551->tpi1 = device->subdevice(M6523_1_TAG); c1551->image = device->subdevice(FLOPPY_0); /* install image callbacks */ floppy_install_unload_proc(c1551->image, on_disk_change); floppy_install_load_proc(c1551->image, on_disk_change); /* allocate data timer */ c1551->bit_timer = device->machine().scheduler().timer_alloc(FUNC(bit_tick), (void *)device); /* map TPI1 to host CPU memory space */ address_space *program = device->machine().device(config->cpu_tag)->memory().space(AS_PROGRAM); UINT32 start_address = c1551->address ? 0xfec0 : 0xfef0; program->install_legacy_readwrite_handler(*c1551->tpi1, start_address, start_address + 7, FUNC(tpi6525_r), FUNC(tpi6525_w)); /* register for state saving */ device->save_item(NAME(c1551->tcbm_data)); device->save_item(NAME(c1551->status)); device->save_item(NAME(c1551->dav)); device->save_item(NAME(c1551->ack)); device->save_item(NAME(c1551->stp)); device->save_item(NAME(c1551->mtr)); device->save_item(NAME(c1551->track_len)); device->save_item(NAME(c1551->buffer_pos)); device->save_item(NAME(c1551->bit_pos)); device->save_item(NAME(c1551->bit_count)); device->save_item(NAME(c1551->data)); device->save_item(NAME(c1551->yb)); device->save_item(NAME(c1551->ds)); device->save_item(NAME(c1551->soe)); device->save_item(NAME(c1551->byte)); device->save_item(NAME(c1551->mode)); }
ROM_END /*------------------------------------------------- DEVICE_START( c8280 ) -------------------------------------------------*/ static DEVICE_START( c8280 ) { c8280_t *c8280 = get_safe_token(device); const c8280_config *config = get_safe_config(device); /* set serial address */ assert((config->address > 7) && (config->address < 16)); c8280->address = config->address - 8; /* find our CPU */ c8280->cpu_dos = device->subdevice(M6502_DOS_TAG); c8280->cpu_fdc = device->subdevice(M6502_FDC_TAG); }
static DEVICE_START( cdp1863 ) { cdp1863_t *cdp1863 = get_safe_token(device); const cdp1863_config *config = get_safe_config(device); /* set initial values */ cdp1863->stream = stream_create(device, 0, 1, device->machine->sample_rate, cdp1863, cdp1863_stream_update); cdp1863->clock1 = device->clock(); cdp1863->clock2 = config->clock2; cdp1863->oe = 1; /* register for state saving */ state_save_register_device_item(device, 0, cdp1863->clock1); state_save_register_device_item(device, 0, cdp1863->clock2); state_save_register_device_item(device, 0, cdp1863->oe); state_save_register_device_item(device, 0, cdp1863->latch); state_save_register_device_item(device, 0, cdp1863->signal); state_save_register_device_item(device, 0, cdp1863->incr); }
static DEVICE_START( cdp1863 ) { cdp1863_t *cdp1863 = get_safe_token(device); const cdp1863_config *config = get_safe_config(device); /* set initial values */ cdp1863->stream = device->machine->sound().stream_alloc(*device, 0, 1, device->machine->sample_rate, cdp1863, cdp1863_stream_update); cdp1863->clock1 = device->clock(); cdp1863->clock2 = config->clock2; cdp1863->oe = 1; /* register for state saving */ device->save_item(NAME(cdp1863->clock1)); device->save_item(NAME(cdp1863->clock2)); device->save_item(NAME(cdp1863->oe)); device->save_item(NAME(cdp1863->latch)); device->save_item(NAME(cdp1863->signal)); device->save_item(NAME(cdp1863->incr)); }
ROM_END /*------------------------------------------------- DEVICE_START( c9060 ) -------------------------------------------------*/ static DEVICE_START( c9060 ) { c9060_t *c9060 = get_safe_token(device); const c9060_config *config = get_safe_config(device); /* find our CPU */ c9060->cpu_dos = device->subdevice(M6502_TAG); c9060->cpu_hdc = device->subdevice(M6504_TAG); /* find devices */ c9060->riot0 = device->subdevice(M6532_0_TAG); c9060->riot1 = device->subdevice(M6532_1_TAG); c9060->via = device->subdevice(M6522_TAG); c9060->bus = device->machine().device(config->bus_tag); /* register for state saving */ // device->save_item(NAME(c9060->)); }