diff options
author | 2014-07-01 19:30:52 +0000 | |
---|---|---|
committer | 2014-07-01 19:30:52 +0000 | |
commit | 3968a42ccb38436bb94b7119370f7dc6ed04f296 (patch) | |
tree | d7d33a8604ae04f861eb6c313cb5a69de7ce72a5 /src/emu/cpu/m6502/m6502.h | |
parent | 020a35290ec4a6e0d418cdfbe07e19a2af6f7e22 (diff) |
m6502: remove expensive and unused attotime precalculation at start of each timeslice [Alex Jackson]
(nw)
This precalculation seems to be part of OG's "CPU core template", as all CPU
cores written by him do it. It's used to optimize things like onboard serial
ports and high-frequency timers; however, the m6502 and its derivatives have
neither onboard serial ports nor high-frequency timers, and the precalculation
is simply a boat anchor on drivers with 6502-family CPUs and tight interleaving.
mess c64 benchmarks (3.4 GHz Sandy Bridge i5; 64-bit Linux GCC 4.8 build)
before:
[awj@localhost trunk]$ ./mess64 -window -bench 60 c64
Average speed: 238.17% (59 seconds)
[awj@localhost trunk]$ ./mess64 -window -bench 60 c64
Average speed: 236.36% (59 seconds)
after:
[awj@localhost trunk]$ ./mess64 -window -bench 60 c64
Average speed: 279.93% (59 seconds)
[awj@localhost trunk]$ ./mess64 -window -bench 60 c64
Average speed: 279.30% (59 seconds)
Diffstat (limited to 'src/emu/cpu/m6502/m6502.h')
-rw-r--r-- | src/emu/cpu/m6502/m6502.h | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/src/emu/cpu/m6502/m6502.h b/src/emu/cpu/m6502/m6502.h index b433c72f9e5..f77a33f6ae8 100644 --- a/src/emu/cpu/m6502/m6502.h +++ b/src/emu/cpu/m6502/m6502.h @@ -61,7 +61,6 @@ public: DECLARE_WRITE_LINE_MEMBER( irq_line ); DECLARE_WRITE_LINE_MEMBER( nmi_line ); - UINT64 get_cycle(); bool get_sync() const { return sync; } void disable_direct() { direct_disabled = true; } @@ -201,7 +200,6 @@ protected: int icount; bool nmi_state, irq_state, apu_irq_state, v_state; bool irq_taken, sync, direct_disabled, inhibit_interrupts; - UINT64 end_cycles; static const disasm_entry disasm_entries[0x100]; |