log

age author description
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