Académique Documents
Professionnel Documents
Culture Documents
SSSS
tt
SS SS tt
SS
tttttt eeee
SSSS
tt ee ee
SS tt eeeeee
SS SS tt ee
SSSS
ttt eeeee
lll
ll
ll
ll
ll
ll
llll
lll
ll
ll
ll
ll
ll
llll
aaaa
aa
aaaaa -- "An Atari 2600 VCS Emulator"
aa aa
aaaaa
===========================================================================
Release History
===========================================================================
3.5.5 to 3.6: (March 16, 2012)
* Added support for 2600-daptor II device, including native support
for 7800 controllers, BoosterGrip and Keypad controllers. Special
thanks go to Tom Hafner for a complimentary test sample of this
device, and also for donating a BoosterGrip controller.
* Added ability to dynamically swap the port order of Stelladaptor/
2600-daptor devices with the 'Control-1' key combo (useful if you
have only one 2600-daptor and want to use it as a left port
normally, but as a right port for Star Raiders, etc).
* Added CompuMate bankswitching/controller support to the emulation
core; the Spectravideo CompuMate ROMs (NTSC and PAL) now work.
Frequently used keys on the CompuMate are directly mapped to your
keyboard (ie, Func-Space for backspace is mapped to Backspace, etc).
Loading/saving from the cassette player is not yet supported, and
will come in a future release.
* Fixed bug in BoosterGrip controller emulation; the functionality
of the booster and trigger buttons was reversed. Related to this,
renamed these actions in the Event Mapping dialog to be more clear.
* Reverted to SDL 1.2.14 for the Windows 98/2k release, since SDL
1.2.15 isn't supported in that environment.
* Updated included PNG library to latest stable version.
-Have fun!
3.5 to 3.5.5: (February 4, 2012)
* Due to changes in the debugger, old state files will not work with
this release.
* Fixed bug in sound restructuring introduced in the last release; in
some cases, there could be some sound 'crackling' when starting a
ROM after at least one ROM had already been loaded.
* Several significant improvements to the debugger I/O tab:
- added controller input widgets for many of the built-in
controllers, allowing to control joysticks, paddles, etc
from within the debugger.
- added ability to modify the SWCHB/SWBCNT port B registers.
- added ability to view TIA INPTx and VBLANK latch/dump bits.
* Fixed bug with window centering; if enabled and the the window was
larger than the desktop, the window would be moved offscreen.
3.2 to 3.2.1: (August 25, 2010)
* Improved behaviour of joystick 'hat' movement. This should fix bugs
most visible in Yars' Revenge.
* Fixed bug in debugger rewind states; bankswitching wasn't being
performed during the rewind. Related to this, fixed a similar issue
with the debugger 'loadstate' and 'savestate' commands.
* Added game properties info and snapshot for the newly released
'Halo 2600' ROM.
3.1.2 to 3.2: (August 20, 2010)
* NOTE: because of the many event-related changes in this release, all
event mapping should be reset to defaults after starting Stella for
the first time. As well, because of other internal changes, older
save-state files are no longer valid.
* Many improvements to joystick handling code, particularly for analog
axes. Navigating the UI should be much smoother now, and remapping
events to analog axes should be less 'twitchy'.
* Added ability to assign and remap 'combo' events in emulation mode.
Combo events are basically a sequence of normal events (up to 8)
that are generated from a single event (ie, one button on a joystick
could generate up to 8 events). Updated Input Settings UI to
access and modify these events.
* Default mappings are now available in UI and emulation mode for the
first 'hat' detected on a joystick/gamepad. Related to this, a hat
now works exactly like an axis in UI mode (holding down a direction
continues that direction until the hat is released/centered).
* Several major improvements to the debugger:
- the disassembler can now process multiple entry points, and
caches entry points as they're encountered (ie, the disassembly
isn't 'reset' each time a bank change occurs or you exit and
re-enter the debugger)
- preliminary support for disassembling from zero-page RAM
- re-added ability to change banks with the 'bank' debugger
prompt command and within the ROM disassembly UI
- user labels in disassembly are now supported again
- 'runto' command is now case-insensitive, and shows a progressbar
while searching through the disassembly
- the debugger window can be resized between ROM loads (previously,
the app had to be restarted)
- fixed bug in Distella disassembler output, where it sometimes
generated addresses above $FFFF
- a vertical line separates the disassembly from the raw bytes
* Fixed behaviour of SWCHB and SWBCNT; pins set to output now remember
the values previously written. Some ROMs use this functionality for
extra storage. Special thanks to Omegamatrix of AtariAge for advice
and test ROMs in this area.
* Fixed bug when reading from illegal TIA addresses; a Space Invaders
hack was showing pink enemies instead of white ones. Again, special
thanks to to Omegamatrix of AtariAge for advice and test ROMs in this
area.
* Fixed bug in handling INPT4/INPT5 latches from VBLANK; a least one
ROM was working in Stella when it didn't on real hardware.
* Added 'ramrandom' commandline argument, which is used to randomize
all RAM in the system; otherwise, the RAM is zeroed.
* Added 'finishing touches' to some of the UI descriptions, giving a
better explanation of the functions. Related to this, certain
options now show a message box explaining the option in further
detail (particularly the ROM Audit mode). As well, when starting
Stella for the first time, a prompt appears to select a ROM
directory.
* Fixed bugs in the ROM launcher when viewing certain PNG images not
created by Stella. Related to this, the official PNG library is now
included in the Stella codebase (version 1.4.3). Also added composite
snapshots for those ROMs which consist of several games. Thanks go
to Buzbard of AtariAge for these images.
* Added several fixes for crashes on 'small' systems (those systems
where the maximum resolution is less than 640x480).
* Tweaked bankswitch autodetection for 0840, DPC+, E7 and UA schemes.
* Improved F8 bankswitch autodetection for Yars Revenge in 8in1 ROM.
* Updated DPC+ bankswitch scheme to latest specifications.
* Snapshots taken in continuous snapshot mode are now timestamped, so
older files are never overwritten.
* Fixed a TIA segfault that could occur with certain ROMs.
* The 'center' application window functionality can now be changed
without having to restart the application. Related to this, mouse
positioning bugs when using the Linux version in OpenGL mode with
SDL 1.2.14 have been fixed.
* Reworked the manual, dividing it into 'Getting Started' and
'Advanced Configuration' sections. It still contains the same info
as before, but hopefully in a better organized way.
* Updated Help dialog; it was showing incorrect info for some OSX
shortcuts.
* Updated OSX build script to not crash when a previous build is
detected, and to properly handle filenames with spaces.
* Updated included ZLib to latest release version (1.2.5).
3.1.1 to 3.1.2: (May 3, 2010)
* Modified 'showinfo' command to accept levels of output, where
OSX 10.6 (aka Snow Leopard). The Intel version is compiled with the
very latest compiler (LLVM/Clang), resulting in better performance.
The keyboard handling is changed to match other systems in terms of
where the keys actually are on the keyboard (ie, the OSX Command key
corresponds to Alt, and the OSX Control key corresponds to Control).
The application menu has been cleaned up and simplified, and it
now shows the correct shortcuts for menu items.
The settings file is now (according to Apple standards)
'~/Library/Preferences/net.sourceforge.Stella.plist'.
The base directory (where all other Stella stuff is located) is now
'~/Library/Application Support/Stella'.
Because of these changes, all your settings will have to be entered
again.
* Added 'ctrlcombo' commandline argument, which toggles the use of the
control key as a modifier key. This is useful if you want to press
'Control' and 'R' in a two player game, and not have the combination
treated as 'Control-R' (which will issue a ROM reload).
* Added 'usemouse' commandline argument and associated UI item. This
toggles the use of the mouse as a controller of any type.
* Added 'uimessages' commandline argument and associated UI item.
This toggles showing of UI messages overlaid on the screen.
Critical messages are still shown, though.
* Added ability to take multiple snapshots in a given interval every
x seconds. This is currently tied to the 'Alt-s' key and is not
remappable (for now). The interval can be set with the 'ssinterval'
commandline argument and within the UI, and defaults to 2.
* Many changes to the FrameBuffer and UI code for 'smaller' systems.
Stella will now scale correctly to small screens, down to 320x240
(which is the absolute lower limit supported). Related to this,
added 'maxres' commandline argument, which is useful for developers
testing on such systems.
* The About dialog now shows the version of SDL in use, and the type
of CPU the application is running on (i386, x86_64, etc).
* Improved 'listrominfo' commandline argument to list all information
from Stella's internal ROM database, including a heading. This
output can be imported into a spreadsheet or database program.
* Renamed 'tiafloat' commandline argument to 'tiadriven'. The
emulation of the behaviour of floating TIA pins is also much more
accurate.
* Reworked state files so that they're associated with the cartridge
type used, not the MD5sum of the ROM. This is useful for developers,
since the same state file can now be loaded from different ROMs,
as long as the cart type stays the same. This also fixes a bug
where loading from a non-existent state file could cause Stella
to crash. Because of these changes, old state files will no longer
work.
info was removed from internal ROM properties. Set the ROM property
"Cartridge.Type" to "Auto-detect" for this to take effect.
* Added auto-detection of display type (NTSC or PAL). Currently, PAL60
ROMs will be detected as NTSC. This is almost 100% accurate, and fails
in very few cases (for those that are mislabeled, the ROM properties
can be set specifically). Set the ROM property "Display.Format" to
"Auto-detect" for this to take effect.
* Improved emulation timing when exiting one ROM and starting another.
Previously, this could result in the second ROM having its sound start
later than it should have.
* Removed pause functionality from the core, since it's been superceded
by the other event states. You can now enter one of the menus for a
similar effect (options, command, debugger, etc).
* Added toggle for PAL color-loss emulation, which defaults to off.
Previous versions of Stella always used color-loss emulation.
Related to this, added 'colorloss' commandline argument.
* Added rudimentary support for configuring the UI palette ('uipalette'
commandline argument) and ability to change the size of the launcher window
('launchersize' commandline argument). This will be expanded on in future
releases.
* Reworked options menu so it's now accessible from the ROM launcher as
well as while playing a ROM.
* Re-added ability to change the width and height of a Console. Related to
this, changing XStart/YStart/Width/Height dynamically no longer resets
the ROM.
* Removed 'tiadefaults' commandline argument, since Stella will now default
to using accurate positioning, and not use 'tweaks'.
* Joystick code now allows all 4 directions; 'Bumper Bash' now works
correctly.
* Improved Keypad emulation; 'Alpha Beam with Ernie', 'Oscars Trash Race'
and 'Magicard' now work correctly.
* Reworked GUI code, so that all dialog boxes are automatically centered.
* Added 'rominfo' commandline argument, which prints some detailed info for
a ROM.
* For the OSX port; fixed crashes in OpenGL mode.
* For the GP2X port; some improvements to the sound code.
* For the GP2X port; added vertical centering of the TIA image (when possible)
.
2.2 to 2.3: (December 22, 2006)
* NOTE: Because of the many changes in this release, all settings
will be reset to defaults. If this doesn't happen for you, it will be
necessary to manually delete your previous settings.
restarting a ROM.
* Made 'phosphor' and 'phosphor blend' a ROM property, meaning it can be
set per-ROM.
* Added support for relocating the base Stella directory, by setting the
environment variable 'STELLA_BASEDIR'. This must be done each time before
Stella starts.
* Added '-fastscbios' commandline argument, which speeds up loading of
vertical bars in Supercharger ROMs, and made it the default.
* Added '-autoslot' commandline argument, which automatically switches
to the next available slot after saving a state. This defaults to off,
and must be set from the commandline.
* Fixed bug in debugger command 'runto', which could enter an infinite
loop under some conditions.
* Updated configure/build toolchain so patching is no longer required for
Debian packages.
* Removed dependency on PNG library (PNG snapshots are still present, but the
actual library is no longer required).
* For the OSX port, improved OpenGL performance on Mac Mini using Intel
GMA950 video hardware.
* For the GP2X port, added support for PAL ROMs, and updated SDL to use
hardware scaling.
2.1 to 2.2: (April 7, 2006)
* Added new ROM browser option which works like a normal filesystem
browser, allowing navigation throughout the filesystem.
The old mode of browsing is still present, and can be toggled at
runtime. Related to this, fixed bug whereby sorting in the ROM
launcher sometimes didn't work.
* Integrated stella.pro properties into the application, resulting in
faster startup time. Now Stella can be redistributed as a single
binary; no external files are needed, but they will still be used
if present.
* Reworked ROM properties files once again. The 'user.pro' file has
been removed, and all user-defined properties are stored in
'stella.pro' instead. You should delete all properties files when
upgrading to this version, to take advantage of the speed increases.
* Reworked settings files once again. Removed all references to a
global settings file. Each user now gets a user-specific settings
file only. If that file doesn't exist, the built-in defaults are
used.
* Added 'conditional saving' of the cheatcode and settings files, so
that these files are only written to disk when absolutely
necessary. This doesn't really affect desktop systems, but is very
useful for systems with flashram-based storage (GP2X, WinCE, etc).
* Cheat codes are now saved to stella.cht file and are automatically
reloaded when Stella starts.
* Improved 'joymouse' functionality. While in GUI mode, any axis will
simulate mouse movement, and any button will simulate a mouse click.
So the GUI can be completely navigated without a mouse.
* Improved CommandDialog and LauncherDialog wrt joymouse functionality.
These dialogs are used more than any other on devices without a mouse,
so joystick axis movement switches between GUI objects, rather than
simulating the mouse. This leads to much faster selection of objects.
* Added mapping of multiple SDL joystick axis to Event Mapping.
* Added joystick hat support, and mapping of multiple hats to Event Mapping.
* Added remapping of paddle emulation to the keyboard or joystick axis
(the mouse is still used by default for paddles). Related to this,
use more precise analog values when analog axis are mapped to
analog-type events (such as paddles).
* Treat joystick events as other types of controllers based on the virtual
port entry in stella.pro. This means that mappings for a joystick will
emulate other devices when necessary.
* Added 'sp' developer commandline argument, which sets the
"Console.SwapPorts" property and swaps the arrangement of the virtual
ports. Useful for games like "Raiders of the Lost Ark", where the
joysticks are normally swapped.
* Added ability to set which Stelladaptor device emulates which virtual
joystick port ('sa1' and 'sa2' commandline arguments, which accept
'left' or 'right').
* Fixed issues with jittering joysticks/mice causing weird events when
starting Stella.
* Added 'freq', 'tiafreq' and 'clipvol' commandline arguments, which
affect the sound subsystem (see manual for further info).
* Made state files completely cross-platform, both in terms of endianness
as well as CPU size (32 vs. 64 bit).
* Fixed crash with using 'cheat' and 'break' from the commandline.
* Implemented dynamic loading of OpenGL library.
2.0 to 2.0.1: (October 24, 2005)
* Added 'dirtyrects' support, which speeds up rendering for some Windows users
.
* Fixed bug where taking snapshots would fail if the snapshot directory
wasn't specified.
* Made ROM launcher case-insensitive, so upper and lowercase names are now
mixed in the correct order.
* Fixed ZIP ROM support to search the archive for ROMs ending with either
.bin or .a26 (case insensitive).
* ROMs which don't have an associated properties entry are no longer named
'Untitled' in the Stella window or when taking snapshots. The actual
ROM name is now used.
* Changed minimum height of debugger to be 27 lines in the prompt, or approx.
700 pixels high. This should make using the debugger easier for users
with lower resolution monitors. Related to this, the RomWidget now uses
all possible vertical space when changing the debugger height.
* Fixed bug related to upgrading Stella and event mappings being incorrect.
Stella now detects this, and uses the default mappings. So upgrading
to version 2.0.1 means your event mappings will be reset.
* Fixed bug in loading debugger symbol files generated on different
operating systems.
* For the Windows port; added exe installer based on InnoSetup.
* For the Windows port; compiled icon into Stella, so it now looks like
a real Win32 application.
* For the OSX port, reverted window resize key combos back to 'Cmd =' and
'Cmd -' to match the 1.4.2 release.
1.4.2 to 2.0: (October 16, 2005)
* Added integrated GUI. Stella is now a fully graphical application, and all
settings can be changed dynamically while the application is running. That
means the commandline is no longer required (but support is still there
for those who want to use it).
* Added ROM launcher. You can now exit a game and start playing another one
from directly within Stella (you no longer have to quit Stella and
restart it).
* Because of the integrated GUI and ROM launcher, StellaX and KStella
(the Windows and Linux frontends) have been discontinued. The OSX
port now uses the launcher as well.
* Added an integrated debugger for game developers. This is currently
the first version of a debugger in Stella, but it's already quite
usable.
* Added new sound subsystem, which is much faster and more accurate.
Related to this, added stereo sound output (used by some homebrew games).
* Added ZIP support. Stella can now open ROM's compressed in zip
format.
* Added cartridge 'frying', thanks to Fred "batari" Quimby. This
emulates the action of turning the power button on and off on a
real Atari, often resulting in some strange effects.
* Added ability to edit current ROM properties from directly within
Stella, which can then be saved directly into the 'user.pro' file.
So creating a properties entry for a new ROM can be done without
but they could never be used. Control/Alt can now be used for any event.
* Updated stella.pro file to work with the latest Good2600 ROMset release
(Thanks go to Voch for helping to maintain the stella.pro file).
* For the Windows port; removed requirement for ROM files to be named *.bin
in the StellaX frontend. The ROM's can now have any name, but ZIP-files are
not yet supported.
* For the Windows port; fixed the problems with the included modified SDL
library and Windows 98 users. Stella should now run in Windows 98.
* For the OSX port; added preference to allow user to select the directory
in which ROM images are stored. This sets the default directory to start
the browsing for a ROM in, and doesn't preclude the user from selecting a
file outside that directory.
* For the OSX port; fixed preferences bug where Preferences changed before
a game was opened were not being saved.
* For the OSX port; fixed an issue which would prevent the program from
working with OSX 10.1.
1.3 to 1.4: (July 17, 2004)
* Codebase ported to SDL. The DOS and X11 ports have been discontinued.
* Sound code ported to SDL. For the Linux versions, ALSA and OSS sound
support has been discontinued.
* The Linux, MacOSX and Windows ports are now based on the same codebase
and are actively maintained. That means simultaneous (and hopefully more
frequent) releases.
* A new Windows port has been created, with the GUI based on StellaX.
This is the first new release for Windows since Stella 1.2.
(software mode is not yet optimized; OpenGL mode works much better)
* A new Mac OSX port has been created by Mark Grebe. This is the first new
release for Mac OSX since Stella 1.2.
* Added OpenGL rendering support.
* Added more refined in-game GUI.
* Added event remapping. Emulation keys can now be remapped to the keyboard
or up to 4 joysticks.
* Added native Stelladaptor support. Joysticks, paddles, and driving
controllers have been tested.
* Digital sound support (used in games like Quadrun and Pitfall2) has been
greatly improved. Sound generation is now more tightly synchronized with
video updates.
* Added support for switchable palettes. Currently you can switch between
the current Stella palette, original Stella palette (pre-1.2 versions),
and the z26 palette.
* Added support for UA Limited style bankswitching (Funky Fish and Pleiades).
* Switched to using high compatibility M6502 mode by default. This means
old state saves from previous Stella versions will no longer work.
* The meaning of the "-sound" command line option has been changed. This
option now accepts either 'true' or 'false (1 or 0) to enable/disable
sound.
* Changed sound mixer functionality. The system volume/mixer settings will
never be changed; volume changes in Stella will only affect the
emulation itself.
* Added "-video" command line option. This option accepts either 'soft' or
'gl', to use software/OpenGL rendering.
* Added "-gl_filter" command line option. This option accepts either
'nearest' or 'linear', to use GL_NEAREST or GL_LINEAR filtering.
* Added "-gl_aspect" command line option. This option accepts a decimal
value specifying how much to scale the width of the emulation image
(useful for giving an authentic 'square-looking' 4:3 mode).
* Added "-gl_fsmax" command line option. This option accepts either
'true' or 'false, and specifies to use the maximum possible resolution
when in fullscreen OpenGL mode (useful for Linux and for Windows on
laptops).
* Added "-fragsize" command line option. This option accepts the size to
use for sound fragments. Linux/MacOSX works well with 512, Windows seems
to need 2048. This value must be a power of two.
* Modified "-volume" command line option. If you specify '-1', Stella will
use the system volume.
* Renamed the "-pro" command line option to "-altpro".
* Renamed the "-fps" command line option to "-framerate".
* Removed the "-center" command line option. Stella now automatically
centers the window when possible.
* Removed the "-paddle real" command line option, since it never really
worked correctly (and Stelladaptor support adds that functionality
anyway).
* Removed all command line options relating to the X11 port
(owncmap, display).
1.2 to 1.3: (February 17, 2003)
* Improved TIA sound system so that games with digitized audio work
* Added saving and loading of game state to the core; X11, SDL, and DOS
versions current support saving and loading game state
* Added support for F4 bankswitching method
* Pitfall II DPC sound emulation completed