What's New? 2.5.0

Released -- 31 October 2021


The 2.5.0 release features significant enhancements and improvements to the Qt/SDL port. Specifically the debug tools and AVI recording capabilities.


Common


Emulation Core

  • Fixed SYA and SXA opcodes in CPU. Blargg's NES CPU TEST #5 now passes.


Qt/SDL


New Tools

  • Added built-in AVI RIFF Tree Viewer.


Debugger

  • Redesigned debugger layout to optimize space usage.
  • Window layout uses relocatable tabbed viewports to allow for layout customization.
  • Added a tool bar for commonly used debugger buttons.
  • Moved many configuration options to debugger window menu to save space.
  • Added syntax coloring options to assembly code viewer.
  • Added opcode description popups to assembly code viewer.
  • Added assembly code custom font selection option.
  • Added symbol tool tips and address look ahead popups for assembly code viewer.
  • Added navigate backwards/forwards line history to assembly code viewer.
  • Added breakpoint on unlogged code/data feature.
  • Added breakpoint on execution of a specified PRG-ROM address.
  • Added step back one instruction feature (experimental)


Hex Editor

  • Fixed draw logic to ensure that highlighted text coloring takes precidence over activity coloring.
  • Fixed crash in hex editor when searching with Ctrl+A


Input Control

  • User can now save up to 3 alternate sets of gamepad button bindings in addition to the primary set.
  • Advanced gamepad bindings (to hot key functions) are now stored for each individual gamepad by GUID.


Lua

  • Build fix for static linking of lua. Ensure proper compiler flags are set for linux and mac OS to enable lua plugin functionality.


Movies

  • Added optional linking of ffmpeg (libav) libraries for AVI recording. Provides full use of available encoders and options.
  • Implemented AVI 2.0 Indexing Specification. This new indexing scheme eliminates 2GB AVI file recording limitation.
  • Fixed video messages and HUD presentation AVI display options.


GUI Improvements and Bug Fixes

  • Went through all debug tool windows and made sure that all configuration options are saved (persist on application restart).
  • The position and size of all debug/tool windows is now saved at window close and restored at window open.
  • For debug windows, if attempting to open a window that is already open, that window is raised to top and focused.
  • Bug fixes for scroll bar presentation on custom viewport widgets in debug tools windows (debugger, hex editor, trace logger).
  • Added main window context menu to Qt GUI.
  • Various color customization options for debugger and hex editor.
  • Changed hot key config window tree layout to sort keys into logical groups.
  • Added offline help documentation viewer feature. (chm viewer for windows and Qt help engine for unix)


Video Improvements and Bug Fixes

  • Fixed video message positioning so that it is not clipped when 8 pixel side clipping is active.
  • Added integer frame rate option to better sync video with monitor refresh.
  • Changed update rate of video frames per second display so that it is more readable.


Sound Improvements and Bug Fixes

  • Added option to mute sound when main window is not in focus.
  • Improved sound sample underflow/overflow algorithm to allow for better scaling with running the emulation at faster/slower speeds.
  • Sound sample processing efficiency updates.
  • Added an audio buffer percent usage indication and

an audio sink starve counter to sound config window for debug purposes.


Build Improvements

  • OpenBSD OS build fixes.

Created with the Personal Edition of HelpNDoc: Create help files for the Qt Help Framework