diff options
author | Miodrag Milanovic <mmicko@gmail.com> | 2012-05-25 09:27:45 +0000 |
---|---|---|
committer | Miodrag Milanovic <mmicko@gmail.com> | 2012-05-25 09:27:45 +0000 |
commit | 8a4aecdb46911aa25a5d15651571e30e053fb6f0 (patch) | |
tree | c648a9daf9079e8aba58b6c401f60bde5673d2bf /src/mame/drivers/kingdrby.c | |
parent | 7a9aefbb60af73285c3da4db61dadd732486b456 (diff) |
Conversion of _DEVICE_HANDLER to _MEMBER methods - part 1 (no whatsnew)
Diffstat (limited to 'src/mame/drivers/kingdrby.c')
-rw-r--r-- | src/mame/drivers/kingdrby.c | 74 |
1 files changed, 38 insertions, 36 deletions
diff --git a/src/mame/drivers/kingdrby.c b/src/mame/drivers/kingdrby.c index c8abb773930..5f5fb5f03ed 100644 --- a/src/mame/drivers/kingdrby.c +++ b/src/mame/drivers/kingdrby.c @@ -97,6 +97,14 @@ public: DECLARE_WRITE8_MEMBER(sc0_attr_w); DECLARE_WRITE8_MEMBER(led_array_w); DECLARE_WRITE8_MEMBER(kingdrbb_lamps_w); + DECLARE_READ8_MEMBER(hopper_io_r); + DECLARE_WRITE8_MEMBER(hopper_io_w); + DECLARE_WRITE8_MEMBER(sound_cmd_w); + DECLARE_WRITE8_MEMBER(outport2_w); + DECLARE_READ8_MEMBER(input_mux_r); + DECLARE_READ8_MEMBER(key_matrix_r); + DECLARE_READ8_MEMBER(sound_cmd_r); + DECLARE_WRITE8_MEMBER(outportb_w); }; @@ -264,54 +272,49 @@ WRITE8_MEMBER(kingdrby_state::sc0_attr_w) /* hopper I/O */ -static READ8_DEVICE_HANDLER( hopper_io_r ) +READ8_MEMBER(kingdrby_state::hopper_io_r) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); - return (state->ioport("HPIO")->read() & 0x3f) | state->m_p1_hopper | state->m_p2_hopper; + return (ioport("HPIO")->read() & 0x3f) | m_p1_hopper | m_p2_hopper; } -static WRITE8_DEVICE_HANDLER( hopper_io_w ) +WRITE8_MEMBER(kingdrby_state::hopper_io_w) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); - state->m_p1_hopper = (data & 0x8)<<3; - state->m_p2_hopper = (data & 0x4)<<5; + m_p1_hopper = (data & 0x8)<<3; + m_p2_hopper = (data & 0x4)<<5; // printf("%02x\n",data); } -static WRITE8_DEVICE_HANDLER( sound_cmd_w ) +WRITE8_MEMBER(kingdrby_state::sound_cmd_w) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); - cputag_set_input_line(device->machine(), "soundcpu", INPUT_LINE_NMI, PULSE_LINE); - state->m_sound_cmd = data; + cputag_set_input_line(machine(), "soundcpu", INPUT_LINE_NMI, PULSE_LINE); + m_sound_cmd = data; /* soundlatch is unneeded since we are already using perfect interleave. */ // soundlatch_byte_w(space,0, data); } /* No idea about what's this (if it's really a mux etc.)*/ -static WRITE8_DEVICE_HANDLER( outport2_w ) +WRITE8_MEMBER(kingdrby_state::outport2_w) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); // popmessage("PPI1 port C(upper) out: %02X", data); - state->m_mux_data = data & 0x80; + m_mux_data = data & 0x80; } -static READ8_DEVICE_HANDLER( input_mux_r ) +READ8_MEMBER(kingdrby_state::input_mux_r) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); - if(state->m_mux_data & 0x80) - return state->ioport("MUX0")->read(); + if(m_mux_data & 0x80) + return ioport("MUX0")->read(); else - return state->ioport("MUX1")->read(); + return ioport("MUX1")->read(); } -static READ8_DEVICE_HANDLER( key_matrix_r ) +READ8_MEMBER(kingdrby_state::key_matrix_r) { UINT16 p1_val,p2_val; UINT8 p1_res,p2_res; - p1_val = device->machine().root_device().ioport("KEY_1P")->read(); - p2_val = device->machine().root_device().ioport("KEY_2P")->read(); + p1_val = machine().root_device().ioport("KEY_1P")->read(); + p2_val = machine().root_device().ioport("KEY_2P")->read(); p1_res = 0; p2_res = 0; @@ -357,10 +360,9 @@ static READ8_DEVICE_HANDLER( key_matrix_r ) return p1_res | (p2_res<<4); } -static READ8_DEVICE_HANDLER( sound_cmd_r ) +READ8_MEMBER(kingdrby_state::sound_cmd_r) { - kingdrby_state *state = device->machine().driver_data<kingdrby_state>(); - return state->m_sound_cmd; + return m_sound_cmd; } static const UINT8 led_map[16] = @@ -476,26 +478,26 @@ ADDRESS_MAP_END static I8255A_INTERFACE( ppi8255_0_intf ) { /* A & B as input, C (all) as output */ - DEVCB_HANDLER(hopper_io_r), /* Port A read */ + DEVCB_DRIVER_MEMBER(kingdrby_state,hopper_io_r), /* Port A read */ DEVCB_NULL, /* Port A write */ DEVCB_INPUT_PORT("IN1"), /* Port B read */ DEVCB_NULL, /* Port B write */ DEVCB_NULL, /* Port C read */ - DEVCB_HANDLER(hopper_io_w) /* Port C write */ + DEVCB_DRIVER_MEMBER(kingdrby_state,hopper_io_w) /* Port C write */ }; static I8255A_INTERFACE( ppi8255_1_intf ) { /* B & C (lower) as input, A & C (upper) as output */ DEVCB_NULL, /* Port A read */ - DEVCB_HANDLER(sound_cmd_w), /* Port A write */ - DEVCB_HANDLER(key_matrix_r), /* Port B read */ + DEVCB_DRIVER_MEMBER(kingdrby_state,sound_cmd_w), /* Port A write */ + DEVCB_DRIVER_MEMBER(kingdrby_state,key_matrix_r), /* Port B read */ DEVCB_NULL, /* Port B write */ - DEVCB_HANDLER(input_mux_r), /* Port C read */ - DEVCB_HANDLER(outport2_w) /* Port C write */ + DEVCB_DRIVER_MEMBER(kingdrby_state,input_mux_r), /* Port C read */ + DEVCB_DRIVER_MEMBER(kingdrby_state,outport2_w) /* Port C write */ }; -static WRITE8_DEVICE_HANDLER( outportb_w ) +WRITE8_MEMBER(kingdrby_state::outportb_w) { // printf("%02x B\n",data); } @@ -505,9 +507,9 @@ static I8255A_INTERFACE( ppi8255_1986_0_intf ) { /* C as input, (all) as output */ DEVCB_NULL, /* Port A read */ - DEVCB_HANDLER(sound_cmd_w), /* Port A write */ + DEVCB_DRIVER_MEMBER(kingdrby_state,sound_cmd_w), /* Port A write */ DEVCB_INPUT_PORT("IN0"), /* Port B read */ - DEVCB_HANDLER(outportb_w), /* Port B write */ + DEVCB_DRIVER_MEMBER(kingdrby_state,outportb_w), /* Port B write */ DEVCB_INPUT_PORT("IN1"), /* Port C read */ DEVCB_NULL /* Port C write */ }; @@ -932,7 +934,7 @@ static const ay8910_interface ay8910_config = { AY8910_LEGACY_OUTPUT, AY8910_DEFAULT_LOADS, - DEVCB_HANDLER(sound_cmd_r), + DEVCB_DRIVER_MEMBER(kingdrby_state,sound_cmd_r), DEVCB_NULL, /* discrete read? */ DEVCB_NULL, DEVCB_NULL /* discrete write? */ @@ -943,7 +945,7 @@ static const ym2203_interface cowrace_ym2203_interface = { AY8910_LEGACY_OUTPUT, AY8910_DEFAULT_LOADS, - DEVCB_HANDLER(sound_cmd_r), // read A + DEVCB_DRIVER_MEMBER(kingdrby_state,sound_cmd_r), // read A DEVCB_DEVICE_MEMBER("oki", okim6295_device, read), // read B DEVCB_NULL, // write A DEVCB_DEVICE_MEMBER("oki", okim6295_device, write) // write B |