diff options
| author | 2012-10-06 12:07:07 +0000 | |
|---|---|---|
| committer | 2012-10-06 12:07:07 +0000 | |
| commit | 028ca94f63d18514db528ec09316ea285f203923 (patch) | |
| tree | b8e78c95143b5fba1aa8daa4b0dd4379c8fd624b /src | |
| parent | f5606220006c104cbe034c2d12a47ba4ddd64f6b (diff) | |
ds2404: get rid of trampoline code
Diffstat (limited to 'src')
| -rw-r--r-- | src/emu/machine/ds2404.c | 10 | ||||
| -rw-r--r-- | src/emu/machine/ds2404.h | 29 | ||||
| -rw-r--r-- | src/mame/drivers/seibuspi.c | 8 |
3 files changed, 17 insertions, 30 deletions
diff --git a/src/emu/machine/ds2404.c b/src/emu/machine/ds2404.c index 3a9ce0f4940..3f450b681be 100644 --- a/src/emu/machine/ds2404.c +++ b/src/emu/machine/ds2404.c @@ -171,19 +171,19 @@ void ds2404_device::ds2404_writemem(UINT8 value) } } -WRITE8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_1w_reset_w) +WRITE8_MEMBER( ds2404_device::ds2404_1w_reset_w ) { m_state[0] = DS2404_STATE_IDLE; m_state_ptr = 0; } -WRITE8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_3w_reset_w) +WRITE8_MEMBER( ds2404_device::ds2404_3w_reset_w ) { m_state[0] = DS2404_STATE_COMMAND; m_state_ptr = 0; } -READ8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_data_r) +READ8_MEMBER( ds2404_device::ds2404_data_r ) { UINT8 value = 0; switch(m_state[m_state_ptr]) @@ -217,7 +217,7 @@ READ8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_data_r) return value; } -WRITE8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_data_w) +WRITE8_MEMBER( ds2404_device::ds2404_data_w ) { switch( m_state[m_state_ptr] ) { @@ -310,7 +310,7 @@ WRITE8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_data_w) } } -WRITE8_DEVICE_HANDLER_TRAMPOLINE(ds2404, ds2404_clk_w) +WRITE8_MEMBER( ds2404_device::ds2404_clk_w ) { switch( m_state[m_state_ptr] ) { diff --git a/src/emu/machine/ds2404.h b/src/emu/machine/ds2404.h index 6870536e720..d13759f4bcf 100644 --- a/src/emu/machine/ds2404.h +++ b/src/emu/machine/ds2404.h @@ -6,6 +6,8 @@ **********************************************************************/ +#pragma once + #ifndef __DS2404_H__ #define __DS2404_H__ @@ -53,14 +55,14 @@ public: static void static_set_ref_day(device_t &device, UINT8 m_ref_day); /* 1-wire interface reset */ - void ds2404_1w_reset_w(UINT32 offset, UINT8 data); + DECLARE_WRITE8_MEMBER(ds2404_1w_reset_w); /* 3-wire interface reset */ - void ds2404_3w_reset_w(UINT32 offset, UINT8 data); + DECLARE_WRITE8_MEMBER(ds2404_3w_reset_w); - UINT8 ds2404_data_r(UINT32 offset); - void ds2404_data_w(UINT32 offset, UINT8 data); - void ds2404_clk_w(UINT32 offset, UINT8 data); + DECLARE_READ8_MEMBER(ds2404_data_r); + DECLARE_WRITE8_MEMBER(ds2404_data_w); + DECLARE_WRITE8_MEMBER(ds2404_clk_w); void ds2404_tick(); @@ -122,19 +124,4 @@ private: extern const device_type DS2404; - -/*************************************************************************** - PROTOTYPES -***************************************************************************/ - -/* 1-wire interface reset */ -DECLARE_WRITE8_DEVICE_HANDLER( ds2404_1w_reset_w ); - -/* 3-wire interface reset */ -DECLARE_WRITE8_DEVICE_HANDLER( ds2404_3w_reset_w ); - -DECLARE_READ8_DEVICE_HANDLER( ds2404_data_r ); -DECLARE_WRITE8_DEVICE_HANDLER( ds2404_data_w ); -DECLARE_WRITE8_DEVICE_HANDLER( ds2404_clk_w ); - -#endif +#endif /* __DS2404_H__ */ diff --git a/src/mame/drivers/seibuspi.c b/src/mame/drivers/seibuspi.c index d3e104955de..660901cde22 100644 --- a/src/mame/drivers/seibuspi.c +++ b/src/mame/drivers/seibuspi.c @@ -1043,10 +1043,10 @@ static ADDRESS_MAP_START( spi_map, AS_PROGRAM, 32, seibuspi_state ) AM_RANGE(0x00000680, 0x00000683) AM_WRITE(sound_fifo_w) AM_RANGE(0x00000684, 0x00000687) AM_READ(sound_fifo_status_r) AM_RANGE(0x00000684, 0x00000687) AM_WRITENOP /* Unknown */ - AM_RANGE(0x000006d0, 0x000006d3) AM_DEVWRITE8_LEGACY("ds2404", ds2404_1w_reset_w, 0x000000ff) - AM_RANGE(0x000006d4, 0x000006d7) AM_DEVWRITE8_LEGACY("ds2404", ds2404_data_w, 0x000000ff) - AM_RANGE(0x000006d8, 0x000006db) AM_DEVWRITE8_LEGACY("ds2404", ds2404_clk_w, 0x000000ff) - AM_RANGE(0x000006dc, 0x000006df) AM_DEVREAD8_LEGACY("ds2404", ds2404_data_r, 0x000000ff) + AM_RANGE(0x000006d0, 0x000006d3) AM_DEVWRITE8("ds2404", ds2404_device, ds2404_1w_reset_w, 0x000000ff) + AM_RANGE(0x000006d4, 0x000006d7) AM_DEVWRITE8("ds2404", ds2404_device, ds2404_data_w, 0x000000ff) + AM_RANGE(0x000006d8, 0x000006db) AM_DEVWRITE8("ds2404", ds2404_device, ds2404_clk_w, 0x000000ff) + AM_RANGE(0x000006dc, 0x000006df) AM_DEVREAD8("ds2404", ds2404_device, ds2404_data_r, 0x000000ff) AM_RANGE(0x00000800, 0x0003ffff) AM_RAM AM_SHARE("spimainram") AM_RANGE(0x00200000, 0x003fffff) AM_ROM AM_SHARE("share2") AM_RANGE(0x00a00000, 0x013fffff) AM_READ(soundrom_r) |
