summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/machine/s32comm.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/mame/machine/s32comm.h')
-rw-r--r--src/mame/machine/s32comm.h22
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();