summaryrefslogtreecommitdiff
path: root/m68k_core_x86.c
AgeCommit message (Collapse)Author
2015-10-29Implement TRAPVMichael Pavone
2015-10-28Implement TASMichael Pavone
2015-10-21Implemented nbcdMichael Pavone
2015-10-19Fix for abcd/sbcd. Hopefully got it 100% right this time.Michael Pavone
2015-07-25Use a new fatal_error function instead of calling fprintf and exit for fatal ↵Michael Pavone
errors. This new function more gracefully handles the case in which BlastEm was not started from a terminal or disconnected from ther terminal (Windows).
2015-06-28More clang warning cleanupMichael Pavone
2015-06-22Fix negative offsets in calc_areg_displaceMichael Pavone
2015-05-25Fix crash bug in 32-bit build for certain secnarios with bcd instructionsMichael Pavone
2015-05-25Fix div instruction when dest is d0 in 32-bit buildMichael Pavone
2015-05-23Eliminate runtime.S/runtime_32.S.Michael Pavone
2015-05-22Don't attempt to translate or map code at odd addresses. This fixes a bug ↵Michael Pavone
that shows up when playing College Footbal USA 96
2015-05-11Fixed a missed call to do_sync when updating SR in 68K coreMichael Pavone
2015-01-14Removed hardcoded assumptions in M68K core about which parts of the memory ↵Michael Pavone
map are RAM
2015-01-08A couple more indentation fixesMichael Pavone
2015-01-08Moved m68k_save_result to m68k_core.cMichael Pavone
2015-01-08Moved translate_m68k_rte and translate_m68k_reset to m68k_core.cMichael Pavone
2015-01-08Fix indentation that presumably got messed up in a mergeMichael Pavone
2015-01-04MergeMichael Pavone
2015-01-03All cycle counters are now based off the master clock. This seems to have ↵Michael Pavone
messed up Z80 interrupt timing (music in Sonic 2 is too slow for instance), but things are generally working
2015-01-02Added functions to gen_x86 for saving and restoring callee save registers to ↵Michael Pavone
better abstract over ABI differences between x86 and x86-64
2015-01-01Use call_args and call_args_abi in Z80 coreMichael Pavone
2015-01-01Added 2 new functions to gen_x86.c for handling passing args according to ↵Michael Pavone
the C abi of the host system and adapted the code in m68k_core_x86.c to use that instead of doing everything by hand
2015-01-01Fix some issues with 68K instruction retranslationMichael Pavone
2015-01-01Remove some of the hard coded assumptions about the memory map from the CPU ↵Michael Pavone
cores
2014-12-29Fix handling of code writes for Z80 core. This seems to get things close to ↵Michael Pavone
being back to where they were before the big refactor that broke the Z80 core. Some problems remain. Notably the sound driver in Sonic 2 is still quite broken.
2014-12-28Removed bcd_add and bcd_sub from runtime.S and generated the logic inline ↵Michael Pavone
with the rest of abcd and sbcd translation. Fixed some edge cases and undefined flag behavior in the process
2014-12-27Fix divide by zero exception return address when div instruction is bigger ↵Michael Pavone
than 1 word
2014-12-27Decrement address register after fetching source in move with -(ax) dest to ↵Michael Pavone
avoid bug when src is the dst addres reg
2014-12-26Fix a bug in ori to SR that was swapping USP and SSP inappropriatelyMichael Pavone
2014-12-26Fix a few bugs introduced in the Z80 core from the adjustments to fit with ↵Michael Pavone
the code gen refactor
2014-12-26Set the byte_swap flag in the M68K core so gen_mem_fun correctly inserts xor ↵Michael Pavone
instructions for byte access functions
2014-12-14WIP effort to update z80 core for code gen changesMichael 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-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-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.