More refactoring and general cleanup. Most things should be working again now.
Split off cache and start real implementation, breaking save states in the process
Makefile.in
src/Makefile.am
src/Makefile.in
src/aica/armmem.c
src/dreamcast.c
src/dreamcast.h
src/mem.c
src/mem.h
src/pvr2/pvr2.c
src/pvr2/pvr2.h
...
Split off cache and start real implementation, breaking save states in the process
Makefile.in
src/Makefile.am
src/Makefile.in
src/aica/armmem.c
src/dreamcast.c
src/dreamcast.h
src/mem.c
src/mem.h
src/pvr2/pvr2.c
src/pvr2/pvr2.h
...
Remove pointer cache and add full address-space map. Much better
src/dreamcast.c
src/mem.c
src/sh4/ia32abi.h
src/sh4/ia64abi.h
src/sh4/sh4.c
src/sh4/sh4.h
src/sh4/sh4core.h
src/sh4/sh4mem.c
src/sh4/sh4x86.in
src/sh4/x86op.h
...
src/dreamcast.c
src/mem.c
src/sh4/ia32abi.h
src/sh4/ia64abi.h
src/sh4/sh4.c
src/sh4/sh4.h
src/sh4/sh4core.h
src/sh4/sh4mem.c
src/sh4/sh4x86.in
src/sh4/x86op.h
...
First pass experiment using cached decoding.
src/aica/aica.c
src/asic.c
src/dreamcast.c
src/mem.c
src/mem.h
src/mmio.h
src/pvr2/pvr2.c
src/pvr2/pvr2mem.c
src/sh4/dmac.c
src/sh4/ia32abi.h
...
src/aica/aica.c
src/asic.c
src/dreamcast.c
src/mem.c
src/mem.h
src/mmio.h
src/pvr2/pvr2.c
src/pvr2/pvr2mem.c
src/sh4/dmac.c
src/sh4/ia32abi.h
...
Create branch for memory system refactoring
Add return-address-modifying exception return code to mmu TLB lookups (a little bit faster)
acinclude.m4
config.h.in
configure
configure.in
src/sh4/ia32abi.h
src/sh4/ia64abi.h
src/sh4/mmu.c
src/sh4/sh4core.h
src/sh4/sh4core.in
src/sh4/sh4mem.c
...
acinclude.m4
config.h.in
configure
configure.in
src/sh4/ia32abi.h
src/sh4/ia64abi.h
src/sh4/mmu.c
src/sh4/sh4core.h
src/sh4/sh4core.in
src/sh4/sh4mem.c
...
Setup a 'proper' stackframe in translated blocks. This doesn't affect performance noticeably,
but does ensure that
a) The stack is aligned correctly on OS X with no extra effort, and
b) We can't mess up the stack and crash that way anymore.
Replace all PUSH/POP instructions (outside of prologue/epilogue) with ESP-rel moves to stack
local variables.
Finally merge ia32mac and ia32abi together, since they're pretty much the same now anyway (and
thereby simplifying maintenance a good deal)
src/sh4/ia32abi.h
src/sh4/ia32mac.h
src/sh4/ia64abi.h
src/sh4/sh4trans.h
src/sh4/sh4x86.in
src/sh4/x86op.h
but does ensure that
a) The stack is aligned correctly on OS X with no extra effort, and
b) We can't mess up the stack and crash that way anymore.
Replace all PUSH/POP instructions (outside of prologue/epilogue) with ESP-rel moves to stack
local variables.
Finally merge ia32mac and ia32abi together, since they're pretty much the same now anyway (and
thereby simplifying maintenance a good deal)
src/sh4/ia32abi.h
src/sh4/ia32mac.h
src/sh4/ia64abi.h
src/sh4/sh4trans.h
src/sh4/sh4x86.in
src/sh4/x86op.h
.