Stella Changelog

New in version 4.5

January 2nd, 2015
  • The conversion to C++11 has begun :) From this point on, to build Stella you will need a C++11 compatible compiler (Visual Studio 2013, Clang 3.3, gcc 4.9, Xcode 6, etc). Eventually, this will bring more bug-free and (hopefully) faster code.
  • Fixed major bug with joysticks, where mapping was being lost on reset, the app would crash when plugging/unplugging certain sticks, etc.
  • Fixed major (but rare) crash that could occur when state files were zero'ed or corrupted.
  • Added dialog which shows the internal joystick database (all the joysticks that Stella knows about) and the ability to remove (currently unplugged) joysticks from this database.
  • Added preliminary support for 'WD' (Wickstead Design) bankswitching scheme, used for a previously unreleased prototype ROM.
  • Improved ZIP file handling, so that it now works as a normal filesystem does (it properly shows nested files and directories).
  • The debugger 'reset' command now does a complete system reset, instead of simply setting the PC to the reset vector address.
  • The 'listdelay' command now accepts a value of zero, indicating that list-skipping (jumping to a line in a list by keypress) is disabled.
  • The 'ctrlcombo' command now has a GUI item, allowing it to be changed from within the application.
  • Added 'Shift-Alt/Shift-Cmd s' keyboard shortcut, to enable continuous snapshot mode for each frame. This is really only useful if you save snapshots in 1x mode; using it in high-resolution mode is not recommended. Special thanks to SvOlli for the idea and code.
  • The minimum supported version for the OSX port is now OSX 10.7. Because of this, the 32-bit version is also discontinued, as 10.7 supports 64-bit Intel only apps.
  • Updated internal ROM properties database to ROM-Hunter version 10 (thanks go to RomHunter for his tireless research in this area). Related to this, updated the snapshot collection.
  • Updated included PNG library to latest stable version.

New in version 4.2 (October 31st, 2014)

  • Text input from non-US keyboard layouts is now supported. Note that all text in Stella is still ASCII-only, but at least it can now be entered using a native layout.
  • Related to the text input changes, the debugger Alt-combo shortcuts have been changed; they now use the same key but with Control instead of Alt (Control-F for frame advance, etc).
  • Controllers are now detected dynamically by Stella. This means that you can plug/unplug joysticks/paddles/etc while Stella is running, and they will be added and removed automatically. Also fixed is a bug whereby sometimes custom joystick mappings weren't being saved.
  • The 'cpurandom' option is now broken down by register type, so you can selectively enable/disable randomization for each one. The default is to disable randomization for all registers.
  • Fixed 'MDM' scheme to trigger bankswitching on writes to hotspots (previously it only triggered on reads). Also, the scheme has been modified as originally designed by E. Blink; hotspots are now in the range $800-$BFF instead of $800-$FFF.
  • The OSX app-icon now includes 32x32 and 16x16 versions, so 'small' icons will be viewable in 'Finder', 'Get Info', etc.
  • The Linux port now uses an app-icon; this seems to be needed for some window managers.

New in version 4.1.1 (September 15th, 2014)

  • Re-added 'uipalette' option due to popular demand (of at least one person :)).
  • Fixed bug in Windows port where pressing 'Alt' key combos resulted in an annoying system beep. Currently this is fixed by patching the SDL2 library and including a modified version with Stella.

New in version 4.1 (September 2nd, 2014)

  • Improved 'DASH' bankswitching scheme support; there is now a debugger tab for changing banks and viewing internal cart RAM, and autodetection is now implemented.
  • Added 'MDM' (Menu Driven Megacart) bankswitch scheme as described on AtariAge and originally developed by Edwin Blink.
  • Improved snapshot viewing in the ROM launcher; snapshots are now scaled to the available space, and can better accommodate sizes other than those generated by Stella itself.
  • Improved support on multi-monitor systems. Stella will now use the same monitor for fullscreen-windowed mode switches. Special thanks to Magnus Lind for patches that added this functionality.
  • Removed the 'bank' command from the debugger prompt, as it only worked (inconsistently) with certain bankswitch types. The bankswitch UI should now be used to query/set bank state.
  • Fixed bug in disassembly output; instructions at $F000 were never being highlighted during execution.
  • The UNIX configure script now supports newer versions of Hurd. Special thanks to Stephen Kitt for the patch.

New in version 4.0 (July 5th, 2014)

  • Ported Stella to SDL2, which brings many new features. Among the largest improvements is native hardware acceleration support for Windows (Direct3D) and Linux/OSX (OpenGL). It is also now possible to port Stella to iOS and Android devices using OpenGLES. Hardware acceleration is now required, which means up-to-date drivers are needed. Software rendering is still present, but is somewhat unoptimized and unsupported going forward.
  • Fullscreen video modes now use the desktop resolution. Switching to fullscreen and back to windowed mode no longer rearranges icons on your desktop.
  • TIA TV effects are now available in all video modes, since hardware acceleration is a requirement.
  • Added a much more detailed view of cart extended RAM to a new debugger tab. Special thanks to SpiceWare for this implementation.
  • Added preliminary support for 'DASH' bankswitching scheme by A. Davie.
  • The AtariVox and SaveKey controllers now have the ability in the debugger to completely erase the virtual EEPROM data.
  • Added 'savesnap' debugger prompt command, and also associated context menu item to the debugger TIA output area. This saves the current TIA image to a PNG file.
  • Added 'hidecursor' commandline option, which allows to completely disable showing the mouse cursor (useful on systems that don't have a mouse).
  • Removed 'uipalette' option, as the original palette is no longer supported.
  • Updated included PNG library to latest stable version.

New in version 3.9.3 (January 21st, 2014)

  • Added bankswitch schemes BF, BFSC, DF, DFSC and 4KSC, thanks to RevEng and CPUWIZ of AtariAge.
  • Updated ROM properties for several ROMs, thanks to Omegamatrix of AtariAge.
  • Fixed program crash when specifying a bankswitch type that Stella didn't recognize; an error message is now displayed.

New in version 3.9.2 (November 13th, 2013)

  • Improved parsing of the DASM lst file for the debugger disassembly; it sometimes missed constant declarations.
  • Changed 'usemouse' argument from a true/false option to accept 'always', 'analog' and 'never'. This allows to use the mouse as a controller under more specific circumstances. The default is 'analog', which means the mouse is only used to emulate analog-like devices (paddles, trackball, etc).
  • Added ability to use bold fonts within the debugger window, which can be set with the 'dbg.fontstyle' commandline argument as well as in the debugger UI Settings dialog. This is useful for those that find the current font too narrow.
  • Renamed 'debuggerres' argument to 'dbg.res'. All future debugger- specific options will start with 'dbg.'.
  • The TIA 'zoom' area in the debugger now supports scrolling the mouse wheel (currently up/down only, as I don't have a sideways scrolling mouse to test with).

New in version 3.9 (June 28th, 2013)

  • This version includes many debugger/disassembly improvements, including the ability to save DASM-compatible source code to an external file.
  • Also included are improvements to the snapshot functionality, and an improved UI.

New in version 3.5.5 (February 5th, 2012)

  • This version includes several improvements to the I/O debugger area, and greatly improves mouse controller functionality.