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.h63
1 files changed, 42 insertions, 21 deletions
diff --git a/src/emu/machine/rp5h01.h b/src/emu/machine/rp5h01.h
index 453b96c2c57..8d89a601903 100644
--- a/src/emu/machine/rp5h01.h
+++ b/src/emu/machine/rp5h01.h
@@ -1,29 +1,50 @@
+/***************************************************************************
+
+ RP5H01
+
+
+***************************************************************************/
+
#ifndef __RP5H01_H__
#define __RP5H01_H__
-/* max simultaneous chips supported. change if you need more */
-#define MAX_RP5H01 1
+/***************************************************************************
+ MACROS / CONSTANTS
+***************************************************************************/
+
+#define RP5H01 DEVICE_GET_INFO_NAME(rp5h01)
+
+#define MDRV_RP5H01_ADD(_tag, _config) \
+ MDRV_DEVICE_ADD(_tag, RP5H01, 0) \
+ MDRV_DEVICE_CONFIG(_config)
-struct RP5H01_interface {
- int num; /* number of chips */
- const char *region[MAX_RP5H01]; /* memory region where data resides */
- int offset[MAX_RP5H01]; /* memory offset within the above region where data resides */
+#define MDRV_RP5H01_REMOVE(_tag) \
+ MDRV_DEVICE_REMOVE(_tag)
+
+
+/***************************************************************************
+ TYPE DEFINITIONS
+***************************************************************************/
+
+typedef struct _rp5h01_interface rp5h01_interface;
+struct _rp5h01_interface
+{
+ const char *region; /* memory region where data resides */
+ int offset; /* memory offset within the above region where data resides */
};
-int RP5H01_init( running_machine *machine, const 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 );
+/***************************************************************************
+ PROTOTYPES
+***************************************************************************/
+
+/* device interface */
+DEVICE_GET_INFO( rp5h01 );
+
+WRITE8_DEVICE_HANDLER( rp5h01_enable_w ); /* /CE */
+WRITE8_DEVICE_HANDLER( rp5h01_reset_w ); /* RESET */
+WRITE8_DEVICE_HANDLER( rp5h01_clock_w ); /* DATA CLOCK (active low) */
+WRITE8_DEVICE_HANDLER( rp5h01_test_w ); /* TEST */
+READ8_DEVICE_HANDLER( rp5h01_counter_r ); /* COUNTER OUT */
+READ8_DEVICE_HANDLER( rp5h01_data_r ); /* DATA */
#endif /* __RP5H01_H__ */