log

age author description
Wed, 20 May 2015 23:34:12 -0700 Michael Pavone Better handling of savestate and debug break events with "uncooperative" games/demos
Wed, 20 May 2015 22:27:51 -0700 Michael Pavone Add some tests for hint timing and fix it properly this time.
Wed, 20 May 2015 19:05:11 -0700 Michael Pavone Upgrade to SDL 2.0 and drop support for the non-OpenGL render path
Wed, 20 May 2015 10:35:03 -0700 Michael Pavone Update vscroll latch implementation to be more in line with what Eke-Eke has observed. Revert the change to vdp_cycles_to_line because it breaks hints on line 0. H-Int timing is still a little messed up, but the previous change made things worse.
Tue, 19 May 2015 23:23:53 -0700 Michael Pavone Small correction to VBLANK flag timing. Fixed some inconsistencies in interrupt timing calculation.
Sun, 17 May 2015 20:03:27 -0700 Michael Pavone Make sure z80_save_reg does nothing when there is no register in the reg field of the instruction. This fixes a bug that corrupted SP in the MDEM 2011 demo
Sun, 17 May 2015 19:14:41 -0700 Michael Pavone Call z80_handle_deferred after generating an insruction handler so that instructions like rst work correctly
Sun, 17 May 2015 15:43:20 -0700 Michael Pavone Fix VDP status register PAL bit based on observations of the Titan Overdrive demo
Sun, 17 May 2015 15:41:15 -0700 Michael Pavone Don't overwrite an instruction offset mapping with an extension word value. I really need the ability for a word to be mapped to more than one instruction, but this will be more correct for now
Sun, 17 May 2015 15:40:31 -0700 Michael Pavone Fix crash bug in Z80 interpreter
Sat, 16 May 2015 23:08:07 -0700 Michael Pavone Adjust H32 vint slot in response to latest test ROM data
Sat, 16 May 2015 23:04:57 -0700 Michael Pavone First pass at emulating a vscroll latch. Titan's Overdrive demo seems to depend on the scroll value being latched early in the line before the HINT gets a chance to change it
Sat, 16 May 2015 22:42:26 -0700 Michael Pavone Fix trans so it compiles again
Thu, 14 May 2015 23:17:55 -0700 Michael Pavone Small horizontal interrupt fixes
Thu, 14 May 2015 00:04:22 -0700 Michael Pavone Sync machine state before entering debugger
Wed, 13 May 2015 23:55:02 -0700 Michael Pavone Fix problem with removing breakpoints
Wed, 13 May 2015 19:19:43 -0700 Michael Pavone Add description of cd register value to vr debugger command
Wed, 13 May 2015 19:13:49 -0700 Michael Pavone Properly print equ for named labels that point outside the cartridge area in disassembler
Wed, 13 May 2015 19:13:15 -0700 Michael Pavone Get save state viewer compiling again
Tue, 12 May 2015 19:14:09 -0700 Michael Pavone Save PC to context struct when syncing Z80 at instruction start. This fixes saving savestates and probably the Z80 debugger as well
Mon, 11 May 2015 20:34:33 -0700 Michael Pavone Remove/comment verbose logging added for tracking down sync bug
Mon, 11 May 2015 20:31:59 -0700 Michael Pavone Tiny cleanup
Mon, 11 May 2015 20:30:35 -0700 Michael Pavone Fix frame counter increment and VINT cycle time calculation
Mon, 11 May 2015 20:30:13 -0700 Michael Pavone Fixed a missed call to do_sync when updating SR in 68K core
Mon, 11 May 2015 00:28:47 -0700 Michael Pavone Sync fixes and logging to fix more sync issues
Tue, 05 May 2015 08:42:27 -0700 Michael Pavone Added config option to allow specifying a max sync cycle smaller than the end of frame
Mon, 04 May 2015 08:48:10 -0700 Michael Pavone Indentation fixup
Thu, 30 Apr 2015 19:28:18 -0700 Michael Pavone Adjust TH timeout value to take into account the move to master clock cycles
Thu, 30 Apr 2015 19:28:01 -0700 Michael Pavone Fix missing call to setup_io_devices
Tue, 28 Apr 2015 19:04:36 -0700 Michael Pavone Fix bug in map_native_address that was breaking some self-modifying code in Gunstar Heroes
Sat, 14 Mar 2015 12:05:03 -0700 Michael Pavone WIP of functions to determine size of x86 instruction to allow patching of arbitrary pieces of code
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