summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/machine/rp5h01.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/machine/rp5h01.h')
-rw-r--r--src/emu/machine/rp5h01.h29
1 files changed, 29 insertions, 0 deletions
diff --git a/src/emu/machine/rp5h01.h b/src/emu/machine/rp5h01.h
new file mode 100644
index 00000000000..b0bb3898c89
--- /dev/null
+++ b/src/emu/machine/rp5h01.h
@@ -0,0 +1,29 @@
+#ifndef __RP5H01_H__
+#define __RP5H01_H__
+
+/* max simultaneous chips supported. change if you need more */
+#define MAX_RP5H01 1
+
+struct RP5H01_interface {
+ int num; /* number of chips */
+ int region[MAX_RP5H01]; /* memory region where data resides */
+ int offset[MAX_RP5H01]; /* memory offset within the above region where data resides */
+};
+
+int RP5H01_init( struct RP5H01_interface *interface );
+void RP5H01_enable_w( int which, int data ); /* /CE */
+void RP5H01_reset_w( int which, int data ); /* RESET */
+void RP5H01_clock_w( int which, int data ); /* DATA CLOCK (active low) */
+void RP5H01_test_w( int which, int data ); /* TEST */
+int RP5H01_counter_r( int which ); /* COUNTER OUT */
+int RP5H01_data_r( int which ); /* DATA */
+
+/* direct-access stubs */
+WRITE8_HANDLER( RP5H01_0_enable_w );
+WRITE8_HANDLER( RP5H01_0_reset_w );
+WRITE8_HANDLER( RP5H01_0_clock_w );
+WRITE8_HANDLER( RP5H01_0_test_w );
+READ8_HANDLER( RP5H01_0_counter_r );
+READ8_HANDLER( RP5H01_0_data_r );
+
+#endif /* __RP5H01_H__ */