diff options
Diffstat (limited to 'src/mame/machine/s32comm.h')
-rw-r--r-- | src/mame/machine/s32comm.h | 22 |
1 files changed, 14 insertions, 8 deletions
diff --git a/src/mame/machine/s32comm.h b/src/mame/machine/s32comm.h index 658e2e9fcdd..8f0f9536a60 100644 --- a/src/mame/machine/s32comm.h +++ b/src/mame/machine/s32comm.h @@ -7,6 +7,8 @@ #define S32COMM_SIMULATION +#include "osdcore.h" + #define MCFG_S32COMM_ADD(_tag ) \ MCFG_DEVICE_ADD(_tag, S32COMM, 0) @@ -54,16 +56,18 @@ protected: virtual void device_add_mconfig(machine_config &config) override; private: - uint8_t m_shared[0x800]; // 2k shared memory - uint8_t m_zfg; // z80 flip gate? purpose unknown, bit0 is stored - uint8_t m_cn; // bit0 is used to enable/disable the comm board - uint8_t m_fg; // flip gate? purpose unknown, bit0 is stored, bit7 is connected to ZFG bit 0 + uint8_t m_shared[0x800]; // 2k shared memory + uint8_t m_zfg; // z80 flip gate? purpose unknown, bit0 is stored + uint8_t m_cn; // bit0 is used to enable/disable the comm board + uint8_t m_fg; // flip gate? purpose unknown, bit0 is stored, bit7 is connected to ZFG bit 0 - emu_file m_line_rx; // rx line - can be either differential, simple serial or toslink - emu_file m_line_tx; // tx line - is differential, simple serial and toslink + osd_file::ptr m_line_rx; // rx line - can be either differential, simple serial or toslink + osd_file::ptr m_line_tx; // tx line - is differential, simple serial and toslink char m_localhost[256]; char m_remotehost[256]; - uint8_t m_buffer[0x800]; + uint8_t m_buffer0[0x100]; + uint8_t m_buffer1[0x100]; + uint8_t m_framesync; #ifdef S32COMM_SIMULATION uint8_t m_linkenable; @@ -71,10 +75,12 @@ private: uint8_t m_linkalive; uint8_t m_linkid; uint8_t m_linkcount; - uint16_t m_linktype; void comm_tick(); + int read_frame(int dataSize); + void send_data(uint8_t frameType, int frameStart, int frameSize, int dataSize); + void send_frame(int dataSize); void comm_tick_14084(); void comm_tick_15033(); |