mirror of
https://github.com/holub/mame
synced 2025-07-05 01:48:29 +03:00
ds2404: get rid of trampoline code
This commit is contained in:
parent
f560622000
commit
028ca94f63
@ -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] )
|
||||
{
|
||||
|
@ -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__ */
|
||||
|
@ -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)
|
||||
|
Loading…
Reference in New Issue
Block a user