BizHawk 1.1.0 Released!
In this release we have imported bsnes
(v87) for a SNES
core, as well as Gambatte (r344) for GB and GBC cores!
I assume everyone is familiar with bsnes
and is accuracy reputation. Gambatte is the most accurate open source GB/GBC core we could find, as evidenced by the GB Accuracy Tests
In addition there is a massive list of features and fixes. Too many to summarize in this post, so see the Release Notes
Released: September 22, 2012
Revision Range 2695 - 3153
SNESHawk Released! Using BSNES
GBHawk and GBCHawk Released! Using the Gambatte r344 core
Autohold and Autohold Clear hotkeys (Same functionality as FCEUX)
Support ability to autohold autofire keys
Implement Hard Reset as an option (for cores that implement it) and a separate menu item for Reboot Core (formerly called Hard Reset). For cores that support it, it is now recordable.
Don´t reset frame counter on Soft or Hard Reset
Hotkeys for SNES
Re-add Frame Adv. - Skip Lag Frames option
Turbo hotkey (default mapping of Shift+TAB) - Like fastforward but also does maximum frame skip, bypasses auto-minimize skipping, ramps up frame skip to 20´, and doesn´t update tool dialogs
Archive Chooser - sort entries by region, add hotkeys 1-9 that select items 1-9 respectively
Archive Chooser - automatically highlight the first entry on load
Message Config - single click on color pickers
Option to put the OSD into AVI and Screenshot Capture
Fix error where loading a post-movie savestate (a state made in movie finished mode) during read+write would not set to movie finish, causing potential desyncs
Fix a potential timeline change when loading a post-movie savestate from another timeline while in read-only mode
Fix a regression that happened at some point where the movie is not truncated on a loadstate that triggers record mode (instead it would keep the entire movie in the savestate and record over each frame, this would leave garbage data that could lead to potential desyncs)
and LSNES movie importing.
VMV importing now supports resets.
Add a backup movie path in path config (defaults to Moviesackup)
Play Movie Dialog - fix duplicate movie bug
Record Dialog - do not prompt to overwrite on save file dialog (otherwise the user is asked twice when the main dialog asks)
Fixes to logic that determines when to go into and out of Movie finished mode (especially when in TAStudio)
Don´t allow Soft/Hard Reset menu item/hotkeys to be pressed while a movie is in playback mode
When starting a new movie, save the old one
Show lag frames in Red
Fix some out of bounds exceptions when scrolling the movie list and rewinding
Fix exceptions when rewinding in movie finished mode
Fix exception when loading states in record mode
On Rewind button - fix logic when movie is finished or inactive
Implement editing functions: Clear, Delete, Clone, Insert, Insert # Frames, Copy, **Past, Paste Insert, Cut, Select All, Truncate Movie
Re-hook up double click event on frame list
Pause emulator on TAStudio load
Hook up Ctrl+Mousewheel to frame advance and rewind events
Implement the ROM File domain across any core (opens up the ROM file itself)
Implement text area highlighting
Fix domain resetting to the default on restart
Hook up Poke dialog
Addresses now update on restart
Pass domain to Ram Watch on the "Add to Ram Watch" feature
Fix inability to paste into find box when in hex mode
Display number of addresses in Hex
Text option in Find Box, this feature converts text to its byte codes and searches that byte array
Implement Save, and Save ROM file menu options
Multiple Memory Domain support within the same watch
Domain Column and ability to toggle it
On Screen Drawing - fix updating on loadstate, no longer shows a garble of the old and new values
Fix bug where values are not updating after a power cycle/rom load/movie load
If both auto-load and display on screen are set, don´t load the dialog when loading the emulator (just load the watches on screen)
Fix endless exceptions when loading different ram watch files
Major speed improvements!
Fix poking of signed and hex values
Set signed value on load (based on the address being poked)
On load and signed type change, display the value in the value box accordingly
Make the Value textbox the default highlighted value
Move lua events to the end of the frame loop
Fix lua drawing from disappearing while paused, only have it update once per frame (performance boost), and have it draw before frame advance
Various hitbox lua scripts
Implement lua bitwise functions: bit.band(), bit.lshift(), bit.rshift(), bit.rol(), bit.ror(), bit.bor(), bit.bxor(), bit.bnot()
Implement the compare value
Fix emulator freeze with bad config files
Game Genie button when an NES
game is loaded
Fix losing of values on restart
Editing of a cheat now flags changes
On Emulator load - if it loads an empty dont show "Cheats file loaded" message
Show mapping conflicts with hotkeys (but still allow them)
Allow mapping of a single key to both hotkey and input (and any combinations of both)
Update number of scripts(and active count) when deleting a script
Palette config dialog
Graphics Debugger dialog
Implement mappers 50, 91, 197, 219
AxROM (Mapper 7) - make all AOROM games not emulate bus conflicts, fixes various **Wheel of Fortune games, Double Dare, and Jeopardy
Support Game Genie codes!
Game Genie Encoder/Decoder - fix inability to paste into Code box
Fix display on domains with more than 4 digits
Speedups! About a 10fps increase in speed (on an i7)
Don´t record lag frame status into movies, it is not necessary for TAStudio anymore
Implement address poking on the system bus domain
Nametable Viewer - major speedups (about 10fps faster)
PPU Viewer - improved speed
Add Gun.Smoke (KR) to database
add CJ Elephant Fugitive dump to GameGear DB CodeMasters mapper
Fix iso handling
Released August 03, 2012
Revision range 2470 - 2694
Input Config - fix bug where auto-tab setting was not being respected when changing controllers or consoles
Play Movie - fix movie time calculation
Fix lag counter display where lag frame drawing did not use the anchoring property
Fix bug when Run in Background is Disabled, emulator will now remember if the emulator was paused before losing focus, if it was, it will not unpause when activated.
Add command-line option for automated dumping. command line example: bizhawk.multiclient --dump-type=ffmpeg --dump-name=foobar.avi --dump-length=1000
Added Display filters: 2xSAI
, Super 2xSAI
, Super Eagle
Add Hotkey for toggling background input1
Lag frame "alert" status updates on loadstate
Add Increase/Decrease Speed hotkeys
Add a bunch of on screen messages for various menu item toggles
"Never be asked to save changes" config menu item
Fix bug on load where dialog assumes a movie is loaded
Fix issue where mario bros 3. gets auxilary files created as mario bros.
Lua console - fix to autoload lua session, if there is no recent session, it will open nothing, rather than cause an exception
Lua console - Improved Lua Function List dialog, including parameters and return values, and column sorting
Lua - fix crash when scripts terminate
New Lua Functions (for details see [LuaFunctions.])
A new library: forms, for creating custom dialog boxes through Lua
forms.create(), forms.destroy(), and forms.destroyall()
forms.textbox(), forms.label(), forms.button()
forms.addclick(), forms.clearclicks(), forms.settext(), forms.setlocation(), forms.setsize(),
Fix "Strange "White noise" sound during 1943 (USA) intro" as well as a boatload of aesthetic improvements to make the sound output not so embarassing.
Implement mappers 45, 52, 57, 58, 60, 61, 62, 74, 88, 96, 112, 154, 164, 192, 193, 194, 200, 201, 205, 207, 225, 226, 228 (Action 52), 230, 231, 233, 234, 243, 245, 246
Implement a Sound Config Dialog to toggle individual sound channels
Nametable Viewer - draw immediately when loading the dialog
Nametable Viewer - Show address block in tooltip on nametable selection radios
Better handling of bus conflict emulation on AOROM boards, fixes Wheel of Fortune
Fix Xing Ji Wu Shi (Ch)
Fix a PAL bug
Add a BG Viewer dialog
Revision range 2423 - 2469
Released July 05, 2012
If potential desyncs in savestates on MMC3 mappers. Note, this breaks NES
savestates made on prior versions of BizHawk.
Sort out some bus conflict flags for CNROM games to fix colorful dragon (unl) sachen.
Implement mappers 15, 116, 178, 241
Removed speed hack on sound off; bypassing APU has caused desyncs.
Dialog is now faster
Find Next/Previous option (including hotkeys)
Aility to increment/decrement frozen addresses.
Increment/Decrement fix big endian, and wrapping logic for 2 byte values
Record Movie Dialog:
Use filesystem safe name of game when choosing a default name.
Fix regression that made default filename not populate in the savefile dialog
Fixed subtitle importing when extra spaces were provided
Case insensitive on movie header importing (fixes GUID import)
"Display Watches On Screen" now restored by "Restore Default Settings" in Ram Watch
Implement an optional Diff column
Ability to define Prev & Diff columns as last frame or last change
Release Date: June 17, 2012
Revision range: r2416-2422
Fixes broken on screen messages
Add support for the Lagrange Point version marked as a good dump by GoodNES 3.14
Fix memory leak in TAStudio
Release Date: June 16, 2012
Revision range: r2131-r2415
Archive Chooser - put (U) [!] roms at the top of the list
Fix Controller config exceptions
Fix blurry presentation on ATI cards
Fix a rare ROM loading crash ??
Cheats, Lua, Ram Search/Watch - flag changes when adding a separator, default to Save As if saving a new file, allow Save in menu item in this scenario
Ram Watch/Search, Hex Editor - set endian based on the endianness of the memory domain by default
Fix so that the Save Config menu item does not close tool dialogs
Fix Load/Save Named State to default to the correct savestate path rather than the most recently used path. Fix so that these functions can not be accessed during Null emulator via hotkey
Fix Drag & Drop of movie files
Fix crash when user loads a state that is not from a movie while a movie is loaded
Movies - Fix System ID header when recording a new movie
Record Movie Dialog - make filename text box default to the game name, and change save file dialog to populate from this text box not game name
Movie subtitles - implement ability to display multiple subtitles at once
Play Movie - show warnings on mismatches for sha1, system, movie version, and emu version
Fix browse button and Drag & Drop to work when set to match game
Added WAV capture
Add sound output to sound card while dumping is occurring
Threaded AVI capture
New Previous Value defintion: Last Change
New Search clears change count (prevent all non-zero items from starting out with 1 change)
Can change data size, endian, and misaligned address in mid search
Fix sorting of the Prev column
Fix searching of signed values
Fix Ram Poke
Add "View In Hex Editor" to the context menu
Immediately Set initial watch values when adding a new watch or loading a file (instead of the next frame)
Fix updating of watch count when adding/removing addresses
Make watch count not count separators
Fix Ram Poke
Moved "Change Counts" and "Previous Value" from "Options" to a new "View" submenu.
Fix a variety of crash bugs
Fix Lua Scripts Don´t Disable If You Record A New Movie Nor When You Reset The Game. However, It Does When You Load A Different Rom.
Allow use of lua plug-in dlls
Drag & Drop for script and session files on Main window, allow multiple scripts to be dropped on main window or console
Fix bug that was causing lua functions to duplicate each time a lua script was toggled or opened, eventually causing crashes and duplicating functions in the lua functions list
gui.text() and gui.alert() - added anchoring, color, and background parameters
Implemented joypad.get() and joypad.set()
Lua Drawing added:
Option to save as binary
Ability to copy/paste data
Ability to customize colors
Add "Go to Address" to the context menu
Remove poke context menu item, since there is no need for it, just type in the values!
Small fixes to the input list
Hooked up Fast Forward, Fast Forward to End
Made a placeholder for Turbo Fast Forward.
Fixed rewind to not stomp on the previous frame with new input.
Fixed rewind to stop at the beginning of the movie instead of freaking out.
TAStudio now shows data from the most recent frame.
CommitFrame is called even if not recording so played back frames also show up in TAStudio.
Play mode only stops at the end of the movie if you tell it to. Your emulator normally continues to play with no input after the end of the movie.
TAStudio is now updated after a rewind (even though the rewind doesn´t play a new frame).
Going into read-only mode adjusts the movie mode.
Implemented New, Open, Save, and Save As for TAStudio.
Fixed an issue where frames past the end of the log would default to the input from the last frame of the log.
Fixed a problem where you couldn´t rewind to frame 0.
Fixed a scrolling issue in the TAStudio list view.
Fixed an issue with the TAStudio virtual NES
controller not matching up with the log.
Fixed an issue where the NES
reset button would get held in when rewinding.
"Clear Holds" menu item & context menu item, clears all buttons pressed on the virtual pads
Open TASTudio Hotkey
Many more Accuracy Tests passed. Now passes more than Nintendulator
Implement mappers 12, 67, 72, 76, 92, 176, 227, 248
Pass all mmc3 tests
Support TENGEN-80004 (just bookkeeping; uses already existing mapper 068)
Fix mapper 64, 115, 242
Fix savestate of mapper 164
Fix lagrange point, including sound
Fix a potentially desyncable bug in mmc3 savestate
Add konami collection games to gamedb so they show as good dumps
Fix some minor details of ppu data bus management; fixes klax and chu chu rocket
Fix bug in base board class wram functionality
Don´t crash when VRC mapper asks for unusual irq
- implement undocumented opcodes. pass all instruction tests
- add some opcodes not handled by the instruction tests, but which are cursorily covered by the instr_timing test, which now passes
Graphics Config Dialog - limit last line to 239 instead of 240 (prevents crash)
APU - clear sequencer_irq, and 0x4015 on reset
Fix Aldynes (SGX) intro freeze
Update ROM header detection algorithm. Fixes some homebrew roms which have no header and aren´t padded to a multiple of 1024 bytes.
PCE-CD - fix CD Set Audio End Position command Mode 2 bug - not ending audio playback!
Crash in PCE Coryoon when attempting to access disabled TurboCD ports
Update gamedb entries for Neutopia 1 & 2
Add 2 SMS homebrew and a GG prototype to gamedb
Added many ROM versions to gamedb
Mark bad dumps accordingly
Display the version number when displaying the rom name
This restores the ability to load cues that reference .raw files while supplying .mp3 tracks