summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-10-11Add support for disassembling VOS program modulesMichael Pavone
2014-10-08Improve support for disassembling 68010+ binariesMichael Pavone
2014-08-14Small fix to display of DMA source address in vr debug commandMichael Pavone
2014-06-23Ensure proper stack alignment when the Z80 calls into C code. This fixes a ↵Mike Pavone
crash in optimized builds on OSX
2014-06-23Save and restore guest address in the write function for a code memory chunk ↵Mike Pavone
in the "slow" path for inconvenient host addresses. This fixes an intermittent crash on OSX in the code that checks whether the memory written may contain code
2014-06-23Fix x86_rrindex_sizedir. Pass the correct scale to mov_rindexr in ↵Mike Pavone
gen_mem_fun. BlastEm now sort of works on OS X. Runs reliably from lldb, but only intermittently from the shell
2014-06-21Fix Z80 interruptsMichael Pavone
2014-06-20Added some preliminary support for interpreting Z80 code from non-RAM addressesMichael Pavone
2014-06-19Properly handle Z80 breakpoints on self-modifying code and setting Z80 ↵Michael Pavone
breakpoints before the Z80 program has been loaded
2014-06-19Slight cleanup of vint handling on the Z80Michael Pavone
2014-06-18Remove debug printf that escaped into my previous commitMichael Pavone
2014-06-18Fix most of the breakage caused by the vcounter/hcounter changesMichael Pavone
2014-06-17Partially working switch to having a vcounter and hslot counter in the ↵Michael Pavone
context rather than trying to derive them from the cycle count. This should allow for more accurate handling of mid screen mode switches. Interrupt timing is broken currently though
2014-06-17blastem builds and almost works on OS X nowMike Pavone
2014-06-16Fix a few values reported by the vr debugger command. Add DMA registers to ↵Michael Pavone
vr debugger command. Fix horizontal interrupt bug. Slightly more accurate (but still broken) handling of switches between H32 and H40 modes.
2014-04-01Make Windows port a little less half-assedMichael Pavone
2014-04-01Initial work on Windows portMichael Pavone
2014-03-11Split gen_mem_fun out of m68k_core_x86 and make it more generic so it can be ↵Michael Pavone
used by the Z80 core
2014-03-08Move translate_m68k_movem to m68k_core.cMichael Pavone
2014-03-07Made m68k_retranslate_inst host-cpu generic and moved it to m68k_core.cMichael Pavone
2014-03-07Minor refactor to translate_m68k_move_ccr_sr and translate_m68k_stop to ↵Michael Pavone
reduce code duplication
2014-03-07Use swap_ssp_usp in translate_m68k_move_ccr_srMichael Pavone
2014-03-07Combine andi ccr/sr and ori ccr/sr.Michael Pavone
2014-03-07Use update_flags instead of individual set_flag calls in a few placesMichael Pavone
2014-03-07Refactored translate_m68k so that it contains no host-cpu specific code and ↵Michael Pavone
moved it to m68k_core.c
2014-03-05Combine implementations of lea and pea. Update bit instructions to use the ↵Michael Pavone
op_ family of functions to simplify their implementation a bit.
2014-03-05Refactor translate_m68k_cmp to use translate_m68k_arithMichael Pavone
2014-03-04Combine the implementation of ABCD and SBCD in the 68K coreMichael Pavone
2014-03-04Use translate_m68k_unary for SWAP in 68K coreMichael Pavone
2014-03-04Refactor a bunch of the arithmetic instructions in the 68K core to reduce ↵Michael Pavone
duplicate code
2014-03-04Small refactor to flag handling in 68K coreMichael Pavone
2014-03-03Remove jmp_r from gen_x86.h since it got added to gen.hMichael Pavone
2014-03-03More 68K core refactoring to both reduce the amount of code and better split ↵Michael Pavone
the host-cpu specific parts from the generic parts
2014-03-03Enable link time optimizationMichael Pavone
2014-03-03Make some small changes in trans so that it is more likely to produce the ↵Michael Pavone
same output as mustrans when given misbehaving programs. Add lea to testcases.txt. Improve the output of comparetest.py so that known issues can easily be separated from new ones.
2014-03-02Refactor translat_m68k_src and translate_m68k_dst into a single functionMichael Pavone
2014-03-02Initial stab at separating the generic parts of the 68K core from the ↵Michael Pavone
host-cpu specific parts.
2014-03-02Rename x86_68k_options and m68k_to_x86.h to m68k_options and m68k_core.h ↵Michael Pavone
respectively
2014-03-02Small Makefile change that was missed in the last commitMichael Pavone
2014-03-02Refactor gen_x86 to use an interface more like gen_arm and to remove the ↵Michael Pavone
need for the caller to decide whether an 8-bit or 32-bit displacement is needed in the rdisp functions. Update m68k_to_x86 to use the new version of the gen_x86 functions and do some minor refactoring there in the process
2014-03-02Add backtrace (bt) command to 68K debuggerMichael Pavone
2014-03-01Add a separate flag/define for disabling the Z80 at compile time to ease ↵Michael Pavone
refactoring
2014-03-01Fix PC displacement mode check in disassembler so that jmps involving a ↵Michael Pavone
register are handled correctly
2014-02-24Moved some generic stuff from backend.h gen_arm.h and gen_arm.c into gen.h ↵Michael Pavone
and gen.c. Added a couple fields to cpu_options so that gen_mem_fun can be made guest CPU generic
2014-02-24Use a typedef code_ptr in place of uint8_t * in 68K core to better support ↵Mike Pavone
host instruction sets with different instruction word sizes. Make x86_68k_options contain a cpu_options so that gen_mem_fun can eventually be shared with the Z80 core.
2014-02-24Rename x86_backend.h and x86_backend.c to backend.h and backend.c respectivelyMike Pavone
2014-02-24Fix build breakageMichael Pavone
2014-02-24Start work on refactoring some of the backend code to allow more sharing ↵Michael Pavone
between M68K and Z80 cores and possibly also between x86 and the ARM backend when it exists
2014-02-23Fix ARM code generation and test programMichael Pavone
2014-02-23Added untested code for generating ARM machine codeMike Pavone