FCEUX 2.5.0 21 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.
- Fixed SYA and SXA opcodes in CPU. Blargg's NES CPU TEST #5 now passes.
- Added built-in AVI RIFF Tree Viewer.
- 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)
- Fixed draw logic to ensure that highlighted text coloring takes precidence over activity coloring.
- Fixed crash in hex editor when searching with Ctrl+A
- 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.
- Build fix for static linking of lua. Ensure proper compiler flags are set for linux and mac OS to enable lua plugin functionality.
- 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.
- OpenBSD OS build fixes.
→ [NES] FCEUX 2.3.0 15/12/2020
FECUX 2.3.0 15 December 2020
The 2.3.0 release includes 4 years worth of improvements and bug fixes.
- 64 bit build support
- Added Mapper 111 cheapocabra
- Added Mapper 190
- Added RAM Init Options: default (00 00 00 00 FF FF FF FF as always), all FF, all 00, random
- New UNIF mappers
- Mapper 30 4-screen support
- Mapper 5 MMC5 large WRAM support
- VRC7 patch set finalized with correct values dumped by Nuke.YKT
- Fixed rendering and debugging of mirrored palette entries
- Various improvements and bug fixes to pre-existing functions
- Fix parsing of lua colors over 0x80000000 on 32bits systems
- Extra colors available to lua overlays
- Lua write callbacks: adding optional third parameter to retrieve the value written
- Added Sprites.lua script to visualize sprites
- Zapper control
New Lua functions
- zapper.set(table input)
- Various GUI improvements and bug fixes
- Fixed font rescaling issue
- Relative position mouse support for better fullscreen mouse capture
- Left and right mouse buttons no longer conflict with each other
- Virtual boy controller
- Fixed silly quit message randomizer
- Fixed NTSC filter null pointer crash when closing, NTSC filter now supports emphasis
- Sound output is now 48000 Hz by default
- Improve error message for invalid ROM file
- Added memory read/write conditional breakpoint capability
- Added illegal opcode support for breakpoints
- Support for 'S' register in conditional debugger breakpoints
- Syntax highlight of disassembly
- Fixed corruption of PPU reset while debugging
- Attribute mode for nametable viewer
- Greyscale palettes for PPU and nametable viewers
- Fixed transparent sprite palette display in PPU viewer
- Fixed accidental filtering of special symbols
- Added bank number log option
- Fix Fixed VRAM data logging glitch
- Added OAM view feature
- Added Home/End key response
- Bookmark fixes for all view region types
- Fixed Find dialog to be able to find the first or last byte of the memory region
- Prevent middle mouse button from attempting to "FreezeRam" when not in RAM mode
- Added Load from file feature
iNES Header Editor
- A new tool which can edit the iNES header of ROM files
- Fixed dialog height that kept increasing
- GUI completely rewritten using Qt5. Replaces old GTK GUI
- New Qt GUI now contains most of the debug tools that previously only existed in windows version
- Build setup migrated to cmake. Replaces scons build setup
→ [Nes8] CaH4e3: Nowe dumpy i FCEUX...
FCEUX DEV 4.01.2018
Author: cah4e3 | Date: czwartek, 4 stycznia 2018 17:22:48
- mapper 213 - updated for a new dump "168-in-1_[p1][!]"
- UNIF HPxx - new board added for various multigame dumps
Author: zeromus | Date: piątek, 29 grudnia 2017 02:06:17
- fix #790 (conditional debugger can crash when using divide by zero)
[04 january 2018]
Haven't planned any releases by now but got some special Christmas-themed dump with help of HardWareMan (thanks a lot!), so here we are. Nothing really special, just Santa on the menu with simple already known games. However I modified mapper 213 implementation in order to run this particular dump. So, all code is in FCEUX repository already, use the build-bot to get the recent version.
The second dump is also from HardWareMan. Has a set of UNROM games hacked to mapper 178 used in some education computer cartridges. Nothing interesting apart form menu, though...
Since there are nothing to dump currently (and maybe won't be like the last year), I think I can dig into my old dumping archives of unemulated dumps made by all period but left unemulated by some reasons. I released some of them already, just interesting ones in the first place. So the rest are mostly a multigame dumps. The emulation wasn't a problem for all them, but I need some more research on currently emulated mappers, if there any duplicates may be present.
So, here are dump on the same unemulated before hardware similar to FK23C (mapper 176), but with more strictly defined much simpler commands. UNIF board added to the FCUEX repository as well already.
Sometimes, the same menu types can use different types of mapper. See, 7-in-1 with Lost World and Cricket here uses HP10xx/HP20xx board as against other similar multigame carts released by me previously. These boards has no unsoldered dip-switch pins for menu selection, however they has the same ability which you may see on two last pictures here.
Here more examples to the similar menus. First two dumps are from HP10xx/HP20xx boards (first two pictures), there are no different menus in it. The third one (by HardWareMan too) has the same menu, but on FK23C board (two last pictures)
7-in-1 dump here was the same where I ripped my old Spiderman 2 and Poke Tetris bad roms back in the 2007. Note, if you look at the post above on the same 2007 year page, you'll see another FK23C version of such menu similar to the HardWareMan's dump with a different set of games.
And finally, one more set of similar menus on the different hardwares. The first one is HP10xx/HP20xx board from the same long time not emulated bunch of dumps which I didn't released by now at all (haven't seen them in the wild also). The second one - same menu on FK23C board dumped also by HardWareMan. Both have different sets of menus. However, the default setting for the first one should be 7-in-1 which isn't supported currently so it starts from the 4-in-1. The second one has the same default mode for menu as on the hardware cart, so it starts from 9-in-1 as intended. Note, the menu position for 4-in-1 version of the HP10xx/HP20xx boars is incorrect, which is fixed in the FK23C version.
→ [NES] FCEUX 2.2.2
The 2.2.2 release fixes a number of emulation bugs and adds many new features, most of which are related to debugging and reverse engineering.
- Properly savestate NSF files
- "Auto-resume old play session" now also works with NSFs
- Fixed mappers 178, 28, 53, 154, 43, 253, 19, 2
- Mapper 012 - added hardware dip for language select
- UNIF PEC-586 - fixed render, added 512K cartridges suppport
- Fixed UNIF 8157, UNIF T-262, UNIF DANCE2000
- Palette RAM reading fix for Old PPU
- Bring some improvements to New PPU from BizHawk, fix vtoggle5/6 back to vtoggle
- Fixed mmc5 savestates
- Fix wrong frequency calculation in sound.get() function
- New Lua functions:
- New scripts:
- Added "Square pixels" option to Video Config
- "TV Aspect" ratio can be customized, by default it's 4:3
- Changed "Disable hardware acceleration" checkbox to a drop-down list with 3 options
- Movie recording: remember last Author name when creating a new movie
- Movie recording: added ability to record "Insert coin" command (for VS games)
- When no script is currently running, Shift+L loads the most recent Lua script
- Dynamic link to lua51.dll instead of static linking, because some external libraries might crash without lua51.dll
- Updated 7z.dll to v9.22
- A couple of fixes which deal with "multiple ROMs in a single archive" case
- Auto-disable "Game Genie ROM" feature when no "gg.rom" file is found
- Fixed "Single Instance Mode"
- Comply with Lua movie.rerecordcounting() setting
- Fixed workflow with "Auto-adjust Input according to Lag" disabled
- Smart scrolling up/down by whole instructions - ported from an obscure version of FCEUXD 1.1
- Scrolling maintains relative position of the ">" pointer inside the Disassembly window
- Highlight PC pointer line when a breakpoint is hit
- debuggerFontSize can be specified in fceux.cfg
- Fixed storing and loading .deb files when working with archived ROMs
- Fixed Cycles counter reset when loading an earlier savestate
- Added Symbolic Debug naming by right-clicking any address or name
- Symbolic names behave the same way as usual addresses
- Newly created Bookmarks inherit existing symbolic name by default
- Added CDL data column to the left from Disassembly, to distinguish executed branches of code from not executed
- Added 'T' condition for breakpoints (it checks the bank of the accessed data, see docs)
- The dialog window can be resized
- Do not clear window log when stopping the logging
- Added "Log Cycles count" and "Log Instructions count" options
- Added Symbolic Debug naming by right-clicking any address or name
- Clicking any address select the address
- Double-clicking any address brings Debugger at the address
- Added mouse wheel support
- Only output "from $XXXX" when the subroutine was called by JSR
- Added "Mask unused graphics" feature (needs Code/Data Logger running)
- Fixed window layout when using big fonts
- Added "Highlighting" submenu and "Highlight Activity" feature
- Added Symbolic Debug naming by right-clicking any address
- Specify Data bank condition when adding a Breakpoint by context menu
- Fixed bugs when saving files while working with ROMs in archives
- hexeditorFontSize can be specified in fceux.cfg
- RAM Search/RAM Watch
- Added "Hex Editor" button to RAM Search (right-clicking an address works as well)
- Fixed RAM Watch bug when contents of old .wch file were mixed with the newly saved data
- "--periodicsaves" command line option
- "--4buttonexit" command line option
- "--loadstate X" and "--savestate X" command line options
- Added Unity desktop support
- Added otion to use system-provided LUA library instead of statically linked LUA
- Fix issue where battery backup save was not being saved when using "Quit" hotkey
- Fixed bug where FCEUX would take exclusive grab of input in windowed mode when resuming from pause
→ [NES] FCEUX 2.2.1
What's New? 2.2.1 Released -- 10 March 2013
The 2.2.1 release fixes many bugs and adds a couple of new features. The most notable feature is "Auto-resume old play session", which is similar to "Suspending Play". Enable this option in the Config menu and now you can close ROMs or emulator anytime, next time the game state will be resumed from the closing point.
- Speed up HUD text drawing
- Finished mappers to boards conversion
- Fixed mappers 99, 228, 18, 198, 24, 26, 69, 19
- Mapper 115 - redesign according to the hardware tests
- Fixed "you ling xing dong" by assigning to mapper 192
- Fixed crash when four-screen bit is set after CRC check
- UNIF: verbose/safe chunk loading, fixes some crashes
- removed "shadow pixels" from gui.text()
New Lua functions:
- Fixed "Enter New Input" dialog (Hotkeys mapping)
- Fixed zapper and mouse positioning in fullscreen
- Remodel "Video config" dialog
- Added "TV Aspect (4:3)"
- Holding Shift when resizing FCEUX window inverts "Force integral factors" meaning
- Fixed window regions redrawing
- Added the option to define custom emulation speed (NES->Emulation Speed->Set Custom Speed)
- Now Frame Advance timings (initial delay and speed) can be tweaked by user
- Added Config->Enable->Auto-resume old play session
- Moved "Config->Game Genie" to "Config->Enable->Game Genie ROM"
- Play movie dialog shows New PPU in red if the required setting does not match
- Fixed NameTable Viewer crash when the corresponding nametable RAM is not available on the cart
- The number of active cheats is displayed on screen when a ROM is loaded
- PPU/PAL/Input type changing is disabled when a movie is playing
- Fixed keyboard accelerators when editing Notes
- Fixed Greenzone saving while emulator is unpaused
- Fixed drawing bugs when the Playback cursor moves more than once within one update
- Changed "Compact save" dialog, added 4 options of Greenzone saving
- Added "Config->Project file saving options"
- Changed "Follow cursor" logic, now the Piano Roll doesn't follow Playback cursor while seeking
- No "Autopause at the end of the Movie" when Recording
- Fixed bug when adding new item to History Log
- Fixed Bookmarks List height on Windows 7
- Fixed RAM-located code logging when CDLogger options are enabled
- Fixed automatic window update when a breakpoint is hit
- Fixed RTS padding
- Added current CDL filename field and default CDL naming
- Added "Auto-save .CDL when closing ROMs" option
- Added "Auto-load .CDL when opening the window" option
- Added "Auto-resume logging when loading ROMs" option
- Improved CHR logging, now it also logs the data when using Old PPU
- Show symbolic names in the window caption when "Symbolic debug" is enabled
- Fixed crash when trying to save ROM to an invalid path
- Fixed ROM coloring when using CDLogger data
- Added "Search ROM" option
- Added "Add from CHT file..." button
- Update the list of cheats when ROM is changed
- Use desktop resolution for fullscreen by setting SDL.XResolution and SDL.YResolution to 0 (new default is 0)
- Fixed bug where "quit" hotkey would do nothing in '--nogui' mode
- Fixed fullscreen zapper issues
- Display a message dialog on errors in addition to printing to stderr
- Added "Options->Auto-Resume Play"
- Fixed build issues on various versions of OS X