summaryrefslogtreecommitdiffstatshomepage
path: root/src
diff options
context:
space:
mode:
author Nathan Woods <npwoods@mess.org>2009-05-13 02:53:12 +0000
committer Nathan Woods <npwoods@mess.org>2009-05-13 02:53:12 +0000
commit4b092a9122901bf77f1cda58082fde10621b0a6f (patch)
tree576f41b875a3d8d8501d02586d66edd4d27b4464 /src
parent48f28c7c0bce430739c204c265076e16d543228a (diff)
Readded read_vector callback
Diffstat (limited to 'src')
-rw-r--r--src/emu/cpu/g65816/g65816.c10
-rw-r--r--src/emu/cpu/g65816/g65816.h6
2 files changed, 7 insertions, 9 deletions
diff --git a/src/emu/cpu/g65816/g65816.c b/src/emu/cpu/g65816/g65816.c
index d6c8271a2d3..9d6dd998b17 100644
--- a/src/emu/cpu/g65816/g65816.c
+++ b/src/emu/cpu/g65816/g65816.c
@@ -396,14 +396,17 @@ static CPU_SET_INFO( g65816 )
case CPUINFO_INT_REGISTER + G65816_E: g65816_set_reg(cpustate, G65816_E, info->i); break;
case CPUINFO_INT_REGISTER + G65816_NMI_STATE: g65816_set_reg(cpustate, G65816_NMI_STATE, info->i); break;
case CPUINFO_INT_REGISTER + G65816_IRQ_STATE: g65816_set_reg(cpustate, G65816_IRQ_STATE, info->i); break;
-
- /* --- the following bits of info are set as pointers to data or functions --- */
- case CPUINFO_FCT_G65816_READVECTOR_CALLBACK: READ_VECTOR = (read8_space_func) info->f; break;
}
}
+void g65816_set_read_vector_callback(const device_config *device, read8_space_func read_vector)
+{
+ g65816i_cpu_struct *cpustate = get_safe_token(device);
+ READ_VECTOR = read_vector;
+}
+
/**************************************************************************
* Generic get_info
**************************************************************************/
@@ -470,7 +473,6 @@ CPU_GET_INFO( g65816 )
case CPUINFO_FCT_BURN: info->burn = NULL; break;
case CPUINFO_FCT_DISASSEMBLE: info->disassemble = CPU_DISASSEMBLE_NAME(g65816); break;
case CPUINFO_PTR_INSTRUCTION_COUNTER: info->icount = &cpustate->ICount; break;
- case CPUINFO_FCT_G65816_READVECTOR_CALLBACK: info->f = (genf *) READ_VECTOR; break;
case CPUINFO_FCT_READOP: info->readop = CPU_READOP_NAME(g65816); break;
diff --git a/src/emu/cpu/g65816/g65816.h b/src/emu/cpu/g65816/g65816.h
index 112ffb985e8..c58144e3f25 100644
--- a/src/emu/cpu/g65816/g65816.h
+++ b/src/emu/cpu/g65816/g65816.h
@@ -58,15 +58,11 @@ enum
G65816_NMI_STATE, G65816_IRQ_STATE
};
-enum
-{
- CPUINFO_FCT_G65816_READVECTOR_CALLBACK = CPUINFO_FCT_CPU_SPECIFIC
-};
-
/* Main interface function */
CPU_GET_INFO( g65816 );
#define CPU_G65816 CPU_GET_INFO_NAME( g65816 )
+void g65816_set_read_vector_callback(const device_config *device, read8_space_func read_vector);
/* ======================================================================== */