summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/i8085/i8085.h
diff options
context:
space:
mode:
author Curt Coder <curtcoder@mail.com>2009-08-21 08:19:17 +0000
committer Curt Coder <curtcoder@mail.com>2009-08-21 08:19:17 +0000
commitb2dcbb3b688c0c49bfd2000d485e6527731a2db8 (patch)
tree4d5ea024e18c05c1b470a915dfb721c7b5c03229 /src/emu/cpu/i8085/i8085.h
parentac3d58fad59e55421c8cc272c4aa69d48a1a3ebb (diff)
Intel 8085:
- refactored callbacks to use devcb - added 8080A variant
Diffstat (limited to 'src/emu/cpu/i8085/i8085.h')
-rw-r--r--src/emu/cpu/i8085/i8085.h31
1 files changed, 17 insertions, 14 deletions
diff --git a/src/emu/cpu/i8085/i8085.h b/src/emu/cpu/i8085/i8085.h
index 6db8ecfa82f..f6b077ec198 100644
--- a/src/emu/cpu/i8085/i8085.h
+++ b/src/emu/cpu/i8085/i8085.h
@@ -2,7 +2,7 @@
#define __I8085_H__
#include "cpuintrf.h"
-
+#include "devcb.h"
/***************************************************************************
CONSTANTS
@@ -20,33 +20,33 @@ enum
I8085_GENPCBASE = REG_GENPCBASE
};
-
#define I8085_INTR_LINE 0
#define I8085_RST55_LINE 1
#define I8085_RST65_LINE 2
#define I8085_RST75_LINE 3
-
+#define I8085_STATUS_INTA 0x01
+#define I8085_STATUS_WO 0x02
+#define I8085_STATUS_STACK 0x04
+#define I8085_STATUS_HLTA 0x08
+#define I8085_STATUS_OUT 0x10
+#define I8085_STATUS_M1 0x20
+#define I8085_STATUS_INP 0x40
+#define I8085_STATUS_MEMR 0x80
/***************************************************************************
TYPE DEFINITIONS
***************************************************************************/
-typedef void (*i8085_sod_func)(const device_config *device, int state);
-typedef int (*i8085_sid_func)(const device_config *device);
-typedef void (*i8085_inte_func)(const device_config *device, int state);
-typedef void (*i8085_status_func)(const device_config *device, UINT8 status);
-
typedef struct _i8085_config i8085_config;
struct _i8085_config
{
- i8085_inte_func inte; /* INTE changed callback */
- i8085_status_func status; /* STATUS changed callback */
- i8085_sod_func sod; /* SOD changed callback (8085A only) */
- i8085_sid_func sid; /* SID changed callback (8085A only) */
+ devcb_write8 out_status_func; /* STATUS changed callback */
+ devcb_write_line out_inte_func; /* INTE changed callback */
+ devcb_read_line in_sid_func; /* SID changed callback (8085A only) */
+ devcb_write_line out_sod_func; /* SOD changed callback (8085A only) */
};
-
-
+#define I8085_CONFIG(name) const i8085_config (name) =
/***************************************************************************
FUNCTION PROTOTYPES
@@ -55,6 +55,9 @@ struct _i8085_config
CPU_GET_INFO( i8080 );
#define CPU_8080 CPU_GET_INFO_NAME( i8080 )
+CPU_GET_INFO( i8080a );
+#define CPU_8080A CPU_GET_INFO_NAME( i8080a )
+
CPU_GET_INFO( i8085 );
#define CPU_8085A CPU_GET_INFO_NAME( i8085 )