log

age author description
Mon, 20 Jul 2015 23:18:29 -0700 Michael Pavone Remove debug printf from EEPROM code
Mon, 20 Jul 2015 23:11:42 -0700 Michael Pavone EEPROM reads now work for NFL Quarterback Club 96
Mon, 20 Jul 2015 22:22:49 -0700 Michael Pavone EEPROM writes now seem to work for NFL Quarterback Club 96
Mon, 20 Jul 2015 21:58:31 -0700 Michael Pavone Remove extraneous define
Mon, 20 Jul 2015 21:43:17 -0700 Michael Pavone Support large flat-mapped ROMs like Bad Apple or that Mortal Kombat hack
Mon, 20 Jul 2015 21:15:34 -0700 Michael Pavone Full support for Sega mapper when it comes to data. Code in remapped sections may not work reliably. SSF2 now works.
Sun, 19 Jul 2015 22:30:40 -0700 Michael Pavone Populate save mask when SRAM is defined in ROM DB rather than cart header
Sun, 19 Jul 2015 20:51:09 -0700 Michael Pavone Fix map for NFL Quarterback Club 96. Fix default EEPROM value. Initial work for supporing Sega mapper in ROM DB
Sat, 18 Jul 2015 10:42:15 -0700 Michael Pavone Merge
Fri, 17 Jul 2015 22:16:33 -0700 Michael Pavone Less broken EEPROM support
Fri, 17 Jul 2015 08:49:23 -0700 Michael Pavone Add ability to change start address for VRAM viewer. Fix handling of DMA enable flag when it comes to DMA fills. This fixes a bug in James Pond 3
Tue, 14 Jul 2015 18:28:05 -0700 Michael Pavone Broken EEPROM support
Fri, 10 Jul 2015 18:46:18 -0700 Michael Pavone Initial work on I2C EEPROM implementation
Tue, 07 Jul 2015 19:33:33 -0700 Michael Pavone Add support for reading cartridge memory map from ROM database, though without EEPROM support for now
Mon, 06 Jul 2015 19:46:46 -0700 Michael Pavone SRAM detection from ROM header is no working correctly again
Sun, 05 Jul 2015 14:21:34 -0700 Michael Pavone WIP changes to support reading cart memory map from ROM DB
Thu, 02 Jul 2015 20:43:01 -0700 Michael Pavone Allow regions to be set in ROM DB. Prefer default region if it is one of the valid regions for the ROM.
Thu, 02 Jul 2015 19:19:06 -0700 Michael Pavone Initial work on ROM database
Sun, 28 Jun 2015 19:23:38 -0700 Michael Pavone Fix sense of HAS_PROC check
Sun, 28 Jun 2015 18:44:11 -0700 Michael Pavone Get "portable" builds working on Linux and add a build time check for whether /proc exists
Sun, 28 Jun 2015 17:16:24 -0700 Michael Pavone Add support for making a "portable" build on OSX to Makefile
Sun, 28 Jun 2015 13:30:17 -0700 Michael Pavone Fix self modifying code checks on platforms like OS X on which guest RAM ends up at an address unreachable with a 32-bit displacement
Sun, 28 Jun 2015 10:21:51 -0700 Michael Pavone Use MAP_32BIT on Linux since my hint seems to be ignored
Sun, 28 Jun 2015 10:12:37 -0700 Michael Pavone Use mmap with a hint rather than sbrk for allocating executable memory within 32-bit displacement range of compiled code
Sun, 28 Jun 2015 09:53:17 -0700 Michael Pavone More clang warning cleanup
Sat, 27 Jun 2015 13:18:55 -0700 Michael Pavone Preserve scratch2 when using it as a temporary in memory read functions. This fixes a bunch of issues with the Z80 core and possibly some issues with the 68K core as well
Sat, 27 Jun 2015 12:17:18 -0700 Michael Pavone Cleanup some warnings under clang through a combination of code fixes and supressing specific warnings
Sat, 27 Jun 2015 11:39:55 -0700 Michael Pavone Handle far calls in call_args and call_args_abi
Thu, 25 Jun 2015 09:02:42 -0700 Michael Pavone Lame placeholder support for floating bus bits of IO hardware. Needs to be replaced with prefetch based values
Mon, 22 Jun 2015 22:00:44 -0700 Michael Pavone Minor cleanup in init_run_cpu
Mon, 22 Jun 2015 22:00:02 -0700 Michael Pavone Fix negative offsets in calc_areg_displace
Mon, 22 Jun 2015 09:22:18 -0700 Michael Pavone Fix handling of address mask in gen_mem_fun
Mon, 22 Jun 2015 09:22:05 -0700 Michael Pavone Fix check for DEBUG in Makefile
Sat, 30 May 2015 15:53:59 -0700 Michael Pavone Fixed shadow/highlight mode
Thu, 28 May 2015 23:05:32 -0700 Michael Pavone Merge
Thu, 28 May 2015 23:04:49 -0700 Michael Pavone Fix crash bug in windows build
Thu, 28 May 2015 22:31:21 -0700 Michael Pavone Get windows build compiling again post-merge
Thu, 28 May 2015 21:19:55 -0700 Michael Pavone Merge windows branch with latest changes
Thu, 28 May 2015 21:09:33 -0700 Michael Pavone Adjusted Makefile to support linking against the static glew library from the standard download
Tue, 01 Apr 2014 21:12:00 -0700 Michael Pavone Make Windows port a little less half-assed
Tue, 01 Apr 2014 19:43:58 -0700 Michael Pavone Initial work on Windows port
Thu, 28 May 2015 00:11:15 -0700 Michael Pavone Fix LFO counter update speed and implement amplitude modulation
Wed, 27 May 2015 20:53:21 -0700 Michael Pavone Add a basic YM-2612 command to the debugger. Fix negative detune values and get the correct precision for the multiplication step of phase inc calculation
Tue, 26 May 2015 22:22:30 -0700 Michael Pavone Fix register to operator mapping for channel 3 special mode
Tue, 26 May 2015 20:00:50 -0700 Michael Pavone Fixes for the 32-bit build accidentally introduced a bug into the 64-bit build, this commit fixes the regression
Mon, 25 May 2015 23:37:13 -0700 Michael Pavone Implement cycles being stolen from 68K when the Z80 accesses the bank area or VDP/PSG. Small fix to code that tries to get system into a consistent state for a savestate
Mon, 25 May 2015 18:56:22 -0700 Michael Pavone Add a define in both the source and Makefile for enabling logging of z80 instruction address/cycle counts. Fix Z80 in/out instructions to eliminate assumptions about which registers are stored in native regs. Fix read_16 to not corrupt the low byte when the read has to call into a C function.
Mon, 25 May 2015 17:08:56 -0700 Michael Pavone Fix RLD and RRD for the case in which HL does not map to a native register
Mon, 25 May 2015 15:01:38 -0700 Michael Pavone Fix crash bug in 32-bit build for certain secnarios with bcd instructions
Mon, 25 May 2015 13:21:24 -0700 Michael Pavone Fix div instruction when dest is d0 in 32-bit build
Sun, 24 May 2015 21:11:18 -0700 Michael Pavone Z80 test cases that passed on 64-bit now pass on 32-bit
Sun, 24 May 2015 15:05:18 -0700 Michael Pavone More bugfixes for the 32-bit build of the Z80 core
Sat, 23 May 2015 20:26:20 -0700 Michael Pavone Fix a bunch of assumptions about which Z80 registers are stored in native registers to make the x86-32 build less broken
Sat, 23 May 2015 20:25:16 -0700 Michael Pavone Generate an error in x86-32 builds for most cases when a REX prefix would be generated
Sat, 23 May 2015 20:24:27 -0700 Michael Pavone Eliminate runtime.S/runtime_32.S.
Fri, 22 May 2015 23:49:32 -0700 Michael Pavone Don't attempt to translate or map code at odd addresses. This fixes a bug that shows up when playing College Footbal USA 96
Fri, 22 May 2015 21:11:41 -0700 Michael Pavone Fix out of bounds memory access when an instruction wraps around the end of memory
Fri, 22 May 2015 18:38:44 -0700 Michael Pavone Fix bug in vdp_next_hint that was causing HINTs to fire repeatedly when they should not have fired at all based on an HINT interval that was larger than the number of active lines in the display
Thu, 21 May 2015 18:37:41 -0700 Michael Pavone Process events while waiting for 68K debugger input. This prevents "not responsive" dialogs when sitting in the debugger
Thu, 21 May 2015 00:55:46 -0700 Michael Pavone Restore the other 2 debug display modes
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
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
Sun, 02 Mar 2014 16:34:29 -0800 Michael Pavone Initial stab at separating the generic parts of the 68K core from the host-cpu specific parts.
Sun, 02 Mar 2014 15:25:52 -0800 Michael Pavone Rename x86_68k_options and m68k_to_x86.h to m68k_options and m68k_core.h respectively
Sun, 02 Mar 2014 14:46:55 -0800 Michael Pavone Small Makefile change that was missed in the last commit
Sun, 02 Mar 2014 14:45:36 -0800 Michael Pavone Refactor gen_x86 to use an interface more like gen_arm and to remove the 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
Sun, 02 Mar 2014 14:41:43 -0800 Michael Pavone Add backtrace (bt) command to 68K debugger
Sat, 01 Mar 2014 17:11:06 -0800 Michael Pavone Add a separate flag/define for disabling the Z80 at compile time to ease refactoring
Sat, 01 Mar 2014 17:07:33 -0800 Michael Pavone Fix PC displacement mode check in disassembler so that jmps involving a register are handled correctly
Mon, 24 Feb 2014 09:55:24 -0800 Michael Pavone Moved some generic stuff from backend.h gen_arm.h and gen_arm.c into gen.h and gen.c. Added a couple fields to cpu_options so that gen_mem_fun can be made guest CPU generic
Mon, 23 Jun 2014 13:12:04 -0400 Mike Pavone Ensure proper stack alignment when the Z80 calls into C code. This fixes a crash in optimized builds on OSX
Mon, 23 Jun 2014 11:46:56 -0400 Mike Pavone Save and restore guest address in the write function for a code memory chunk 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
Mon, 23 Jun 2014 11:05:55 -0400 Mike Pavone Fix x86_rrindex_sizedir. Pass the correct scale to mov_rindexr in gen_mem_fun. BlastEm now sort of works on OS X. Runs reliably from lldb, but only intermittently from the shell
Tue, 17 Jun 2014 01:50:29 -0400 Mike Pavone blastem builds and almost works on OS X now
Mon, 24 Feb 2014 01:30:16 -0800 Mike Pavone Use a typedef code_ptr in place of uint8_t * in 68K core to better support 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.
Mon, 24 Feb 2014 00:50:15 -0800 Mike Pavone Rename x86_backend.h and x86_backend.c to backend.h and backend.c respectively
Mon, 24 Feb 2014 00:40:32 -0800 Michael Pavone Fix build breakage
Mon, 24 Feb 2014 00:39:02 -0800 Michael Pavone Start work on refactoring some of the backend code to allow more sharing between M68K and Z80 cores and possibly also between x86 and the ARM backend when it exists
Sun, 23 Feb 2014 22:17:43 -0800 Michael Pavone Fix ARM code generation and test program
Sun, 23 Feb 2014 21:37:19 -0800 Mike Pavone Added untested code for generating ARM machine code
Sun, 23 Feb 2014 11:52:13 -0800 Mike Pavone Fix typo in Makefile
Wed, 19 Feb 2014 00:44:19 -0800 Michael Pavone Fix type mismatch on headless global that was causing a crash in the vgm player on ARM
Wed, 19 Feb 2014 00:22:27 -0800 Michael Pavone Apart from the Z80 core, BlastEm now supports 32-bit x86
Tue, 18 Feb 2014 23:19:07 -0800 Michael Pavone Properly null terminate string returned by readlink in util.c
Tue, 18 Feb 2014 21:37:31 -0800 Michael Pavone Initial work on the x86-32 target
Tue, 18 Feb 2014 20:32:10 -0800 Michael Pavone Generate get_sr, set_sr and set_ccr at runtime so they can respect the flag_regs setting
Mon, 17 Feb 2014 19:58:37 -0800 Michael Pavone Make references to flags in the M68K core respect the flag_regs options array so that flags can be moved out of registers for the 32-bit port. set/get ccr/sr still need to be updated to support this, but everything else should be done.
Sun, 16 Feb 2014 19:54:27 -0800 Michael Pavone Generate handle_cycle_limit at runtime so it can use the generated save/load_context functions. Since the hand written versions of save/load are no longer used they have been removed.
Sun, 16 Feb 2014 19:21:39 -0800 Michael Pavone Generate native_addr and native_addr_and_sync at runtime so they can use the generated save/load_context functions
Sun, 16 Feb 2014 18:17:59 -0800 Michael Pavone Generate retrans_stub at runtime so it can use the generated save/load_context functions
Sun, 16 Feb 2014 16:50:10 -0800 Michael Pavone Removed old debug print function that is no longer needed
Sat, 15 Feb 2014 22:35:18 -0800 Michael Pavone Get rid of the native stack option the 68K core. Trying to make it work with code that messes with the stack is not worth the trouble.
Sat, 15 Feb 2014 21:25:36 -0800 Michael Pavone Generate m68k_start_context at runtime so it can use the generated load_context and save_context
Fri, 14 Feb 2014 19:56:18 -0800 Michael Pavone Generate save_context and load_context functions at runtime
Thu, 13 Feb 2014 21:34:50 -0800 Mike Pavone Added tag v0.2.0 for changeset 6b7a96d0eda8
Thu, 13 Feb 2014 01:41:40 -0800 Mike Pavone Added CHANGELOG v0.2.0
Thu, 13 Feb 2014 01:21:02 -0800 Mike Pavone Update README
Thu, 13 Feb 2014 00:55:01 -0800 Mike Pavone Better emulation of the YM-2612 busy flag
Thu, 13 Feb 2014 00:10:36 -0800 Mike Pavone Properly sync hardware when frame end is reached during DMA
Wed, 12 Feb 2014 23:35:10 -0800 Mike Pavone Added tag v0.1.0 for changeset 949c7d875693
Wed, 12 Feb 2014 23:32:05 -0800 Mike Pavone Comment out LFO debug printf
Wed, 12 Feb 2014 23:25:48 -0800 Mike Pavone Update version number
Wed, 12 Feb 2014 23:22:02 -0800 Mike Pavone Implement memory writes in GDB remote debugging stub
Wed, 12 Feb 2014 23:21:47 -0800 Mike Pavone Remove defines from blastem.c that had been moved to blastem.h
Wed, 12 Feb 2014 22:25:23 -0800 Mike Pavone Add file that was accidentally omitted from a previous commit
Wed, 12 Feb 2014 22:14:11 -0800 Michael Pavone Fix operator 1 self-feedback
Tue, 11 Feb 2014 23:19:29 -0800 Mike Pavone Support setting registers in gdb remote debugger
Tue, 11 Feb 2014 22:38:47 -0800 Mike Pavone Support single stepping in gdb remote debugger
Tue, 11 Feb 2014 21:53:31 -0800 Mike Pavone Move debugging code outside of main source file
Tue, 11 Feb 2014 21:52:15 -0800 Michael Pavone Merge
Tue, 11 Feb 2014 12:52:28 -0800 Michael Pavone Adjust PSG and YM-2612 volume to be closer to the real console
Tue, 11 Feb 2014 12:45:43 -0800 Michael Pavone Fix overflow handling on FM channel output
Tue, 11 Feb 2014 12:45:15 -0800 Michael Pavone Fix check of fwrite return value in wave_finalize so that the data subchunk size gets written
Sun, 09 Feb 2014 17:16:55 -0800 Mike Pavone Added step and step-over debugger commands. step-over is like next except it doesn't follow conditional branches to lower addresses. This makes it useful for advancing to the end of a loop. Also fixed a bug in next introduced by the refactor.
Sun, 09 Feb 2014 12:35:27 -0800 Mike Pavone Refactor debugger next command
Sun, 09 Feb 2014 10:29:29 -0800 Mike Pavone Properly handle dbcc, rtr and rte in the debugger next command
Sun, 09 Feb 2014 00:42:43 -0800 Mike Pavone Properly handle jmp instructions in the debugger next command
Sat, 08 Feb 2014 23:37:09 -0800 Mike Pavone Initial GDB remote debugging support. Lacks some features, but breakpoints and basic inspection of registers and memory work.
Fri, 07 Feb 2014 21:18:05 -0800 Michael Pavone Implement per-channel wave logging and primitive looping support in vgm player.
Fri, 07 Feb 2014 00:41:51 -0800 Michael Pavone Properly clamp envelope value to zero when it overflows during the attack phase. This fixes a number of instruments that sounded rather wrong as well as the missing melody line from Mushroom Hill Zone in Sonic and Knuckles
Fri, 07 Feb 2014 00:21:56 -0800 Michael Pavone Increment sample pointer after reading a sample in VGM player
Thu, 06 Feb 2014 22:18:19 -0800 Michael Pavone Add support for VGM 1.50 PCM data blocks
Thu, 06 Feb 2014 10:04:31 -0800 Michael Pavone Add a zp command to the 68K debugger to allow printing Z80 registers while in the 68K debugger
Thu, 06 Feb 2014 10:03:59 -0800 Michael Pavone Fix accidental use of the conditional jump instruction jp instead of jmp
Mon, 03 Feb 2014 09:18:10 -0800 Michael Pavone Initial attempt at emulating extended bank area access delays when 68K bus is busy with VDP stuff. Also emulate the extra delay on the second access of a word-wide read to the bank area. Needs work as it seems to break stuff.
Tue, 28 Jan 2014 08:36:06 -0800 Michael Pavone Add 3 wait states to Z80 access to bank area since that seems to be roughly the average in normal usage
Mon, 27 Jan 2014 22:12:22 -0800 Michael Pavone Fix timing of certain ld and jp instructions in the Z80 core
Mon, 06 Jan 2014 22:54:05 -0800 Michael Pavone The local clone on my laptop got messed up and some changes had not been pushed. This commit represents the status of the working copy from that clone. It unfortunately contains some changes that I did not intend to commit yet, but this seems like the best option at the moment.
Thu, 31 Oct 2013 01:00:32 -0700 Mike Pavone Add support for left and right shift keys
Thu, 31 Oct 2013 00:28:27 -0700 Mike Pavone Small optimization for H40 mode
Tue, 29 Oct 2013 23:13:15 -0700 Mike Pavone Fix allocation and memset size for field buffers when using OpenGL
Tue, 29 Oct 2013 19:11:45 -0700 Mike Pavone Use OpenGL by default. Add OpenGL switch to help text
Tue, 29 Oct 2013 19:09:19 -0700 Mike Pavone Preserve aspect ratio unless config file says otherwise
Tue, 29 Oct 2013 00:03:11 -0700 Mike Pavone Merge
Mon, 28 Oct 2013 23:59:59 -0700 Mike Pavone Pull shader file names from config file.
Mon, 28 Oct 2013 23:50:28 -0700 Mike Pavone Move shader files to their own directory. Read shaders from /.config/blastem/shaders or from path_to_exe/shaders instead of the current working directory.
Mon, 28 Oct 2013 21:48:46 -0700 Mike Pavone Extract function to determine executable directory from load_config so it can be used elsewhere
Mon, 28 Oct 2013 19:37:30 -0700 Mike Pavone Allow OpenGL support to be disabled at compile time. Move generic utility functions out of config.c
Mon, 07 Oct 2013 10:02:08 -0700 Mike Pavone Initial implementation of sprite overflow and sprite collision status register flags
Fri, 04 Oct 2013 20:16:18 -0700 Mike Pavone Add support for UI bindings on gamepad buttons and dpads
Sun, 27 Oct 2013 22:08:02 -0700 Mike Pavone Merged OpenGL branch
Sun, 27 Oct 2013 22:07:43 -0700 Mike Pavone Close OpenGL feature branch opengl
Sun, 27 Oct 2013 21:58:03 -0700 Mike Pavone Enable fullscreen mode in OpenGL renderer opengl
Sun, 27 Oct 2013 21:41:21 -0700 Mike Pavone Support interlace mode with OpenGL backend opengl
Sun, 27 Oct 2013 01:29:50 -0700 Mike Pavone Basic OpenGL rendering is working opengl
Sat, 26 Oct 2013 22:38:47 -0700 Mike Pavone Update opengl branch from default. Fix build breakage unrelated to merge opengl
Thu, 03 Oct 2013 21:22:05 -0700 Mike Pavone Add an FPS counter to the title bar
Thu, 03 Oct 2013 21:21:47 -0700 Mike Pavone Follow amd64 ABI stack alignment requirements in places it matters so we can call sprintf with floating point arguments without crashing
Thu, 03 Oct 2013 21:20:29 -0700 Mike Pavone Add support for test instruction to x86 generator library
Tue, 01 Oct 2013 23:51:16 -0700 Mike Pavone Implement turbo/slow motion feature that overclocks or underclocks the entire system at the push of a button
Wed, 18 Sep 2013 19:10:54 -0700 Mike Pavone Theoretically more correct timing of Z80 bus request
Tue, 17 Sep 2013 19:10:00 -0700 Mike Pavone Set VBLANK flag in status register when display is disabled
Tue, 17 Sep 2013 09:45:14 -0700 Mike Pavone Implement HV counter latch
Tue, 17 Sep 2013 00:42:49 -0700 Mike Pavone Implement funny behavior for DMA fill to CRAM and VSRAM. Return VSRAM address 0 for reads to VSRAM at >= 40
Tue, 17 Sep 2013 00:11:45 -0700 Mike Pavone Fix DMA fill so that it does not cause observable changes to the FIFO. Get DMA copy mostly correct from an observable ffect perspective. DMA copy probably does not reflect internal implementation still given that evidence seems to suggest no FIFO usage at all.
Mon, 16 Sep 2013 09:44:22 -0700 Mike Pavone Partial fix for DMA copy
Sun, 15 Sep 2013 23:49:09 -0700 Mike Pavone Clear the low 2 bits of CD when a register is written to
Sun, 15 Sep 2013 23:40:18 -0700 Mike Pavone Don't allow register writes to regs above when in Mode 4
Sun, 15 Sep 2013 23:33:24 -0700 Mike Pavone Remove read pending stuff, that had been added in an attempt to fix CRAM/VSRAM undefined bit results. Set number of bits actually saved in VSRAM to 11
Sun, 15 Sep 2013 23:00:17 -0700 Mike Pavone Implement undocumented 8-bit VRAM read
Sun, 15 Sep 2013 22:43:01 -0700 Mike Pavone Fix VSRAM reads
Sun, 15 Sep 2013 22:20:43 -0700 Mike Pavone Implement FIFO as a ring buffer so the behavior of reads from invalid CRAM and VSRAM bits can be implemented properly
Fri, 13 Sep 2013 19:22:46 -0700 Mike Pavone Properly delay 68K on VDP reads. Dummy VDP test port implementation. Initial stab at handling undefined bits of VSRAM and CRAM.
Wed, 11 Sep 2013 19:26:35 -0700 Mike Pavone Fix argument handling so that the rom filename does not need to be specified first
Wed, 11 Sep 2013 00:08:33 -0700 Mike Pavone Added README file v0.1.0
Tue, 10 Sep 2013 23:31:08 -0700 Mike Pavone Added copyright notice to source files and added GPL license text in COPYING
Tue, 10 Sep 2013 21:20:54 -0700 Mike Pavone Fix vgmplay
Tue, 10 Sep 2013 21:07:13 -0700 Mike Pavone Fix stateview. Update "all" target in Makefile.
Tue, 10 Sep 2013 20:36:05 -0700 Mike Pavone Added version flag
Tue, 10 Sep 2013 20:32:59 -0700 Mike Pavone Added -h help text option
Tue, 10 Sep 2013 09:55:12 -0700 Mike Pavone Fix timing of backdrop rendering when the display is turned off
Tue, 10 Sep 2013 00:30:39 -0700 Mike Pavone Merge
Tue, 10 Sep 2013 00:29:46 -0700 Mike Pavone Implement FIFO latency and improve DMA accuracy
Sun, 08 Sep 2013 20:48:33 -0700 Mike Pavone Revert change to VBLANK flag timing based on new direct color DMA test
Sun, 08 Sep 2013 20:47:01 -0700 Mike Pavone Remove extra 68K/VDP cycle sync
Sun, 08 Sep 2013 20:46:25 -0700 Mike Pavone Fix bit instruction timing
Wed, 04 Sep 2013 19:34:19 -0700 Mike Pavone Initial work on GDB remote debugging support
Mon, 02 Sep 2013 01:03:08 -0700 Mike Pavone Added analysis script used for investigating direct color DMA timing
Mon, 02 Sep 2013 01:02:18 -0700 Mike Pavone Fix per-column scrolling bug
Mon, 02 Sep 2013 00:20:56 -0700 Mike Pavone Adjust VBLANK flag and refresh timing to be in line with logic analyzer and visual observations of direct color DMA demos. Remove debug print statements.
Sun, 01 Sep 2013 14:27:17 -0700 Mike Pavone Merge
Fri, 26 Jul 2013 19:55:04 -0700 Mike Pavone Added support for saving savestates. Added gst savestate format test harness
Sun, 01 Sep 2013 12:11:28 -0700 Mike Pavone Fix bug that caused a DMA fill to start after another DMA operation completed if the FIFO is not empty
Tue, 23 Jul 2013 23:01:03 -0700 Mike Pavone Started work on OpenGL support in new branch opengl
Sat, 20 Jul 2013 23:49:31 -0700 Mike Pavone Fix handling of key on in YM2612 core
Sat, 20 Jul 2013 23:40:28 -0700 Mike Pavone Fix performance regression from stop instruction work
Fri, 19 Jul 2013 22:44:00 -0700 Mike Pavone Implement 68K stop instruction
Thu, 18 Jul 2013 09:59:39 -0700 Mike Pavone Add config values for audio sample rate and buffer size
Wed, 17 Jul 2013 22:26:11 -0700 Mike Pavone Add fullscreen support and add a keybinding for exiting the emulator
Wed, 17 Jul 2013 00:23:45 -0700 Mike Pavone Fix sign flag on swap
Wed, 17 Jul 2013 00:18:28 -0700 Mike Pavone Fix carry flag on rotate when the register provided rotate bit count is exactly 32
Wed, 17 Jul 2013 00:17:42 -0700 Mike Pavone Add a bunch of 68K test cases for single operand instructions
Tue, 16 Jul 2013 23:16:50 -0700 Mike Pavone Fix 68K test harness
Tue, 16 Jul 2013 23:16:38 -0700 Mike Pavone Add support for single operand instructions to 68K test generator
Tue, 16 Jul 2013 23:16:14 -0700 Mike Pavone Add address/cd registers to VDP debug message
Mon, 15 Jul 2013 23:07:45 -0700 Mike Pavone Restore one of the VDP debugging modes
Fri, 12 Jul 2013 19:11:55 -0700 Mike Pavone Implement the scroll ring buffer properly without memcpy
Thu, 11 Jul 2013 08:34:38 -0700 Mike Pavone Updated todo list
Wed, 10 Jul 2013 23:55:11 -0700 Mike Pavone Read default region from config file
Wed, 10 Jul 2013 23:52:09 -0700 Mike Pavone Read default render width from config file
Wed, 10 Jul 2013 23:47:48 -0700 Mike Pavone Read joystick bindings from config file
Wed, 10 Jul 2013 22:48:17 -0700 Mike Pavone Read key bindings from config file
Wed, 10 Jul 2013 09:38:05 -0700 Mike Pavone Add config file parser and default config file
Tue, 09 Jul 2013 20:51:42 -0700 Mike Pavone Added ternary tree implementation and a simple test program for it
Sun, 07 Jul 2013 15:05:50 -0700 Mike Pavone Last set of changes to analyze.py from when I was last working on reversing the VDP
Sun, 30 Jun 2013 21:45:23 -0700 Mike Pavone Refactor duplicated CRAM writing code and fix a bug in the process
Sun, 30 Jun 2013 11:45:58 -0700 Mike Pavone Make VDP render in native pixel format of the renderer for a modest performance gain and to make it easier to use OpenGL for rendering
Sat, 29 Jun 2013 17:21:19 -0700 Mike Pavone Forgot to null initialize the statfile pointer
Sat, 29 Jun 2013 17:15:08 -0700 Mike Pavone Add support for loading GST format savestates
Tue, 25 Jun 2013 23:18:57 -0700 Mike Pavone Use the registers that were freed up by the memory map function changes
Tue, 25 Jun 2013 23:03:25 -0700 Mike Pavone Change default resolution to 640x480
Tue, 25 Jun 2013 19:20:39 -0700 Mike Pavone Move IO code to a separate file and do a tiny bit of refactoring
Mon, 24 Jun 2013 21:32:25 -0700 Mike Pavone Fix access to int_enable_cycle in EI
Mon, 24 Jun 2013 21:30:38 -0700 Mike Pavone Cleanup makefile and link math library
Sun, 23 Jun 2013 22:27:12 -0700 Mike Pavone Implement basic joystick support
Sun, 23 Jun 2013 12:27:11 -0700 Mike Pavone Fix window layer in double res interlace mode
Sun, 23 Jun 2013 11:25:56 -0700 Mike Pavone Change buffer size to avoid weird artifacts on some systems
Sun, 23 Jun 2013 10:17:40 -0700 Mike Pavone Fix sprite y mask in interlace mode. Fix framebuffer selection when switching out of interlace mode.
Sun, 23 Jun 2013 09:17:19 -0700 Mike Pavone Fix vscroll calculation in double resultion interlace mode
Sat, 22 Jun 2013 21:19:43 -0700 Mike Pavone Initial work on interlace
Wed, 19 Jun 2013 00:40:13 -0700 Mike Pavone Fix movem with pc displacement or pc indexed source
Wed, 19 Jun 2013 00:25:09 -0700 Mike Pavone Initial stab at LFO phase modulation
Wed, 19 Jun 2013 00:24:59 -0700 Mike Pavone Use a slightly more sane PSG volume divider. Stil seems too loud, need to check the real hardware.
Mon, 17 Jun 2013 19:34:47 -0700 Mike Pavone Process events in vgm player so that quitting works
Mon, 17 Jun 2013 00:54:14 -0700 Mike Pavone Add primitive vgm player for testing
Sun, 16 Jun 2013 17:57:57 -0700 Mike Pavone Add support for logging YM2612 channels to WAVE files
Sun, 16 Jun 2013 13:42:13 -0700 Mike Pavone Fix modulation condition for operator 2
Sun, 16 Jun 2013 13:25:45 -0700 Mike Pavone Implement writes from 68K to Z80 bank register and make reads from port c control register return 0 again
Sun, 16 Jun 2013 11:59:45 -0700 Mike Pavone Minor refactor of io_read functions to avoid duplication of logic between byte and word versions
Sun, 16 Jun 2013 00:56:23 -0700 Mike Pavone Fix YM2612 timers
Sat, 15 Jun 2013 23:50:59 -0700 Mike Pavone Assert z80 interrupt longer so that they are not missed when they should not be
Sat, 15 Jun 2013 23:10:48 -0700 Mike Pavone Fix DI
Sat, 15 Jun 2013 23:10:37 -0700 Mike Pavone Have test generator test both flag register 0 case and flag register FF case
Fri, 14 Jun 2013 23:27:01 -0700 Mike Pavone Fix adc and sbc
Fri, 14 Jun 2013 00:25:04 -0700 Mike Pavone Make keybindings data driven so they can be populated from a config file later
Thu, 13 Jun 2013 22:23:15 -0700 Mike Pavone Fix LDIR
Tue, 11 Jun 2013 23:36:18 -0700 Mike Pavone Fix output of algorithm 4 and make some other minor YM2612 core improvements
Tue, 11 Jun 2013 23:10:33 -0700 Mike Pavone Add debugger command for saving Z80 RAM to a file
Tue, 11 Jun 2013 23:09:57 -0700 Mike Pavone Bail out on attempt to run code from bank area until it is properly supported
Sun, 09 Jun 2013 02:38:56 -0700 Mike Pavone Fix address adjustement in z80_retrans_stub
Sun, 09 Jun 2013 02:03:26 -0700 Mike Pavone Z80 debugger improvements
Sat, 08 Jun 2013 12:59:23 -0700 Mike Pavone Check memory results in ztestgen
Sat, 08 Jun 2013 11:31:52 -0700 Mike Pavone Use a call instruction to figure out the original native address when retranslating so that it does not get lost when the byte transforms from a instruction word to extension word
Thu, 06 Jun 2013 08:45:54 -0700 Mike Pavone Removed out of date TODO
Thu, 06 Jun 2013 08:19:25 -0700 Mike Pavone Fix LDD and LDDR
Wed, 05 Jun 2013 22:55:23 -0700 Mike Pavone Fix dec and inc when the operand is in memory
Wed, 05 Jun 2013 19:26:02 -0700 Mike Pavone Fix channel mapping in key on/off register
Wed, 05 Jun 2013 18:47:39 -0700 Mike Pavone Fix LDI
Tue, 04 Jun 2013 22:30:49 -0700 Mike Pavone Fix set/res when the operand is in memory
Tue, 04 Jun 2013 21:23:12 -0700 Mike Pavone Initial implementation of channel 3 special mode
Tue, 04 Jun 2013 09:16:41 -0700 Mike Pavone Fix operator precedence bug with sustain level
Mon, 03 Jun 2013 23:44:11 -0700 Mike Pavone Fix modulation shift value
Mon, 03 Jun 2013 21:43:38 -0700 Mike Pavone Make the PSG and YM2612 use the master clock internal with an increment based on clock divider so that they stay perflectly in sync. Run both the PSG and YM2612 whenver one of them needs to be run.
Sun, 02 Jun 2013 22:37:48 -0700 Mike Pavone Make shift value of operator output to modulation input a define
Sun, 02 Jun 2013 22:33:27 -0700 Mike Pavone Adjust shift for feedback
Sun, 02 Jun 2013 22:30:41 -0700 Mike Pavone Initial stab at feedback
Sun, 02 Jun 2013 21:52:42 -0700 Mike Pavone Fix key scaling
Sun, 02 Jun 2013 21:38:18 -0700 Mike Pavone Clear IFF1 and IFF2 when an interrupt is taken on the Z80
Sun, 02 Jun 2013 21:12:43 -0700 Mike Pavone Fix YM2612 busy flag
Sun, 02 Jun 2013 21:12:26 -0700 Mike Pavone Fix cycle count for inc and dec
Sun, 02 Jun 2013 20:14:27 -0700 Mike Pavone Bunch of Z80 debugger improvements
Sun, 02 Jun 2013 13:42:33 -0700 Mike Pavone Use signed ints for things that represent signed values in YM2612 core
Sun, 02 Jun 2013 00:00:22 -0700 Mike Pavone Fix register to operator mapping. Fix rate table generation. Add TL to envelope value rather than using it as a limit for the attack phase.
Fri, 31 May 2013 21:30:11 -0700 Mike Pavone Fix left/right enable default value
Fri, 31 May 2013 20:47:34 -0700 Mike Pavone Make the n command in the Z80 debugger actually run the next instruction without needing a c command
Fri, 31 May 2013 20:46:56 -0700 Mike Pavone Fix P condition in Z80 core
Fri, 31 May 2013 19:43:13 -0700 Mike Pavone Partial implementation of Z80 debugger
Wed, 29 May 2013 21:21:14 -0700 Mike Pavone Actually save the shifted phase inc after applying the block shift
Wed, 29 May 2013 00:57:19 -0700 Mike Pavone Incredibly broken YM2612 support plus a fix to Z80 bus request
Wed, 29 May 2013 00:13:48 -0700 Mike Pavone Fix push AF
Mon, 27 May 2013 22:19:11 -0700 Mike Pavone YM2612 WIP update
Mon, 27 May 2013 20:56:02 -0700 Mike Pavone Fix deadlock on quit
Mon, 27 May 2013 20:37:55 -0700 Mike Pavone Fix sizeof expression passed to malloc in z80_init to avoid a minor memory error
Mon, 27 May 2013 09:54:58 -0700 Mike Pavone YM2612 WIP snapshot before register refactor
Fri, 24 May 2013 00:41:54 -0700 Mike Pavone Make Z80 writes to VDP/PSG not potentially crash the emulator
Fri, 24 May 2013 00:26:27 -0700 Mike Pavone Allow VDP/PSG writes from Z80
Thu, 23 May 2013 23:55:42 -0700 Mike Pavone Get rid of debug puts and limit based on audio rather than frame rate by default.
Thu, 23 May 2013 23:51:49 -0700 Mike Pavone Fix clipping in PSG core
Thu, 23 May 2013 23:42:42 -0700 Mike Pavone Initial PSG support. Mostly works, noise channel is borked though.
Wed, 22 May 2013 09:37:02 -0700 Mike Pavone Updated todo list
Tue, 21 May 2013 23:29:48 -0700 Mike Pavone Finish SRAM support for games without a SEGA mapper
Tue, 21 May 2013 22:08:59 -0700 Mike Pavone Support for SRAM with SEGA mapper. Half-finished support for SRAM without SEGA mapper.
Tue, 21 May 2013 19:26:20 -0700 Mike Pavone Refactor code gen for read/write functions
Tue, 21 May 2013 01:14:59 -0700 Mike Pavone Fix some minor copy pasta bugs that resulted in an unnecessary REX prefix being generated for some instructions
Tue, 21 May 2013 01:10:04 -0700 Mike Pavone m68k_trap is now replaced with a generated one so it can call the generated memory acccess functions. The old static memory access functions have been removed from runtime.S
Tue, 21 May 2013 00:56:56 -0700 Mike Pavone Generate handle_cycle_limit_int at runtime so it can refer to the runtime generated memory map functions
Sun, 19 May 2013 18:40:34 -0700 Mike Pavone Fix a region detection bug
Sun, 19 May 2013 13:47:47 -0700 Mike Pavone Don't sync the 68K clock to the VDP clock unless the 68K had to wait for the VDP. This unfortunately breaks the direct color DMA demos, but should be more correct overall.
Sun, 19 May 2013 11:38:15 -0700 Mike Pavone Handle busack across frame boundary
Sat, 18 May 2013 11:44:42 -0700 Mike Pavone Mostly working runtime generation of memory map read/write functions
Thu, 16 May 2013 09:37:53 -0700 Mike Pavone Get frame time correct and frame rate sort of correct for EUR region
Wed, 15 May 2013 23:51:22 -0700 Mike Pavone Support regions other than USA
Wed, 15 May 2013 23:32:21 -0700 Mike Pavone Set window title based on ROM header name
Wed, 15 May 2013 22:39:36 -0700 Mike Pavone Increase sample size for min_delay
Wed, 15 May 2013 22:37:25 -0700 Mike Pavone Re-enable frame limit, but add a command line flag to disable it
Wed, 15 May 2013 22:37:04 -0700 Mike Pavone Fix background color regsiter number
Tue, 14 May 2013 22:52:15 -0700 Mike Pavone Fix a stupid bug in z80 busreq acknowledge delay code and make some small improvements there too
Tue, 14 May 2013 21:59:56 -0700 Mike Pavone Some Z80 interrupt fixes
Tue, 14 May 2013 00:46:34 -0700 Mike Pavone Only latch video mode at the very beginning of the frame to avoid problems with the cycle count getting out of sync with what I expect
Tue, 14 May 2013 00:40:10 -0700 Mike Pavone Update Z80 vint timing
Tue, 14 May 2013 00:28:45 -0700 Mike Pavone Update hv counter calculation for clock wonkiness
Tue, 14 May 2013 00:03:26 -0700 Mike Pavone Fixup VINT cycle and HBLANK flag for the previous timing fixes
Mon, 13 May 2013 23:42:52 -0700 Mike Pavone Initial stab at implementing funky clock adjustments during HSYNC for H40 mode
Mon, 13 May 2013 21:52:33 -0700 Mike Pavone Implement first line/last line weirdness in VDP
Mon, 13 May 2013 21:36:33 -0700 Mike Pavone Fewer magic numbers in the VDP core for the win
Mon, 13 May 2013 21:06:08 -0700 Mike Pavone Added some basic VDP debugging features to debugger. Fixed DMA enable bug
Mon, 13 May 2013 21:05:49 -0700 Mike Pavone Added more 68K test cases
Sun, 12 May 2013 01:34:29 -0700 Mike Pavone Fixed decoding of CHK destination
Sun, 12 May 2013 01:34:17 -0700 Mike Pavone Fix retrun address calculation for CHK exceptions
Sat, 11 May 2013 23:59:20 -0700 Mike Pavone Properly mask sprite X and Y coordinates
Sat, 11 May 2013 22:45:05 -0700 Mike Pavone Remove z80_ram reference in SDL renderer to get stateview compiling again. Print out the sprite list in stateview.
Sat, 11 May 2013 21:19:31 -0700 Mike Pavone Don't update interrupt mask on non-interrupt exceptions
Sat, 11 May 2013 01:57:41 -0700 Mike Pavone Fix check for code writes
Sat, 11 May 2013 01:38:57 -0700 Mike Pavone Port instruction retranslation improvements from Z80 core to M68K core
Fri, 10 May 2013 23:16:06 -0700 Mike Pavone Implement hblank flag in status register
Fri, 10 May 2013 22:57:56 -0700 Mike Pavone Initial stab at horizontal interrupts and improving accuracy of vertical interrupts. Also added the VINT pending flag to status port.
Thu, 09 May 2013 20:59:49 -0700 Mike Pavone Add YM2612 stubs to transz80
Thu, 09 May 2013 20:09:49 -0700 Mike Pavone Fix return address for RST
Thu, 09 May 2013 19:38:28 -0700 Mike Pavone Show absolute addresses for JR, JRCC and DJNZ in Z80 disassembler
Thu, 09 May 2013 19:24:18 -0700 Mike Pavone Fix terminal instruction detection in disassembler
Thu, 09 May 2013 18:36:21 -0700 Mike Pavone Properly handle instructions that use boty IYH and IYL
Thu, 09 May 2013 00:33:06 -0700 Mike Pavone Set the N flag to the correct value for DEC instructions
Thu, 09 May 2013 00:30:55 -0700 Mike Pavone Implement carry flag for shift instructions. Implement weird behavior for bit 0 of SLL. Fix missing break statement in SRL.
Thu, 09 May 2013 00:17:12 -0700 Mike Pavone Correctly set the N flag for SBC
Thu, 09 May 2013 00:14:54 -0700 Mike Pavone Deal with the fact that there's no 8-bit version of the BT family of instructions on x86
Wed, 08 May 2013 23:44:49 -0700 Mike Pavone Complete flag behavior for Z80 BIT instruction
Wed, 08 May 2013 23:31:19 -0700 Mike Pavone Properly handle negative displacements in Z80 core
Wed, 08 May 2013 23:29:21 -0700 Mike Pavone Contrary to the official documenation, OR and AND also set PV based on parity instead of overflow
Wed, 08 May 2013 23:20:41 -0700 Mike Pavone Set PV flag based on parity, not overflow for XOR
Wed, 08 May 2013 23:17:54 -0700 Mike Pavone BIT was setting the zero flag to the opposite of what it should have. This is now fixed.
Wed, 08 May 2013 23:12:08 -0700 Mike Pavone More fixes for confusion between Z80_UNUSED and MODE_UNUSED