FCEUX: 2.1.0 release

29 March 2009

FCEUX 2.1 release

The 2.1 is a major new release that incorporates new mappers and mapper fixes from FCEU-mm. In addition it offers a multitude of bug fixes, and
feature enhancements to both the Win32 and SDL ports.

Major Bug / Crash Bug Fixes

Fixed throttling problems that resulted on AMD Dualcore processors. (Caused FCEUX to appear to be in turbo mode).
Fix major crash issue where NROM game (such as SMB) savestates were writing erroneous information if a non NROM game was loaded prior.
Fixed a bug that caused a new sav file to not get created when loading a 2nd battery backed game.
Fix Directory Overrides so to allow users to have no override. Also fixes directory override reset bug.

Minor Bug fixes

Hotkeys - prevent "Hotkey explosion" where some laptop keys set off all unassigned hotkeys
Timing - "disable throttling when sound is off" now only affects FCEUX when sound is off
Clip Left and Right sides taken into account when drawing on screen (record/play/pause, lag & frame counters, messages, etc)
Fixed bug where having sound off and Mute turbo caused chirps when toggling
Video settings - fixed bug when both aspect ratio correction and special scaling 3x are set, video was getting resized incorrectly
Auto-save cleanup -prevent loading an auto-save from previous session. Added flags for enabling auto-save menu item.
Fixed issues related to big endian compiling.
Fix bug so that Escape can now be assigned as a hotkey
*Fixed bug in screenshot numbering that caused numbering to not reset when changing games.

SDL Movie subtitle support and subtitle toggle hotkey added.
SDL Added fcm to fm2 converter tool to SDL version.
SDL Improved the SDL sound code; drastically improves quality of sound.
SDL Savestate slots are now mappable.
SDL Major updates to SDL documentation
SDL Added Shift+M for toggling automatic movie backups.
SDL Added option to mute FCEUX for avi capturing, check the documentation for more details.
SDL Added --noconfig command line option
*SDL Frame Advance Skip Lag frames toggle implemented

New Features Win32

The latest mappers and mapper fixes from FCEU-mm. Adds support for many new games such as Warioland II (Unl), Shu Qi Yu, and Street Dance
Full screen mode fixed! Also, Alt+Enter properly toggles full screen.
Individual control for sound channels! (See sound config for details).
Undo/Redo Savestate/Loadstate features installed! No more loss of data to unintentional presses. (See getting started for details).
Movie subtitles can now be included in .fm2 files. See .fm2 documentation for details and Movie options for details on customizing.
Auto-backup for movie files. (See movie options for details).
A Ram change monitor for the Memory watch dialog. (see memwatch for details).
Frame counter works even without a movie loaded.
*AVI Directory Override option.

GUI / Menu Enhancements

A right-click context menu added! Includes many commonly used items for a variety of situations.
Menu items that are hotkey mappable now show their current hotkey mapping
Major overhaul to the Menu organization.
All FCEUX features are now accessible in the menu
Alt Menu Shortcuts properly configured
Menu items are properly grayed when not useable
All movie related menu items moved to a Movie options dialog
Removed hard-coded Accel keys and replaced with re-mappable hotkeys (Open & Close ROM)
Drag & Drop for .fm2 and .lua files
Many new functions added to the context menu (See context menu for details)
*New Mappable Hotkeys: Open Cheats, Open ROM, Close ROM, Undo/Redo savestate, Toggle Movie Subtitles


Added input.get() ! Returns the mouse info and all keyboard buttons pressed by the user.
Fixed joypad.set(). False now sets a button to off. Nil does not affect the button at all (allowing the user to still control it).
gui.text() Increased height (to approx. 7 lines).
speedmode("turbo") now turns on turbo (which employs frame-skipping) rather than max speed.
memory.readbyte will recognize frozen addresses (cheats).
movie.framecount() always return a number, even when no movie is playing (since the frame counter is implemented without a movie loaded).
Added FCEU.poweron()
Added FCEU.softreset()
Added FCEU.lagged()
Added FCEU.lagcount()
Added FCEU.getreadonly()
Added FCEU.setreadonly()
Added FCEU.fceu_setrenderplanes(sprites, background)
Added movie.active()
Added movie.rerecordcount()
Added movie.length()
Added movie.getname()
Added movie.playbeginning()
Added -lua command line argment, loads a Lua script on startup
Added zapper.read() - returns the zapper (mouse) data. (Currently does return zapper data in movie playback).
Added joypad.write and joypad.get for naming consistency.
Added rom.readbyte()
*Added rom.readbytesigned()

Sound Config

Turning sound off disabled sound config controls
Re-enabled sound buffer time slider control

Hex Editor

Freezing ram addresses automatically updates the Cheats dialog if it is open.
Added prevention from freezing more than 256 addresses at once (doing so caused crash bugs).
Dialog remembers window size.
Dump Rom & Dump PPU to file Dialogs use ROM to build default filename
Maximize and minimize buttons added.
Help menu item added

Memory Watch

Dialog now includes Ram change monitoring. (see memwatch for details).
Dialog is now collapsible to 1 column.
No longer crashes when attempting to load an invalid file from the recent file menu.
Cancel option added to the save changes dialog.
Memory address values that are frozen by the debugger or hex editor are displayed in blue.
Fixed bug that caused dialog to "disappear" due to saving -32000 as its window position.
Save as dialog uses ROM name to build a default memory watch filename if there was no last used memory watch filename
Drag and drop for .txt (memory watch) files.
Minor menu and hotkey fixes.
Watch values now compatible with custom windows dialog colors.


Shows scanlines and PPU pixel values
Shows scanlines even while in VBlank
Added a Run Line button (runs 1 scanline per click)
Run 128 Lines button (runs 128 scanlines per click)
Number of active cheats listed.
Cheats list automatically updated if ram addresses are frozen in the hex editor.
Fixed bug that caused dialog to "disappear" due to saving -32000 as its window position.
Debugger now has a minimum valid size
*Added "Restore original window size" button

PPU Viewer

Default refresh value set to 15
Refresh value stored in the .cfg file

Nametable Viewer

Default refresh value set to 15
Refresh value stored in the .cfg file

Trace Logger

Fixed bug where user can't scroll the log window while it is auto-updating.
Changed message about F2 pause (left over from FCEUXDSP) to display the current hotkey mapping.

Text Hooker

Saving a .tht file no longer crashes
Dialog updates every frame
Initialization error checking reinstalled,
Dialog remembers window position
Fixed bug where canceling save as produces an error message.
Save As produces default filename based on the current ROM

Message Log

Remembers X,Y position
Resized width and height
*Allowed more lines of text to appear on the screen at once.


Remembers window position
Can be called from the context menu if a movie is loaded (see context menu for details).


added help menu item
disabled menu items that are not currently implemented.

Turbo now employs frame skip, greatly increasing its speed
The mute turbo option completely bypasses sound processing (another big speed boost)
*Turbo now works with the Lazy wait for VBlank sync setting

Posted by Andres Delikat 2009-03-30

Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

JavaScript is required for this form.

No, thanks