diff --git a/src/mame/audio/irem.c b/src/mame/audio/irem.c index 473fd036dcc..ae792d9de26 100644 --- a/src/mame/audio/irem.c +++ b/src/mame/audio/irem.c @@ -40,7 +40,7 @@ WRITE8_HANDLER( irem_sound_cmd_w ) if ((data & 0x80) == 0) soundlatch_w(space, 0, data & 0x7f); else - cpu_set_input_line(space->machine->cpu[1], 0, ASSERT_LINE); + cputag_set_input_line(space->machine, "iremsound", 0, ASSERT_LINE); } @@ -152,7 +152,7 @@ static WRITE8_DEVICE_HANDLER( ay8910_1_porta_w ) static WRITE8_HANDLER( sound_irq_ack_w ) { - cpu_set_input_line(space->machine->cpu[1], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "iremsound", 0, CLEAR_LINE); } @@ -191,13 +191,13 @@ static void adpcm_int(const device_config *device) { const device_config *msm2 = devtag_get_device(device->machine, "msm2"); - cpu_set_input_line(device->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(device->machine, "iremsound", INPUT_LINE_NMI, PULSE_LINE); /* the first MSM5205 clocks the second */ if (msm2 != NULL) { - msm5205_vclk_w(msm2,1); - msm5205_vclk_w(msm2,0); + msm5205_vclk_w(msm2, 1); + msm5205_vclk_w(msm2, 0); } } diff --git a/src/mame/audio/jaguar.c b/src/mame/audio/jaguar.c index ff5a83a69bf..cb89e919e65 100644 --- a/src/mame/audio/jaguar.c +++ b/src/mame/audio/jaguar.c @@ -191,13 +191,13 @@ static TIMER_CALLBACK( serial_callback ); void jaguar_dsp_suspend(running_machine *machine) { - cpu_suspend(machine->cpu[2], SUSPEND_REASON_SPIN, 1); + cputag_suspend(machine, "audiocpu", SUSPEND_REASON_SPIN, 1); } void jaguar_dsp_resume(running_machine *machine) { - cpu_resume(machine->cpu[2], SUSPEND_REASON_SPIN); + cputag_resume(machine, "audiocpu", SUSPEND_REASON_SPIN); } @@ -212,11 +212,11 @@ static void update_gpu_irq(running_machine *machine) { if (gpu_irq_state & dsp_regs[JINTCTRL] & 0x1f) { - cpu_set_input_line(machine->cpu[1], 1, ASSERT_LINE); + cputag_set_input_line(machine, "gpu", 1, ASSERT_LINE); jaguar_gpu_resume(machine); } else - cpu_set_input_line(machine->cpu[1], 1, CLEAR_LINE); + cputag_set_input_line(machine, "gpu", 1, CLEAR_LINE); } @@ -270,7 +270,7 @@ void cojag_sound_init(running_machine *machine) } #if ENABLE_SPEEDUP_HACKS - memory_install_write32_handler(cpu_get_address_space(machine->cpu[2], ADDRESS_SPACE_PROGRAM), 0xf1a100, 0xf1a103, 0, 0, dsp_flags_w); + memory_install_write32_handler(cputag_get_address_space(machine, "audiocpu", ADDRESS_SPACE_PROGRAM), 0xf1a100, 0xf1a103, 0, 0, dsp_flags_w); #endif } @@ -362,11 +362,11 @@ WRITE32_HANDLER( jaguar_jerry_regs32_w ) static WRITE32_HANDLER( dsp_flags_w ) { /* write the data through */ - jaguardsp_ctrl_w(space->machine->cpu[2], offset, data, mem_mask); + jaguardsp_ctrl_w(cputag_get_cpu(space->machine, "audiocpu"), offset, data, mem_mask); /* if they were clearing the A2S interrupt, see if we are headed for the spin */ /* loop with R22 != 0; if we are, just start spinning again */ - if (space->cpu == space->machine->cpu[2] && ACCESSING_BITS_8_15 && (data & 0x400)) + if (space->cpu == cputag_get_cpu(space->machine, "audiocpu") && ACCESSING_BITS_8_15 && (data & 0x400)) { /* see if we're going back to the spin loop */ if (!(data & 0x04000) && cpu_get_reg(space->cpu, JAGUAR_R22) != 0) @@ -393,7 +393,7 @@ static WRITE32_HANDLER( dsp_flags_w ) static TIMER_CALLBACK( serial_chunky_callback ) { /* assert the A2S IRQ on CPU #2 (DSP) */ - cpu_set_input_line(machine->cpu[2], 1, ASSERT_LINE); + cputag_set_input_line(machine, "audiocpu", 1, ASSERT_LINE); jaguar_dsp_resume(machine); /* fix flaky code in interrupt handler which thwarts our speedup */ @@ -412,7 +412,7 @@ static TIMER_CALLBACK( serial_chunky_callback ) static TIMER_CALLBACK( serial_callback ) { /* assert the A2S IRQ on CPU #2 (DSP) */ - cpu_set_input_line(machine->cpu[2], 1, ASSERT_LINE); + cputag_set_input_line(machine, "audiocpu", 1, ASSERT_LINE); jaguar_dsp_resume(machine); } @@ -468,5 +468,3 @@ WRITE32_HANDLER( jaguar_serial_w ) break; } } - - diff --git a/src/mame/audio/jedi.c b/src/mame/audio/jedi.c index 22ff827d337..bc1d04db8e1 100644 --- a/src/mame/audio/jedi.c +++ b/src/mame/audio/jedi.c @@ -60,7 +60,7 @@ static SOUND_RESET( jedi ) static WRITE8_HANDLER( irq_ack_w ) { - cpu_set_input_line(space->machine->cpu[1], M6502_IRQ_LINE, CLEAR_LINE); + cputag_set_input_line(space->machine, "audiocpu", M6502_IRQ_LINE, CLEAR_LINE); } @@ -73,7 +73,7 @@ static WRITE8_HANDLER( irq_ack_w ) WRITE8_HANDLER( jedi_audio_reset_w ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, (data & 1) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_RESET, (data & 1) ? CLEAR_LINE : ASSERT_LINE); } diff --git a/src/mame/audio/leland.c b/src/mame/audio/leland.c index 7ebce19b2c9..d1374a76774 100644 --- a/src/mame/audio/leland.c +++ b/src/mame/audio/leland.c @@ -759,7 +759,7 @@ generate_int: /* generate the appropriate interrupt */ i80186.intr.poll_status = 0x8000 | new_vector; if (!i80186.intr.pending) - cpu_set_input_line(machine->cpu[2], 0, ASSERT_LINE); + cputag_set_input_line(machine, "audiocpu", 0, ASSERT_LINE); i80186.intr.pending = 1; if (LOG_INTERRUPTS) logerror("(%f) **** Requesting interrupt vector %02X\n", attotime_to_double(timer_get_time(machine)), new_vector); } @@ -1695,14 +1695,14 @@ WRITE8_HANDLER( leland_80186_control_w ) } /* /RESET */ - cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_RESET, data & 0x80 ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_RESET, data & 0x80 ? CLEAR_LINE : ASSERT_LINE); /* /NMI */ /* If the master CPU doesn't get a response by the time it's ready to send the next command, it uses an NMI to force the issue; unfortunately, this seems to really screw up the sound system. It turns out it's better to just wait for the original interrupt to occur naturally */ -/* cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_NMI, data & 0x40 ? CLEAR_LINE : ASSERT_LINE);*/ +/* cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, data & 0x40 ? CLEAR_LINE : ASSERT_LINE);*/ /* INT0 */ if (data & 0x20) @@ -1777,8 +1777,8 @@ static READ16_HANDLER( main_to_sound_comm_r ) static TIMER_CALLBACK( delayed_response_r ) { int checkpc = param; - int pc = cpu_get_reg(machine->cpu[0], Z80_PC); - int oldaf = cpu_get_reg(machine->cpu[0], Z80_AF); + int pc = cpu_get_reg(cputag_get_cpu(machine, "master"), Z80_PC); + int oldaf = cpu_get_reg(cputag_get_cpu(machine, "master"), Z80_AF); /* This is pretty cheesy, but necessary. Since the CPUs run in round-robin order, synchronizing on the write to this register from the slave side does nothing. @@ -1791,7 +1791,7 @@ static TIMER_CALLBACK( delayed_response_r ) if (LOG_COMM) logerror("(Updated sound response latch to %02X)\n", sound_response); oldaf = (oldaf & 0x00ff) | (sound_response << 8); - cpu_set_reg(machine->cpu[0], Z80_AF, oldaf); + cpu_set_reg(cputag_get_cpu(machine, "master"), Z80_AF, oldaf); } else logerror("ERROR: delayed_response_r - current PC = %04X, checkPC = %04X\n", pc, checkpc); diff --git a/src/mame/drivers/igs_blit.c b/src/mame/drivers/igs_blit.c index 6a6b82721fd..1e1925db0e3 100644 --- a/src/mame/drivers/igs_blit.c +++ b/src/mame/drivers/igs_blit.c @@ -2495,7 +2495,7 @@ MACHINE_DRIVER_END static void sound_irq(const device_config *device, int state) { -// cpu_set_input_line(machine->cpu[0], 3, state); +// cputag_set_input_line(machine, "maincpu", 3, state); } static const ics2115_interface vbowl_ics2115_interface = { diff --git a/src/mame/drivers/igspoker.c b/src/mame/drivers/igspoker.c index 274d3c41fe8..fdccb37fff8 100644 --- a/src/mame/drivers/igspoker.c +++ b/src/mame/drivers/igspoker.c @@ -101,7 +101,7 @@ static READ8_HANDLER( igs_irqack_r ) static WRITE8_HANDLER( igs_irqack_w ) { -// cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); +// cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); } @@ -2251,5 +2251,3 @@ GAMEL( 2000, igs_ncs2, 0, igs_ncs, igs_ncs, igs_ncs2, ROT0, "IGS", "N GAMEL( 1998, stellecu, 0, number10, number10, 0, ROT0, "Sure", "Stelle e Cubi (Italy)", GAME_NOT_WORKING, layout_igspoker ) GAMEL( 1993?, pktet346, 0, pktetris, pktet346, pktet346, ROT0, "IGS", "PK Tetris (v346I)", 0, layout_igspoker ) - - diff --git a/src/mame/drivers/ilpag.c b/src/mame/drivers/ilpag.c index f9823d85b37..b00e3d39ed9 100644 --- a/src/mame/drivers/ilpag.c +++ b/src/mame/drivers/ilpag.c @@ -242,7 +242,7 @@ static READ16_HANDLER( test_r ) static WRITE16_HANDLER( irq_callback_w ) { // popmessage("%02x",data); - cpu_set_input_line(space->machine->cpu[0],3,HOLD_LINE ); + cputag_set_input_line(space->machine, "maincpu", 3, HOLD_LINE ); } static WRITE16_HANDLER( sound_write_w ) diff --git a/src/mame/drivers/imolagp.c b/src/mame/drivers/imolagp.c index 0ed8b708785..d79faeb21e8 100644 --- a/src/mame/drivers/imolagp.c +++ b/src/mame/drivers/imolagp.c @@ -113,7 +113,7 @@ static WRITE8_HANDLER( transmit_data_w ) } static READ8_HANDLER( trigger_slave_nmi_r ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(space->machine, "slave", INPUT_LINE_NMI, PULSE_LINE); return 0; } diff --git a/src/mame/drivers/inufuku.c b/src/mame/drivers/inufuku.c index 8b870ac6b1a..164bee6c508 100644 --- a/src/mame/drivers/inufuku.c +++ b/src/mame/drivers/inufuku.c @@ -99,7 +99,7 @@ static WRITE16_HANDLER( inufuku_soundcommand_w ) pending_command = 1; soundlatch_w(space, 0, data & 0xff); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); } } @@ -129,7 +129,7 @@ static MACHINE_RESET( inufuku ) static DRIVER_INIT( inufuku ) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); pending_command = 1; inufuku_soundrombank_w(space, 0, 0); } @@ -351,7 +351,7 @@ GFXDECODE_END static void irqhandler(const device_config *device, int irq) { - cpu_set_input_line(device->machine->cpu[1], 0, irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(device->machine, "audiocpu", 0, irq ? ASSERT_LINE : CLEAR_LINE); } static const ym2610_interface ym2610_config = diff --git a/src/mame/drivers/iqblock.c b/src/mame/drivers/iqblock.c index a3d76a55aa0..dea1ddf09d1 100644 --- a/src/mame/drivers/iqblock.c +++ b/src/mame/drivers/iqblock.c @@ -85,7 +85,7 @@ static INTERRUPT_GEN( iqblock_interrupt ) static WRITE8_HANDLER( iqblock_irqack_w ) { - cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); } static READ8_HANDLER( extrarom_r ) @@ -441,7 +441,7 @@ static DRIVER_INIT( iqblock ) paletteram_2 = rom + 0x12800; iqblock_fgvideoram = rom + 0x16800; iqblock_bgvideoram = rom + 0x17000; - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xfe26, 0xfe26, 0, 0, iqblock_prot_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xfe26, 0xfe26, 0, 0, iqblock_prot_w); iqblock_video_type=1; } @@ -463,7 +463,7 @@ static DRIVER_INIT( grndtour ) paletteram_2 = rom + 0x12800; iqblock_fgvideoram = rom + 0x16800; iqblock_bgvideoram = rom + 0x17000; - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xfe39, 0xfe39, 0, 0, grndtour_prot_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xfe39, 0xfe39, 0, 0, grndtour_prot_w); iqblock_video_type=0; } @@ -471,4 +471,3 @@ static DRIVER_INIT( grndtour ) GAME( 1993, iqblock, 0, iqblock, iqblock, iqblock, ROT0, "IGS", "IQ-Block", 0 ) GAME( 1993, grndtour, 0, iqblock, iqblock, grndtour, ROT0, "IGS", "Grand Tour", 0 ) - diff --git a/src/mame/drivers/irobot.c b/src/mame/drivers/irobot.c index 0c5fc34a9ab..091c7b17a64 100644 --- a/src/mame/drivers/irobot.c +++ b/src/mame/drivers/irobot.c @@ -102,13 +102,13 @@ static WRITE8_HANDLER( irobot_nvram_w ) static WRITE8_HANDLER( irobot_clearirq_w ) { - cpu_set_input_line(space->machine->cpu[0], M6809_IRQ_LINE ,CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", M6809_IRQ_LINE ,CLEAR_LINE); } static WRITE8_HANDLER( irobot_clearfirq_w ) { - cpu_set_input_line(space->machine->cpu[0], M6809_FIRQ_LINE ,CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", M6809_FIRQ_LINE ,CLEAR_LINE); } diff --git a/src/mame/drivers/ironhors.c b/src/mame/drivers/ironhors.c index 24c74c7564e..05a9c8a4d87 100644 --- a/src/mame/drivers/ironhors.c +++ b/src/mame/drivers/ironhors.c @@ -46,7 +46,7 @@ static INTERRUPT_GEN( ironhors_interrupt ) static WRITE8_HANDLER( ironhors_sh_irqtrigger_w ) { - cpu_set_input_line_and_vector(space->machine->cpu[1],0,HOLD_LINE,0xff); + cputag_set_input_line_and_vector(space->machine, "soundcpu", 0, HOLD_LINE, 0xff); } static WRITE8_DEVICE_HANDLER( ironhors_filter_w ) @@ -390,7 +390,7 @@ static INTERRUPT_GEN( farwest_interrupt ) static READ8_DEVICE_HANDLER( farwest_soundlatch_r ) { - return soundlatch_r(cpu_get_address_space(device->machine->cpu[1], ADDRESS_SPACE_PROGRAM),0); + return soundlatch_r(cputag_get_address_space(device->machine, "soundcpu", ADDRESS_SPACE_PROGRAM),0); } static const ym2203_interface farwest_ym2203_config = diff --git a/src/mame/drivers/istellar.c b/src/mame/drivers/istellar.c index 9ffc4b2de53..0476aaaad74 100644 --- a/src/mame/drivers/istellar.c +++ b/src/mame/drivers/istellar.c @@ -102,7 +102,7 @@ static WRITE8_HANDLER(z80_0_latch2_write) if (z80_2_nmi_enable) { logerror("Executing an NMI on CPU2\n"); - cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_NMI, PULSE_LINE); /* Maybe this is a ASSERT_LINE, CLEAR_LINE combo? */ + cputag_set_input_line(space->machine, "sub", INPUT_LINE_NMI, PULSE_LINE); /* Maybe this is a ASSERT_LINE, CLEAR_LINE combo? */ z80_2_nmi_enable = 0; } } @@ -316,7 +316,7 @@ static INTERRUPT_GEN( vblank_callback_istellar ) cpu_set_input_line(device, 0, ASSERT_LINE); /* Interrupt presumably comes from the LDP's status strobe */ - cpu_set_input_line(device->machine->cpu[2], 0, ASSERT_LINE); + cputag_set_input_line(device->machine, "sub", 0, ASSERT_LINE); } diff --git a/src/mame/drivers/itech32.c b/src/mame/drivers/itech32.c index 244077f5994..48ca5b835ac 100644 --- a/src/mame/drivers/itech32.c +++ b/src/mame/drivers/itech32.c @@ -426,14 +426,17 @@ void itech32_update_interrupts(running_machine *machine, int vint, int xint, int if (xint != -1) xint_state = xint; if (qint != -1) qint_state = qint; - if (is_drivedge) { - cpu_set_input_line(machine->cpu[0], 3, vint_state ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 4, xint_state ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 5, qint_state ? ASSERT_LINE : CLEAR_LINE); - } else { - cpu_set_input_line(machine->cpu[0], 1, vint_state ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 2, xint_state ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 3, qint_state ? ASSERT_LINE : CLEAR_LINE); + if (is_drivedge) + { + cputag_set_input_line(machine, "maincpu", 3, vint_state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 4, xint_state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 5, qint_state ? ASSERT_LINE : CLEAR_LINE); + } + else + { + cputag_set_input_line(machine, "maincpu", 1, vint_state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 2, xint_state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 3, qint_state ? ASSERT_LINE : CLEAR_LINE); } } @@ -475,8 +478,8 @@ static MACHINE_RESET( drivedge ) { MACHINE_RESET_CALL(itech32); - cpu_set_input_line(machine->cpu[2], INPUT_LINE_RESET, ASSERT_LINE); - cpu_set_input_line(machine->cpu[3], INPUT_LINE_RESET, ASSERT_LINE); + cputag_set_input_line(machine, "dsp1", INPUT_LINE_RESET, ASSERT_LINE); + cputag_set_input_line(machine, "dsp2", INPUT_LINE_RESET, ASSERT_LINE); STOP_TMS_SPINNING(machine, 0); STOP_TMS_SPINNING(machine, 1); } @@ -667,7 +670,7 @@ static TIMER_CALLBACK( delayed_sound_data_w ) { sound_data = param; sound_int_state = 1; - cpu_set_input_line(machine->cpu[1], M6809_IRQ_LINE, ASSERT_LINE); + cputag_set_input_line(machine, "soundcpu", M6809_IRQ_LINE, ASSERT_LINE); } @@ -693,7 +696,7 @@ static WRITE32_HANDLER( sound_data32_w ) static READ8_HANDLER( sound_data_r ) { - cpu_set_input_line(space->machine->cpu[1], M6809_IRQ_LINE, CLEAR_LINE); + cputag_set_input_line(space->machine, "soundcpu", M6809_IRQ_LINE, CLEAR_LINE); sound_int_state = 0; return sound_data; } @@ -720,7 +723,7 @@ static READ8_HANDLER( sound_data_buffer_r ) static WRITE8_DEVICE_HANDLER( drivedge_portb_out ) { - const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(device->machine, "maincpu", ADDRESS_SPACE_PROGRAM); // logerror("PIA port B write = %02x\n", data); /* bit 0 controls the fan light */ @@ -745,7 +748,7 @@ static WRITE8_DEVICE_HANDLER( drivedge_turbo_light ) static WRITE8_DEVICE_HANDLER( pia_portb_out ) { - const address_space *space = cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(device->machine, "maincpu", ADDRESS_SPACE_PROGRAM); // logerror("PIA port B write = %02x\n", data); /* bit 4 controls the ticket dispenser */ @@ -792,7 +795,7 @@ static const via6522_interface drivedge_via_interface = static WRITE8_HANDLER( firq_clear_w ) { - cpu_set_input_line(space->machine->cpu[1], M6809_FIRQ_LINE, CLEAR_LINE); + cputag_set_input_line(space->machine, "soundcpu", M6809_FIRQ_LINE, CLEAR_LINE); } @@ -805,8 +808,8 @@ static WRITE8_HANDLER( firq_clear_w ) static WRITE32_HANDLER( tms_reset_assert_w ) { - cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_RESET, ASSERT_LINE); - cpu_set_input_line(space->machine->cpu[3], INPUT_LINE_RESET, ASSERT_LINE); + cputag_set_input_line(space->machine, "dsp1", INPUT_LINE_RESET, ASSERT_LINE); + cputag_set_input_line(space->machine, "dsp2", INPUT_LINE_RESET, ASSERT_LINE); } @@ -815,12 +818,12 @@ static WRITE32_HANDLER( tms_reset_clear_w ) /* kludge to prevent crash on first boot */ if ((tms1_ram[0] & 0xff000000) == 0) { - cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_RESET, CLEAR_LINE); + cputag_set_input_line(space->machine, "dsp1", INPUT_LINE_RESET, CLEAR_LINE); STOP_TMS_SPINNING(space->machine, 0); } if ((tms2_ram[0] & 0xff000000) == 0) { - cpu_set_input_line(space->machine->cpu[3], INPUT_LINE_RESET, CLEAR_LINE); + cputag_set_input_line(space->machine, "dsp2", INPUT_LINE_RESET, CLEAR_LINE); STOP_TMS_SPINNING(space->machine, 1); } } @@ -3917,8 +3920,8 @@ static DRIVER_INIT( drivedge ) itech32_planes = 1; is_drivedge = 1; - memory_install_read32_handler(cpu_get_address_space(machine->cpu[2], ADDRESS_SPACE_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms1_speedup_r); - memory_install_read32_handler(cpu_get_address_space(machine->cpu[3], ADDRESS_SPACE_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms2_speedup_r); + memory_install_read32_handler(cputag_get_address_space(machine, "dsp1", ADDRESS_SPACE_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms1_speedup_r); + memory_install_read32_handler(cputag_get_address_space(machine, "dsp2", ADDRESS_SPACE_PROGRAM), 0x8382, 0x8382, 0, 0, drivedge_tms2_speedup_r); } @@ -3934,10 +3937,10 @@ static DRIVER_INIT( wcbowl ) itech32_vram_height = 1024; itech32_planes = 1; - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x680000, 0x680001, 0, 0, trackball_r); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x680000, 0x680001, 0, 0, trackball_r); - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x578000, 0x57ffff, 0, 0, (read16_space_func)SMH_NOP); - memory_install_readwrite16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x680080, 0x680081, 0, 0, wcbowl_prot_result_r, (write16_space_func)SMH_NOP); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x578000, 0x57ffff, 0, 0, (read16_space_func)SMH_NOP); + memory_install_readwrite16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x680080, 0x680081, 0, 0, wcbowl_prot_result_r, (write16_space_func)SMH_NOP); } @@ -3950,8 +3953,8 @@ static void init_sftm_common(running_machine *machine, int prot_addr) itech020_prot_address = prot_addr; - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); } @@ -3981,10 +3984,10 @@ static void init_shuffle_bowl_common(running_machine *machine, int prot_addr) itech020_prot_address = prot_addr; - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_r); - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x300000, 0x300003, 0, 0, itech020_color2_w); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x380000, 0x380003, 0, 0, itech020_color1_w); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); } @@ -4003,7 +4006,7 @@ static DRIVER_INIT( wcbowln ) /* PIC 16C54 labeled as ITBWL-3 */ static void install_timekeeper(running_machine *machine) { const device_config *device = devtag_get_device(machine, "m48t02"); - memory_install_readwrite32_device_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), device, 0x681000, 0x6817ff, 0, 0, timekeeper_32be_r, timekeeper_32be_w); + memory_install_readwrite32_device_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), device, 0x681000, 0x6817ff, 0, 0, timekeeper_32be_r, timekeeper_32be_w); } static DRIVER_INIT( wcbowlt ) /* PIC 16C54 labeled as ITBWL-3 */ @@ -4034,7 +4037,7 @@ static DRIVER_INIT( gt3d ) Hacked versions of this PCB have been found with GT97 through GTClassic. This is _NOT_ a factory modification */ - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_8bit_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_8bit_r); init_gt_common(machine); } @@ -4047,8 +4050,8 @@ static DRIVER_INIT( aama ) board share the same sound CPU code and sample ROMs. This board has all versions of GT for it, GT3D through GTClassic */ - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_r); - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x180800, 0x180803, 0, 0, trackball32_4bit_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x181000, 0x181003, 0, 0, trackball32_4bit_p2_r); init_gt_common(machine); } @@ -4072,7 +4075,7 @@ static DRIVER_INIT( s_ver ) board: GT97 v1.21S, GT98, GT99, GT2K & GT Classic Versions 1.00S Trackball info is read through 200202 (actually 200203). */ - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x200200, 0x200203, 0, 0, trackball32_4bit_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200200, 0x200203, 0, 0, trackball32_4bit_r); init_gt_common(machine); } @@ -4086,7 +4089,7 @@ static DRIVER_INIT( gt3dl ) Player 1 trackball read through 200003 Player 2 trackball read through 200002 */ - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_4bit_combined_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x200000, 0x200003, 0, 0, trackball32_4bit_combined_r); init_gt_common(machine); } @@ -4094,7 +4097,7 @@ static DRIVER_INIT( gt3dl ) static DRIVER_INIT( gtclassp ) { /* a little extra protection */ - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x680000, 0x680003, 0, 0, gtclass_prot_result_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x680000, 0x680003, 0, 0, gtclass_prot_result_r); DRIVER_INIT_CALL(aama); /* The protection code is: diff --git a/src/mame/drivers/itech8.c b/src/mame/drivers/itech8.c index 471420bb213..7dd2619ba8c 100644 --- a/src/mame/drivers/itech8.c +++ b/src/mame/drivers/itech8.c @@ -592,7 +592,7 @@ static const via6522_interface via_interface = void itech8_update_interrupts(running_machine *machine, int periodic, int tms34061, int blitter) { - cpu_type main_cpu_type = cpu_get_type(machine->cpu[0]); + cpu_type main_cpu_type = cpu_get_type(cputag_get_cpu(machine, "maincpu")); /* update the states */ if (periodic != -1) periodic_int = periodic; @@ -603,16 +603,16 @@ void itech8_update_interrupts(running_machine *machine, int periodic, int tms340 if (main_cpu_type == CPU_M6809 || main_cpu_type == CPU_HD6309) { /* just modify lines that have changed */ - if (periodic != -1) cpu_set_input_line(machine->cpu[0], INPUT_LINE_NMI, periodic ? ASSERT_LINE : CLEAR_LINE); - if (tms34061 != -1) cpu_set_input_line(machine->cpu[0], M6809_IRQ_LINE, tms34061 ? ASSERT_LINE : CLEAR_LINE); - if (blitter != -1) cpu_set_input_line(machine->cpu[0], M6809_FIRQ_LINE, blitter ? ASSERT_LINE : CLEAR_LINE); + if (periodic != -1) cputag_set_input_line(machine, "maincpu", INPUT_LINE_NMI, periodic ? ASSERT_LINE : CLEAR_LINE); + if (tms34061 != -1) cputag_set_input_line(machine, "maincpu", M6809_IRQ_LINE, tms34061 ? ASSERT_LINE : CLEAR_LINE); + if (blitter != -1) cputag_set_input_line(machine, "maincpu", M6809_FIRQ_LINE, blitter ? ASSERT_LINE : CLEAR_LINE); } /* handle the 68000 case */ else { - cpu_set_input_line(machine->cpu[0], 2, blitter_int ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 3, periodic_int ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 2, blitter_int ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 3, periodic_int ? ASSERT_LINE : CLEAR_LINE); } } @@ -643,13 +643,13 @@ static INTERRUPT_GEN( generate_nmi ) static WRITE8_HANDLER( itech8_nmi_ack_w ) { /* doesn't seem to hold for every game (e.g., hstennis) */ -/* cpu_set_input_line(space->machine->cpu[0], INPUT_LINE_NMI, CLEAR_LINE);*/ +/* cputag_set_input_line(space->machine, "maincpu", INPUT_LINE_NMI, CLEAR_LINE);*/ } static void generate_sound_irq(const device_config *device, int state) { - cpu_set_input_line(device->machine->cpu[1], M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(device->machine, "soundcpu", M6809_FIRQ_LINE, state ? ASSERT_LINE : CLEAR_LINE); } @@ -671,13 +671,13 @@ static MACHINE_START( sstrike ) static MACHINE_RESET( itech8 ) { - cpu_type main_cpu_type = cpu_get_type(machine->cpu[0]); + cpu_type main_cpu_type = cpu_get_type(cputag_get_cpu(machine, "maincpu")); /* make sure bank 0 is selected */ if (main_cpu_type == CPU_M6809 || main_cpu_type == CPU_HD6309) { memory_set_bankptr(machine, 1, &memory_region(machine, "maincpu")[0x4000]); - device_reset(machine->cpu[0]); + device_reset(cputag_get_cpu(machine, "maincpu")); } /* reset the ticket dispenser */ @@ -793,7 +793,7 @@ static WRITE8_DEVICE_HANDLER( ym2203_portb_out ) /* bit 6 controls the diagnostic sound LED */ /* bit 7 controls the ticket dispenser */ pia_portb_data = data; - ticket_dispenser_w(cpu_get_address_space(device->machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0, data & 0x80); + ticket_dispenser_w(cputag_get_address_space(device->machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0, data & 0x80); coin_counter_w(0, (data & 0x20) >> 5); } @@ -808,7 +808,7 @@ static WRITE8_DEVICE_HANDLER( ym2203_portb_out ) static TIMER_CALLBACK( delayed_sound_data_w ) { sound_data = param; - cpu_set_input_line(machine->cpu[1], M6809_IRQ_LINE, ASSERT_LINE); + cputag_set_input_line(machine, "soundcpu", M6809_IRQ_LINE, ASSERT_LINE); } @@ -831,7 +831,7 @@ static WRITE8_HANDLER( gtg2_sound_data_w ) static READ8_HANDLER( sound_data_r ) { - cpu_set_input_line(space->machine->cpu[1], M6809_IRQ_LINE, CLEAR_LINE); + cputag_set_input_line(space->machine, "soundcpu", M6809_IRQ_LINE, CLEAR_LINE); return sound_data; } @@ -2660,25 +2660,25 @@ ROM_END static DRIVER_INIT( grmatch ) { - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0160, 0x0160, 0, 0, grmatch_palette_w); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0180, 0x0180, 0, 0, grmatch_xscroll_w); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x01e0, 0x01ff, 0, 0, (write8_space_func)SMH_UNMAP); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0160, 0x0160, 0, 0, grmatch_palette_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0180, 0x0180, 0, 0, grmatch_xscroll_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x01e0, 0x01ff, 0, 0, (write8_space_func)SMH_UNMAP); } static DRIVER_INIT( slikshot ) { - memory_install_read8_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0180, 0x0180, 0, 0, slikshot_z80_r); - memory_install_read8_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_r); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_w); + memory_install_read8_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0180, 0x0180, 0, 0, slikshot_z80_r); + memory_install_read8_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_r); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x01cf, 0x01cf, 0, 0, slikshot_z80_control_w); } static DRIVER_INIT( sstrike ) { - memory_install_read8_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1180, 0x1180, 0, 0, slikshot_z80_r); - memory_install_read8_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_r); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_w); + memory_install_read8_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1180, 0x1180, 0, 0, slikshot_z80_r); + memory_install_read8_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_r); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x11cf, 0x11cf, 0, 0, slikshot_z80_control_w); } @@ -2713,15 +2713,15 @@ static DRIVER_INIT( neckneck ) static DRIVER_INIT( rimrockn ) { /* additional input ports */ - memory_install_read_port_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0161, 0x0161, 0, 0, "161"); - memory_install_read_port_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0162, 0x0162, 0, 0, "162"); - memory_install_read_port_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0163, 0x0163, 0, 0, "163"); - memory_install_read_port_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0164, 0x0164, 0, 0, "164"); - memory_install_read_port_handler (cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x0165, 0x0165, 0, 0, "165"); + memory_install_read_port_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0161, 0x0161, 0, 0, "161"); + memory_install_read_port_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0162, 0x0162, 0, 0, "162"); + memory_install_read_port_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0163, 0x0163, 0, 0, "163"); + memory_install_read_port_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0164, 0x0164, 0, 0, "164"); + memory_install_read_port_handler (cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x0165, 0x0165, 0, 0, "165"); /* different banking mechanism (disable the old one) */ - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x01a0, 0x01a0, 0, 0, rimrockn_bank_w); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x01c0, 0x01df, 0, 0, itech8_blitter_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x01a0, 0x01a0, 0, 0, rimrockn_bank_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x01c0, 0x01df, 0, 0, itech8_blitter_w); } diff --git a/src/mame/drivers/itgambl2.c b/src/mame/drivers/itgambl2.c index 2d09da705b7..a9550824066 100644 --- a/src/mame/drivers/itgambl2.c +++ b/src/mame/drivers/itgambl2.c @@ -221,7 +221,7 @@ GFXDECODE_END static MACHINE_RESET( itgambl2 ) { /* stop the CPU, we have no code for it anyway */ - cpu_set_input_line(machine->cpu[0], INPUT_LINE_HALT, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", INPUT_LINE_HALT, ASSERT_LINE); } /* default 444 palette for debug purpose*/ diff --git a/src/mame/drivers/itgambl3.c b/src/mame/drivers/itgambl3.c index 16313acbd65..6974df818b1 100644 --- a/src/mame/drivers/itgambl3.c +++ b/src/mame/drivers/itgambl3.c @@ -210,7 +210,7 @@ GFXDECODE_END static MACHINE_RESET( itgambl3 ) { /* stop the CPU, we have no code for it anyway */ - cpu_set_input_line(machine->cpu[0], INPUT_LINE_HALT, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", INPUT_LINE_HALT, ASSERT_LINE); } /* default 444 palette for debug purpose*/ diff --git a/src/mame/drivers/itgamble.c b/src/mame/drivers/itgamble.c index d21b1e71cba..fba9551a370 100644 --- a/src/mame/drivers/itgamble.c +++ b/src/mame/drivers/itgamble.c @@ -171,7 +171,7 @@ GFXDECODE_END static MACHINE_RESET( itgamble ) { /* stop the CPU, we have no code for it anyway */ - cpu_set_input_line(machine->cpu[0], INPUT_LINE_HALT, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", INPUT_LINE_HALT, ASSERT_LINE); } diff --git a/src/mame/drivers/jack.c b/src/mame/drivers/jack.c index 94a166f9f4e..0a9ba52b188 100644 --- a/src/mame/drivers/jack.c +++ b/src/mame/drivers/jack.c @@ -72,8 +72,8 @@ static READ8_DEVICE_HANDLER( timer_r ) static WRITE8_HANDLER( jack_sh_command_w ) { - soundlatch_w(space,0,data); - cpu_set_input_line(space->machine->cpu[1], 0, HOLD_LINE); + soundlatch_w(space, 0, data); + cputag_set_input_line(space->machine, "audiocpu", 0, HOLD_LINE); } @@ -1436,10 +1436,10 @@ static DRIVER_INIT( striv ) } // Set-up the weirdest questions read ever done - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xc000, 0xcfff, 0, 0, striv_question_r); + memory_install_read8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xc000, 0xcfff, 0, 0, striv_question_r); // Nop out unused sprites writes - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xb000, 0xb0ff, 0, 0, (write8_space_func)SMH_NOP); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xb000, 0xb0ff, 0, 0, (write8_space_func)SMH_NOP); timer_rate = 128; } diff --git a/src/mame/drivers/jackal.c b/src/mame/drivers/jackal.c index 4324be9cc01..ce151138e72 100644 --- a/src/mame/drivers/jackal.c +++ b/src/mame/drivers/jackal.c @@ -243,7 +243,7 @@ static INTERRUPT_GEN( jackal_interrupt ) if (irq_enable) { cpu_set_input_line(device, 0, HOLD_LINE); - cpu_set_input_line(device->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(device->machine, "slave", INPUT_LINE_NMI, PULSE_LINE); } } diff --git a/src/mame/drivers/jackie.c b/src/mame/drivers/jackie.c index 197b39fec9c..85a88655c7c 100644 --- a/src/mame/drivers/jackie.c +++ b/src/mame/drivers/jackie.c @@ -256,7 +256,7 @@ static READ8_HANDLER( igs_irqack_r ) static WRITE8_HANDLER( igs_irqack_w ) { -// cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); +// cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); out[2] = data; show_out(); } diff --git a/src/mame/drivers/jalmah.c b/src/mame/drivers/jalmah.c index 356ade8f938..3911ba75e75 100644 --- a/src/mame/drivers/jalmah.c +++ b/src/mame/drivers/jalmah.c @@ -626,27 +626,27 @@ static WRITE16_HANDLER( urashima_dma_w ) if(data & 4) { UINT32 i; - for(i=0;i<0x200;i+=2) - memory_write_word(space,0x88200+i,memory_read_word(space,0x88400+i)); + for(i = 0; i < 0x200; i += 2) + memory_write_word(space, 0x88200 + i, memory_read_word(space, 0x88400 + i)); } } /*same as $f00c0 sub-routine,but with additional work-around,to remove from here...*/ -static void daireika_palette_dma(running_machine *machine,UINT16 val) +static void daireika_palette_dma(running_machine *machine, UINT16 val) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); - UINT32 index_1,index_2,src_addr,tmp_addr; + const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); + UINT32 index_1, index_2, src_addr, tmp_addr; /*a0=301c0+jm_shared_ram[0x540/2] & 0xf00 */ /*a1=88000*/ src_addr = 0x301c0 + (val * 0x40); // popmessage("%08x",src_addr); - for(index_1=0;index_1<0x200;index_1+=0x20) + for(index_1 = 0; index_1 < 0x200; index_1 += 0x20) { tmp_addr = src_addr; src_addr = memory_read_dword(space,src_addr); - for(index_2=0;index_2<0x20;index_2+=2) - memory_write_word(space,0x88000+index_2+index_1,memory_read_word(space,src_addr+index_2)); + for(index_2 = 0; index_2 < 0x20; index_2 += 2) + memory_write_word(space, 0x88000 + index_2 + index_1, memory_read_word(space, src_addr + index_2)); src_addr = tmp_addr + 4; } @@ -655,7 +655,7 @@ static void daireika_palette_dma(running_machine *machine,UINT16 val) /*RAM-based protection handlings*/ static void daireika_mcu_run(running_machine *machine) { - static UINT16 prg_prot,dma_old; + static UINT16 prg_prot, dma_old; if(((jm_shared_ram[0x550/2] & 0xf00) == 0x700) && ((jm_shared_ram[0x540/2] & 0xf00) != dma_old)) { @@ -2301,45 +2301,45 @@ static READ16_HANDLER( suchipi_mcu_r ) static DRIVER_INIT( urashima ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, urashima_mcu_r ); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, urashima_mcu_w ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, urashima_mcu_r ); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, urashima_mcu_w ); mcu_prg = 0x12; } static DRIVER_INIT( daireika ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, daireika_mcu_r ); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, daireika_mcu_w ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, daireika_mcu_r ); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, daireika_mcu_w ); mcu_prg = 0x11; } static DRIVER_INIT( mjzoomin ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, mjzoomin_mcu_r ); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, mjzoomin_mcu_w ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, mjzoomin_mcu_r ); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80012, 0x80013, 0, 0, mjzoomin_mcu_w ); mcu_prg = 0x13; } static DRIVER_INIT( kakumei ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); mcu_prg = 0x21; } static DRIVER_INIT( kakumei2 ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, kakumei_mcu_r ); mcu_prg = 0x22; } static DRIVER_INIT( suchipi ) { - memory_install_read16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, suchipi_mcu_r ); + memory_install_read16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x80004, 0x80005, 0, 0, suchipi_mcu_r ); mcu_prg = 0x23; } diff --git a/src/mame/drivers/jangou.c b/src/mame/drivers/jangou.c index 80117a43687..9e26ede78ab 100644 --- a/src/mame/drivers/jangou.c +++ b/src/mame/drivers/jangou.c @@ -269,12 +269,12 @@ static READ8_DEVICE_HANDLER( input_system_r ) static WRITE8_HANDLER( sound_latch_w ) { soundlatch_w(space, 0, data & 0xff); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, ASSERT_LINE); + cputag_set_input_line(space->machine, "cpu1", INPUT_LINE_NMI, ASSERT_LINE); } static READ8_HANDLER( sound_latch_r ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, CLEAR_LINE); + cputag_set_input_line(space->machine, "cpu1", INPUT_LINE_NMI, CLEAR_LINE); return soundlatch_r(space, 0); } @@ -292,7 +292,7 @@ static TIMER_CALLBACK( cvsd_bit_timer_callback ) /* Trigger an IRQ for every 8 shifted bits */ if ((++cvsd_shift_cnt & 7) == 0) - cpu_set_input_line(machine->cpu[1], 0, HOLD_LINE); + cputag_set_input_line(machine, "cpu1", 0, HOLD_LINE); } @@ -311,7 +311,7 @@ static void jngolady_vclk_cb(const device_config *device) else { msm5205_data_w(device, adpcm_byte & 0xf); - cpu_set_input_line(device->machine->cpu[1], 0, HOLD_LINE); + cputag_set_input_line(device->machine, "cpu1", 0, HOLD_LINE); } msm5205_vclk_toggle ^= 1; @@ -333,7 +333,7 @@ static READ8_HANDLER( master_com_r ) static WRITE8_HANDLER( master_com_w ) { - cpu_set_input_line(space->machine->cpu[2], 0, HOLD_LINE); + cputag_set_input_line(space->machine, "nsc", 0, HOLD_LINE); nsc_latch = data; } @@ -1026,7 +1026,7 @@ static READ8_HANDLER( jngolady_rng_r ) static DRIVER_INIT( jngolady ) { - memory_install_read8_handler(cpu_get_address_space(machine->cpu[2], ADDRESS_SPACE_PROGRAM), 0x08, 0x08, 0, 0, jngolady_rng_r ); + memory_install_read8_handler(cputag_get_address_space(machine, "nsc", ADDRESS_SPACE_PROGRAM), 0x08, 0x08, 0, 0, jngolady_rng_r ); } static DRIVER_INIT (luckygrl) diff --git a/src/mame/drivers/jantotsu.c b/src/mame/drivers/jantotsu.c index b647c9c2cec..f29867c9874 100644 --- a/src/mame/drivers/jantotsu.c +++ b/src/mame/drivers/jantotsu.c @@ -380,7 +380,7 @@ INPUT_PORTS_END static INTERRUPT_GEN( jantotsu_irq ) { - cpu_set_input_line(device->machine->cpu[0], INPUT_LINE_NMI, PULSE_LINE ); + cputag_set_input_line(device->machine, "maincpu", INPUT_LINE_NMI, PULSE_LINE ); } static MACHINE_RESET( jantotsu ) diff --git a/src/mame/drivers/jchan.c b/src/mame/drivers/jchan.c index 0f517835166..e63e5ad6140 100644 --- a/src/mame/drivers/jchan.c +++ b/src/mame/drivers/jchan.c @@ -325,15 +325,15 @@ static INTERRUPT_GEN( jchan_vblank ) { case 0: - cpu_set_input_line(device->machine->cpu[1], 1, HOLD_LINE); + cputag_set_input_line(device->machine, "sub", 1, HOLD_LINE); break; case 220: - cpu_set_input_line(device->machine->cpu[1], 2, HOLD_LINE); + cputag_set_input_line(device->machine, "sub", 2, HOLD_LINE); break; case 100: - cpu_set_input_line(device->machine->cpu[1], 3, HOLD_LINE); + cputag_set_input_line(device->machine, "sub", 3, HOLD_LINE); break; } @@ -454,14 +454,14 @@ static READ16_HANDLER ( jchan_ctrl_r ) static WRITE16_HANDLER( main2sub_cmd_w ) { COMBINE_DATA(&mainsub_shared_ram[0x03ffe/2]); - cpu_set_input_line(space->machine->cpu[1], 4, HOLD_LINE); + cputag_set_input_line(space->machine, "sub", 4, HOLD_LINE); } // is this called? static WRITE16_HANDLER( sub2main_cmd_w ) { COMBINE_DATA(&mainsub_shared_ram[0x0000/2]); - cpu_set_input_line(space->machine->cpu[0], 3, HOLD_LINE); + cputag_set_input_line(space->machine, "maincpu", 3, HOLD_LINE); } /* ram convert for suprnova (requires 32-bit stuff) */ @@ -773,8 +773,8 @@ static DRIVER_INIT( jchan ) { DRIVER_INIT_CALL( decrypt_toybox_rom ); // install these here, putting them in the memory map causes issues - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x403ffe, 0x403fff, 0, 0, main2sub_cmd_w ); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[1], ADDRESS_SPACE_PROGRAM), 0x400000, 0x400001, 0, 0, sub2main_cmd_w ); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x403ffe, 0x403fff, 0, 0, main2sub_cmd_w ); + memory_install_write16_handler(cputag_get_address_space(machine, "sub", ADDRESS_SPACE_PROGRAM), 0x400000, 0x400001, 0, 0, sub2main_cmd_w ); memset(jchan_mcu_com, 0, 4 * sizeof( UINT16 ) ); @@ -784,4 +784,3 @@ static DRIVER_INIT( jchan ) /* game drivers */ GAME( 1995, jchan, 0, jchan, jchan, jchan, ROT0, "Kaneko", "Jackie Chan - The Kung-Fu Master", GAME_IMPERFECT_GRAPHICS ) GAME( 1995, jchan2, 0, jchan, jchan2, jchan, ROT0, "Kaneko", "Jackie Chan in Fists of Fire", GAME_IMPERFECT_GRAPHICS ) - diff --git a/src/mame/drivers/jedi.c b/src/mame/drivers/jedi.c index 257e4e6bb4e..bad77132e69 100644 --- a/src/mame/drivers/jedi.c +++ b/src/mame/drivers/jedi.c @@ -128,8 +128,8 @@ static TIMER_CALLBACK( generate_interrupt ) int scanline = param; /* IRQ is set by /32V */ - cpu_set_input_line(machine->cpu[0], M6502_IRQ_LINE, (scanline & 32) ? CLEAR_LINE : ASSERT_LINE); - cpu_set_input_line(machine->cpu[1], M6502_IRQ_LINE, (scanline & 32) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", M6502_IRQ_LINE, (scanline & 32) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(machine, "audiocpu", M6502_IRQ_LINE, (scanline & 32) ? CLEAR_LINE : ASSERT_LINE); /* set up for the next */ scanline += 32; @@ -141,7 +141,7 @@ static TIMER_CALLBACK( generate_interrupt ) static WRITE8_HANDLER( main_irq_ack_w ) { - cpu_set_input_line(space->machine->cpu[0], M6502_IRQ_LINE, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", M6502_IRQ_LINE, CLEAR_LINE); } diff --git a/src/mame/drivers/jpmimpct.c b/src/mame/drivers/jpmimpct.c index f7404202407..efc6fab4e46 100644 --- a/src/mame/drivers/jpmimpct.c +++ b/src/mame/drivers/jpmimpct.c @@ -155,8 +155,8 @@ static struct static void update_irqs(running_machine *machine) { - cpu_set_input_line(machine->cpu[0], 2, tms_irq ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(machine->cpu[0], 5, duart_1_irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 2, tms_irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 5, duart_1_irq ? ASSERT_LINE : CLEAR_LINE); } @@ -197,12 +197,12 @@ static MACHINE_RESET( jpmimpct ) static WRITE16_HANDLER( m68k_tms_w ) { - tms34010_host_w(space->machine->cpu[1], offset, data); + tms34010_host_w(cputag_get_cpu(space->machine, "dsp"), offset, data); } static READ16_HANDLER( m68k_tms_r ) { - return tms34010_host_r(space->machine->cpu[1], offset); + return tms34010_host_r(cputag_get_cpu(space->machine, "dsp"), offset); } diff --git a/src/mame/drivers/jpmsys5.c b/src/mame/drivers/jpmsys5.c index 5ab93861502..0487ce6a8a9 100644 --- a/src/mame/drivers/jpmsys5.c +++ b/src/mame/drivers/jpmsys5.c @@ -81,7 +81,7 @@ enum int_levels static void tms_interrupt(running_machine *machine, int state) { - cpu_set_input_line(machine->cpu[0], INT_TMS34061, state); + cputag_set_input_line(machine, "maincpu", INT_TMS34061, state); } static const struct tms34061_interface tms34061intf = @@ -460,7 +460,7 @@ INPUT_PORTS_END static void ptm_irq(running_machine *machine, int state) { - cpu_set_input_line(machine->cpu[0], INT_6840PTM, state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", INT_6840PTM, state ? ASSERT_LINE : CLEAR_LINE); } static const ptm6840_interface ptm_intf = @@ -480,7 +480,7 @@ static const ptm6840_interface ptm_intf = static WRITE_LINE_DEVICE_HANDLER( acia_irq ) { - cpu_set_input_line(device->machine->cpu[0], INT_6850ACIA, state ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(device->machine, "maincpu", INT_6850ACIA, state ? CLEAR_LINE : ASSERT_LINE); } /* Clocks are incorrect */ diff --git a/src/mame/drivers/jrpacman.c b/src/mame/drivers/jrpacman.c index 69356d50bb5..386e2e820af 100644 --- a/src/mame/drivers/jrpacman.c +++ b/src/mame/drivers/jrpacman.c @@ -106,8 +106,8 @@ static WRITE8_HANDLER( jrpacman_interrupt_vector_w ) { - cpu_set_input_line_vector(space->machine->cpu[0], 0, data); - cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); + cpu_set_input_line_vector(cputag_get_cpu(space->machine, "maincpu"), 0, data); + cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); } diff --git a/src/mame/drivers/junofrst.c b/src/mame/drivers/junofrst.c index cb4e2818ba3..d6981aab828 100644 --- a/src/mame/drivers/junofrst.c +++ b/src/mame/drivers/junofrst.c @@ -141,7 +141,7 @@ static WRITE8_HANDLER( junofrst_sh_irqtrigger_w ) if (last == 0 && data == 1) { /* setting bit 0 low then high triggers IRQ on the sound CPU */ - cpu_set_input_line_and_vector(space->machine->cpu[1],0,HOLD_LINE,0xff); + cputag_set_input_line_and_vector(space->machine, "audiocpu", 0, HOLD_LINE, 0xff); } last = data; @@ -150,14 +150,14 @@ static WRITE8_HANDLER( junofrst_sh_irqtrigger_w ) static WRITE8_HANDLER( junofrst_i8039_irq_w ) { - cpu_set_input_line(space->machine->cpu[2], 0, ASSERT_LINE); + cputag_set_input_line(space->machine, "mcu", 0, ASSERT_LINE); } static WRITE8_HANDLER( i8039_irqen_and_status_w ) { if ((data & 0x80) == 0) - cpu_set_input_line(space->machine->cpu[2], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "mcu", 0, CLEAR_LINE); i8039_status = (data & 0x70) >> 4; } diff --git a/src/mame/drivers/kangaroo.c b/src/mame/drivers/kangaroo.c index 748f92d1ce6..b28f04f5826 100644 --- a/src/mame/drivers/kangaroo.c +++ b/src/mame/drivers/kangaroo.c @@ -187,7 +187,7 @@ static MACHINE_START( kangaroo ) static MACHINE_START( kangaroo_mcu ) { MACHINE_START_CALL(kangaroo); - memory_install_readwrite8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xef00, 0xefff, 0, 0, mcu_sim_r, mcu_sim_w); + memory_install_readwrite8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xef00, 0xefff, 0, 0, mcu_sim_r, mcu_sim_w); kangaroo_clock = 0; } @@ -205,7 +205,7 @@ static MACHINE_RESET( kangaroo ) /* the copy protection. */ /* Anyway, what I do here is just immediately generate the NMI, so the game */ /* properly starts. */ - cpu_set_input_line(machine->cpu[0], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(machine, "maincpu", INPUT_LINE_NMI, PULSE_LINE); } diff --git a/src/mame/drivers/karnov.c b/src/mame/drivers/karnov.c index 148cdcf69cb..2d296f51562 100644 --- a/src/mame/drivers/karnov.c +++ b/src/mame/drivers/karnov.c @@ -65,7 +65,8 @@ static int microcontroller_id,coin_mask; static void karnov_i8751_w(running_machine *machine, int data) { /* Pending coin operations may cause protection commands to be queued */ - if (i8751_needs_ack) { + if (i8751_needs_ack) + { i8751_command_queue=data; return; } @@ -88,14 +89,15 @@ static void karnov_i8751_w(running_machine *machine, int data) // if (!i8751_return && data!=0x300) logerror("%s - Unknown Write %02x intel\n",cpuexec_describe_context(machine),data); - cpu_set_input_line(machine->cpu[0],6,HOLD_LINE); /* Signal main cpu task is complete */ + cputag_set_input_line(machine, "maincpu", 6, HOLD_LINE); /* Signal main cpu task is complete */ i8751_needs_ack=1; } static void wndrplnt_i8751_w(running_machine *machine, int data) { /* The last command hasn't been ACK'd (probably a conflict with coin command) */ - if (i8751_needs_ack) { + if (i8751_needs_ack) + { i8751_command_queue=data; return; } @@ -108,8 +110,10 @@ static void wndrplnt_i8751_w(running_machine *machine, int data) /* The game writes many values in the 0x600 range, but only a specific mask matters for the return value */ - if ((data&0x600)==0x600) { - switch (data&0x18) { + if ((data&0x600)==0x600) + { + switch (data&0x18) + { case 0x00: i8751_return=0x4d53; break; case 0x08: i8751_return=0x4b54; break; case 0x10: i8751_return=0x5453; break; @@ -142,7 +146,7 @@ static void wndrplnt_i8751_w(running_machine *machine, int data) if (data==0x501) i8751_return=0x6bf8; if (data==0x500) i8751_return=0x4e75; - cpu_set_input_line(machine->cpu[0],6,HOLD_LINE); /* Signal main cpu task is complete */ + cputag_set_input_line(machine, "maincpu", 6, HOLD_LINE); /* Signal main cpu task is complete */ i8751_needs_ack=1; } @@ -151,7 +155,8 @@ static void chelnov_i8751_w(running_machine *machine, int data) static int level; /* Pending coin operations may cause protection commands to be queued */ - if (i8751_needs_ack) { + if (i8751_needs_ack) + { i8751_command_queue=data; return; } @@ -167,18 +172,23 @@ static void chelnov_i8751_w(running_machine *machine, int data) if (data>=0x6000 && data<0x8000) i8751_return=1; /* patched */ if ((data&0xf000)==0x1000) level=1; /* Level 1 */ if ((data&0xf000)==0x2000) level++; /* Level Increment */ - if ((data&0xf000)==0x3000) { /* Sprite table mapping */ + if ((data&0xf000)==0x3000) + { /* Sprite table mapping */ int b=data&0xff; - switch (level) { + switch (level) + { case 1: /* Level 1, Sprite mapping tables */ - if (microcontroller_id==CHELNOV) { /* USA */ + if (microcontroller_id==CHELNOV) + { /* USA */ if (b<2) i8751_return=0; else if (b<6) i8751_return=1; else if (b<0xb) i8751_return=2; else if (b<0xf) i8751_return=3; else if (b<0x13) i8751_return=4; else i8751_return=5; - } else { /* Japan, World */ + } + else + { /* Japan, World */ if (b<3) i8751_return=0; else if (b<8) i8751_return=1; else if (b<0xc) i8751_return=2; @@ -252,7 +262,7 @@ static void chelnov_i8751_w(running_machine *machine, int data) // logerror("%s - Unknown Write %02x intel\n",cpuexec_describe_context(machine),data); - cpu_set_input_line(machine->cpu[0],6,HOLD_LINE); /* Signal main cpu task is complete */ + cputag_set_input_line(machine, "maincpu", 6, HOLD_LINE); /* Signal main cpu task is complete */ i8751_needs_ack=1; } @@ -261,23 +271,30 @@ static void chelnov_i8751_w(running_machine *machine, int data) static WRITE16_HANDLER( karnov_control_w ) { /* Mnemonics filled in from the schematics, brackets are my comments */ - switch (offset<<1) { + switch (offset<<1) + { case 0: /* SECLR (Interrupt ack for Level 6 i8751 interrupt) */ - cpu_set_input_line(space->machine->cpu[0],6,CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 6, CLEAR_LINE); - if (i8751_needs_ack) { + if (i8751_needs_ack) + { /* If a command and coin insert happen at once, then the i8751 will queue the coin command until the previous command is ACK'd */ - if (i8751_coin_pending) { + if (i8751_coin_pending) + { i8751_return=i8751_coin_pending; - cpu_set_input_line(space->machine->cpu[0],6,HOLD_LINE); + cputag_set_input_line(space->machine, "maincpu", 6, HOLD_LINE); i8751_coin_pending=0; - } else if (i8751_command_queue) { + } + else if (i8751_command_queue) + { /* Pending control command - just write it back as SECREQ */ i8751_needs_ack=0; karnov_control_w(space,3,i8751_command_queue,0xffff); i8751_command_queue=0; - } else { + } + else + { i8751_needs_ack=0; } } @@ -285,7 +302,7 @@ static WRITE16_HANDLER( karnov_control_w ) case 2: /* SONREQ (Sound CPU byte) */ soundlatch_w(space,0,data&0xff); - cpu_set_input_line (space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line (space->machine, "maincpu", INPUT_LINE_NMI, PULSE_LINE); break; case 4: /* DM (DMA to buffer spriteram) */ @@ -316,7 +333,7 @@ static WRITE16_HANDLER( karnov_control_w ) break; case 0xe: /* INTCLR (Interrupt ack for Level 7 vbl interrupt) */ - cpu_set_input_line(space->machine->cpu[0],7,CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 7, CLEAR_LINE); break; } } @@ -325,7 +342,8 @@ static WRITE16_HANDLER( karnov_control_w ) static READ16_HANDLER( karnov_control_r ) { - switch (offset<<1) { + switch (offset<<1) + { case 0: return input_port_read(space->machine, "P1_P2"); case 2: /* Start buttons & VBL */ @@ -673,11 +691,15 @@ static INTERRUPT_GEN( karnov_interrupt ) /* Coin input to the i8751 generates an interrupt to the main cpu */ if (input_port_read(device->machine, "FAKE") == coin_mask) latch=1; - if (input_port_read(device->machine, "FAKE") != coin_mask && latch) { - if (i8751_needs_ack) { + if (input_port_read(device->machine, "FAKE") != coin_mask && latch) + { + if (i8751_needs_ack) + { /* i8751 is busy - queue the command */ i8751_coin_pending=input_port_read(device->machine, "FAKE") | 0x8000; - } else { + } + else + { i8751_return=input_port_read(device->machine, "FAKE") | 0x8000; cpu_set_input_line(device,6,HOLD_LINE); i8751_needs_ack=1; @@ -690,7 +712,7 @@ static INTERRUPT_GEN( karnov_interrupt ) static void sound_irq(const device_config *device, int linestate) { - cpu_set_input_line(device->machine->cpu[1],0,linestate); /* IRQ */ + cputag_set_input_line(device->machine, "audiocpu", 0, linestate); /* IRQ */ } static const ym3526_interface ym3526_config = diff --git a/src/mame/drivers/kchamp.c b/src/mame/drivers/kchamp.c index d82297ccc52..33aa688c661 100644 --- a/src/mame/drivers/kchamp.c +++ b/src/mame/drivers/kchamp.c @@ -112,29 +112,34 @@ static ADDRESS_MAP_START( sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0x6000, 0xffff) AM_WRITE(SMH_RAM) ADDRESS_MAP_END -static WRITE8_HANDLER( control_w ) { +static WRITE8_HANDLER( control_w ) +{ nmi_enable = data & 1; } -static WRITE8_HANDLER( sound_reset_w ) { +static WRITE8_HANDLER( sound_reset_w ) +{ if ( !( data & 1 ) ) - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, PULSE_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_RESET, PULSE_LINE); } -static WRITE8_DEVICE_HANDLER( sound_control_w ) { +static WRITE8_DEVICE_HANDLER( sound_control_w ) +{ msm5205_reset_w( device, !( data & 1 ) ); sound_nmi_enable = ( ( data >> 1 ) & 1 ); } -static WRITE8_HANDLER( sound_command_w ) { +static WRITE8_HANDLER( sound_command_w ) +{ soundlatch_w( space, 0, data ); - cpu_set_input_line_and_vector(space->machine->cpu[1], 0, HOLD_LINE, 0xff ); + cputag_set_input_line_and_vector(space->machine, "audiocpu", 0, HOLD_LINE, 0xff ); } static int msm_data = 0; static int msm_play_lo_nibble = 1; -static WRITE8_HANDLER( sound_msm_w ) { +static WRITE8_HANDLER( sound_msm_w ) +{ msm_data = data; msm_play_lo_nibble = 1; } @@ -190,12 +195,14 @@ static ADDRESS_MAP_START( kc_sound_writemem, ADDRESS_SPACE_PROGRAM, 8 ) AM_RANGE(0xe000, 0xe2ff) AM_WRITE(SMH_RAM) ADDRESS_MAP_END -static READ8_HANDLER( sound_reset_r ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, PULSE_LINE); +static READ8_HANDLER( sound_reset_r ) +{ + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_RESET, PULSE_LINE); return 0; } -static WRITE8_HANDLER( kc_sound_control_w ) { +static WRITE8_HANDLER( kc_sound_control_w ) +{ if ( offset == 0 ) sound_nmi_enable = ( ( data >> 7 ) & 1 ); // else @@ -371,13 +378,15 @@ GFXDECODE_END -static INTERRUPT_GEN( kc_interrupt ) { +static INTERRUPT_GEN( kc_interrupt ) +{ if ( nmi_enable ) cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); } -static void msmint(const device_config *device) { +static void msmint(const device_config *device) +{ static int counter = 0; @@ -388,9 +397,11 @@ static void msmint(const device_config *device) { msm_play_lo_nibble ^= 1; - if ( !( counter ^= 1 ) ) { - if ( sound_nmi_enable ) { - cpu_set_input_line(device->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE ); + if ( !( counter ^= 1 ) ) + { + if ( sound_nmi_enable ) + { + cputag_set_input_line(device->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE ); } } } @@ -405,7 +416,8 @@ static const msm5205_interface msm_interface = * 1 Player Version * ********************/ -static INTERRUPT_GEN( sound_int ) { +static INTERRUPT_GEN( sound_int ) +{ if ( sound_nmi_enable ) cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c index c2ba8fb74e3..cfea59f265e 100644 --- a/src/mame/drivers/kingdrby.c +++ b/src/mame/drivers/kingdrby.c @@ -242,7 +242,7 @@ static WRITE8_DEVICE_HANDLER( hopper_io_w ) static WRITE8_DEVICE_HANDLER( sound_cmd_w ) { - cpu_set_input_line(device->machine->cpu[2], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(device->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE); sound_cmd = data; /* soundlatch is unneeded since we are already using perfect interleave. */ // soundlatch_w(space,0, data); diff --git a/src/mame/drivers/kingobox.c b/src/mame/drivers/kingobox.c index 013ea2af34e..53c1e11a937 100644 --- a/src/mame/drivers/kingobox.c +++ b/src/mame/drivers/kingobox.c @@ -44,38 +44,46 @@ static UINT8 *video_shared; static UINT8 *sprite_shared; int kingofb_nmi_enable = 0; -static READ8_HANDLER( video_shared_r ) { +static READ8_HANDLER( video_shared_r ) +{ return video_shared[offset]; } -static WRITE8_HANDLER( video_shared_w ) { +static WRITE8_HANDLER( video_shared_w ) +{ video_shared[offset] = data; } -static READ8_HANDLER( sprite_shared_r ) { +static READ8_HANDLER( sprite_shared_r ) +{ return sprite_shared[offset]; } -static WRITE8_HANDLER( sprite_shared_w ) { +static WRITE8_HANDLER( sprite_shared_w ) +{ sprite_shared[offset] = data; } -static WRITE8_HANDLER( video_interrupt_w ) { - cpu_set_input_line_and_vector(space->machine->cpu[1], 0, HOLD_LINE, 0xff ); +static WRITE8_HANDLER( video_interrupt_w ) +{ + cputag_set_input_line_and_vector(space->machine, "video", 0, HOLD_LINE, 0xff ); } -static WRITE8_HANDLER( sprite_interrupt_w ) { - cpu_set_input_line_and_vector(space->machine->cpu[2], 0, HOLD_LINE, 0xff ); +static WRITE8_HANDLER( sprite_interrupt_w ) +{ + cputag_set_input_line_and_vector(space->machine, "sprite", 0, HOLD_LINE, 0xff ); } -static WRITE8_HANDLER( scroll_interrupt_w ) { +static WRITE8_HANDLER( scroll_interrupt_w ) +{ sprite_interrupt_w( space, offset, data ); *kingofb_scroll_y = data; } -static WRITE8_HANDLER( sound_command_w ) { +static WRITE8_HANDLER( sound_command_w ) +{ soundlatch_w( space, 0, data ); - cpu_set_input_line_and_vector(space->machine->cpu[3], 0, HOLD_LINE, 0xff ); + cputag_set_input_line_and_vector(space->machine, "audiocpu", 0, HOLD_LINE, 0xff ); } @@ -534,7 +542,8 @@ static const ay8910_interface ay8910_config = DEVCB_MEMORY_HANDLER("audiocpu", PROGRAM, soundlatch_r) }; -static INTERRUPT_GEN( kingofb_interrupt ) { +static INTERRUPT_GEN( kingofb_interrupt ) +{ if ( kingofb_nmi_enable ) cpu_set_input_line(device, INPUT_LINE_NMI, PULSE_LINE); @@ -889,4 +898,3 @@ GAME( 1985, ringking, kingofb, ringking, ringking, 0, ROT90, "Data East U GAME( 1985, ringkin2, kingofb, ringking, ringking, 0, ROT90, "Data East USA", "Ring King (US set 2)", 0 ) GAME( 1985, ringkin3, kingofb, kingofb, kingofb, ringkin3, ROT90, "Data East USA", "Ring King (US set 3)", 0 ) GAME( 1985, ringkinw, kingofb, kingofb, kingofb, ringkinw, ROT90, "Woodplace", "Ring King (US, Woodplace license)", 0 ) - diff --git a/src/mame/drivers/kingpin.c b/src/mame/drivers/kingpin.c index 8fed3e839ba..da7682817f3 100644 --- a/src/mame/drivers/kingpin.c +++ b/src/mame/drivers/kingpin.c @@ -127,7 +127,7 @@ static INTERRUPT_GEN( kingpin_video_interrupt ) static void vdp_interrupt (running_machine *machine, int state) { - cpu_set_input_line(machine->cpu[0],0, HOLD_LINE); + cputag_set_input_line(machine, "maincpu", 0, HOLD_LINE); } static const TMS9928a_interface tms9928a_interface = diff --git a/src/mame/drivers/kinst.c b/src/mame/drivers/kinst.c index 6b0f89a42a5..12bd45bdecd 100644 --- a/src/mame/drivers/kinst.c +++ b/src/mame/drivers/kinst.c @@ -190,12 +190,12 @@ static MACHINE_START( kinst ) } /* set the fastest DRC options */ - mips3drc_set_options(machine->cpu[0], MIPS3DRC_FASTEST_OPTIONS); + mips3drc_set_options(cputag_get_cpu(machine, "maincpu"), MIPS3DRC_FASTEST_OPTIONS); /* configure fast RAM regions for DRC */ - mips3drc_add_fastram(machine->cpu[0], 0x08000000, 0x087fffff, FALSE, rambase2); - mips3drc_add_fastram(machine->cpu[0], 0x00000000, 0x0007ffff, FALSE, rambase); - mips3drc_add_fastram(machine->cpu[0], 0x1fc00000, 0x1fc7ffff, TRUE, rombase); + mips3drc_add_fastram(cputag_get_cpu(machine, "maincpu"), 0x08000000, 0x087fffff, FALSE, rambase2); + mips3drc_add_fastram(cputag_get_cpu(machine, "maincpu"), 0x00000000, 0x0007ffff, FALSE, rambase); + mips3drc_add_fastram(cputag_get_cpu(machine, "maincpu"), 0x1fc00000, 0x1fc7ffff, TRUE, rombase); } @@ -254,7 +254,7 @@ static VIDEO_UPDATE( kinst ) static TIMER_CALLBACK( irq0_stop ) { - cpu_set_input_line(machine->cpu[0], 0, CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 0, CLEAR_LINE); } @@ -267,7 +267,7 @@ static INTERRUPT_GEN( irq0_start ) static void ide_interrupt(const device_config *device, int state) { - cpu_set_input_line(device->machine->cpu[0], 1, state); + cputag_set_input_line(device->machine, "maincpu", 1, state); } diff --git a/src/mame/drivers/klax.c b/src/mame/drivers/klax.c index 79aaf75c830..417f2af2033 100644 --- a/src/mame/drivers/klax.c +++ b/src/mame/drivers/klax.c @@ -33,7 +33,7 @@ static void update_interrupts(running_machine *machine) { - cpu_set_input_line(machine->cpu[0], 4, atarigen_video_int_state || atarigen_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 4, atarigen_video_int_state || atarigen_scanline_int_state ? ASSERT_LINE : CLEAR_LINE); } @@ -41,7 +41,7 @@ static void scanline_update(const device_config *screen, int scanline) { /* generate 32V signals */ if ((scanline & 32) == 0 && !(input_port_read(screen->machine, "P1") & 0x800)) - atarigen_scanline_int_gen(screen->machine->cpu[0]); + atarigen_scanline_int_gen(cputag_get_cpu(screen->machine, "maincpu")); } diff --git a/src/mame/drivers/kncljoe.c b/src/mame/drivers/kncljoe.c index d69081060f3..6cf47216abf 100644 --- a/src/mame/drivers/kncljoe.c +++ b/src/mame/drivers/kncljoe.c @@ -49,7 +49,7 @@ static WRITE8_HANDLER( sound_cmd_w ) if ((data & 0x80) == 0) soundlatch_w(space, 0, data & 0x7f); else - cpu_set_input_line(space->machine->cpu[1], 0, ASSERT_LINE); + cputag_set_input_line(space->machine, "soundcpu", 0, ASSERT_LINE); } @@ -104,7 +104,7 @@ static READ8_DEVICE_HANDLER( m6803_port2_r ) static WRITE8_HANDLER( sound_irq_ack_w ) { - cpu_set_input_line(space->machine->cpu[1], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "soundcpu", 0, CLEAR_LINE); } static WRITE8_DEVICE_HANDLER(unused_w) diff --git a/src/mame/drivers/konamigq.c b/src/mame/drivers/konamigq.c index 3f915d2d8cd..d2a97b8518b 100644 --- a/src/mame/drivers/konamigq.c +++ b/src/mame/drivers/konamigq.c @@ -67,7 +67,7 @@ static WRITE32_HANDLER( soundr3k_w ) sndto000[ ( offset << 1 ) + 1 ] = data >> 16; if( offset == 3 ) { - cpu_set_input_line(space->machine->cpu[1], 1, HOLD_LINE ); + cputag_set_input_line(space->machine, "soundcpu", 1, HOLD_LINE ); } } if( ACCESSING_BITS_0_15 ) @@ -141,7 +141,7 @@ static WRITE32_HANDLER( eeprom_w ) eeprom_write_bit( ( data & 0x01 ) ? 1 : 0 ); eeprom_set_clock_line( ( data & 0x04 ) ? ASSERT_LINE : CLEAR_LINE ); eeprom_set_cs_line( ( data & 0x02 ) ? CLEAR_LINE : ASSERT_LINE ); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, ( data & 0x40 ) ? CLEAR_LINE : ASSERT_LINE ); + cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_RESET, ( data & 0x40 ) ? CLEAR_LINE : ASSERT_LINE ); } /* PCM RAM */ diff --git a/src/mame/drivers/konamigv.c b/src/mame/drivers/konamigv.c index 5aaff95481c..1d4a63f5782 100644 --- a/src/mame/drivers/konamigv.c +++ b/src/mame/drivers/konamigv.c @@ -547,9 +547,9 @@ static DRIVER_INIT( simpbowl ) intelflash_init( machine, 2, FLASH_FUJITSU_29F016A, NULL ); intelflash_init( machine, 3, FLASH_FUJITSU_29F016A, NULL ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, flash_r, flash_w ); - memory_install_read32_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800c0, 0x1f6800c7, 0, 0, trackball_r ); - memory_install_read32_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800c8, 0x1f6800cb, 0, 0, unknown_r ); /* ?? */ + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, flash_r, flash_w ); + memory_install_read32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800c0, 0x1f6800c7, 0, 0, trackball_r ); + memory_install_read32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800c8, 0x1f6800cb, 0, 0, unknown_r ); /* ?? */ DRIVER_INIT_CALL(konamigv); } @@ -635,9 +635,9 @@ static DRIVER_INIT( btchamp ) { intelflash_init( machine, 0, FLASH_SHARP_LH28F400, NULL ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, btc_trackball_r, btc_trackball_w ); - memory_install_write32_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0, (write32_space_func)SMH_NOP ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f68008f, 0, 0, btc_trackball_r, btc_trackball_w ); + memory_install_write32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0, (write32_space_func)SMH_NOP ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); DRIVER_INIT_CALL(konamigv); } @@ -691,8 +691,8 @@ static WRITE32_HANDLER( tokimeki_serial_w ) static DRIVER_INIT( tokimosh ) { - memory_install_read32_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, tokimeki_serial_r ); - memory_install_write32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, tokimeki_serial_w ); + memory_install_read32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, tokimeki_serial_r ); + memory_install_write32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, tokimeki_serial_w ); DRIVER_INIT_CALL(konamigv); } @@ -722,13 +722,13 @@ static DRIVER_INIT( kdeadeye ) { intelflash_init( machine, 0, FLASH_SHARP_LH28F400, NULL ); - memory_install_read_port_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, "GUNX1" ); - memory_install_read_port_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, "GUNY1" ); - memory_install_read_port_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800a0, 0x1f6800a3, 0, 0, "GUNX2" ); - memory_install_read_port_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800b0, 0x1f6800b3, 0, 0, "GUNY2" ); - memory_install_read_port_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800c0, 0x1f6800c3, 0, 0, "BUTTONS" ); - memory_install_write32_handler ( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0, kdeadeye_0_w ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); + memory_install_read_port_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680080, 0x1f680083, 0, 0, "GUNX1" ); + memory_install_read_port_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f680090, 0x1f680093, 0, 0, "GUNY1" ); + memory_install_read_port_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800a0, 0x1f6800a3, 0, 0, "GUNX2" ); + memory_install_read_port_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800b0, 0x1f6800b3, 0, 0, "GUNY2" ); + memory_install_read_port_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800c0, 0x1f6800c3, 0, 0, "BUTTONS" ); + memory_install_write32_handler ( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f6800e0, 0x1f6800e3, 0, 0, kdeadeye_0_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f380000, 0x1f3fffff, 0, 0, btcflash_r, btcflash_w ); DRIVER_INIT_CALL(konamigv); } diff --git a/src/mame/drivers/konamigx.c b/src/mame/drivers/konamigx.c index a6adb149d36..55d3a562b6a 100644 --- a/src/mame/drivers/konamigx.c +++ b/src/mame/drivers/konamigx.c @@ -441,7 +441,7 @@ static WRITE32_HANDLER( esc_w ) if (konamigx_wrport1_1 & 0x10) { gx_rdport1_3 &= ~8; - cpu_set_input_line(space->machine->cpu[0], 4, HOLD_LINE); + cputag_set_input_line(space->machine, "maincpu", 4, HOLD_LINE); } } else @@ -553,13 +553,13 @@ static WRITE32_HANDLER( control_w ) { // enable 68k // clear the halt condition and reset the 68000 - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_HALT, CLEAR_LINE); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, PULSE_LINE); + cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_HALT, CLEAR_LINE); + cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_RESET, PULSE_LINE); } else { // disable 68k - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_HALT, ASSERT_LINE); + cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_HALT, ASSERT_LINE); } K053246_set_OBJCHA_line((data&0x100000) ? ASSERT_LINE : CLEAR_LINE); @@ -622,14 +622,14 @@ static WRITE32_HANDLER( ccu_w ) // vblank interrupt ACK if (ACCESSING_BITS_24_31) { - cpu_set_input_line(space->machine->cpu[0], 1, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 1, CLEAR_LINE); gx_syncen |= 0x20; } // hblank interrupt ACK if (ACCESSING_BITS_8_15) { - cpu_set_input_line(space->machine->cpu[0], 2, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 2, CLEAR_LINE); gx_syncen |= 0x40; } } @@ -659,7 +659,7 @@ static TIMER_CALLBACK( dmaend_callback ) // lower OBJINT-REQ flag and trigger interrupt gx_rdport1_3 &= ~0x80; - cpu_set_input_line(machine->cpu[0], 3, HOLD_LINE); + cputag_set_input_line(machine, "maincpu", 3, HOLD_LINE); } } @@ -817,7 +817,7 @@ INLINE void write_snd_020(running_machine *machine, int reg, int val) if (reg == 7) { - cpu_set_input_line(machine->cpu[1], 1, HOLD_LINE); + cputag_set_input_line(machine, "soundcpu", 1, HOLD_LINE); } } @@ -1090,7 +1090,7 @@ static WRITE32_HANDLER( type4_prot_w ) if (konamigx_wrport1_1 & 0x10) { gx_rdport1_3 &= ~8; - cpu_set_input_line(space->machine->cpu[0], 4, HOLD_LINE); + cputag_set_input_line(space->machine, "maincpu", 4, HOLD_LINE); } // don't accidentally do a phony command @@ -1234,28 +1234,28 @@ static INTERRUPT_GEN(tms_sync) static READ16_HANDLER(tms57002_data_word_r) { - return tms57002_data_r(space->machine->cpu[2], 0); + return tms57002_data_r(cputag_get_cpu(space->machine, "dasp"), 0); } static WRITE16_HANDLER(tms57002_data_word_w) { if (ACCESSING_BITS_0_7) - tms57002_data_w(space->machine->cpu[2], 0, data); + tms57002_data_w(cputag_get_cpu(space->machine, "dasp"), 0, data); } static READ16_HANDLER(tms57002_status_word_r) { - return (tms57002_dready_r(space->machine->cpu[2], 0) ? 4 : 0) | - (tms57002_empty_r(space->machine->cpu[2], 0) ? 1 : 0); + return (tms57002_dready_r(cputag_get_cpu(space->machine, "dasp"), 0) ? 4 : 0) | + (tms57002_empty_r(cputag_get_cpu(space->machine, "dasp"), 0) ? 1 : 0); } static WRITE16_HANDLER(tms57002_control_word_w) { if (ACCESSING_BITS_0_7) { - tms57002_pload_w(space->machine->cpu[2], 0, data & 4); - tms57002_cload_w(space->machine->cpu[2], 0, data & 8); - cpu_set_input_line(space->machine->cpu[2], INPUT_LINE_RESET, !(data & 16) ? ASSERT_LINE : CLEAR_LINE); + tms57002_pload_w(cputag_get_cpu(space->machine, "dasp"), 0, data & 4); + tms57002_cload_w(cputag_get_cpu(space->machine, "dasp"), 0, data & 8); + cputag_set_input_line(space->machine, "dasp", INPUT_LINE_RESET, !(data & 16) ? ASSERT_LINE : CLEAR_LINE); } } @@ -3332,8 +3332,8 @@ static MACHINE_RESET(konamigx) memset(sndto020, 0, 16); // sound CPU initially disabled? - cpu_set_input_line(machine->cpu[1], INPUT_LINE_HALT, ASSERT_LINE); - cpu_set_input_line(machine->cpu[2], INPUT_LINE_RESET, ASSERT_LINE); + cputag_set_input_line(machine, "sound", INPUT_LINE_HALT, ASSERT_LINE); + cputag_set_input_line(machine, "dasp", INPUT_LINE_RESET, ASSERT_LINE); if (!strcmp(machine->gamedrv->name, "tkmmpzdm")) { @@ -3431,8 +3431,8 @@ static DRIVER_INIT(konamigx) switch (gameDefs[i].special) { case 1: // LE2 guns - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xd44000, 0xd44003, 0, 0, le2_gun_H_r ); - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xd44004, 0xd44007, 0, 0, le2_gun_V_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd44000, 0xd44003, 0, 0, le2_gun_H_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd44004, 0xd44007, 0, 0, le2_gun_V_r ); break; case 2: // tkmmpzdm hack @@ -3468,7 +3468,7 @@ static DRIVER_INIT(konamigx) break; case 7: // install type 4 Xilinx protection for non-type 3/4 games - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xcc0000, 0xcc0007, 0, 0, type4_prot_w ); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xcc0000, 0xcc0007, 0, 0, type4_prot_w ); break; case 8: // tbyahhoo @@ -3488,14 +3488,14 @@ static DRIVER_INIT(konamigx) switch (readback) { case BPP5: - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx5bppspr_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx5bppspr_r); break; case BPP66: - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xd00000, 0xd01fff, 0, 0, K056832_6bpp_rom_long_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd00000, 0xd01fff, 0, 0, K056832_6bpp_rom_long_r); case BPP6: - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx6bppspr_r); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xd4a000, 0xd4a00f, 0, 0, gx6bppspr_r); break; } diff --git a/src/mame/drivers/konamim2.c b/src/mame/drivers/konamim2.c index 165e7a37ff1..8c0e2177134 100644 --- a/src/mame/drivers/konamim2.c +++ b/src/mame/drivers/konamim2.c @@ -318,7 +318,7 @@ static WRITE64_HANDLER(unk4_w) if (data & 0x800000) { mame_printf_debug("CPU '%s': CPU1 IRQ at %08X\n", space->cpu->tag, cpu_get_pc(space->cpu)); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_IRQ0, ASSERT_LINE); + cputag_set_input_line(space->machine, "sub", INPUT_LINE_IRQ0, ASSERT_LINE); } unk20004 = (UINT32)(data); @@ -413,7 +413,7 @@ static WRITE64_HANDLER(reset_w) { if (data & U64(0x100000000)) { - cpu_set_input_line(space->machine->cpu[0], INPUT_LINE_RESET, PULSE_LINE); + cputag_set_input_line(space->machine, "maincpu", INPUT_LINE_RESET, PULSE_LINE); unk3 = 0; } } @@ -1075,7 +1075,7 @@ static READ64_HANDLER(cpu_r) if (ACCESSING_BITS_32_63) { - r = (UINT64)((space->cpu != space->machine->cpu[0]) ? 0x80000000 : 0); + r = (UINT64)((space->cpu != cputag_get_cpu(space->machine, "maincpu")) ? 0x80000000 : 0); //r |= 0x40000000; // sets Video-LowRes !? return r << 32; } diff --git a/src/mame/drivers/ksys573.c b/src/mame/drivers/ksys573.c index d9eefa5f66f..d7c68b57f2d 100644 --- a/src/mame/drivers/ksys573.c +++ b/src/mame/drivers/ksys573.c @@ -565,7 +565,7 @@ static TIMER_CALLBACK( atapi_xfer_end ) atapi_regs[ATAPI_REG_COUNTLOW] = atapi_xferlen & 0xff; atapi_regs[ATAPI_REG_COUNTHIGH] = (atapi_xferlen>>8)&0xff; - timer_adjust_oneshot(atapi_timer, cpu_clocks_to_attotime(machine->cpu[0], (ATAPI_CYCLES_PER_SECTOR * (atapi_xferlen/2048))), 0); + timer_adjust_oneshot(atapi_timer, cputag_clocks_to_attotime(machine, "maincpu", (ATAPI_CYCLES_PER_SECTOR * (atapi_xferlen/2048))), 0); } else { @@ -1032,7 +1032,7 @@ static void cdrom_dma_write( running_machine *machine, UINT32 n_address, INT32 n verboselog( machine, 2, "atapi_xfer_end: %d %d\n", atapi_xferlen, atapi_xfermod ); // set a transfer complete timer (Note: CYCLES_PER_SECTOR can't be lower than 2000 or the BIOS ends up "out of order") - timer_adjust_oneshot(atapi_timer, cpu_clocks_to_attotime(machine->cpu[0], (ATAPI_CYCLES_PER_SECTOR * (atapi_xferlen/2048))), 0); + timer_adjust_oneshot(atapi_timer, cputag_clocks_to_attotime(machine, "maincpu", (ATAPI_CYCLES_PER_SECTOR * (atapi_xferlen/2048))), 0); } static UINT32 m_n_security_control; @@ -1188,7 +1188,7 @@ static UINT64 m_p_n_root_start[ 3 ]; static UINT64 psxcpu_gettotalcycles( running_machine *machine ) { /* TODO: should return the start of the current tick. */ - return cpu_get_total_cycles(machine->cpu[0]) * 2; + return cputag_get_total_cycles(machine, "maincpu") * 2; } static int root_divider( int n_counter ) @@ -1740,7 +1740,7 @@ static DRIVER_INIT( ge765pwbba ) uPD4701_init( machine, 0 ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, ge765pwbba_r, ge765pwbba_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, ge765pwbba_r, ge765pwbba_w ); } /* @@ -1851,7 +1851,7 @@ static void gx700pwfbf_init( running_machine *machine, void (*output_callback_fu gx700pwfbf_output_callback = output_callback_func; - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx700pwbf_io_r, gx700pwbf_io_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx700pwbf_io_r, gx700pwbf_io_w ); state_save_register_global_array(machine, gx700pwbf_output_data ); } @@ -2094,7 +2094,7 @@ static DRIVER_INIT( gtrfrks ) { DRIVER_INIT_CALL(konami573); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); } /* GX894 digital i/o */ @@ -2384,7 +2384,7 @@ static void gx894pwbba_init( running_machine *machine, void (*output_callback_fu gx894pwbba_output_callback = output_callback_func; - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx894pwbba_r, gx894pwbba_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f640000, 0x1f6400ff, 0, 0, gx894pwbba_r, gx894pwbba_w ); gx894_ram_write_offset = 0; gx894_ram_read_offset = 0; @@ -2413,7 +2413,7 @@ static DRIVER_INIT( gtrfrkdigital ) gx894pwbba_init( machine, NULL ); - memory_install_readwrite32_handler( cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); + memory_install_readwrite32_handler( cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, gtrfrks_io_r, gtrfrks_io_w ); } /* ddr solo */ @@ -2706,7 +2706,7 @@ static DRIVER_INIT( dmx ) gx894pwbba_init( machine, dmx_output_callback ); - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, dmx_io_w ); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x1f600000, 0x1f6000ff, 0, 0, dmx_io_w ); } /* salary man champ */ diff --git a/src/mame/drivers/kungfur.c b/src/mame/drivers/kungfur.c index e82f483efea..f4ac8544ada 100644 --- a/src/mame/drivers/kungfur.c +++ b/src/mame/drivers/kungfur.c @@ -327,7 +327,7 @@ static MACHINE_RESET( kungfur ) static INTERRUPT_GEN( kungfur_irq ) { - cpu_set_input_line(device->machine->cpu[0], M6809_IRQ_LINE, HOLD_LINE); + cputag_set_input_line(device->machine, "maincpu", M6809_IRQ_LINE, HOLD_LINE); } static MACHINE_DRIVER_START( kungfur ) diff --git a/src/mame/drivers/kyugo.c b/src/mame/drivers/kyugo.c index 0b8daed0707..d4edcd6174e 100644 --- a/src/mame/drivers/kyugo.c +++ b/src/mame/drivers/kyugo.c @@ -39,16 +39,16 @@ static UINT8 *shared_ram; MACHINE_RESET( kyugo ) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); // must start with interrupts and sub CPU disabled - cpu_interrupt_enable(machine->cpu[0], 0); + cpu_interrupt_enable(cputag_get_cpu(machine, "maincpu"), 0); kyugo_sub_cpu_control_w(space, 0, 0); } WRITE8_HANDLER( kyugo_sub_cpu_control_w ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_HALT, data ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "sub", INPUT_LINE_HALT, data ? CLEAR_LINE : ASSERT_LINE); } @@ -1204,18 +1204,18 @@ ROM_END static DRIVER_INIT( gyrodine ) { /* add watchdog */ - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xe000, 0xe000, 0, 0, watchdog_reset_w); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xe000, 0xe000, 0, 0, watchdog_reset_w); } static DRIVER_INIT( srdmissn ) { /* shared RAM is mapped at 0xe000 as well */ - memory_install_readwrite8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xe000, 0xe7ff, 0, 0, (read8_space_func)SMH_BANK(1), (write8_space_func)SMH_BANK(1)); + memory_install_readwrite8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xe000, 0xe7ff, 0, 0, (read8_space_func)SMH_BANK(1), (write8_space_func)SMH_BANK(1)); memory_set_bankptr(machine, 1, shared_ram); /* extra RAM on sub CPU */ - memory_install_readwrite8_handler(cpu_get_address_space(machine->cpu[1], ADDRESS_SPACE_PROGRAM), 0x8800, 0x8fff, 0, 0, (read8_space_func)SMH_BANK(2), (write8_space_func)SMH_BANK(2)); + memory_install_readwrite8_handler(cputag_get_address_space(machine, "sub", ADDRESS_SPACE_PROGRAM), 0x8800, 0x8fff, 0, 0, (read8_space_func)SMH_BANK(2), (write8_space_func)SMH_BANK(2)); memory_set_bankptr(machine, 2, auto_alloc_array(machine, UINT8, 0x800)); } diff --git a/src/mame/drivers/ladybug.c b/src/mame/drivers/ladybug.c index c144a6ce668..41c3cf1554d 100644 --- a/src/mame/drivers/ladybug.c +++ b/src/mame/drivers/ladybug.c @@ -150,14 +150,14 @@ ADDRESS_MAP_END static INPUT_CHANGED( coin1_inserted ) { /* left coin insertion causes an NMI */ - cpu_set_input_line(field->port->machine->cpu[0], INPUT_LINE_NMI, newval ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(field->port->machine, "maincpu", INPUT_LINE_NMI, newval ? ASSERT_LINE : CLEAR_LINE); } static INPUT_CHANGED( coin2_inserted ) { /* right coin insertion causes an IRQ */ if (newval) - cpu_set_input_line(field->port->machine->cpu[0], 0, HOLD_LINE); + cputag_set_input_line(field->port->machine, "maincpu", 0, HOLD_LINE); } diff --git a/src/mame/drivers/ladyfrog.c b/src/mame/drivers/ladyfrog.c index 6f3dc28a019..d5723d5db0b 100644 --- a/src/mame/drivers/ladyfrog.c +++ b/src/mame/drivers/ladyfrog.c @@ -87,19 +87,19 @@ static WRITE8_HANDLER( to_main_w ) static WRITE8_HANDLER( sound_cpu_reset_w ) { - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, (data&1 )? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_RESET, (data & 1 ) ? ASSERT_LINE : CLEAR_LINE); } static TIMER_CALLBACK( nmi_callback ) { - if (sound_nmi_enable) cpu_set_input_line(machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + if (sound_nmi_enable) cputag_set_input_line(machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); else pending_nmi = 1; } static WRITE8_HANDLER( sound_command_w ) { - soundlatch_w(space,0,data); - timer_call_after_resynch(space->machine, NULL, data,nmi_callback); + soundlatch_w(space, 0, data); + timer_call_after_resynch(space->machine, NULL, data, nmi_callback); } static WRITE8_HANDLER( nmi_disable_w ) @@ -112,7 +112,7 @@ static WRITE8_HANDLER( nmi_enable_w ) sound_nmi_enable = 1; if (pending_nmi) { - cpu_set_input_line(space->machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); pending_nmi = 0; } } diff --git a/src/mame/drivers/laserbat.c b/src/mame/drivers/laserbat.c index bb31f037ff9..b9a96199a6e 100644 --- a/src/mame/drivers/laserbat.c +++ b/src/mame/drivers/laserbat.c @@ -595,8 +595,8 @@ static const sn76477_interface laserbat_sn76477_interface = /* Cat'N Mouse sound ***********************************/ -static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0a ) { cpu_set_input_line(device->machine->cpu[1], INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE); } -static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0b ) { cpu_set_input_line(device->machine->cpu[1],0,state ? ASSERT_LINE : CLEAR_LINE); } +static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0a ) { cputag_set_input_line(device->machine, "audiocpu", INPUT_LINE_NMI, state ? ASSERT_LINE : CLEAR_LINE); } +static WRITE_LINE_DEVICE_HANDLER( zaccaria_irq0b ) { cputag_set_input_line(device->machine, "audiocpu", 0, state ? ASSERT_LINE : CLEAR_LINE); } static int active_8910,port0a; diff --git a/src/mame/drivers/lasso.c b/src/mame/drivers/lasso.c index d7f310e6b9d..3fb9d982838 100644 --- a/src/mame/drivers/lasso.c +++ b/src/mame/drivers/lasso.c @@ -39,7 +39,7 @@ DIP locations verified for: static INPUT_CHANGED( coin_inserted ) { /* coin insertion causes an NMI */ - cpu_set_input_line(field->port->machine->cpu[0], INPUT_LINE_NMI, newval ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(field->port->machine, "maincpu", INPUT_LINE_NMI, newval ? CLEAR_LINE : ASSERT_LINE); } @@ -51,13 +51,13 @@ static UINT8 *lasso_chip_data; static WRITE8_HANDLER( sound_command_w ) { soundlatch_w(space,offset,data); - generic_pulse_irq_line(space->machine->cpu[1], 0); + generic_pulse_irq_line(cputag_get_cpu(space->machine, "audiocpu"), 0); } static WRITE8_HANDLER( pinbo_sound_command_w ) { soundlatch_w(space,offset,data); - cpu_set_input_line(space->machine->cpu[1], 0, HOLD_LINE); + cputag_set_input_line(space->machine, "audiocpu", 0, HOLD_LINE); } static READ8_HANDLER( sound_status_r ) diff --git a/src/mame/drivers/lastduel.c b/src/mame/drivers/lastduel.c index e31423a412a..b9d918ebe00 100644 --- a/src/mame/drivers/lastduel.c +++ b/src/mame/drivers/lastduel.c @@ -194,7 +194,7 @@ GFXDECODE_END /* handler called by the 2203 emulator when the internal timers cause an IRQ */ static void irqhandler(const device_config *device, int irq) { - cpu_set_input_line(device->machine->cpu[1],0,irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(device->machine, "audiocpu", 0, irq ? ASSERT_LINE : CLEAR_LINE); } static const ym2203_interface ym2203_config = diff --git a/src/mame/drivers/lastfght.c b/src/mame/drivers/lastfght.c index 3a2df3b989b..57e7e3043e9 100644 --- a/src/mame/drivers/lastfght.c +++ b/src/mame/drivers/lastfght.c @@ -455,7 +455,7 @@ static INTERRUPT_GEN( unknown_interrupt ) generic_pulse_irq_line(device, 0); break; default: - cpu_set_input_line(device->machine->cpu[0], H8_METRO_TIMER_HACK, HOLD_LINE); + cputag_set_input_line(device->machine, "maincpu", H8_METRO_TIMER_HACK, HOLD_LINE); break; } } diff --git a/src/mame/drivers/leland.c b/src/mame/drivers/leland.c index c2e8d77512b..10bb6cd18c1 100644 --- a/src/mame/drivers/leland.c +++ b/src/mame/drivers/leland.c @@ -1839,11 +1839,11 @@ ROM_END static void init_master_ports(running_machine *machine, UINT8 mvram_base, UINT8 io_base) { /* set up the master CPU VRAM I/O */ - memory_install_readwrite8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), mvram_base, mvram_base + 0x1f, 0, 0, leland_mvram_port_r, leland_mvram_port_w); + memory_install_readwrite8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), mvram_base, mvram_base + 0x1f, 0, 0, leland_mvram_port_r, leland_mvram_port_w); /* set up the master CPU I/O ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), io_base, io_base + 0x1f, 0, 0, leland_master_input_r); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), io_base, io_base + 0x0f, 0, 0, leland_master_output_w); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), io_base, io_base + 0x1f, 0, 0, leland_master_input_r); + memory_install_write8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), io_base, io_base + 0x0f, 0, 0, leland_master_output_w); } @@ -1878,8 +1878,8 @@ static DRIVER_INIT( cerberus ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x80, 0x80, 0, 0, cerberus_dial_1_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x90, 0x90, 0, 0, cerberus_dial_2_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x80, 0x80, 0, 0, cerberus_dial_1_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x90, 0x90, 0, 0, cerberus_dial_2_r); } @@ -1998,7 +1998,7 @@ static DRIVER_INIT( alleymas ) /* kludge warning: the game uses location E0CA to determine if the joysticks are available */ /* it gets cleared by the code, but there is no obvious way for the value to be set to a */ /* non-zero value. If the value is zero, the joystick is never read. */ - alleymas_kludge_mem = memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xe0ca, 0xe0ca, 0, 0, alleymas_joystick_kludge); + alleymas_kludge_mem = memory_install_write8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_PROGRAM), 0xe0ca, 0xe0ca, 0, 0, alleymas_joystick_kludge); } @@ -2051,9 +2051,9 @@ static DRIVER_INIT( dangerz ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf4, 0xf4, 0, 0, dangerz_input_upper_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, dangerz_input_y_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xfc, 0xfc, 0, 0, dangerz_input_x_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf4, 0xf4, 0, 0, dangerz_input_upper_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, dangerz_input_y_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xfc, 0xfc, 0, 0, dangerz_input_x_r); } @@ -2144,10 +2144,10 @@ static DRIVER_INIT( redlin2p ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xc0, 0xc0, 0, 0, redline_pedal_1_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xd0, 0xd0, 0, 0, redline_pedal_2_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, redline_wheel_2_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, redline_wheel_1_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xc0, 0xc0, 0, 0, redline_pedal_1_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xd0, 0xd0, 0, 0, redline_pedal_2_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, redline_wheel_2_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, redline_wheel_1_r); } @@ -2202,9 +2202,9 @@ static DRIVER_INIT( viper ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xa4, 0xa4, 0, 0, dangerz_input_upper_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xb8, 0xb8, 0, 0, dangerz_input_y_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xbc, 0xbc, 0, 0, dangerz_input_x_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xa4, 0xa4, 0, 0, dangerz_input_upper_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xb8, 0xb8, 0, 0, dangerz_input_y_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xbc, 0xbc, 0, 0, dangerz_input_x_r); } @@ -2233,8 +2233,8 @@ static DRIVER_INIT( teamqb ) init_master_ports(machine, 0x40, 0x80); /* set up additional input ports */ - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); } @@ -2263,8 +2263,8 @@ static DRIVER_INIT( aafb ) init_master_ports(machine, 0x00, 0xc0); /* set up additional input ports */ - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); } @@ -2293,8 +2293,8 @@ static DRIVER_INIT( aafbb ) init_master_ports(machine, 0x80, 0x40); /* set up additional input ports */ - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); } @@ -2323,8 +2323,8 @@ static DRIVER_INIT( aafbd2p ) init_master_ports(machine, 0x00, 0x40); /* set up additional input ports */ - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7c, 0x7c, 0, 0, "IN4"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN5"); } @@ -2359,9 +2359,9 @@ static DRIVER_INIT( offroad ) init_master_ports(machine, 0x40, 0x80); /* yes, this is intentional */ /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); } @@ -2395,9 +2395,9 @@ static DRIVER_INIT( offroadt ) init_master_ports(machine, 0x80, 0x40); /* set up additional input ports */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf8, 0xf8, 0, 0, offroad_wheel_3_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xf9, 0xf9, 0, 0, offroad_wheel_1_r); + memory_install_read8_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0xfb, 0xfb, 0, 0, offroad_wheel_2_r); } @@ -2429,7 +2429,7 @@ static DRIVER_INIT( pigout ) init_master_ports(machine, 0x00, 0x40); /* set up additional input ports */ - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN4"); + memory_install_read_port_handler(cputag_get_address_space(machine, "master", ADDRESS_SPACE_IO), 0x7f, 0x7f, 0, 0, "IN4"); } diff --git a/src/mame/drivers/lemmings.c b/src/mame/drivers/lemmings.c index 7b2a099d5e2..fe8e0cd0c92 100644 --- a/src/mame/drivers/lemmings.c +++ b/src/mame/drivers/lemmings.c @@ -76,12 +76,12 @@ static WRITE16_HANDLER( lemmings_palette_24bit_w ) static WRITE16_HANDLER( lemmings_sound_w ) { soundlatch_w(space,0,data&0xff); - cpu_set_input_line(space->machine->cpu[1],1,HOLD_LINE); + cputag_set_input_line(space->machine, "audiocpu", 1, HOLD_LINE); } static WRITE8_HANDLER( lemmings_sound_ack_w ) { - cpu_set_input_line(space->machine->cpu[1],1,CLEAR_LINE); + cputag_set_input_line(space->machine, "audiocpu", 1, CLEAR_LINE); } /******************************************************************************/ @@ -239,7 +239,7 @@ GFXDECODE_END static void sound_irq(const device_config *device, int state) { - cpu_set_input_line(device->machine->cpu[1],0,state); + cputag_set_input_line(device->machine, "audiocpu", 0, state); } static const ym2151_interface ym2151_config = diff --git a/src/mame/drivers/lethal.c b/src/mame/drivers/lethal.c index b62482fe670..d2d9cb25a1d 100644 --- a/src/mame/drivers/lethal.c +++ b/src/mame/drivers/lethal.c @@ -259,7 +259,7 @@ static WRITE8_HANDLER( sound_cmd_w ) static WRITE8_HANDLER( sound_irq_w ) { - cpu_set_input_line(space->machine->cpu[1], 0, HOLD_LINE); + cputag_set_input_line(space->machine, "soundcpu", 0, HOLD_LINE); } static READ8_HANDLER( sound_status_r ) @@ -269,7 +269,7 @@ static READ8_HANDLER( sound_status_r ) static void sound_nmi(const device_config *device) { - cpu_set_input_line(device->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(device->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE); } static WRITE8_HANDLER( le_bankswitch_w ) @@ -588,7 +588,7 @@ static MACHINE_RESET( lethalen ) memory_set_bankptr(machine, 1, &prgrom[0x10000]); memory_set_bankptr(machine, 2, &prgrom[0x48000]); /* force reset again to read proper reset vector */ - device_reset(machine->cpu[0]); + device_reset(cputag_get_cpu(machine, "maincpu")); } static const gfx_layout lethal_6bpp = diff --git a/src/mame/drivers/lethalj.c b/src/mame/drivers/lethalj.c index 697fccef243..1261c2e716c 100644 --- a/src/mame/drivers/lethalj.c +++ b/src/mame/drivers/lethalj.c @@ -161,7 +161,7 @@ Pin #11(+) | | R | static CUSTOM_INPUT( ticket_status ) { - const address_space *space = cpu_get_address_space(field->port->machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(field->port->machine, "maincpu", ADDRESS_SPACE_PROGRAM); return ticket_dispenser_0_r(space, 0) >> 7; } @@ -907,21 +907,21 @@ ROM_END static DRIVER_INIT( ripribit ) { ticket_dispenser_init(machine, 200, TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, ripribit_control_w); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, ripribit_control_w); } static DRIVER_INIT( cfarm ) { ticket_dispenser_init(machine, 200, TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cfarm_control_w); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cfarm_control_w); } static DRIVER_INIT( cclownz ) { ticket_dispenser_init(machine, 200, TICKET_MOTOR_ACTIVE_HIGH, TICKET_STATUS_ACTIVE_HIGH); - memory_install_write16_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cclownz_control_w); + memory_install_write16_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x04100010, 0x0410001f, 0, 0, cclownz_control_w); } diff --git a/src/mame/drivers/lgp.c b/src/mame/drivers/lgp.c index 2ac488417cf..1e7b3ec5c74 100644 --- a/src/mame/drivers/lgp.c +++ b/src/mame/drivers/lgp.c @@ -317,7 +317,7 @@ GFXDECODE_END static TIMER_CALLBACK( irq_stop ) { - cpu_set_input_line(machine->cpu[0], 0, CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", 0, CLEAR_LINE); } static INTERRUPT_GEN( vblank_callback_lgp ) diff --git a/src/mame/drivers/liberate.c b/src/mame/drivers/liberate.c index c30b149db6b..6fc22a2d216 100644 --- a/src/mame/drivers/liberate.c +++ b/src/mame/drivers/liberate.c @@ -77,9 +77,9 @@ static WRITE8_HANDLER( deco16_bank_w ) deco16_bank = data; if (deco16_bank) - memory_install_read8_handler(cpu_get_address_space(space->machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x8000, 0x800f, 0, 0, deco16_io_r); + memory_install_read8_handler(cputag_get_address_space(space->machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x8000, 0x800f, 0, 0, deco16_io_r); else - memory_install_read8_handler(cpu_get_address_space(space->machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x8000, 0x800f, 0, 0, (read8_space_func)SMH_BANK(1)); + memory_install_read8_handler(cputag_get_address_space(space->machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x8000, 0x800f, 0, 0, (read8_space_func)SMH_BANK(1)); } /************************************* @@ -957,7 +957,7 @@ static DRIVER_INIT( yellowcb ) { DRIVER_INIT_CALL(prosport); - memory_install_read_port_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xa000, 0xa000, 0, 0, "IN0"); + memory_install_read_port_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xa000, 0xa000, 0, 0, "IN0"); } static DRIVER_INIT( liberate ) @@ -997,4 +997,3 @@ GAME( 1984, yellowcb, kamikcab, boomrang, yellowcb, yellowcb, ROT270, "bootleg" GAME( 1984, liberate, 0, liberate, liberate, liberate, ROT270, "Data East Corporation", "Liberation", 0 ) GAME( 1984, dualaslt, liberate, liberate, dualaslt, liberate, ROT270, "Data East USA", "Dual Assault", 0 ) GAME( 1984, liberatb, liberate, liberatb, liberatb, prosport, ROT270, "bootleg", "Liberation (bootleg)", 0 ) - diff --git a/src/mame/drivers/limenko.c b/src/mame/drivers/limenko.c index 64e658b3515..b5908a1cdb0 100644 --- a/src/mame/drivers/limenko.c +++ b/src/mame/drivers/limenko.c @@ -999,21 +999,21 @@ static READ32_HANDLER( spotty_speedup_r ) static DRIVER_INIT( dynabomb ) { - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xe2784, 0xe2787, 0, 0, dynabomb_speedup_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xe2784, 0xe2787, 0, 0, dynabomb_speedup_r ); spriteram_bit = 1; } static DRIVER_INIT( legendoh ) { - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x32ab0, 0x32ab3, 0, 0, legendoh_speedup_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x32ab0, 0x32ab3, 0, 0, legendoh_speedup_r ); spriteram_bit = 1; } static DRIVER_INIT( sb2003 ) { - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x135800, 0x135803, 0, 0, sb2003_speedup_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x135800, 0x135803, 0, 0, sb2003_speedup_r ); spriteram_bit = 1; } @@ -1033,7 +1033,7 @@ static DRIVER_INIT( spotty ) dst[x+2] = (src[x+1]&0x0f) >> 0; } - memory_install_read32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x6626c, 0x6626f, 0, 0, spotty_speedup_r ); + memory_install_read32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x6626c, 0x6626f, 0, 0, spotty_speedup_r ); spriteram_bit = 1; } diff --git a/src/mame/drivers/lkage.c b/src/mame/drivers/lkage.c index 849c4ab0a77..feed0f5faf5 100644 --- a/src/mame/drivers/lkage.c +++ b/src/mame/drivers/lkage.c @@ -89,7 +89,7 @@ static int sound_nmi_enable,pending_nmi; static TIMER_CALLBACK( nmi_callback ) { - if (sound_nmi_enable) cpu_set_input_line(machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + if (sound_nmi_enable) cputag_set_input_line(machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); else pending_nmi = 1; } @@ -109,7 +109,7 @@ static WRITE8_HANDLER( lkage_sh_nmi_enable_w ) sound_nmi_enable = 1; if (pending_nmi) { /* probably wrong but commands may go lost otherwise */ - cpu_set_input_line(space->machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); pending_nmi = 0; } } @@ -356,7 +356,7 @@ GFXDECODE_END static void irqhandler(const device_config *device, int irq) { - cpu_set_input_line(device->machine->cpu[1],0,irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(device->machine, "audiocpu", 0, irq ? ASSERT_LINE : CLEAR_LINE); } static const ym2203_interface ym2203_config = @@ -662,9 +662,9 @@ static READ8_HANDLER( fake_status_r ) static DRIVER_INIT( lkageb ) { - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_r); - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xf087, 0xf087, 0, 0, fake_status_r); - memory_install_write8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_w ); + memory_install_read8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_r); + memory_install_read8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xf087, 0xf087, 0, 0, fake_status_r); + memory_install_write8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xf062, 0xf062, 0, 0, fake_mcu_w ); } GAME( 1984, lkage, 0, lkage, lkage, 0, ROT0, "Taito Corporation", "The Legend of Kage", GAME_NO_COCKTAIL ) diff --git a/src/mame/drivers/lockon.c b/src/mame/drivers/lockon.c index 639b54712f8..935826ebe47 100644 --- a/src/mame/drivers/lockon.c +++ b/src/mame/drivers/lockon.c @@ -66,20 +66,20 @@ static WRITE16_HANDLER( adrst_w ) lockon_ctrl_reg = data & 0xff; /* Bus mastering for shared access */ - cpu_set_input_line(space->machine->cpu[GROUND_CPU], INPUT_LINE_HALT, data & 0x04 ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(space->machine->cpu[OBJECT_CPU], INPUT_LINE_HALT, data & 0x20 ? ASSERT_LINE : CLEAR_LINE); - cpu_set_input_line(space->machine->cpu[SOUND_CPU], INPUT_LINE_HALT, data & 0x40 ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "ground", INPUT_LINE_HALT, data & 0x04 ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(space->machine, "object", INPUT_LINE_HALT, data & 0x20 ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_HALT, data & 0x40 ? CLEAR_LINE : ASSERT_LINE); } static READ16_HANDLER( main_gnd_r ) { - const address_space *gndspace = cpu_get_address_space(space->machine->cpu[GROUND_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *gndspace = cputag_get_address_space(space->machine, "ground", ADDRESS_SPACE_PROGRAM); return memory_read_word(gndspace, V30_GND_ADDR | offset * 2); } static WRITE16_HANDLER( main_gnd_w ) { - const address_space *gndspace = cpu_get_address_space(space->machine->cpu[GROUND_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *gndspace = cputag_get_address_space(space->machine, "ground", ADDRESS_SPACE_PROGRAM); if (ACCESSING_BITS_0_7) memory_write_byte(gndspace, V30_GND_ADDR | (offset * 2 + 0), data); @@ -89,13 +89,13 @@ static WRITE16_HANDLER( main_gnd_w ) static READ16_HANDLER( main_obj_r ) { - const address_space *objspace = cpu_get_address_space(space->machine->cpu[OBJECT_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *objspace = cputag_get_address_space(space->machine, "object", ADDRESS_SPACE_PROGRAM); return memory_read_word(objspace, V30_OBJ_ADDR | offset * 2); } static WRITE16_HANDLER( main_obj_w ) { - const address_space *objspace = cpu_get_address_space(space->machine->cpu[OBJECT_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *objspace = cputag_get_address_space(space->machine, "object", ADDRESS_SPACE_PROGRAM); if (ACCESSING_BITS_0_7) memory_write_byte(objspace, V30_OBJ_ADDR | (offset * 2 + 0), data); @@ -107,8 +107,8 @@ static WRITE16_HANDLER( tst_w ) { if (offset < 0x800) { - const address_space *gndspace = cpu_get_address_space(space->machine->cpu[GROUND_CPU], ADDRESS_SPACE_PROGRAM); - const address_space *objspace = cpu_get_address_space(space->machine->cpu[OBJECT_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *gndspace = cputag_get_address_space(space->machine, "ground", ADDRESS_SPACE_PROGRAM); + const address_space *objspace = cputag_get_address_space(space->machine, "object", ADDRESS_SPACE_PROGRAM); if (ACCESSING_BITS_0_7) memory_write_byte(gndspace, V30_GND_ADDR | (offset * 2 + 0), data); @@ -124,13 +124,13 @@ static WRITE16_HANDLER( tst_w ) static READ16_HANDLER( main_z80_r ) { - const address_space *sndspace = cpu_get_address_space(space->machine->cpu[SOUND_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *sndspace = cputag_get_address_space(space->machine, "audiocpu", ADDRESS_SPACE_PROGRAM); return 0xff00 | memory_read_byte(sndspace, offset); } static WRITE16_HANDLER( main_z80_w ) { - const address_space *sndspace = cpu_get_address_space(space->machine->cpu[SOUND_CPU], ADDRESS_SPACE_PROGRAM); + const address_space *sndspace = cputag_get_address_space(space->machine, "audiocpu", ADDRESS_SPACE_PROGRAM); memory_write_byte(sndspace, offset, data); } @@ -425,7 +425,7 @@ static WRITE8_HANDLER( sound_vol ) static void ym2203_irq(const device_config *device, int irq) { - cpu_set_input_line(device->machine->cpu[SOUND_CPU], 0, irq ? ASSERT_LINE : CLEAR_LINE ); + cputag_set_input_line(device->machine, "audiocpu", 0, irq ? ASSERT_LINE : CLEAR_LINE ); } static WRITE8_DEVICE_HANDLER( ym2203_out_b ) diff --git a/src/mame/drivers/looping.c b/src/mame/drivers/looping.c index a27d1364dd8..658d22c705f 100644 --- a/src/mame/drivers/looping.c +++ b/src/mame/drivers/looping.c @@ -314,34 +314,34 @@ static INTERRUPT_GEN( looping_interrupt ) static WRITE8_HANDLER( level2_irq_set ) { if (!(data & 1)) - cpu_set_input_line_and_vector(space->machine->cpu[0], 0, ASSERT_LINE, 4); + cputag_set_input_line_and_vector(space->machine, "maincpu", 0, ASSERT_LINE, 4); } static WRITE8_HANDLER( main_irq_ack_w ) { if (data == 0) - cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); } static WRITE8_HANDLER( looping_souint_clr ) { if (data == 0) - cpu_set_input_line(space->machine->cpu[1], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "audiocpu", 0, CLEAR_LINE); } static void looping_spcint(const device_config *device, int state) { - cpu_set_input_line_and_vector(device->machine->cpu[1], 0, state, 6); + cputag_set_input_line_and_vector(device->machine, "audiocpu", 0, state, 6); } static WRITE8_HANDLER( looping_soundlatch_w ) { soundlatch_w(space, offset, data); - cpu_set_input_line_and_vector(space->machine->cpu[1], 0, ASSERT_LINE, 4); + cputag_set_input_line_and_vector(space->machine, "audiocpu", 0, ASSERT_LINE, 4); } @@ -794,7 +794,7 @@ static DRIVER_INIT( looping ) rom[i] = BITSWAP8(rom[i], 0,1,2,3,4,5,6,7); /* install protection handlers */ - memory_install_read8_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0x7000, 0x7007, 0, 0, protection_r); + memory_install_read8_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0x7000, 0x7007, 0, 0, protection_r); } @@ -808,4 +808,3 @@ static DRIVER_INIT( looping ) GAME( 1982, looping, 0, looping, looping, looping, ROT90, "Venture Line", "Looping (set 1)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) GAME( 1982, loopinga, looping, looping, looping, looping, ROT90, "Venture Line", "Looping (set 2)", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) GAME( 1982, skybump, 0, looping, skybump, looping, ROT90, "Venture Line", "Sky Bumper", GAME_IMPERFECT_SOUND | GAME_SUPPORTS_SAVE ) - diff --git a/src/mame/drivers/lordgun.c b/src/mame/drivers/lordgun.c index 7b65016dbf2..1d66768c50f 100644 --- a/src/mame/drivers/lordgun.c +++ b/src/mame/drivers/lordgun.c @@ -140,7 +140,7 @@ static WRITE16_HANDLER( lordgun_soundlatch_w ) if (ACCESSING_BITS_0_7) soundlatch_w (space, 0, (data >> 0) & 0xff); if (ACCESSING_BITS_8_15) soundlatch2_w(space, 0, (data >> 8) & 0xff); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, PULSE_LINE); + cputag_set_input_line(space->machine, "soundcpu", INPUT_LINE_NMI, PULSE_LINE); } static ADDRESS_MAP_START( lordgun_map, ADDRESS_SPACE_PROGRAM, 16 ) @@ -400,7 +400,7 @@ static const ppi8255_interface ppi8255_intf[2] = static void soundirq(const device_config *device, int state) { - cpu_set_input_line(device->machine->cpu[1], 0, state); + cputag_set_input_line(device->machine, "soundcpu", 0, state); } static const ym3812_interface lordgun_ym3812_interface = diff --git a/src/mame/drivers/lsasquad.c b/src/mame/drivers/lsasquad.c index 663db479d8a..86a8752a725 100644 --- a/src/mame/drivers/lsasquad.c +++ b/src/mame/drivers/lsasquad.c @@ -529,7 +529,7 @@ GFXDECODE_END static void irqhandler(const device_config *device, int irq) { - cpu_set_input_line(device->machine->cpu[1],0,irq ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(device->machine, "audiocpu", 0, irq ? ASSERT_LINE : CLEAR_LINE); } static WRITE8_DEVICE_HANDLER( unk ) diff --git a/src/mame/includes/lockon.h b/src/mame/includes/lockon.h index 3414131cddc..837473b77b3 100644 --- a/src/mame/includes/lockon.h +++ b/src/mame/includes/lockon.h @@ -14,14 +14,6 @@ #define VBEND 0 #define VTOTAL 280 -enum -{ - MAIN_CPU = 0, - GROUND_CPU, - OBJECT_CPU, - SOUND_CPU -}; - /*----------- defined in drivers/lockon.c -----------*/ extern UINT8 lockon_ctrl_reg; extern UINT32 lockon_main_inten; diff --git a/src/mame/machine/irobot.c b/src/mame/machine/irobot.c index 904463e84fe..3d05994d4ed 100644 --- a/src/mame/machine/irobot.c +++ b/src/mame/machine/irobot.c @@ -180,7 +180,7 @@ static TIMER_CALLBACK( scanline_callback ) if (scanline == 224) irvg_vblank=1; logerror("SCANLINE CALLBACK %d\n",scanline); /* set the IRQ line state based on the 32V line state */ - cpu_set_input_line(machine->cpu[0], M6809_IRQ_LINE, (scanline & 32) ? ASSERT_LINE : CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", M6809_IRQ_LINE, (scanline & 32) ? ASSERT_LINE : CLEAR_LINE); /* set a callback for the next 32-scanline increment */ scanline += 32; @@ -208,8 +208,8 @@ MACHINE_RESET( irobot ) /* set an initial timer to go off on scanline 0 */ timer_set(machine, video_screen_get_time_until_pos(machine->primary_screen, 0, 0), NULL, 0, scanline_callback); - irobot_rom_banksel_w(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM),0,0); - irobot_out0_w(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM),0,0); + irobot_rom_banksel_w(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM),0,0); + irobot_out0_w(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM),0,0); irobot_combase = comRAM[0]; irobot_combase_mb = comRAM[1]; irobot_outx = 0; @@ -457,7 +457,7 @@ static TIMER_CALLBACK( irmb_done_callback ) { logerror("mb done. "); irmb_running = 0; - cpu_set_input_line(machine->cpu[0], M6809_FIRQ_LINE, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", M6809_FIRQ_LINE, ASSERT_LINE); } @@ -861,7 +861,7 @@ default: case 0x3f: IXOR(irmb_din(curop), 0); break; timer_adjust_oneshot(irmb_timer, attotime_mul(ATTOTIME_IN_NSEC(200), icount), 0); } #else - cpu_set_input_line(machine->cpu[0], M6809_FIRQ_LINE, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", M6809_FIRQ_LINE, ASSERT_LINE); #endif irmb_running=1; } diff --git a/src/mame/machine/jackal.c b/src/mame/machine/jackal.c index ac58d4186e4..7295743a872 100644 --- a/src/mame/machine/jackal.c +++ b/src/mame/machine/jackal.c @@ -23,7 +23,7 @@ MACHINE_RESET( jackal ) // HACK: running at the nominal clock rate, music stops working // at the beginning of the game. This fixes it. - cpu_set_clockscale(machine->cpu[1], 1.2f); + cpu_set_clockscale(cputag_get_cpu(machine, "slave"), 1.2f); memory_set_bankptr(machine, 1,&rgn[0x4000]); jackal_rambank = rgn; diff --git a/src/mame/machine/konamigx.c b/src/mame/machine/konamigx.c index 9892b4da63d..cf50a1373eb 100644 --- a/src/mame/machine/konamigx.c +++ b/src/mame/machine/konamigx.c @@ -2108,7 +2108,7 @@ static UINT32 fantjour_dma[8]; void fantjour_dma_install(running_machine *machine) { state_save_register_global_array(machine, fantjour_dma); - memory_install_write32_handler(cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM), 0xdb0000, 0xdb001f, 0, 0, fantjour_dma_w); + memory_install_write32_handler(cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM), 0xdb0000, 0xdb001f, 0, 0, fantjour_dma_w); memset(fantjour_dma, 0, sizeof(fantjour_dma)); } diff --git a/src/mame/machine/leland.c b/src/mame/machine/leland.c index 23d8a002d29..f46ff9468ac 100644 --- a/src/mame/machine/leland.c +++ b/src/mame/machine/leland.c @@ -409,7 +409,7 @@ MACHINE_RESET( leland ) memory_set_bankptr(machine, 3, &slave_base[0x10000]); /* if we have an I80186 CPU, reset it */ - if (machine->cpu[2] != NULL && cpu_get_type(machine->cpu[2]) == CPU_I80186) + if (cputag_get_cpu(machine, "audiocpu") != NULL && cpu_get_type(cputag_get_cpu(machine, "audiocpu")) == CPU_I80186) leland_80186_sound_init(); } @@ -474,7 +474,7 @@ static TIMER_CALLBACK( leland_interrupt_callback ) /* interrupts generated on the VA10 line, which is every */ /* 16 scanlines starting with scanline #8 */ - cpu_set_input_line(machine->cpu[0], 0, HOLD_LINE); + cputag_set_input_line(machine, "master", 0, HOLD_LINE); /* set a timer for the next one */ scanline += 16; @@ -489,7 +489,7 @@ static TIMER_CALLBACK( ataxx_interrupt_callback ) int scanline = param; /* interrupts generated according to the interrupt control register */ - cpu_set_input_line(machine->cpu[0], 0, HOLD_LINE); + cputag_set_input_line(machine, "master", 0, HOLD_LINE); /* set a timer for the next one */ timer_adjust_oneshot(master_int_timer, video_screen_get_time_until_pos(machine->primary_screen, scanline, 0), scanline); @@ -1158,13 +1158,13 @@ READ8_HANDLER( leland_master_input_r ) case 0x01: /* /GIN1 */ result = input_port_read(space->machine, "IN1"); - if (cpu_get_reg(space->machine->cpu[1], Z80_HALT)) + if (cpu_get_reg(cputag_get_cpu(space->machine, "slave"), Z80_HALT)) result ^= 0x01; break; case 0x02: /* /GIN2 */ case 0x12: - cpu_set_input_line(space->machine->cpu[0], INPUT_LINE_NMI, CLEAR_LINE); + cputag_set_input_line(space->machine, "master", INPUT_LINE_NMI, CLEAR_LINE); break; case 0x03: /* /IGID */ @@ -1195,10 +1195,10 @@ WRITE8_HANDLER( leland_master_output_w ) switch (offset) { case 0x09: /* /MCONT */ - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, (data & 0x01) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", INPUT_LINE_RESET, (data & 0x01) ? CLEAR_LINE : ASSERT_LINE); wcol_enable = (data & 0x02); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, (data & 0x04) ? CLEAR_LINE : ASSERT_LINE); - cpu_set_input_line(space->machine->cpu[1], 0, (data & 0x08) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", INPUT_LINE_NMI, (data & 0x04) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", 0, (data & 0x08) ? CLEAR_LINE : ASSERT_LINE); if (LOG_EEPROM) logerror("%04X:EE write %d%d%d\n", cpu_get_pc(space->cpu), (data >> 6) & 1, (data >> 5) & 1, (data >> 4) & 1); @@ -1238,7 +1238,7 @@ READ8_HANDLER( ataxx_master_input_r ) case 0x07: /* /SLVBLK */ result = input_port_read(space->machine, "IN1"); - if (cpu_get_reg(space->machine->cpu[1], Z80_HALT)) + if (cpu_get_reg(cputag_get_cpu(space->machine, "slave"), Z80_HALT)) result ^= 0x01; break; @@ -1270,9 +1270,9 @@ WRITE8_HANDLER( ataxx_master_output_w ) break; case 0x05: /* /SLV0 */ - cpu_set_input_line(space->machine->cpu[1], 0, (data & 0x01) ? CLEAR_LINE : ASSERT_LINE); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_NMI, (data & 0x04) ? CLEAR_LINE : ASSERT_LINE); - cpu_set_input_line(space->machine->cpu[1], INPUT_LINE_RESET, (data & 0x10) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", 0, (data & 0x01) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", INPUT_LINE_NMI, (data & 0x04) ? CLEAR_LINE : ASSERT_LINE); + cputag_set_input_line(space->machine, "slave", INPUT_LINE_RESET, (data & 0x10) ? CLEAR_LINE : ASSERT_LINE); break; case 0x08: /* */ diff --git a/src/mame/machine/lkage.c b/src/mame/machine/lkage.c index 0536c265c61..d73dddc4716 100644 --- a/src/mame/machine/lkage.c +++ b/src/mame/machine/lkage.c @@ -68,7 +68,7 @@ WRITE8_HANDLER( lkage_68705_portB_w ) if ((ddrB & 0x02) && (~data & 0x02) && (portB_out & 0x02)) { portA_in = from_main; - if (main_sent) cpu_set_input_line(space->machine->cpu[2],0,CLEAR_LINE); + if (main_sent) cputag_set_input_line(space->machine, "mcu", 0, CLEAR_LINE); main_sent = 0; logerror("read command %02x from main cpu\n",portA_in); } @@ -116,7 +116,7 @@ WRITE8_HANDLER( lkage_mcu_w ) logerror("%04x: mcu_w %02x\n",cpu_get_pc(space->cpu),data); from_main = data; main_sent = 1; - cpu_set_input_line(space->machine->cpu[2],0,ASSERT_LINE); + cputag_set_input_line(space->machine, "mcu", 0, ASSERT_LINE); } READ8_HANDLER( lkage_mcu_r ) diff --git a/src/mame/machine/lsasquad.c b/src/mame/machine/lsasquad.c index 8c92f50ea15..db875485844 100644 --- a/src/mame/machine/lsasquad.c +++ b/src/mame/machine/lsasquad.c @@ -18,7 +18,7 @@ int lsasquad_sound_pending; static TIMER_CALLBACK( nmi_callback ) { - if (sound_nmi_enable) cpu_set_input_line(machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + if (sound_nmi_enable) cputag_set_input_line(machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); else pending_nmi = 1; } @@ -32,7 +32,7 @@ WRITE8_HANDLER( lsasquad_sh_nmi_enable_w ) sound_nmi_enable = 1; if (pending_nmi) { - cpu_set_input_line(space->machine->cpu[1],INPUT_LINE_NMI,PULSE_LINE); + cputag_set_input_line(space->machine, "audiocpu", INPUT_LINE_NMI, PULSE_LINE); pending_nmi = 0; } } @@ -145,7 +145,7 @@ WRITE8_HANDLER( lsasquad_68705_portB_w ) if ((ddrB & 0x02) && (~data & 0x02) && (portB_out & 0x02)) { portA_in = from_main; - if (main_sent) cpu_set_input_line(space->machine->cpu[2],0,CLEAR_LINE); + if (main_sent) cputag_set_input_line(space->machine, "mcu", 0, CLEAR_LINE); main_sent = 0; //logerror("read command %02x from main cpu\n",portA_in); } @@ -169,7 +169,7 @@ WRITE8_HANDLER( lsasquad_mcu_w ) //logerror("%04x: mcu_w %02x\n",cpu_get_pc(space->cpu),data); from_main = data; main_sent = 1; - cpu_set_input_line(space->machine->cpu[2],0,ASSERT_LINE); + cputag_set_input_line(space->machine, "mcu", 0, ASSERT_LINE); } READ8_HANDLER( lsasquad_mcu_r ) diff --git a/src/mame/video/jaguar.c b/src/mame/video/jaguar.c index 4d18b98fa06..af53e0e4013 100644 --- a/src/mame/video/jaguar.c +++ b/src/mame/video/jaguar.c @@ -308,13 +308,13 @@ INLINE int adjust_object_timer(running_machine *machine, int vc) void jaguar_gpu_suspend(running_machine *machine) { - cpu_suspend(machine->cpu[1], SUSPEND_REASON_SPIN, 1); + cputag_suspend(machine, "gpu", SUSPEND_REASON_SPIN, 1); } void jaguar_gpu_resume(running_machine *machine) { - cpu_resume(machine->cpu[1], SUSPEND_REASON_SPIN); + cputag_resume(machine, "gpu", SUSPEND_REASON_SPIN); } @@ -328,9 +328,9 @@ void jaguar_gpu_resume(running_machine *machine) static void update_cpu_irq(running_machine *machine) { if (cpu_irq_state & gpu_regs[INT1] & 0x1f) - cpu_set_input_line(machine->cpu[0], cojag_is_r3000 ? R3000_IRQ4 : M68K_IRQ_6, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", cojag_is_r3000 ? R3000_IRQ4 : M68K_IRQ_6, ASSERT_LINE); else - cpu_set_input_line(machine->cpu[0], cojag_is_r3000 ? R3000_IRQ4 : M68K_IRQ_6, CLEAR_LINE); + cputag_set_input_line(machine, "maincpu", cojag_is_r3000 ? R3000_IRQ4 : M68K_IRQ_6, CLEAR_LINE); } @@ -479,7 +479,7 @@ static void jaguar_set_palette(UINT16 vmode) static UINT8 *get_jaguar_memory(running_machine *machine, UINT32 offset) { - const address_space *space = cpu_get_address_space(machine->cpu[1], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "gpu", ADDRESS_SPACE_PROGRAM); return (UINT8 *)memory_get_read_ptr(space, offset); } diff --git a/src/mame/video/lastduel.c b/src/mame/video/lastduel.c index d2d345f6928..f932289b3c7 100644 --- a/src/mame/video/lastduel.c +++ b/src/mame/video/lastduel.c @@ -287,7 +287,7 @@ VIDEO_UPDATE( madgear ) VIDEO_EOF( lastduel ) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); /* Spriteram is always 1 frame ahead, suggesting buffering. I can't find a register to control this so I assume it happens automatically diff --git a/src/mame/video/leland.c b/src/mame/video/leland.c index c2b5eb81ec6..c960025fdd7 100644 --- a/src/mame/video/leland.c +++ b/src/mame/video/leland.c @@ -313,7 +313,7 @@ WRITE8_HANDLER( leland_master_video_addr_w ) static TIMER_CALLBACK( leland_delayed_mvram_w ) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "master", ADDRESS_SPACE_PROGRAM); int num = (param >> 16) & 1; int offset = (param >> 8) & 0xff; diff --git a/src/mame/video/lethalj.c b/src/mame/video/lethalj.c index 14fa783f471..9dd43e4e8d4 100644 --- a/src/mame/video/lethalj.c +++ b/src/mame/video/lethalj.c @@ -108,7 +108,7 @@ VIDEO_START( lethalj ) static TIMER_CALLBACK( gen_ext1_int ) { - cpu_set_input_line(machine->cpu[0], 0, ASSERT_LINE); + cputag_set_input_line(machine, "maincpu", 0, ASSERT_LINE); } @@ -170,7 +170,7 @@ WRITE16_HANDLER( lethalj_blitter_w ) /* clear the IRQ on offset 0 */ else if (offset == 0) - cpu_set_input_line(space->machine->cpu[0], 0, CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", 0, CLEAR_LINE); } diff --git a/src/mame/video/liberate.c b/src/mame/video/liberate.c index fbbebf50556..6f0dc3df6fe 100644 --- a/src/mame/video/liberate.c +++ b/src/mame/video/liberate.c @@ -12,106 +12,111 @@ #include "driver.h" #include "cpu/m6502/m6502.h" -static int background_color,background_disable; +static int background_color, background_disable; static tilemap *background_tilemap, *fix_tilemap; static UINT8 deco16_io_ram[16]; #if 0 void debug_print(bitmap_t *bitmap) { - int i,j; - char buf[20*16]; + int i, j; + char buf[20 * 16]; char *bufptr = buf; - for (i = 0;i < 16;i+=2) - bufptr += sprintf(bufptr,"%04X",deco16_io_ram[i+1]|(deco16_io_ram[i]<<8)); - ui_draw_text(buf, 10, 6*6); + for (i = 0; i < 16; i += 2) + bufptr += sprintf(bufptr, "%04X", deco16_io_ram[i + 1] | (deco16_io_ram[i] << 8)); + ui_draw_text(buf, 10, 6 * 6); } #endif static TILEMAP_MAPPER( back_scan ) { /* logical (col,row) -> memory offset */ - return ((row & 0xf)) + ((15-(col &0xf))<<4) + ((row&0x10)<<5) + ((col&0x10)<<4); + return ((row & 0xf)) + ((15 - (col & 0xf)) << 4) + ((row & 0x10) << 5) + ((col & 0x10) << 4); } static TILEMAP_MAPPER( fix_scan ) { /* logical (col,row) -> memory offset */ - return (row & 0x1f) + ((31-(col &0x1f))<<5); + return (row & 0x1f) + ((31 - (col & 0x1f)) << 5); } static TILE_GET_INFO( get_back_tile_info ) { const UINT8 *RAM = memory_region(machine, "user1"); - int tile,bank; + int tile, bank; /* Convert tile index of 512x512 to paged format */ - if (tile_index&0x100) { - if (tile_index&0x200) - tile_index=(tile_index&0xff)+(deco16_io_ram[5]<<8); /* Bottom right */ + if (tile_index & 0x100) + { + if (tile_index & 0x200) + tile_index = (tile_index & 0xff) + (deco16_io_ram[5] << 8); /* Bottom right */ else - tile_index=(tile_index&0xff)+(deco16_io_ram[4]<<8); /* Bottom left */ - } else { - if (tile_index&0x200) - tile_index=(tile_index&0xff)+(deco16_io_ram[3]<<8); /* Top right */ + tile_index = (tile_index & 0xff) + (deco16_io_ram[4] << 8); /* Bottom left */ + } + else + { + if (tile_index & 0x200) + tile_index = (tile_index & 0xff) + (deco16_io_ram[3] << 8); /* Top right */ else - tile_index=(tile_index&0xff)+(deco16_io_ram[2]<<8); /* Top left */ + tile_index = (tile_index & 0xff) + (deco16_io_ram[2] << 8); /* Top left */ } - tile=RAM[tile_index]; - if (tile>0x7f) bank=3; else bank=2; - SET_TILE_INFO(bank,tile&0x7f,background_color,0); + tile = RAM[tile_index]; + if (tile > 0x7f) bank = 3; else bank = 2; + SET_TILE_INFO(bank, tile & 0x7f, background_color, 0); } static TILE_GET_INFO( get_fix_tile_info ) { - int tile,color; + int tile, color; - tile=videoram[tile_index+0x400]+((videoram[tile_index]&0x7)<<8); - color=(videoram[tile_index]&0x70)>>4; + tile = videoram[tile_index + 0x400] + ((videoram[tile_index] & 0x7) << 8); + color = (videoram[tile_index] & 0x70) >> 4; -//if (tile&0x300) tile-=0x000; -//else if(tile&0x200) tile-=0x100; -//else if (tile&0x100) tile-=0x100; -//else tile+=0x200; +//if (tile & 0x300) tile -= 0x000; +//else if(tile & 0x200) tile -= 0x100; +//else if (tile & 0x100) tile -= 0x100; +//else tile += 0x200; - SET_TILE_INFO(0,tile,color,0); + SET_TILE_INFO(0, tile, color, 0); } /***************************************************************************/ WRITE8_HANDLER( deco16_io_w ) { - deco16_io_ram[offset]=data; - if (offset>1 && offset<6) + deco16_io_ram[offset] = data; + if (offset > 1 && offset < 6) tilemap_mark_all_tiles_dirty(background_tilemap); - switch (offset) { + switch (offset) + { case 6: /* Background colour */ - if (((data>>4)&3)!=background_color) { - background_color=(data>>4)&3; + if (((data >> 4) & 3) != background_color) + { + background_color = (data >> 4) & 3; tilemap_mark_all_tiles_dirty(background_tilemap); } - background_disable=data&0x4; - flip_screen_set(space->machine, data&0x1); + background_disable = data & 0x4; + flip_screen_set(space->machine, data & 0x1); break; case 7: /* Background palette resistors? */ /* Todo */ break; case 8: /* Irq ack */ - cpu_set_input_line(space->machine->cpu[0],DECO16_IRQ_LINE,CLEAR_LINE); + cputag_set_input_line(space->machine, "maincpu", DECO16_IRQ_LINE, CLEAR_LINE); break; case 9: /* Sound */ - soundlatch_w(space,0,data); - cpu_set_input_line(space->machine->cpu[1],M6502_IRQ_LINE,HOLD_LINE); + soundlatch_w(space, 0, data); + cputag_set_input_line(space->machine, "audiocpu", M6502_IRQ_LINE, HOLD_LINE); break; } } WRITE8_HANDLER( liberate_videoram_w ) { - videoram[offset]=data; - tilemap_mark_tile_dirty(fix_tilemap,offset&0x3ff); + videoram[offset] = data; + tilemap_mark_tile_dirty(fix_tilemap, offset & 0x3ff); } /***************************************************************************/ @@ -214,7 +219,8 @@ static void liberate_draw_sprites(running_machine *machine, bitmap_t *bitmap, co if (multi && fy==0) sy-=16; - if (flip_screen_get(machine)) { + if (flip_screen_get(machine)) + { sy=240-sy; sx=240-sx; if (fy) @@ -224,7 +230,8 @@ static void liberate_draw_sprites(running_machine *machine, bitmap_t *bitmap, co if (fx) fx=0; else fx=1; if (fy) fy=0; else fy=1; } - else { + else + { if (fy) sy2=sy-16; else @@ -275,14 +282,16 @@ static void prosport_draw_sprites(running_machine *machine, bitmap_t *bitmap, co // if (multi) sy-=16; if (fy && multi) { code2=code; code++; } - if (flip_screen_get(machine)) { + if (flip_screen_get(machine)) + { sy=240-sy; sx=240-sx; if (fx) fx=0; else fx=1; if (fy) fy=0; else fy=1; sy2=sy-16; } - else { + else + { sy2=sy+16; } @@ -331,14 +340,16 @@ static void boomrang_draw_sprites(running_machine *machine, bitmap_t *bitmap, co // if (multi) sy-=16; if (fy && multi) { code2=code; code++; } - if (flip_screen_get(machine)) { + if (flip_screen_get(machine)) + { sy=240-sy; sx=240-sx; if (fx) fx=0; else fx=1; if (fy) fy=0; else fy=1; sy2=sy-16; } - else { + else + { sy2=sy+16; } @@ -382,7 +393,8 @@ VIDEO_UPDATE( prosport ) prosport_draw_sprites(screen->machine,bitmap,cliprect); - for (offs = 0;offs < 0x400;offs++) { + for (offs = 0;offs < 0x400;offs++) + { tile=videoram[offs+0x400]+((videoram[offs]&0x3)<<8); tile+=((deco16_io_ram[0]&0x30)<<6); diff --git a/src/mame/video/lockon.c b/src/mame/video/lockon.c index d92571b09d5..9413203d775 100644 --- a/src/mame/video/lockon.c +++ b/src/mame/video/lockon.c @@ -115,7 +115,7 @@ WRITE16_HANDLER( lockon_crtc_w ) static TIMER_CALLBACK( cursor_callback ) { if (lockon_main_inten) - cpu_set_input_line_and_vector(machine->cpu[MAIN_CPU], 0, HOLD_LINE, 0xff); + cputag_set_input_line_and_vector(machine, "maincpu", 0, HOLD_LINE, 0xff); timer_adjust_oneshot(cursor_timer, video_screen_get_time_until_pos(machine->primary_screen, CURSOR_YPOS, CURSOR_XPOS), 0); } @@ -329,8 +329,8 @@ WRITE16_HANDLER( lockon_ground_ctrl_w ) static TIMER_CALLBACK( bufend_callback ) { - cpu_set_input_line_and_vector(machine->cpu[GROUND_CPU], 0, HOLD_LINE, 0xff); - cpu_set_input_line(machine->cpu[OBJECT_CPU], NEC_INPUT_LINE_POLL, ASSERT_LINE); + cputag_set_input_line_and_vector(machine, "ground", 0, HOLD_LINE, 0xff); + cputag_set_input_line(machine, "object", NEC_INPUT_LINE_POLL, ASSERT_LINE); } /* Get data for a each 8x8x3 ground tile */ @@ -658,7 +658,7 @@ WRITE16_HANDLER( lockon_tza112_w ) READ16_HANDLER( lockon_obj_4000_r ) { - cpu_set_input_line(space->machine->cpu[OBJECT_CPU], NEC_INPUT_LINE_POLL, CLEAR_LINE); + cputag_set_input_line(space->machine, "object", NEC_INPUT_LINE_POLL, CLEAR_LINE); return 0xffff; } diff --git a/src/mame/video/lwings.c b/src/mame/video/lwings.c index b7328532c84..7d853f17fc4 100644 --- a/src/mame/video/lwings.c +++ b/src/mame/video/lwings.c @@ -289,7 +289,7 @@ VIDEO_UPDATE( trojan ) VIDEO_EOF( lwings ) { - const address_space *space = cpu_get_address_space(machine->cpu[0], ADDRESS_SPACE_PROGRAM); + const address_space *space = cputag_get_address_space(machine, "maincpu", ADDRESS_SPACE_PROGRAM); - buffer_spriteram_w(space,0,0); + buffer_spriteram_w(space, 0, 0); }