diff options
Diffstat (limited to 'src/mame/drivers/nbmj9195.c')
-rw-r--r-- | src/mame/drivers/nbmj9195.c | 473 |
1 files changed, 226 insertions, 247 deletions
diff --git a/src/mame/drivers/nbmj9195.c b/src/mame/drivers/nbmj9195.c index 6fb1abfcd20..5b84a6dbdb0 100644 --- a/src/mame/drivers/nbmj9195.c +++ b/src/mame/drivers/nbmj9195.c @@ -38,24 +38,24 @@ Notes: #endif -static WRITE8_HANDLER( nbmj9195_soundbank_w ) +WRITE8_MEMBER(nbmj9195_state::nbmj9195_soundbank_w) { - UINT8 *SNDROM = space->machine().region("audiocpu")->base(); + UINT8 *SNDROM = machine().region("audiocpu")->base(); - memory_set_bankptr(space->machine(), "bank1", &SNDROM[0x08000 + (0x8000 * (data & 0x03))]); + memory_set_bankptr(machine(), "bank1", &SNDROM[0x08000 + (0x8000 * (data & 0x03))]); } -static READ8_HANDLER( nbmj9195_sound_r ) +READ8_MEMBER(nbmj9195_state::nbmj9195_sound_r) { return soundlatch_r(space, 0); } -static WRITE8_HANDLER( nbmj9195_sound_w ) +WRITE8_MEMBER(nbmj9195_state::nbmj9195_sound_w) { soundlatch_w(space, 0, data); } -static WRITE8_HANDLER( nbmj9195_soundclr_w ) +WRITE8_MEMBER(nbmj9195_state::nbmj9195_soundclr_w) { soundlatch_clear_w(space, 0, 0); } @@ -72,10 +72,9 @@ static void nbmj9195_outcoin_flag_w(address_space *space, int data) else state->m_outcoin_flag = 1; } -static WRITE8_HANDLER( nbmj9195_inputportsel_w ) +WRITE8_MEMBER(nbmj9195_state::nbmj9195_inputportsel_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_inputport = (data ^ 0xff); + m_inputport = (data ^ 0xff); } static int nbmj9195_dipsw_r(running_machine &machine) @@ -110,91 +109,90 @@ static void mscoutm_inputportsel_w(address_space *space, int data) state->m_mscoutm_inputport = (data ^ 0xff); } -static READ8_HANDLER( mscoutm_dipsw_0_r ) +READ8_MEMBER(nbmj9195_state::mscoutm_dipsw_0_r) { // DIPSW A - return (((input_port_read(space->machine(), "DSWA") & 0x01) << 7) | ((input_port_read(space->machine(), "DSWA") & 0x02) << 5) | - ((input_port_read(space->machine(), "DSWA") & 0x04) << 3) | ((input_port_read(space->machine(), "DSWA") & 0x08) << 1) | - ((input_port_read(space->machine(), "DSWA") & 0x10) >> 1) | ((input_port_read(space->machine(), "DSWA") & 0x20) >> 3) | - ((input_port_read(space->machine(), "DSWA") & 0x40) >> 5) | ((input_port_read(space->machine(), "DSWA") & 0x80) >> 7)); + return (((input_port_read(machine(), "DSWA") & 0x01) << 7) | ((input_port_read(machine(), "DSWA") & 0x02) << 5) | + ((input_port_read(machine(), "DSWA") & 0x04) << 3) | ((input_port_read(machine(), "DSWA") & 0x08) << 1) | + ((input_port_read(machine(), "DSWA") & 0x10) >> 1) | ((input_port_read(machine(), "DSWA") & 0x20) >> 3) | + ((input_port_read(machine(), "DSWA") & 0x40) >> 5) | ((input_port_read(machine(), "DSWA") & 0x80) >> 7)); } -static READ8_HANDLER( mscoutm_dipsw_1_r ) +READ8_MEMBER(nbmj9195_state::mscoutm_dipsw_1_r) { // DIPSW B - return (((input_port_read(space->machine(), "DSWB") & 0x01) << 7) | ((input_port_read(space->machine(), "DSWB") & 0x02) << 5) | - ((input_port_read(space->machine(), "DSWB") & 0x04) << 3) | ((input_port_read(space->machine(), "DSWB") & 0x08) << 1) | - ((input_port_read(space->machine(), "DSWB") & 0x10) >> 1) | ((input_port_read(space->machine(), "DSWB") & 0x20) >> 3) | - ((input_port_read(space->machine(), "DSWB") & 0x40) >> 5) | ((input_port_read(space->machine(), "DSWB") & 0x80) >> 7)); + return (((input_port_read(machine(), "DSWB") & 0x01) << 7) | ((input_port_read(machine(), "DSWB") & 0x02) << 5) | + ((input_port_read(machine(), "DSWB") & 0x04) << 3) | ((input_port_read(machine(), "DSWB") & 0x08) << 1) | + ((input_port_read(machine(), "DSWB") & 0x10) >> 1) | ((input_port_read(machine(), "DSWB") & 0x20) >> 3) | + ((input_port_read(machine(), "DSWB") & 0x40) >> 5) | ((input_port_read(machine(), "DSWB") & 0x80) >> 7)); } /* TMPZ84C011 PIO emulation */ -static READ8_HANDLER( tmpz84c011_pio_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_pio_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); int portdata; - if ((!strcmp(space->machine().system().name, "mscoutm")) || - (!strcmp(space->machine().system().name, "imekura")) || - (!strcmp(space->machine().system().name, "mjegolf"))) + if ((!strcmp(machine().system().name, "mscoutm")) || + (!strcmp(machine().system().name, "imekura")) || + (!strcmp(machine().system().name, "mjegolf"))) { switch (offset) { case 0: /* PA_0 */ // COIN IN, ETC... - portdata = input_port_read(space->machine(), "SYSTEM"); + portdata = input_port_read(machine(), "SYSTEM"); break; case 1: /* PB_0 */ // PLAYER1 KEY, DIPSW A/B - switch (state->m_mscoutm_inputport) + switch (m_mscoutm_inputport) { case 0x01: - portdata = input_port_read(space->machine(), "KEY0"); + portdata = input_port_read(machine(), "KEY0"); break; case 0x02: - portdata = input_port_read(space->machine(), "KEY1"); + portdata = input_port_read(machine(), "KEY1"); break; case 0x04: - portdata = input_port_read(space->machine(), "KEY2"); + portdata = input_port_read(machine(), "KEY2"); break; case 0x08: - portdata = input_port_read(space->machine(), "KEY3"); + portdata = input_port_read(machine(), "KEY3"); break; case 0x10: - portdata = input_port_read(space->machine(), "KEY4"); + portdata = input_port_read(machine(), "KEY4"); break; default: - portdata = (input_port_read(space->machine(), "KEY0") & input_port_read(space->machine(), "KEY1") & input_port_read(space->machine(), "KEY2") - & input_port_read(space->machine(), "KEY3") & input_port_read(space->machine(), "KEY4")); + portdata = (input_port_read(machine(), "KEY0") & input_port_read(machine(), "KEY1") & input_port_read(machine(), "KEY2") + & input_port_read(machine(), "KEY3") & input_port_read(machine(), "KEY4")); break; } break; case 2: /* PC_0 */ // PLAYER2 KEY - switch (state->m_mscoutm_inputport) + switch (m_mscoutm_inputport) { case 0x01: - portdata = input_port_read(space->machine(), "KEY5"); + portdata = input_port_read(machine(), "KEY5"); break; case 0x02: - portdata = input_port_read(space->machine(), "KEY6"); + portdata = input_port_read(machine(), "KEY6"); break; case 0x04: - portdata = input_port_read(space->machine(), "KEY7"); + portdata = input_port_read(machine(), "KEY7"); break; case 0x08: - portdata = input_port_read(space->machine(), "KEY8"); + portdata = input_port_read(machine(), "KEY8"); break; case 0x10: - portdata = input_port_read(space->machine(), "KEY9"); + portdata = input_port_read(machine(), "KEY9"); break; default: - portdata = (input_port_read(space->machine(), "KEY5") & input_port_read(space->machine(), "KEY6") & input_port_read(space->machine(), "KEY7") - & input_port_read(space->machine(), "KEY8") & input_port_read(space->machine(), "KEY9")); + portdata = (input_port_read(machine(), "KEY5") & input_port_read(machine(), "KEY6") & input_port_read(machine(), "KEY7") + & input_port_read(machine(), "KEY8") & input_port_read(machine(), "KEY9")); break; } break; @@ -222,7 +220,7 @@ static READ8_HANDLER( tmpz84c011_pio_r ) break; default: - logerror("%s: TMPZ84C011_PIO Unknown Port Read %02X\n", space->machine().describe_context(), offset); + logerror("%s: TMPZ84C011_PIO Unknown Port Read %02X\n", machine().describe_context(), offset); portdata = 0xff; break; } @@ -233,53 +231,53 @@ static READ8_HANDLER( tmpz84c011_pio_r ) { case 0: /* PA_0 */ // COIN IN, ETC... - portdata = ((input_port_read(space->machine(), "SYSTEM") & 0xfe) | state->m_outcoin_flag); + portdata = ((input_port_read(machine(), "SYSTEM") & 0xfe) | m_outcoin_flag); break; case 1: /* PB_0 */ // PLAYER1 KEY, DIPSW A/B - switch (state->m_inputport) + switch (m_inputport) { case 0x01: - portdata = input_port_read(space->machine(), "KEY0"); + portdata = input_port_read(machine(), "KEY0"); break; case 0x02: - portdata = input_port_read(space->machine(), "KEY1"); + portdata = input_port_read(machine(), "KEY1"); break; case 0x04: - portdata = input_port_read(space->machine(), "KEY2"); + portdata = input_port_read(machine(), "KEY2"); break; case 0x08: - portdata = input_port_read(space->machine(), "KEY3"); + portdata = input_port_read(machine(), "KEY3"); break; case 0x10: - portdata = ((input_port_read(space->machine(), "KEY4") & 0x7f) | (nbmj9195_dipsw_r(space->machine()) << 7)); + portdata = ((input_port_read(machine(), "KEY4") & 0x7f) | (nbmj9195_dipsw_r(machine()) << 7)); break; default: - portdata = (input_port_read(space->machine(), "KEY0") & input_port_read(space->machine(), "KEY1") & input_port_read(space->machine(), "KEY2") & input_port_read(space->machine(), "KEY3") & (input_port_read(space->machine(), "KEY4") & 0x7f)); + portdata = (input_port_read(machine(), "KEY0") & input_port_read(machine(), "KEY1") & input_port_read(machine(), "KEY2") & input_port_read(machine(), "KEY3") & (input_port_read(machine(), "KEY4") & 0x7f)); break; } break; case 2: /* PC_0 */ // PLAYER2 KEY - switch (state->m_inputport) + switch (m_inputport) { case 0x01: - portdata = input_port_read(space->machine(), "KEY5"); + portdata = input_port_read(machine(), "KEY5"); break; case 0x02: - portdata = input_port_read(space->machine(), "KEY6"); + portdata = input_port_read(machine(), "KEY6"); break; case 0x04: - portdata = input_port_read(space->machine(), "KEY7"); + portdata = input_port_read(machine(), "KEY7"); break; case 0x08: - portdata = input_port_read(space->machine(), "KEY8"); + portdata = input_port_read(machine(), "KEY8"); break; case 0x10: - portdata = input_port_read(space->machine(), "KEY9") & 0x7f; + portdata = input_port_read(machine(), "KEY9") & 0x7f; break; default: - portdata = (input_port_read(space->machine(), "KEY5") & input_port_read(space->machine(), "KEY6") & input_port_read(space->machine(), "KEY7") & input_port_read(space->machine(), "KEY8") & (input_port_read(space->machine(), "KEY9") & 0x7f)); + portdata = (input_port_read(machine(), "KEY5") & input_port_read(machine(), "KEY6") & input_port_read(machine(), "KEY7") & input_port_read(machine(), "KEY8") & (input_port_read(machine(), "KEY9") & 0x7f)); break; } break; @@ -307,7 +305,7 @@ static READ8_HANDLER( tmpz84c011_pio_r ) break; default: - logerror("%s: TMPZ84C011_PIO Unknown Port Read %02X\n", space->machine().describe_context(), offset); + logerror("%s: TMPZ84C011_PIO Unknown Port Read %02X\n", machine().describe_context(), offset); portdata = 0xff; break; } @@ -316,37 +314,37 @@ static READ8_HANDLER( tmpz84c011_pio_r ) return portdata; } -static WRITE8_HANDLER( tmpz84c011_pio_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_pio_w) { - if ((!strcmp(space->machine().system().name, "imekura")) || - (!strcmp(space->machine().system().name, "mscoutm")) || - (!strcmp(space->machine().system().name, "mjegolf"))) + if ((!strcmp(machine().system().name, "imekura")) || + (!strcmp(machine().system().name, "mscoutm")) || + (!strcmp(machine().system().name, "mjegolf"))) { switch (offset) { case 0: /* PA_0 */ - mscoutm_inputportsel_w(space, data); // NB22090 + mscoutm_inputportsel_w(&space, data); // NB22090 break; case 1: /* PB_0 */ break; case 2: /* PC_0 */ break; case 3: /* PD_0 */ - nbmj9195_clutsel_w(space, data); + nbmj9195_clutsel_w(&space, data); break; case 4: /* PE_0 */ - nbmj9195_gfxflag2_w(space, data); // NB22090 + nbmj9195_gfxflag2_w(&space, data); // NB22090 break; case 5: /* PA_1 */ nbmj9195_soundbank_w(space, 0, data); break; case 6: /* PB_1 */ - DAC_WRITE(space->machine().device("dac2"), 0, data); + DAC_WRITE(machine().device("dac2"), 0, data); break; case 7: /* PC_1 */ - DAC_WRITE(space->machine().device("dac1"), 0, data); + DAC_WRITE(machine().device("dac1"), 0, data); break; case 8: /* PD_1 */ break; @@ -355,7 +353,7 @@ static WRITE8_HANDLER( tmpz84c011_pio_w ) break; default: - logerror("%s: TMPZ84C011_PIO Unknown Port Write %02X, %02X\n", space->machine().describe_context(), offset, data); + logerror("%s: TMPZ84C011_PIO Unknown Port Write %02X, %02X\n", machine().describe_context(), offset, data); break; } } @@ -368,23 +366,23 @@ static WRITE8_HANDLER( tmpz84c011_pio_w ) case 1: /* PB_0 */ break; case 2: /* PC_0 */ - nbmj9195_dipswbitsel_w(space, data); + nbmj9195_dipswbitsel_w(&space, data); break; case 3: /* PD_0 */ - nbmj9195_clutsel_w(space, data); + nbmj9195_clutsel_w(&space, data); break; case 4: /* PE_0 */ - nbmj9195_outcoin_flag_w(space, data); + nbmj9195_outcoin_flag_w(&space, data); break; case 5: /* PA_1 */ nbmj9195_soundbank_w(space, 0, data); break; case 6: /* PB_1 */ - DAC_WRITE(space->machine().device("dac2"), 0, data); + DAC_WRITE(machine().device("dac2"), 0, data); break; case 7: /* PC_1 */ - DAC_WRITE(space->machine().device("dac1"), 0, data); + DAC_WRITE(machine().device("dac1"), 0, data); break; case 8: /* PD_1 */ break; @@ -393,7 +391,7 @@ static WRITE8_HANDLER( tmpz84c011_pio_w ) break; default: - logerror("%s: TMPZ84C011_PIO Unknown Port Write %02X, %02X\n", space->machine().describe_context(), offset, data); + logerror("%s: TMPZ84C011_PIO Unknown Port Write %02X, %02X\n", machine().describe_context(), offset, data); break; } } @@ -403,241 +401,221 @@ static WRITE8_HANDLER( tmpz84c011_pio_w ) /* CPU interface */ /* device 0 */ -static READ8_HANDLER( tmpz84c011_0_pa_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_pa_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,0) & ~state->m_pio_dir[0]) | (state->m_pio_latch[0] & state->m_pio_dir[0]); + return (tmpz84c011_pio_r(space,0) & ~m_pio_dir[0]) | (m_pio_latch[0] & m_pio_dir[0]); } -static READ8_HANDLER( tmpz84c011_0_pb_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_pb_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,1) & ~state->m_pio_dir[1]) | (state->m_pio_latch[1] & state->m_pio_dir[1]); + return (tmpz84c011_pio_r(space,1) & ~m_pio_dir[1]) | (m_pio_latch[1] & m_pio_dir[1]); } -static READ8_HANDLER( tmpz84c011_0_pc_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_pc_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,2) & ~state->m_pio_dir[2]) | (state->m_pio_latch[2] & state->m_pio_dir[2]); + return (tmpz84c011_pio_r(space,2) & ~m_pio_dir[2]) | (m_pio_latch[2] & m_pio_dir[2]); } -static READ8_HANDLER( tmpz84c011_0_pd_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_pd_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,3) & ~state->m_pio_dir[3]) | (state->m_pio_latch[3] & state->m_pio_dir[3]); + return (tmpz84c011_pio_r(space,3) & ~m_pio_dir[3]) | (m_pio_latch[3] & m_pio_dir[3]); } -static READ8_HANDLER( tmpz84c011_0_pe_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_pe_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,4) & ~state->m_pio_dir[4]) | (state->m_pio_latch[4] & state->m_pio_dir[4]); + return (tmpz84c011_pio_r(space,4) & ~m_pio_dir[4]) | (m_pio_latch[4] & m_pio_dir[4]); } -static WRITE8_HANDLER( tmpz84c011_0_pa_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_pa_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[0] = data; + m_pio_latch[0] = data; tmpz84c011_pio_w(space, 0, data); } -static WRITE8_HANDLER( tmpz84c011_0_pb_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_pb_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[1] = data; + m_pio_latch[1] = data; tmpz84c011_pio_w(space, 1, data); } -static WRITE8_HANDLER( tmpz84c011_0_pc_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_pc_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[2] = data; + m_pio_latch[2] = data; tmpz84c011_pio_w(space, 2, data); } -static WRITE8_HANDLER( tmpz84c011_0_pd_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_pd_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[3] = data; + m_pio_latch[3] = data; tmpz84c011_pio_w(space, 3, data); } -static WRITE8_HANDLER( tmpz84c011_0_pe_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_pe_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[4] = data; + m_pio_latch[4] = data; tmpz84c011_pio_w(space, 4, data); } -static READ8_HANDLER( tmpz84c011_0_dir_pa_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pa_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[0]; + return m_pio_dir[0]; } -static READ8_HANDLER( tmpz84c011_0_dir_pb_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pb_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[1]; + return m_pio_dir[1]; } -static READ8_HANDLER( tmpz84c011_0_dir_pc_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pc_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[2]; + return m_pio_dir[2]; } -static READ8_HANDLER( tmpz84c011_0_dir_pd_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pd_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[3]; + return m_pio_dir[3]; } -static READ8_HANDLER( tmpz84c011_0_dir_pe_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pe_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[4]; + return m_pio_dir[4]; } -static WRITE8_HANDLER( tmpz84c011_0_dir_pa_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pa_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[0] = data; + m_pio_dir[0] = data; } -static WRITE8_HANDLER( tmpz84c011_0_dir_pb_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pb_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[1] = data; + m_pio_dir[1] = data; } -static WRITE8_HANDLER( tmpz84c011_0_dir_pc_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pc_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[2] = data; + m_pio_dir[2] = data; } -static WRITE8_HANDLER( tmpz84c011_0_dir_pd_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pd_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[3] = data; + m_pio_dir[3] = data; } -static WRITE8_HANDLER( tmpz84c011_0_dir_pe_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_0_dir_pe_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[4] = data; + m_pio_dir[4] = data; } /* device 1 */ -static READ8_HANDLER( tmpz84c011_1_pa_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_pa_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,5) & ~state->m_pio_dir[5]) | (state->m_pio_latch[5] & state->m_pio_dir[5]); + return (tmpz84c011_pio_r(space,5) & ~m_pio_dir[5]) | (m_pio_latch[5] & m_pio_dir[5]); } -static READ8_HANDLER( tmpz84c011_1_pb_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_pb_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,6) & ~state->m_pio_dir[6]) | (state->m_pio_latch[6] & state->m_pio_dir[6]); + return (tmpz84c011_pio_r(space,6) & ~m_pio_dir[6]) | (m_pio_latch[6] & m_pio_dir[6]); } -static READ8_HANDLER( tmpz84c011_1_pc_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_pc_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,7) & ~state->m_pio_dir[7]) | (state->m_pio_latch[7] & state->m_pio_dir[7]); + return (tmpz84c011_pio_r(space,7) & ~m_pio_dir[7]) | (m_pio_latch[7] & m_pio_dir[7]); } -static READ8_HANDLER( tmpz84c011_1_pd_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_pd_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,8) & ~state->m_pio_dir[8]) | (state->m_pio_latch[8] & state->m_pio_dir[8]); + return (tmpz84c011_pio_r(space,8) & ~m_pio_dir[8]) | (m_pio_latch[8] & m_pio_dir[8]); } -static READ8_HANDLER( tmpz84c011_1_pe_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_pe_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return (tmpz84c011_pio_r(space,9) & ~state->m_pio_dir[9]) | (state->m_pio_latch[9] & state->m_pio_dir[9]); + return (tmpz84c011_pio_r(space,9) & ~m_pio_dir[9]) | (m_pio_latch[9] & m_pio_dir[9]); } -static WRITE8_HANDLER( tmpz84c011_1_pa_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_pa_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[5] = data; + m_pio_latch[5] = data; tmpz84c011_pio_w(space, 5, data); } -static WRITE8_HANDLER( tmpz84c011_1_pb_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_pb_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[6] = data; + m_pio_latch[6] = data; tmpz84c011_pio_w(space, 6, data); } -static WRITE8_HANDLER( tmpz84c011_1_pc_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_pc_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[7] = data; + m_pio_latch[7] = data; tmpz84c011_pio_w(space, 7, data); } -static WRITE8_HANDLER( tmpz84c011_1_pd_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_pd_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[8] = data; + m_pio_latch[8] = data; tmpz84c011_pio_w(space, 8, data); } -static WRITE8_HANDLER( tmpz84c011_1_pe_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_pe_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_latch[9] = data; + m_pio_latch[9] = data; tmpz84c011_pio_w(space, 9, data); } -static READ8_HANDLER( tmpz84c011_1_dir_pa_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pa_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[5]; + return m_pio_dir[5]; } -static READ8_HANDLER( tmpz84c011_1_dir_pb_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pb_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[6]; + return m_pio_dir[6]; } -static READ8_HANDLER( tmpz84c011_1_dir_pc_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pc_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[7]; + return m_pio_dir[7]; } -static READ8_HANDLER( tmpz84c011_1_dir_pd_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pd_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[8]; + return m_pio_dir[8]; } -static READ8_HANDLER( tmpz84c011_1_dir_pe_r ) +READ8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pe_r) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); return state->m_pio_dir[9]; + return m_pio_dir[9]; } -static WRITE8_HANDLER( tmpz84c011_1_dir_pa_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pa_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[5] = data; + m_pio_dir[5] = data; } -static WRITE8_HANDLER( tmpz84c011_1_dir_pb_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pb_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[6] = data; + m_pio_dir[6] = data; } -static WRITE8_HANDLER( tmpz84c011_1_dir_pc_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pc_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[7] = data; + m_pio_dir[7] = data; } -static WRITE8_HANDLER( tmpz84c011_1_dir_pd_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pd_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[8] = data; + m_pio_dir[8] = data; } -static WRITE8_HANDLER( tmpz84c011_1_dir_pe_w ) +WRITE8_MEMBER(nbmj9195_state::tmpz84c011_1_dir_pe_w) { - nbmj9195_state *state = space->machine().driver_data<nbmj9195_state>(); - state->m_pio_dir[9] = data; + m_pio_dir[9] = data; } /* CTC of main cpu, ch0 trigger is vblank */ @@ -676,12 +654,13 @@ static MACHINE_RESET( sailorws ) for (i = 0; i < (5 * 2); i++) { state->m_pio_dir[i] = state->m_pio_latch[i] = 0; - tmpz84c011_pio_w(space, i, 0); + state->tmpz84c011_pio_w(*space, i, 0); } } static DRIVER_INIT( nbmj9195 ) { + nbmj9195_state *state = machine.driver_data<nbmj9195_state>(); address_space *space = machine.device("maincpu")->memory().space(AS_PROGRAM); UINT8 *ROM = machine.region("audiocpu")->base(); @@ -689,21 +668,21 @@ static DRIVER_INIT( nbmj9195 ) ROM[0x0213] = 0x00; // DI -> NOP // initialize sound rom bank - nbmj9195_soundbank_w(space, 0, 0); + state->nbmj9195_soundbank_w(*space, 0, 0); } static ADDRESS_MAP_START( tmpz84c011_regs, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_LEGACY("main_ctc", z80ctc_r,z80ctc_w) - AM_RANGE(0x50, 0x50) AM_READWRITE_LEGACY(tmpz84c011_0_pa_r,tmpz84c011_0_pa_w) - AM_RANGE(0x51, 0x51) AM_READWRITE_LEGACY(tmpz84c011_0_pb_r,tmpz84c011_0_pb_w) - AM_RANGE(0x52, 0x52) AM_READWRITE_LEGACY(tmpz84c011_0_pc_r,tmpz84c011_0_pc_w) - AM_RANGE(0x30, 0x30) AM_READWRITE_LEGACY(tmpz84c011_0_pd_r,tmpz84c011_0_pd_w) - AM_RANGE(0x40, 0x40) AM_READWRITE_LEGACY(tmpz84c011_0_pe_r,tmpz84c011_0_pe_w) - AM_RANGE(0x54, 0x54) AM_READWRITE_LEGACY(tmpz84c011_0_dir_pa_r,tmpz84c011_0_dir_pa_w) - AM_RANGE(0x55, 0x55) AM_READWRITE_LEGACY(tmpz84c011_0_dir_pb_r,tmpz84c011_0_dir_pb_w) - AM_RANGE(0x56, 0x56) AM_READWRITE_LEGACY(tmpz84c011_0_dir_pc_r,tmpz84c011_0_dir_pc_w) - AM_RANGE(0x34, 0x34) AM_READWRITE_LEGACY(tmpz84c011_0_dir_pd_r,tmpz84c011_0_dir_pd_w) - AM_RANGE(0x44, 0x44) AM_READWRITE_LEGACY(tmpz84c011_0_dir_pe_r,tmpz84c011_0_dir_pe_w) + AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_0_pa_r,tmpz84c011_0_pa_w) + AM_RANGE(0x51, 0x51) AM_READWRITE(tmpz84c011_0_pb_r,tmpz84c011_0_pb_w) + AM_RANGE(0x52, 0x52) AM_READWRITE(tmpz84c011_0_pc_r,tmpz84c011_0_pc_w) + AM_RANGE(0x30, 0x30) AM_READWRITE(tmpz84c011_0_pd_r,tmpz84c011_0_pd_w) + AM_RANGE(0x40, 0x40) AM_READWRITE(tmpz84c011_0_pe_r,tmpz84c011_0_pe_w) + AM_RANGE(0x54, 0x54) AM_READWRITE(tmpz84c011_0_dir_pa_r,tmpz84c011_0_dir_pa_w) + AM_RANGE(0x55, 0x55) AM_READWRITE(tmpz84c011_0_dir_pb_r,tmpz84c011_0_dir_pb_w) + AM_RANGE(0x56, 0x56) AM_READWRITE(tmpz84c011_0_dir_pc_r,tmpz84c011_0_dir_pc_w) + AM_RANGE(0x34, 0x34) AM_READWRITE(tmpz84c011_0_dir_pd_r,tmpz84c011_0_dir_pd_w) + AM_RANGE(0x44, 0x44) AM_READWRITE(tmpz84c011_0_dir_pe_r,tmpz84c011_0_dir_pe_w) ADDRESS_MAP_END static ADDRESS_MAP_START( sailorws_map, AS_PROGRAM, 8, nbmj9195_state ) @@ -754,10 +733,10 @@ static ADDRESS_MAP_START( mjuraden_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xb2, 0xb2) AM_WRITENOP AM_RANGE(0xb4, 0xb4) AM_WRITENOP - AM_RANGE(0xb6, 0xb6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb6, 0xb6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END @@ -773,10 +752,10 @@ static ADDRESS_MAP_START( koinomp_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xa0, 0xaf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xb0, 0xbf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xc0, 0xc0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xc0, 0xc0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xc2, 0xc2) AM_WRITENOP AM_RANGE(0xc4, 0xc4) AM_WRITENOP - AM_RANGE(0xc6, 0xc6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xc6, 0xc6) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xcf, 0xcf) AM_WRITENOP ADDRESS_MAP_END @@ -789,10 +768,10 @@ static ADDRESS_MAP_START( patimono_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb8) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb8) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xc0, 0xc1) AM_READ_LEGACY(nbmj9195_blitter_0_r) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) @@ -807,10 +786,10 @@ static ADDRESS_MAP_START( mmehyou_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8, nbmj9195_state ) @@ -825,20 +804,20 @@ static ADDRESS_MAP_START( gal10ren_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xa0, 0xaf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xb0, 0xbf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xc0, 0xc0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xc0, 0xc0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xc8, 0xc8) AM_WRITENOP AM_RANGE(0xd0, 0xd0) AM_WRITENOP - AM_RANGE(0xd8, 0xd8) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xd8, 0xd8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( renaiclb_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0x20, 0x20) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0x20, 0x20) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0x24, 0x24) AM_WRITENOP AM_RANGE(0x28, 0x28) AM_WRITENOP - AM_RANGE(0x2c, 0x2c) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0x2c, 0x2c) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0x60, 0x61) AM_READ_LEGACY(nbmj9195_blitter_0_r) AM_RANGE(0x60, 0x6f) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) @@ -853,10 +832,10 @@ static ADDRESS_MAP_START( mjlaman_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0x20, 0x20) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0x20, 0x20) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0x22, 0x22) AM_WRITENOP AM_RANGE(0x24, 0x24) AM_WRITENOP - AM_RANGE(0x26, 0x26) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0x26, 0x26) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0x80, 0x81) AM_READ_LEGACY(nbmj9195_blitter_0_r) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) @@ -880,10 +859,10 @@ static ADDRESS_MAP_START( mkeibaou_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xa0, 0xaf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xb0, 0xbf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xd8, 0xd8) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xd8, 0xd8) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xda, 0xda) AM_WRITENOP AM_RANGE(0xdc, 0xdc) AM_WRITENOP - AM_RANGE(0xde, 0xde) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xde, 0xde) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END @@ -899,10 +878,10 @@ static ADDRESS_MAP_START( pachiten_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xa0, 0xaf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xb0, 0xbf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xe0, 0xe0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xe2, 0xe2) AM_WRITENOP AM_RANGE(0xe4, 0xe4) AM_WRITENOP - AM_RANGE(0xe6, 0xe6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xe6, 0xe6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8, nbmj9195_state ) @@ -917,10 +896,10 @@ static ADDRESS_MAP_START( sailorws_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xf0, 0xf0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xf0, 0xf0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xf2, 0xf2) AM_WRITENOP AM_RANGE(0xf4, 0xf4) AM_WRITENOP - AM_RANGE(0xf6, 0xf6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8, nbmj9195_state ) @@ -935,10 +914,10 @@ static ADDRESS_MAP_START( sailorwr_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xf8, 0xf8) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xf8, 0xf8) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xfa, 0xfa) AM_WRITENOP AM_RANGE(0xfc, 0xfc) AM_WRITENOP - AM_RANGE(0xfe, 0xfe) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xfe, 0xfe) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END @@ -954,10 +933,10 @@ static ADDRESS_MAP_START( psailor1_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xd0, 0xdf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xf0, 0xf0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xf0, 0xf0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xf2, 0xf2) AM_WRITENOP AM_RANGE(0xf4, 0xf4) AM_WRITENOP - AM_RANGE(0xf6, 0xf6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8, nbmj9195_state ) @@ -972,10 +951,10 @@ static ADDRESS_MAP_START( psailor2_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xa0, 0xaf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xb0, 0xbf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xe0, 0xe0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xe2, 0xe2) AM_WRITENOP AM_RANGE(0xe4, 0xe4) AM_WRITENOP - AM_RANGE(0xf6, 0xf6) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xf6, 0xf6) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8, nbmj9195_state ) @@ -990,10 +969,10 @@ static ADDRESS_MAP_START( otatidai_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa8, 0xa8) AM_WRITENOP AM_RANGE(0xb0, 0xb0) AM_WRITENOP - AM_RANGE(0xb8, 0xb8) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb8, 0xb8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8, nbmj9195_state ) @@ -1004,10 +983,10 @@ static ADDRESS_MAP_START( yosimoto_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x60, 0x6f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) AM_RANGE(0x70, 0x7f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0x90, 0x90) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0x90, 0x90) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0x94, 0x94) AM_WRITENOP AM_RANGE(0x98, 0x98) AM_WRITENOP - AM_RANGE(0x9c, 0x9c) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0x9c, 0x9c) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xc0, 0xc1) AM_READ_LEGACY(nbmj9195_blitter_1_r) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) @@ -1026,20 +1005,20 @@ static ADDRESS_MAP_START( jituroku_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_1_w) AM_RANGE(0xd0, 0xdf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xe0, 0xe0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xe0, 0xe0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xe8, 0xe8) AM_WRITENOP AM_RANGE(0xf0, 0xf0) AM_WRITENOP - AM_RANGE(0xf8, 0xf8) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xf8, 0xf8) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( ngpgal_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xc0, 0xc1) AM_READ_LEGACY(nbmj9195_blitter_0_r) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) @@ -1054,19 +1033,19 @@ static ADDRESS_MAP_START( mjgottsu_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( cmehyou_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xb4, 0xb4) AM_WRITENOP AM_RANGE(0xc0, 0xc1) AM_READ_LEGACY(nbmj9195_blitter_0_r) @@ -1082,20 +1061,20 @@ static ADDRESS_MAP_START( mjkoiura_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0x80, 0x8f) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) AM_RANGE(0x90, 0x9f) AM_WRITE_LEGACY(nbmj9195_clut_0_w) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) ADDRESS_MAP_END static ADDRESS_MAP_START( mkoiuraa_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0xa0, 0xa0) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xa0, 0xa0) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa4, 0xa4) AM_WRITENOP AM_RANGE(0xa8, 0xa8) AM_WRITENOP - AM_RANGE(0xb0, 0xb0) AM_WRITE_LEGACY(nbmj9195_inputportsel_w) + AM_RANGE(0xb0, 0xb0) AM_WRITE(nbmj9195_inputportsel_w) AM_RANGE(0xc0, 0xc1) AM_READ_LEGACY(nbmj9195_blitter_0_r) AM_RANGE(0xc0, 0xcf) AM_WRITE_LEGACY(nbmj9195_blitter_0_w) @@ -1106,9 +1085,9 @@ static ADDRESS_MAP_START( mscoutm_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0x80, 0x80) AM_READ_LEGACY(mscoutm_dipsw_1_r) - AM_RANGE(0x82, 0x82) AM_READ_LEGACY(mscoutm_dipsw_0_r) - AM_RANGE(0x84, 0x84) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0x80, 0x80) AM_READ(mscoutm_dipsw_1_r) + AM_RANGE(0x82, 0x82) AM_READ(mscoutm_dipsw_0_r) + AM_RANGE(0x84, 0x84) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xa0, 0xa6) AM_WRITENOP // nb22090 param ? @@ -1126,9 +1105,9 @@ static ADDRESS_MAP_START( imekura_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_IMPORT_FROM( tmpz84c011_regs ) - AM_RANGE(0x80, 0x80) AM_READ_LEGACY(mscoutm_dipsw_1_r) - AM_RANGE(0x82, 0x82) AM_READ_LEGACY(mscoutm_dipsw_0_r) - AM_RANGE(0x84, 0x84) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0x80, 0x80) AM_READ(mscoutm_dipsw_1_r) + AM_RANGE(0x82, 0x82) AM_READ(mscoutm_dipsw_0_r) + AM_RANGE(0x84, 0x84) AM_WRITE(nbmj9195_sound_w) AM_RANGE(0xb0, 0xb6) AM_WRITENOP // nb22090 param ? @@ -1157,9 +1136,9 @@ static ADDRESS_MAP_START( mjegolf_io_map, AS_IO, 8, nbmj9195_state ) AM_RANGE(0xd0, 0xdf) AM_WRITE_LEGACY(nbmj9195_clut_1_w) - AM_RANGE(0xe0, 0xe0) AM_READ_LEGACY(mscoutm_dipsw_1_r) - AM_RANGE(0xe2, 0xe2) AM_READ_LEGACY(mscoutm_dipsw_0_r) - AM_RANGE(0xe4, 0xe4) AM_WRITE_LEGACY(nbmj9195_sound_w) + AM_RANGE(0xe0, 0xe0) AM_READ(mscoutm_dipsw_1_r) + AM_RANGE(0xe2, 0xe2) AM_READ(mscoutm_dipsw_0_r) + AM_RANGE(0xe4, 0xe4) AM_WRITE(nbmj9195_sound_w) ADDRESS_MAP_END @@ -1173,16 +1152,16 @@ ADDRESS_MAP_END static ADDRESS_MAP_START( sailorws_sound_io_map, AS_IO, 8, nbmj9195_state ) ADDRESS_MAP_GLOBAL_MASK(0xff) AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_LEGACY("audio_ctc", z80ctc_r,z80ctc_w) - AM_RANGE(0x50, 0x50) AM_READWRITE_LEGACY(tmpz84c011_1_pa_r,tmpz84c011_1_pa_w) - AM_RANGE(0x51, 0x51) AM_READWRITE_LEGACY(tmpz84c011_1_pb_r,tmpz84c011_1_pb_w) - AM_RANGE(0x52, 0x52) AM_READWRITE_LEGACY(tmpz84c011_1_pc_r,tmpz84c011_1_pc_w) - AM_RANGE(0x30, 0x30) AM_READWRITE_LEGACY(tmpz84c011_1_pd_r,tmpz84c011_1_pd_w) - AM_RANGE(0x40, 0x40) AM_READWRITE_LEGACY(tmpz84c011_1_pe_r,tmpz84c011_1_pe_w) - AM_RANGE(0x54, 0x54) AM_READWRITE_LEGACY(tmpz84c011_1_dir_pa_r,tmpz84c011_1_dir_pa_w) - AM_RANGE(0x55, 0x55) AM_READWRITE_LEGACY(tmpz84c011_1_dir_pb_r,tmpz84c011_1_dir_pb_w) - AM_RANGE(0x56, 0x56) AM_READWRITE_LEGACY(tmpz84c011_1_dir_pc_r,tmpz84c011_1_dir_pc_w) - AM_RANGE(0x34, 0x34) AM_READWRITE_LEGACY(tmpz84c011_1_dir_pd_r,tmpz84c011_1_dir_pd_w) - AM_RANGE(0x44, 0x44) AM_READWRITE_LEGACY(tmpz84c011_1_dir_pe_r,tmpz84c011_1_dir_pe_w) + AM_RANGE(0x50, 0x50) AM_READWRITE(tmpz84c011_1_pa_r,tmpz84c011_1_pa_w) + AM_RANGE(0x51, 0x51) AM_READWRITE(tmpz84c011_1_pb_r,tmpz84c011_1_pb_w) + AM_RANGE(0x52, 0x52) AM_READWRITE(tmpz84c011_1_pc_r,tmpz84c011_1_pc_w) + AM_RANGE(0x30, 0x30) AM_READWRITE(tmpz84c011_1_pd_r,tmpz84c011_1_pd_w) + AM_RANGE(0x40, 0x40) AM_READWRITE(tmpz84c011_1_pe_r,tmpz84c011_1_pe_w) + AM_RANGE(0x54, 0x54) AM_READWRITE(tmpz84c011_1_dir_pa_r,tmpz84c011_1_dir_pa_w) + AM_RANGE(0x55, 0x55) AM_READWRITE(tmpz84c011_1_dir_pb_r,tmpz84c011_1_dir_pb_w) + AM_RANGE(0x56, 0x56) AM_READWRITE(tmpz84c011_1_dir_pc_r,tmpz84c011_1_dir_pc_w) + AM_RANGE(0x34, 0x34) AM_READWRITE(tmpz84c011_1_dir_pd_r,tmpz84c011_1_dir_pd_w) + AM_RANGE(0x44, 0x44) AM_READWRITE(tmpz84c011_1_dir_pe_r,tmpz84c011_1_dir_pe_w) AM_RANGE(0x80, 0x81) AM_DEVWRITE_LEGACY("ymsnd", ym3812_w) ADDRESS_MAP_END |