summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/cpu/sc61860
diff options
context:
space:
mode:
author Aaron Giles <aaron@aarongiles.com>2010-08-19 16:10:19 +0000
committer Aaron Giles <aaron@aarongiles.com>2010-08-19 16:10:19 +0000
commit621a2faa2a384ccea46ee3630c57961b92070ed7 (patch)
tree960fd0c5fbc1b8fcc3b07ff2cc538048eaa7b9af /src/emu/cpu/sc61860
parent9bbc2e2f00ac611c79969db389043cd035e4215d (diff)
Remove final set of legacy inlines from memory.h. Mostly affects CPU
cores, which all now cache a copy of space->direct() and use it for direct accesses.
Diffstat (limited to 'src/emu/cpu/sc61860')
-rw-r--r--src/emu/cpu/sc61860/sc61860.c2
-rw-r--r--src/emu/cpu/sc61860/scops.c8
2 files changed, 6 insertions, 4 deletions
diff --git a/src/emu/cpu/sc61860/sc61860.c b/src/emu/cpu/sc61860/sc61860.c
index c753d601ef5..1e6c1bc289b 100644
--- a/src/emu/cpu/sc61860/sc61860.c
+++ b/src/emu/cpu/sc61860/sc61860.c
@@ -57,6 +57,7 @@ struct _sc61860_state
legacy_cpu_device *device;
address_space *program;
+ direct_read_data *direct;
int icount;
};
@@ -106,6 +107,7 @@ static CPU_INIT( sc61860 )
timer_pulse(device->machine, ATTOTIME_IN_HZ(500), cpustate, 0, sc61860_2ms_tick);
cpustate->device = device;
cpustate->program = device->space(AS_PROGRAM);
+ cpustate->direct = &cpustate->program->direct();
}
static CPU_EXECUTE( sc61860 )
diff --git a/src/emu/cpu/sc61860/scops.c b/src/emu/cpu/sc61860/scops.c
index 49fdc6260ce..20727c283ee 100644
--- a/src/emu/cpu/sc61860/scops.c
+++ b/src/emu/cpu/sc61860/scops.c
@@ -28,18 +28,18 @@
INLINE UINT8 READ_OP(sc61860_state *cpustate)
{
- return memory_decrypted_read_byte(cpustate->program, cpustate->pc++);
+ return cpustate->direct->read_decrypted_byte(cpustate->pc++);
}
INLINE UINT8 READ_OP_ARG(sc61860_state *cpustate)
{
- return memory_raw_read_byte(cpustate->program, cpustate->pc++);
+ return cpustate->direct->read_raw_byte(cpustate->pc++);
}
INLINE UINT16 READ_OP_ARG_WORD(sc61860_state *cpustate)
{
- UINT16 t=memory_decrypted_read_byte(cpustate->program, cpustate->pc++)<<8;
- t|=memory_decrypted_read_byte(cpustate->program, cpustate->pc++);
+ UINT16 t=cpustate->direct->read_decrypted_byte(cpustate->pc++)<<8;
+ t|=cpustate->direct->read_decrypted_byte(cpustate->pc++);
return t;
}