Canonicalize more devcb2 (nw)

This commit is contained in:
R. Belmont 2014-01-04 22:29:17 +00:00
parent 8de269fca6
commit f19704cb3e
2 changed files with 44 additions and 39 deletions

View File

@ -9,17 +9,29 @@
// INTERFACE CONFIGURATION MACROS
//**************************************************************************
#define MCFG_M5074X_PORT0_CALLBACKS(_read, _write) \
downcast<m5074x_device *>(device)->set_p0_callbacks(DEVCB2_##_read, DEVCB2_##_write);
#define MCFG_M5074X_PORT0_READ_CALLBACK(_read) \
devcb = &m5074x_device::set_p0_rd_callback(*device, DEVCB2_##_read);
#define MCFG_M5074X_PORT1_CALLBACKS(_read, _write) \
downcast<m5074x_device *>(device)->set_p1_callbacks(DEVCB2_##_read, DEVCB2_##_write);
#define MCFG_M5074X_PORT1_READ_CALLBACK(_read) \
devcb = &m5074x_device::set_p1_rd_callback(*device, DEVCB2_##_read);
#define MCFG_M5074X_PORT2_CALLBACKS(_read, _write) \
downcast<m5074x_device *>(device)->set_p2_callbacks(DEVCB2_##_read, DEVCB2_##_write);
#define MCFG_M5074X_PORT2_READ_CALLBACK(_read) \
devcb = &m5074x_device::set_p2_rd_callback(*device, DEVCB2_##_read);
#define MCFG_M5074X_PORT3_CALLBACKS(_read, _write) \
downcast<m5074x_device *>(device)->set_p3_callbacks(DEVCB2_##_read, DEVCB2_##_write);
#define MCFG_M5074X_PORT3_READ_CALLBACK(_read) \
devcb = &m5074x_device::set_p3_rd_callback(*device, DEVCB2_##_read);
#define MCFG_M5074X_PORT0_WRITE_CALLBACK(_write) \
devcb = &m5074x_device::set_p0_wr_callback(*device, DEVCB2_##_write);
#define MCFG_M5074X_PORT1_WRITE_CALLBACK(_write) \
devcb = &m5074x_device::set_p1_wr_callback(*device, DEVCB2_##_write);
#define MCFG_M5074X_PORT2_WRITE_CALLBACK(_write) \
devcb = &m5074x_device::set_p2_wr_callback(*device, DEVCB2_##_write);
#define MCFG_M5074X_PORT3_WRITE_CALLBACK(_write) \
devcb = &m5074x_device::set_p3_wr_callback(*device, DEVCB2_##_write);
//**************************************************************************
// TYPE DEFINITIONS
@ -54,29 +66,14 @@ public:
const address_space_config m_program_config;
template<class _read, class _write> void set_p0_callbacks(_read rd, _write wr)
{
read_p0.set_callback(rd);
write_p0.set_callback(wr);
}
template<class _read, class _write> void set_p1_callbacks(_read rd, _write wr)
{
read_p1.set_callback(rd);
write_p1.set_callback(wr);
}
template<class _read, class _write> void set_p2_callbacks(_read rd, _write wr)
{
read_p2.set_callback(rd);
write_p2.set_callback(wr);
}
template<class _read, class _write> void set_p3_callbacks(_read rd, _write wr)
{
read_p3.set_callback(rd);
write_p3.set_callback(wr);
}
template<class _Object> static devcb2_base &set_p0_rd_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).read_p0.set_callback(object); }
template<class _Object> static devcb2_base &set_p1_rd_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).read_p1.set_callback(object); }
template<class _Object> static devcb2_base &set_p2_rd_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).read_p2.set_callback(object); }
template<class _Object> static devcb2_base &set_p3_rd_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).read_p3.set_callback(object); }
template<class _Object> static devcb2_base &set_p0_wr_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).write_p0.set_callback(object); }
template<class _Object> static devcb2_base &set_p1_wr_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).write_p1.set_callback(object); }
template<class _Object> static devcb2_base &set_p2_wr_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).write_p2.set_callback(object); }
template<class _Object> static devcb2_base &set_p3_wr_callback(device_t &device, _Object object) { return downcast<m5074x_device &>(device).write_p3.set_callback(object); }
devcb2_read8 read_p0, read_p1, read_p2, read_p3;
devcb2_write8 write_p0, write_p1, write_p2, write_p3;

