Removed DEVCB_DEVICE_HANDLER. (nw)

This commit is contained in:
Curt Coder 2014-03-16 11:19:57 +00:00
parent 6c58140e0f
commit 88e5155cc0
5 changed files with 23 additions and 24 deletions

View File

@ -170,7 +170,6 @@ void devcb_stub64(device_t *device, address_space &space, offs_t offset, UINT64
// legacy calls, to be removed // legacy calls, to be removed
#define DEVCB_LINE(func) { DEVCB_TYPE_DEVICE, 0, "", #func, func, NULL, NULL } #define DEVCB_LINE(func) { DEVCB_TYPE_DEVICE, 0, "", #func, func, NULL, NULL }
#define DEVCB_DEVICE_LINE(tag,func) { DEVCB_TYPE_DEVICE, 0, tag, #func, func, NULL, NULL } #define DEVCB_DEVICE_LINE(tag,func) { DEVCB_TYPE_DEVICE, 0, tag, #func, func, NULL, NULL }
#define DEVCB_DEVICE_HANDLER(tag,func) { DEVCB_TYPE_DEVICE, 0, tag, #func, NULL, func, NULL }
// line or read/write handlers for the driver device // line or read/write handlers for the driver device
#define DEVCB_DRIVER_LINE_MEMBER(cls,memb) { DEVCB_TYPE_DEVICE, 0, ":", #cls "::" #memb, &devcb_line_stub<cls, &cls::memb>, NULL, NULL } #define DEVCB_DRIVER_LINE_MEMBER(cls,memb) { DEVCB_TYPE_DEVICE, 0, ":", #cls "::" #memb, &devcb_line_stub<cls, &cls::memb>, NULL, NULL }

View File

@ -497,6 +497,9 @@ public:
TIMER_CALLBACK_MEMBER(finish_serial_write); TIMER_CALLBACK_MEMBER(finish_serial_write);
DECLARE_WRITE_LINE_MEMBER(amiga_cia_0_irq); DECLARE_WRITE_LINE_MEMBER(amiga_cia_0_irq);
DECLARE_WRITE_LINE_MEMBER(amiga_cia_1_irq); DECLARE_WRITE_LINE_MEMBER(amiga_cia_1_irq);
DECLARE_READ8_MEMBER( amiga_cia_0_portA_r );
DECLARE_READ8_MEMBER( amiga_cia_0_cdtv_portA_r );
DECLARE_WRITE8_MEMBER( amiga_cia_0_portA_w );
DECLARE_READ16_MEMBER( amiga_clock_r ); DECLARE_READ16_MEMBER( amiga_clock_r );
DECLARE_WRITE16_MEMBER( amiga_clock_w ); DECLARE_WRITE16_MEMBER( amiga_clock_w );
@ -521,6 +524,9 @@ public:
DECLARE_WRITE16_MEMBER( amiga_ar23_mode_w ); DECLARE_WRITE16_MEMBER( amiga_ar23_mode_w );
void amiga_ar23_init( running_machine &machine, int ar3 ); void amiga_ar23_init( running_machine &machine, int ar3 );
DECLARE_READ8_MEMBER( amigacd_tpi6525_portc_r );
DECLARE_WRITE8_MEMBER( amigacd_tpi6525_portb_w );
int m_centronics_busy; int m_centronics_busy;
int m_centronics_perror; int m_centronics_perror;
int m_centronics_select; int m_centronics_select;

View File

@ -97,9 +97,6 @@ public:
static DECLARE_READ8_DEVICE_HANDLER( amiga_cia_0_portA_r );
static DECLARE_READ8_DEVICE_HANDLER( amiga_cia_0_cdtv_portA_r );
static DECLARE_WRITE8_DEVICE_HANDLER( amiga_cia_0_portA_w );
/*************************************************************************** /***************************************************************************
Battery Backed-Up Clock (MSM6264) Battery Backed-Up Clock (MSM6264)
@ -513,8 +510,8 @@ static const legacy_mos6526_interface cia_0_ntsc_intf =
DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */ DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_portA_r), DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_portA_r),
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_portA_w), /* port A */ DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_portA_w), /* port A */
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */ DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */
}; };
@ -525,8 +522,8 @@ static const legacy_mos6526_interface cia_0_pal_intf =
DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */ DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_portA_r), DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_portA_r),
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_portA_w), /* port A */ DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_portA_w), /* port A */
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */ DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */
}; };
@ -549,8 +546,8 @@ static const legacy_mos6526_interface cia_0_cdtv_intf =
DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */ DEVCB_DEVICE_LINE_MEMBER("centronics", centronics_device, write_strobe), /* pc_func */
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_cdtv_portA_r), DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_cdtv_portA_r),
DEVCB_DEVICE_HANDLER("cia_0", amiga_cia_0_portA_w), /* port A */ DEVCB_DRIVER_MEMBER(amiga_state, amiga_cia_0_portA_w), /* port A */
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */ DEVCB_DEVICE_MEMBER("cent_data_out", output_latch_device, write) /* port B */
}; };
@ -573,8 +570,8 @@ static const tpi6525_interface cdtv_tpi_intf =
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_DEVICE_HANDLER("tpi6525", amigacd_tpi6525_portb_w), DEVCB_DRIVER_MEMBER(amiga_state, amigacd_tpi6525_portb_w),
DEVCB_DEVICE_HANDLER("tpi6525", amigacd_tpi6525_portc_r), DEVCB_DRIVER_MEMBER(amiga_state, amigacd_tpi6525_portc_r),
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL, DEVCB_NULL,
DEVCB_NULL DEVCB_NULL
@ -1035,7 +1032,7 @@ MACHINE_CONFIG_END
***************************************************************************/ ***************************************************************************/
static READ8_DEVICE_HANDLER( amiga_cia_0_portA_r ) READ8_MEMBER( amiga_state::amiga_cia_0_portA_r )
{ {
UINT8 ret = space.machine().root_device().ioport("CIA0PORTA")->read() & 0xc0; /* Gameport 1 and 0 buttons */ UINT8 ret = space.machine().root_device().ioport("CIA0PORTA")->read() & 0xc0; /* Gameport 1 and 0 buttons */
ret |= space.machine().device<amiga_fdc>("fdc")->ciaapra_r(); ret |= space.machine().device<amiga_fdc>("fdc")->ciaapra_r();
@ -1043,28 +1040,27 @@ static READ8_DEVICE_HANDLER( amiga_cia_0_portA_r )
} }
static READ8_DEVICE_HANDLER( amiga_cia_0_cdtv_portA_r ) READ8_MEMBER( amiga_state::amiga_cia_0_cdtv_portA_r )
{ {
return space.machine().root_device().ioport("CIA0PORTA")->read() & 0xc0; /* Gameport 1 and 0 buttons */ return space.machine().root_device().ioport("CIA0PORTA")->read() & 0xc0; /* Gameport 1 and 0 buttons */
} }
static WRITE8_DEVICE_HANDLER( amiga_cia_0_portA_w ) WRITE8_MEMBER( amiga_state::amiga_cia_0_portA_w )
{ {
amiga_state *state = space.machine().driver_data<amiga_state>();
/* switch banks as appropriate */ /* switch banks as appropriate */
state->m_bank1->set_entry(data & 1); m_bank1->set_entry(data & 1);
/* swap the write handlers between ROM and bank 1 based on the bit */ /* swap the write handlers between ROM and bank 1 based on the bit */
if ((data & 1) == 0) { if ((data & 1) == 0) {
UINT32 mirror_mask = state->m_chip_ram.bytes(); UINT32 mirror_mask = m_chip_ram.bytes();
while( (mirror_mask<<1) < 0x100000 ) { while( (mirror_mask<<1) < 0x100000 ) {
mirror_mask |= ( mirror_mask << 1 ); mirror_mask |= ( mirror_mask << 1 );
} }
/* overlay disabled, map RAM on 0x000000 */ /* overlay disabled, map RAM on 0x000000 */
state->m_maincpu_program_space->install_write_bank(0x000000, state->m_chip_ram.bytes() - 1, 0, mirror_mask, "bank1"); m_maincpu_program_space->install_write_bank(0x000000, m_chip_ram.bytes() - 1, 0, mirror_mask, "bank1");
/* if there is a cart region, check for cart overlay */ /* if there is a cart region, check for cart overlay */
if (space.machine().root_device().memregion("user2")->base() != NULL) if (space.machine().root_device().memregion("user2")->base() != NULL)
@ -1072,7 +1068,7 @@ static WRITE8_DEVICE_HANDLER( amiga_cia_0_portA_w )
} }
else else
/* overlay enabled, map Amiga system ROM on 0x000000 */ /* overlay enabled, map Amiga system ROM on 0x000000 */
state->m_maincpu_program_space->unmap_write(0x000000, state->m_chip_ram.bytes() - 1); m_maincpu_program_space->unmap_write(0x000000, m_chip_ram.bytes() - 1);
set_led_status( space.machine(), 0, ( data & 2 ) ? 0 : 1 ); /* bit 2 = Power Led on Amiga */ set_led_status( space.machine(), 0, ( data & 2 ) ? 0 : 1 ); /* bit 2 = Power Led on Amiga */
output_set_value("power_led", ( data & 2 ) ? 0 : 1); output_set_value("power_led", ( data & 2 ) ? 0 : 1);

View File

@ -428,7 +428,7 @@ static const amiga_autoconfig_device dmac_device =
***************************************************************************/ ***************************************************************************/
READ8_DEVICE_HANDLER( amigacd_tpi6525_portc_r ) READ8_MEMBER( amiga_state::amigacd_tpi6525_portc_r )
{ {
int ret = 0; int ret = 0;
@ -445,7 +445,7 @@ READ8_DEVICE_HANDLER( amigacd_tpi6525_portc_r )
return ret; return ret;
} }
WRITE8_DEVICE_HANDLER( amigacd_tpi6525_portb_w ) WRITE8_MEMBER( amiga_state::amigacd_tpi6525_portb_w )
{ {
tpi6525_device *tpi = space.machine().device<tpi6525_device>("tpi6525"); tpi6525_device *tpi = space.machine().device<tpi6525_device>("tpi6525");

View File

@ -6,8 +6,6 @@ MACHINE_START( amigacd );
MACHINE_RESET( amigacd ); MACHINE_RESET( amigacd );
/* 6525tpi */ /* 6525tpi */
DECLARE_READ8_DEVICE_HANDLER( amigacd_tpi6525_portc_r );
DECLARE_WRITE8_DEVICE_HANDLER( amigacd_tpi6525_portb_w );
WRITE_LINE_DEVICE_HANDLER( amigacd_tpi6525_irq ); WRITE_LINE_DEVICE_HANDLER( amigacd_tpi6525_irq );