Wed, 14 Jan 2015 09:38:54 -0800 |
Michael Pavone |
Removed hardcoded assumptions in M68K core about which parts of the memory map are RAM
|
Thu, 08 Jan 2015 23:20:41 -0800 |
Michael Pavone |
A couple more indentation fixes
|
Thu, 08 Jan 2015 21:00:21 -0800 |
Michael Pavone |
Moved m68k_save_result to m68k_core.c
|
Thu, 08 Jan 2015 19:11:56 -0800 |
Michael Pavone |
Moved translate_m68k_rte and translate_m68k_reset to m68k_core.c
|
Thu, 08 Jan 2015 09:36:54 -0800 |
Michael Pavone |
Fix indentation that presumably got messed up in a merge
|
Thu, 08 Jan 2015 07:49:16 +0100 |
Michael Pavone |
Merge
|
Wed, 07 Jan 2015 22:42:35 -0800 |
Michael Pavone |
Added ldr and str instructions to gen_arm
|
Tue, 06 Jan 2015 19:09:00 -0800 |
Michael Pavone |
Move detect_region down so that it once again occurs after load_rom since it won't work before the ROM is loaded
|
Sun, 04 Jan 2015 23:35:55 -0800 |
Michael Pavone |
Merge
|
Sun, 04 Jan 2015 23:21:56 -0800 |
Michael Pavone |
Prevent an infinite loop when handling out of bounds addresses in translate_m68k_stream
|
Sun, 04 Jan 2015 23:05:37 -0800 |
Michael Pavone |
Some small synchronization improvements that do not seem to fix anything
|
Sun, 04 Jan 2015 12:25:33 -0800 |
Michael Pavone |
Removed some code that tried to deal with the 68K not using master clocks that is no longer necessary
|
Sun, 04 Jan 2015 12:24:34 -0800 |
Michael Pavone |
Adjusted h40_hsync_cycles so that lines actually take 3420 mclks. Fixed vdp_cycles_next_line to take h40_sync_cycles into account
|
Sat, 03 Jan 2015 21:54:41 -0800 |
Michael Pavone |
Fake busack when Z80 is disabled
|
Sat, 03 Jan 2015 21:35:23 -0800 |
Michael Pavone |
When going directly from reset to busreq, do not allow the Z80 to run
|
Sat, 03 Jan 2015 21:20:18 -0800 |
Michael Pavone |
Added a -r flag to ztestrun that force instruction retranslation to allow a quick sanity test of that feature
|
Sat, 03 Jan 2015 20:46:45 -0800 |
Michael Pavone |
Fix ztestrun
|
Sat, 03 Jan 2015 20:46:25 -0800 |
Michael Pavone |
Fix 68K remove_breakpoint
|
Sat, 03 Jan 2015 20:20:15 -0800 |
Michael Pavone |
Restore emulation of Z80 being locked out of the 68K bus during DMA and the like
|
Sat, 03 Jan 2015 20:13:51 -0800 |
Michael Pavone |
Fix bank area access delay for master clock change
|
Sat, 03 Jan 2015 18:49:07 -0800 |
Michael Pavone |
Restore Z80 interrupt pulse duration and make a small improvement to debug print output
|
Sat, 03 Jan 2015 18:27:29 -0800 |
Michael Pavone |
Removed some obsolete defines
|
Sat, 03 Jan 2015 18:23:04 -0800 |
Michael Pavone |
Made the Z80 core more contained by refactoring some code in blastem.c into z80_to_x86.c
|
Sat, 03 Jan 2015 16:08:23 -0800 |
Michael Pavone |
All cycle counters are now based off the master clock. This seems to have messed up Z80 interrupt timing (music in Sonic 2 is too slow for instance), but things are generally working
|
Fri, 02 Jan 2015 13:47:34 -0800 |
Michael Pavone |
In theory, the Z80 core should work on 32-bit builds now; however, I suspect there is some code that cannot deal with most of the Z80 registers not having a native register so more work will be needed
|
Fri, 02 Jan 2015 13:14:09 -0800 |
Michael Pavone |
Added functions to gen_x86 for saving and restoring callee save registers to better abstract over ABI differences between x86 and x86-64
|
Fri, 02 Jan 2015 12:04:58 -0800 |
Michael Pavone |
Use SZ_PTR instead of SZ_Q in Z80 core for 32-bit compat
|
Fri, 02 Jan 2015 00:19:10 -0800 |
Michael Pavone |
Sync Z80 when taking an interrupt so that int_cycle gets updated
|
Thu, 01 Jan 2015 23:37:24 -0800 |
Michael Pavone |
Remove dedicated registers for Z80 bank reg and Z80 bank pointer as they are no longer used
|
Thu, 01 Jan 2015 22:52:18 -0800 |
Michael Pavone |
Adjust 68K sync cycle when mclk_target gets adjusted
|
Thu, 01 Jan 2015 22:18:32 -0800 |
Michael Pavone |
Add the 3 cycle delay back in to Z80 bank area access
|
Thu, 01 Jan 2015 20:26:22 -0800 |
Michael Pavone |
Minor Z80 core cleanup
|
Thu, 01 Jan 2015 20:21:20 -0800 |
Michael Pavone |
Use call_args and call_args_abi inside gen_mem_fun
|
Thu, 01 Jan 2015 20:07:47 -0800 |
Michael Pavone |
Use call_args and call_args_abi in Z80 core
|
Thu, 01 Jan 2015 19:15:05 -0800 |
Michael Pavone |
Added 2 new functions to gen_x86.c for handling passing args according to 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
|
Thu, 01 Jan 2015 17:36:23 -0800 |
Michael Pavone |
Avoid calling atexit(SDL_Quit) until after OpenGL initialization to avoid a segfault on exit when using fglrx
|
Thu, 01 Jan 2015 17:31:59 -0800 |
Michael Pavone |
Fix some issues with 68K instruction retranslation
|
Thu, 01 Jan 2015 14:36:55 -0800 |
Michael Pavone |
Remove some of the hard coded assumptions about the memory map from the CPU cores
|
Tue, 30 Dec 2014 19:11:34 -0800 |
Michael Pavone |
Merge
|
Tue, 16 Dec 2014 01:10:54 -0800 |
Michael Pavone |
Fix flags for rra, rrca, rla and rlca. Fix timing for rr, rrc, rl and rlc when using IX or IY. Fix access to I and R registers (R still needs to be made 7-bit though). Fix flags for ld a, i. The fix for access to I fixes PCM playback in Titan Overdrive and music playback in Crackdown.
|
Tue, 16 Dec 2014 01:05:00 -0800 |
Michael Pavone |
Set the busy flag after a YM-2612 address write
|
Sun, 14 Dec 2014 18:17:29 -0800 |
Michael Pavone |
Added HV counter test ROM source
|
Sun, 14 Dec 2014 18:16:14 -0800 |
Michael Pavone |
Remove object file that was accidentally added
|
Sun, 14 Dec 2014 18:14:50 -0800 |
Michael Pavone |
Fix the HV counter and adjust the slots of certain VDP events
|
Sun, 14 Dec 2014 18:12:00 -0800 |
Michael Pavone |
Produce a listing file when assembling 68K test ROMs
|
Wed, 03 Dec 2014 09:32:32 -0800 |
Michael Pavone |
Initial support for configurable IO, custom IO and sega transfer board emulation
|
Wed, 03 Dec 2014 09:30:01 -0800 |
Michael Pavone |
Temporarily comment out code to translate Z80 instructions in place as in rare cases it can stomp the next instruction if a branch goes from a short from to a long one
|
Wed, 03 Dec 2014 09:26:07 -0800 |
Michael Pavone |
Unbreak PC indexed addressing modes in decoder
|
Wed, 15 Oct 2014 00:30:19 -0700 |
Michael Pavone |
Fix interpretation of moves direction field
|
Wed, 15 Oct 2014 00:26:57 -0700 |
Michael Pavone |
Fix decoding of movec
|
Tue, 14 Oct 2014 22:17:42 -0700 |
Michael Pavone |
Add equates for address references below address_off
|
Tue, 14 Oct 2014 21:58:17 -0700 |
Michael Pavone |
Ignore odd addresses in calls to defer in disassembler
|
Tue, 14 Oct 2014 21:58:03 -0700 |
Michael Pavone |
Add support for 68020 addressing modes in decoder and disassembler
|
Sun, 12 Oct 2014 23:55:25 -0700 |
Michael Pavone |
Tiny bit of work towards supporting 68020 addressing modes in decoder/disassembler
|
Sun, 12 Oct 2014 19:03:05 -0700 |
Michael Pavone |
Add support for 68020 bitfield instructions
|
Sun, 12 Oct 2014 19:02:47 -0700 |
Michael Pavone |
Fix logic for automatic label generation.
|
Sat, 11 Oct 2014 22:18:49 -0700 |
Michael Pavone |
Better support for labels sourced from VOS program module header
|
Sat, 11 Oct 2014 21:42:33 -0700 |
Michael Pavone |
Fix translation of 68K address to buffer location when address_off != 0
|
Sat, 11 Oct 2014 21:20:02 -0700 |
Michael Pavone |
Add -r option to indicate VOS program module contains a 68K reset vector
|
Sat, 11 Oct 2014 20:32:17 -0700 |
Michael Pavone |
Add support for disassembling VOS program modules
|
Wed, 08 Oct 2014 22:18:34 -0700 |
Michael Pavone |
Improve support for disassembling 68010+ binaries
|
Thu, 14 Aug 2014 09:38:32 -0700 |
Michael Pavone |
Small fix to display of DMA source address in vr debug command
|
Sat, 21 Jun 2014 09:36:15 -0700 |
Michael Pavone |
Fix Z80 interrupts
|
Fri, 20 Jun 2014 07:57:32 -0700 |
Michael Pavone |
Added some preliminary support for interpreting Z80 code from non-RAM addresses
|
Thu, 19 Jun 2014 19:50:16 -0700 |
Michael Pavone |
Properly handle Z80 breakpoints on self-modifying code and setting Z80 breakpoints before the Z80 program has been loaded
|
Thu, 19 Jun 2014 08:14:35 -0700 |
Michael Pavone |
Slight cleanup of vint handling on the Z80
|
Wed, 18 Jun 2014 16:39:42 -0700 |
Michael Pavone |
Remove debug printf that escaped into my previous commit
|
Wed, 18 Jun 2014 16:30:19 -0700 |
Michael Pavone |
Fix most of the breakage caused by the vcounter/hcounter changes
|
Tue, 17 Jun 2014 19:01:01 -0700 |
Michael Pavone |
Partially working switch to having a vcounter and hslot counter in the 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
|
Mon, 16 Jun 2014 19:13:28 -0700 |
Michael Pavone |
Fix a few values reported by the vr debugger command. Add DMA registers to vr debugger command. Fix horizontal interrupt bug. Slightly more accurate (but still broken) handling of switches between H32 and H40 modes.
|
Mon, 29 Dec 2014 23:08:39 -0800 |
Michael Pavone |
Fix handling of code writes for Z80 core. This seems to get things close to 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.
|
Mon, 29 Dec 2014 21:36:17 -0800 |
Michael Pavone |
Added support for JR and JRcc in Z80 test generator
|
Mon, 29 Dec 2014 21:24:12 -0800 |
Michael Pavone |
Added support for JPcc in Z80 test generator
|
Mon, 29 Dec 2014 20:56:05 -0800 |
Michael Pavone |
Added support for JP in Z80 test generator
|
Mon, 29 Dec 2014 00:41:36 -0800 |
Michael Pavone |
Add support for Z80 access to VDP via bank area
|
Mon, 29 Dec 2014 00:14:33 -0800 |
Michael Pavone |
Update .hgignore
|
Mon, 29 Dec 2014 00:14:21 -0800 |
Michael Pavone |
Fix flag mask for m68k not
|
Sun, 28 Dec 2014 17:58:43 -0800 |
Michael Pavone |
Fix opsize for sbcd in 68K instruction decoder. This fixes the timer bug in Strider 2
|
Sun, 28 Dec 2014 17:25:36 -0800 |
Michael Pavone |
Removed bcd_add and bcd_sub from runtime.S and generated the logic inline with the rest of abcd and sbcd translation. Fixed some edge cases and undefined flag behavior in the process
|
Sat, 27 Dec 2014 15:49:15 -0800 |
Michael Pavone |
Fix divide by zero exception return address when div instruction is bigger than 1 word
|
Sat, 27 Dec 2014 14:51:50 -0800 |
Michael Pavone |
Decrement address register after fetching source in move with -(ax) dest to avoid bug when src is the dst addres reg
|
Sat, 27 Dec 2014 14:50:50 -0800 |
Michael Pavone |
Uncomment 68000 testcases
|
Sat, 27 Dec 2014 14:50:28 -0800 |
Michael Pavone |
Don't use out of bounds displacements in indexed mode even if our targeted address is out of RAM range
|
Fri, 26 Dec 2014 21:26:25 -0800 |
Michael Pavone |
Fix memory map flags in ztestrun
|
Fri, 26 Dec 2014 20:46:56 -0800 |
Michael Pavone |
Fix mask for bank area in Z80 memory map
|
Fri, 26 Dec 2014 19:38:27 -0800 |
Michael Pavone |
Fix a bug in ori to SR that was swapping USP and SSP inappropriately
|
Fri, 26 Dec 2014 19:37:59 -0800 |
Michael Pavone |
Get Z80 banked access sort of working again
|
Fri, 26 Dec 2014 19:36:41 -0800 |
Michael Pavone |
Fix reg-indirect mode for RBP/R13
|
Fri, 26 Dec 2014 15:46:53 -0800 |
Michael Pavone |
Set int_cycle to CYCLE_NEVER in sync_z80 so that the interrupt routine isn't taken inappropriately now that the kludge in handle_cycle_limit_int has been removed
|
Fri, 26 Dec 2014 15:45:31 -0800 |
Michael Pavone |
Fix a few bugs introduced in the Z80 core from the adjustments to fit with the code gen refactor
|
Fri, 26 Dec 2014 13:42:25 -0800 |
Michael Pavone |
Add Z80 test runner Python script I wrote a while back and forgot to commit
|
Fri, 26 Dec 2014 13:41:45 -0800 |
Michael Pavone |
Update .hgignore
|
Fri, 26 Dec 2014 12:56:53 -0800 |
Michael Pavone |
Fix an off-by-one error in a branch destination in the generation of handle_cycle_limit for the Z80
|
Fri, 26 Dec 2014 12:52:13 -0800 |
Michael Pavone |
Update code->cur before calling z80_get_address_trans in z80_retranslate_inst to avoid any newly translated instructions from being placed in the "buffer zone". Save the current value of the code_info struct for placing the final jmp instruction in the correct place
|
Fri, 26 Dec 2014 12:37:27 -0800 |
Michael Pavone |
Set the byte_swap flag in the M68K core so gen_mem_fun correctly inserts xor instructions for byte access functions
|
Fri, 26 Dec 2014 12:36:54 -0800 |
Michael Pavone |
Add a couple of missing checks for the byte_swap and address_size parameters in gen_mem_fun
|
Fri, 26 Dec 2014 12:34:41 -0800 |
Michael Pavone |
Add in missing generated Z80 helper functions. Fix a small bug in Z80_HALT. Fix generation of save and load context for Z80
|
Mon, 22 Dec 2014 20:55:10 -0800 |
Michael Pavone |
Z80 core is sort of working again
|
Wed, 17 Dec 2014 23:03:19 -0800 |
Michael Pavone |
Get rest of emulator compiling again with Z80 core enabled
|
Wed, 17 Dec 2014 09:53:51 -0800 |
Michael Pavone |
Get Z80 core back into compileable state
|
Sun, 14 Dec 2014 16:45:23 -0800 |
Michael Pavone |
WIP effort to update z80 core for code gen changes
|
Tue, 11 Mar 2014 09:44:47 -0700 |
Michael Pavone |
Split gen_mem_fun out of m68k_core_x86 and make it more generic so it can be used by the Z80 core
|
Sat, 08 Mar 2014 00:15:09 -0800 |
Michael Pavone |
Move translate_m68k_movem to m68k_core.c
|
Fri, 07 Mar 2014 23:26:46 -0800 |
Michael Pavone |
Made m68k_retranslate_inst host-cpu generic and moved it to m68k_core.c
|
Fri, 07 Mar 2014 19:45:05 -0800 |
Michael Pavone |
Minor refactor to translate_m68k_move_ccr_sr and translate_m68k_stop to reduce code duplication
|
Fri, 07 Mar 2014 19:39:51 -0800 |
Michael Pavone |
Use swap_ssp_usp in translate_m68k_move_ccr_sr
|
Fri, 07 Mar 2014 19:35:13 -0800 |
Michael Pavone |
Combine andi ccr/sr and ori ccr/sr.
|
Fri, 07 Mar 2014 17:51:40 -0800 |
Michael Pavone |
Use update_flags instead of individual set_flag calls in a few places
|
Fri, 07 Mar 2014 17:42:29 -0800 |
Michael Pavone |
Refactored translate_m68k so that it contains no host-cpu specific code and moved it to m68k_core.c
|
Wed, 05 Mar 2014 19:26:53 -0800 |
Michael Pavone |
Combine implementations of lea and pea. Update bit instructions to use the op_ family of functions to simplify their implementation a bit.
|
Wed, 05 Mar 2014 09:33:50 -0800 |
Michael Pavone |
Refactor translate_m68k_cmp to use translate_m68k_arith
|
Tue, 04 Mar 2014 22:35:01 -0800 |
Michael Pavone |
Combine the implementation of ABCD and SBCD in the 68K core
|
Tue, 04 Mar 2014 22:24:08 -0800 |
Michael Pavone |
Use translate_m68k_unary for SWAP in 68K core
|
Tue, 04 Mar 2014 22:12:43 -0800 |
Michael Pavone |
Refactor a bunch of the arithmetic instructions in the 68K core to reduce duplicate code
|
Tue, 04 Mar 2014 00:02:20 -0800 |
Michael Pavone |
Small refactor to flag handling in 68K core
|
Mon, 03 Mar 2014 22:22:36 -0800 |
Michael Pavone |
Remove jmp_r from gen_x86.h since it got added to gen.h
|
Mon, 03 Mar 2014 22:17:20 -0800 |
Michael Pavone |
More 68K core refactoring to both reduce the amount of code and better split the host-cpu specific parts from the generic parts
|
Mon, 03 Mar 2014 22:16:41 -0800 |
Michael Pavone |
Enable link time optimization
|
Mon, 03 Mar 2014 21:08:43 -0800 |
Michael Pavone |
Make some small changes in trans so that it is more likely to produce the 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.
|
Sun, 02 Mar 2014 17:53:32 -0800 |
Michael Pavone |
Refactor translat_m68k_src and translate_m68k_dst into a single function
|