View File

@ -325,10 +325,14 @@ static MACHINE_CONFIG_START( apple2gs, apple2gs_state )
MCFG_CPU_PROGRAM_MAP(apple2gs_map)
#if RUN_ADB_MICRO
MCFG_CPU_ADD(ADBMICRO_TAG, M50741, XTAL_3_579545MHz)
MCFG_M5074X_PORT0_CALLBACKS(READ8(apple2gs_state, adbmicro_p0_in), WRITE8(apple2gs_state, adbmicro_p0_out))
MCFG_M5074X_PORT1_CALLBACKS(READ8(apple2gs_state, adbmicro_p1_in), WRITE8(apple2gs_state, adbmicro_p1_out))
MCFG_M5074X_PORT2_CALLBACKS(READ8(apple2gs_state, adbmicro_p2_in), WRITE8(apple2gs_state, adbmicro_p2_out))
MCFG_M5074X_PORT3_CALLBACKS(READ8(apple2gs_state, adbmicro_p3_in), WRITE8(apple2gs_state, adbmicro_p3_out))
MCFG_M5074X_PORT0_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p0_in))
MCFG_M5074X_PORT0_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p0_out))
MCFG_M5074X_PORT1_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p1_in))
MCFG_M5074X_PORT1_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p1_out))
MCFG_M5074X_PORT2_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p2_in))
MCFG_M5074X_PORT2_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p2_out))
MCFG_M5074X_PORT3_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p3_in))
MCFG_M5074X_PORT3_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p3_out))
#endif
MCFG_TIMER_DRIVER_ADD_SCANLINE("scantimer", apple2gs_state, apple2_interrupt, "screen", 0, 1)
MCFG_QUANTUM_TIME(attotime::from_hz(60))
@ -395,10 +399,14 @@ static MACHINE_CONFIG_DERIVED( apple2gsr1, apple2gs )
#if RUN_ADB_MICRO
MCFG_CPU_REPLACE(ADBMICRO_TAG, M50740, XTAL_3_579545MHz)
MCFG_M5074X_PORT0_CALLBACKS(READ8(apple2gs_state, adbmicro_p0_in), WRITE8(apple2gs_state, adbmicro_p0_out))
MCFG_M5074X_PORT1_CALLBACKS(READ8(apple2gs_state, adbmicro_p1_in), WRITE8(apple2gs_state, adbmicro_p1_out))
MCFG_M5074X_PORT2_CALLBACKS(READ8(apple2gs_state, adbmicro_p2_in), WRITE8(apple2gs_state, adbmicro_p2_out))
MCFG_M5074X_PORT3_CALLBACKS(READ8(apple2gs_state, adbmicro_p3_in), WRITE8(apple2gs_state, adbmicro_p3_out))
MCFG_M5074X_PORT0_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p0_in))
MCFG_M5074X_PORT0_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p0_out))
MCFG_M5074X_PORT1_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p1_in))
MCFG_M5074X_PORT1_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p1_out))
MCFG_M5074X_PORT2_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p2_in))
MCFG_M5074X_PORT2_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p2_out))
MCFG_M5074X_PORT3_READ_CALLBACK(READ8(apple2gs_state, adbmicro_p3_in))
MCFG_M5074X_PORT3_WRITE_CALLBACK(WRITE8(apple2gs_state, adbmicro_p3_out))
#endif
MCFG_RAM_MODIFY(RAM_TAG)