===============================================================================

     SSSS    tt          lll  lll
    SS  SS   tt           ll   ll
    SS     tttttt  eeee   ll   ll   aaaa
     SSSS    tt   ee  ee  ll   ll      aa
        SS   tt   eeeeee  ll   ll   aaaaa  --  "An Atari 2600 VCS Emulator"
    SS  SS   tt   ee      ll   ll  aa  aa
     SSSS     ttt  eeeee llll llll  aaaaa

===============================================================================
                               Release History
===============================================================================

2.4.1 to 2.4.2: (September 17, 2007)

  * Made usage of 'GL_TEXTURE_RECTANGLE_ARB' extension configurable, and
    have it default to off.  This should take care of the black/white
    screen many people were experiencing with ATI video hardware.  This
    is accessible using the 'gl_texrect' commandline argument).  Set it to
    'true' or 'false' to enable/disable the extension.

Have fun!


2.4 to 2.4.1: (August 27, 2007)

  * Re-added OpenGL aspect ratio setting ('gl_aspect' commandline argument).

  * Re-added non-browser mode to the ROM launcher.

  * For the Linux/UNIX port; fixed OpenGL vsync issue with Nvidia video cards.


2.3.5 to 2.4: (August 20, 2007)

  * Added new video sub-system where fullscreen and windowed modes are treated
    differently.  Windowed modes now use '-zoom_tia' and '-zoom_ui' arguments,
    while fullscreen modes can be specified by resolution using the new
    '-fullres' argument.

  * Widescreen video modes are now supported; Stella will simply center the
    image with surrounding black borders.

  * Many UI-related changes, including resizable ROM launcher and debugger
    windows, and a new UI palette (the previous 'classic' palette is still
    available).  This is still a work in progress.

  * The locations of all major config files (statedir, palette file,
    cheat file, properties file, etc) are now configurable from the
    commandline and within the UI.

  * Updates to TIA palette support.  Added SECAM support, and removed the
    built-in 'original' palette.  Standard, z26, and user are still
    available.

  * Various bugfixes to some debugger commands.  The 'run' command no
    longer causes a crash, and several others have better error-checking.

  * Added more complete cartridge auto-detection for Commavid (CV), 3E,
    3F and Activision (FE) formats.

  * Removed XStart and Width ROM properties, since the forthcoming TIA
    rework won't be using them.

  * Reworked internal storage of ROM properties to be faster and take up
    less space.

  * Added several different ways of stretching the OpenGL image to the
    '-gl_fsmax' argument, for more flexibility.

  * Removed OpenGL aspect ratio setting favour of the previously mentioned
    video changes.  We'll see how this goes.

  * Removed dirty-rect support from software rendering, since it was actually
    sub-optimal in Windows and OSX and defaulted to off in previous versions.

  * Added support for gzipped ROMs.

  * Re-added pause support.

  * Re-added support for Windows 98.

  * Removed support for 'STELLA_BASEDIR' environment variable, since each
    config file can be now configured separately.

  * Removed '-fastscbios' argument, since it must always be turned on.

  * Removed PSP support, since it hasn't been updated in over a year, and
    someone else is maintaining another port elsewhere.

  * For the Unix/Linux port; fixed 'make install' issues, and changed icon to
    PNG format.


2.3 to 2.3.5: (January 17, 2007)

  * Greatly improved cartridge bankswitch type auto-detection.  Stella
    can now (mostly) autodetect cartridge types 'E0', 'E7', '3E', '3F' and
    Superchip carts.  Obviously, this autodetection is not infallible, but
    relies on patterns in the ROM data, and how it was compiled.  Because
    of the auto-detection types already supported, almost all bankswitch
    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.

  * Potentially huge speedups in software rendering mode, both in emulation
    and UI modes.  Deactivating 'dirty rects' uses these new modes, which
    can be 2-3 times faster for many configurations.

  * For UI navigation, changed from using 'joymouse' to the more familiar
    'tabbing' functionality, where you move from object to object by use of
    some tab key.  As a result, completely removed the 'joymouse' commandline
    argument and all associated functionality.

  * Added event remapping for UI events, separate from events while in
    emulation mode.

  * Added support for PAL60 ROMs, which use the PAL palette and resolution
    but run at NTSC timing (60Hz).  Added ROM property for this, and updated
    the internal properties database for many PAL60 ROMs.

  * Added support for user-definable palettes.  For now, only one extra palette
    is supported, but in the future we may have them specified per-ROM.

  * Fixed bug in PAL colour-loss emulation, which wasn't actually being done
    for the original Stella and z26 palettes.

  * Fixed several TIA-related emulation bugs as reported on AtariAge.  More
    fixes will come with the TIA rewrite, due in the next release.

  * Added new scaler infrastructure, replacing the '-zoom' commandline argument
    with '-scale_ui' and '-scale_tia'.  This means the UI and emulation can now
    be scaled independently.

  * Added '-gl_vsync' commandline argument and associated UI elements, which
    uses synchronization to vertical blank interrupt in OpenGL on supported
    systems.  This eliminates tearing in OpenGL rendering.

  * Changed naming of snapshots and state files.  These files are now
    named based on the names given in the properties database, and no longer
    use the 'md5sum' name.  As a result, state files from previous versions
    will no longer work unless they're manually renamed.  Related to this,
    removed the '-ssname' commandline argument.

  * Fixed bug where 'Snapshot saved' appeared when taking snapshots in
    succession.

  * Added a 'Previous directory' entry to the top of each listing while
    in ROM Browse mode, which is equivalent to the 'Go Up' button.  This makes
    it easier to navigate the filesystem, since you never have to 'tab out'
    of the ROM listing.

  * Added all sound related commandline options to the UI, so you no
    longer have to use the commandline to set those options.

  * Added new property to ROM properties specifying whether to swap paddles
    plugged into a virtual port.  This eliminates the need to manually set the
    paddle mode for those ROMs that don't use paddle zero by default.

  * Added a 'Defaults' button to the Game Properties dialog, which resets
    the ROM properties to the internal defaults, deleting that ROMs properties
    from the external properties file.

  * Fixed bug whereby modified ROM properties weren't being reloaded when
    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).

  * Reworked Settings class, hopefully fixing a bug whereby settings
    weren't being saved in certain cases (most evident in the OSX port).

  * Added 'tiadefaults' commandline option, which can also be toggled
    from within the GUI.  This option disables all TIA positioning
    'tweaks' that typically make a game look better, and present the
    image exactly as it would appear on a real 2600.

  * Added jitter-detection code for the paddle emulation, which should
    eliminate an annoying 'jittering' effect when using paddles with
    a Stelladaptor.

  * Related to jitter-detection, added '-pthresh' commandline option
    and GUI entry, which sets a bound below which the emulation detects
    jitter.

  * Fixed crash when adding one-shot cheats.

  * Fixed bug in RAM comparitive searches in the debugger.

  * Fixed bug with setting snapshot naming type from the GUI (it was
    always being set to 'romname').

  * Re-added low compatibility CPU emulation mode, since it benefits
    some slower systems.  This is activated with the commandline argument
    '-cpu low'.

  * For the OSX port, added Universal binary support.

  * For the OSX port, reworked the menu handling, so that certain menu
    options are only enabled when it makes sense to do so.

  * For the GP2X port, fixed joystick deadzone issues and scroll bug in
    ROM launcher.

  * For the GP2X port, fixed issue with PAL ROMs causing a crash because of
    screen size.  A message is now shown indicating that PAL ROMs are not
    yet supported.


2.0.1 to 2.1: (January 29, 2006)

  * Added phosphor effect, similar to z26.  Useful on ROMs which alternate
    sprites from one frame to another, resulting in an annoying flicker.
    When using phosphor mode, a pixels colour is mixed with its previous value,
    resulting in a blended image that doesn't flicker, emulating the
    phosphoresence effect on a real television.

  * Added 'pp' developer commandline argument to set the "Display.Phosphor"
    property, and 'ppblend' to set the amount to blend pixels in phosphor
    mode.  Also added 'Alt p' key to enable/disable phosphor effect while
    ROM is emulated. By default, phosphor mode is only used when necessary,
    as specified in the stella.pro file.

  * Renamed 'cheetah' commandline argument to 'cheat'.

  * Added per-frame cheatcodes (4 characters long), which are evaluated
    each frame.

  * Added cheatcode GUI, where cheats can be named, edited, saved, 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
    any external tools.

  * Added initial support for using Stella in an 'arcade-box'
    environment without a keyboard.  This consists of an in-game
    menu for choosing common actions in Stella, as well as using the
    joystick navigate the mouse pointer.

  * Reworked properties system to use both a system-wide 'stella.pro' and
    a per-user 'user.pro' properties files.  Changes made by the user
    and stored in 'user.pro' are no longer erased when upgrading Stella.

  * Added support for cartridges with 3E bankswitching format.

  * Added preliminary Cheat support.

  * Added 'Alt/Shift-Cmd' z, x, c, v, b, n keys to enable/disable the
    P0, P1, M0, M1, BL, PL bits in the TIA, respectively.

  * Added 'Alt/Shift-Cmd .' key to disable all bits in the TIA.

  * Added 'Alt/Shift-Cmd /' key to enable all bits in the TIA.

  * Added 'Alt/Shift-Cmd g' key to switch dynamically switch between
    software and OpenGL modes while Stella is running.

  * Added 'Ctrl/Cmd r' key to reload the ROM currently being emulated.

  * Added 'Alt/Shift-Cmd s' key to merge the current game properties
    into the properties file.

  * Added 'help' commandline argument.  Launching Stella from the
    commandline with no options now starts Stella in ROM launcher mode,
    instead of showing help (as in previous versions).

  * Added the following commandline arguments for developers:
    "pro, type, ld, rd, tv, lc, rc, bc, format, xstart, ystart, width
    height, cpu, hmove".  Developers can consult the manual for
    further details.

  * Removed 'mergeprops' commandline argument, since there are now
    dedicated keys to either save or merge game properties.

  * Removed 'hidecursor' commandline argument.  Stella will now
    automatically decide when to use this setting.

  * Fixed framerate when switching between NTSC and PAL modes.  Stella
    now uses the correct framerate based on the format of the ROM,
    in terms of both video and audio.

  * Added 'configure' support to the build process for both Linux and
    Win32 (using MinGW).  Developers can now use the familiar 'configure;
    make; make install' commands to compile Stella.

  * Further consolidation and integration of SDL.  This should lead to
    faster operation and a more consistent look for all ports.

  * Fixed some 64-bit issues.  Stella now compiles and runs correctly
    on AMD64 and PPC64 Linux systems.

  * Updated the Stella manual with pictures of the new integrated GUI.


1.4.2a to 1.4.2b: MacOSX version only (February 27, 2005)

  * Added fix to mute sound while user is loading a new cartridge, or using
    the Preferences window.


1.4.2 to 1.4.2a: MacOSX version only (February 21, 2005)

  * Fixed problem in timing loop which was causing crashes after 15-30
    minutes.

  * Turned optimization on in compiler settings, which had somehow gotten
    turned off.


1.4.1 to 1.4.2: (February 19, 2005)

  * Updated the sound system. All popping and cracking sounds that previously
    occurred at program start/stop and when entering/exiting menu or pause
    mode have been eliminated.
 
  * Fixed the gl_fsmax argument to mean "switch to desktop resolution on
    fullscreen OpenGL", instead of to the maximum possible resolution (the two
    are not always the same).
 
  * Added Alt [ and Alt ] keys to dynamically adjust the sound volume during
    emulation.
 
  * Added Control 0, Control 1, Control 2, Control 3 keys to dynamically change
    which paddle the mouse should emulate.
 
  * Added video_driver argument. This accepts the different options that can be
    specified for SDL_VIDEODRIVER (see SDL homepage for more information).
    Basically, it eliminates the need to set the SDL_VIDEODRIVER environment
    variable.
 
  * Made sure screen is refreshed before taking a snapshot.  This eliminates
    the problem with new snapshots containing the text "Snapshot saved".

  * For the Windows port; added windib and directx as options for
    'video_driver' when using software rendering. The 'windib' option is now
    the default, and in many cases it's up to 10 times faster than using
    'directx'.

  * For the OSX port; added 'Cmd-R' key to reload the currently loaded ROM.


1.4 to 1.4.1: (August 15, 2004)

  * Fixed PAL sound issues.  PAL games now should sound correct (no distortion
    or missing sounds), but some games may still run too fast.  This is still
    a work-in-progress, and will be fixed in Stella 1.5.

  * Cleaned up the SDL event gathering loop.  This should hopefully fix the
    problems with "double-pumping events" reported by some Windows users.
    Event gathering and dispatching is now much faster as well.

  * Fixed a bug where the Control or Alt keys could be assigned to some event,
    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

  * Fixed a bug which caused the difficulty switches to operate backwards

  * Changed DPC auto-detection to use file size so that Pitfall II mods work

  * Modified RIOT timer emulation so that startup values are random

  * Added 3F bankswitching auto-detection routine so that homebrews and
    demos work without a stella.pro entry

  * Updated the TIA message boxes so they look a little nicer 

  * Latest stella.pro file included in distribution

  * Added some developer options to the core, and the ability to change game
    width, height, xstart, ystart, and others while the emulation is running.
    Added ability to switch between NTSC and PAL at runtime, and the ability
    to save the current properties to a file or to merge the changes into the
    stella.pro file; X11 and SDL versions supported for now (compile option)

  * External sound server for the X11 and SDL versions no longer required, as
    all sound code is now integrated into the core 

  * Changed locations of the user's config files for the X11 and SDL versions;
    the user's stellarc file is now located in $HOME/.stella/stellarc, state
    files are located in $HOME/.stella/state/ and the stella.pro file is
    located in $HOME/.stella/stella.pro

  * Changed the way options are supplied on the commandline for the X11 and
    SDL versions. Now all commandline options take exactly the same arguments
    as in the INI file.

  * Added "-accurate" command line option to choose between accurate
    (CPU-intensive) timing or less accurate (CPU-friendly) timing to X11
    and SDL versions. This is the final version of what was considered
    experimental timing code in Stella 1.2.

  * Added "-sound" command line option to choose which sound backend to
    use (alsa, oss, sdl) with the X11 and SDL versions.

  * Added the developer command line options to the X11 and SDL versions,
    which are only activated in developer builds: -Dformat, -Dwidth,
    -Dheight, -Dxstart, -Dystart, -Dmerge 

  * Fixed window resize bug in the X11 port

  * Added "-nosound" command line option to the DOS port to disable audio

  * DOS port supports a "-vsync" option to synchronize emulation with the
    video blank of the video card

  * Changed VGA code in the DOS port to use a 60Hz 320x200 and a 60Hz
    320x240 graphics mode

  * DOS port has been updated to run better under Windows NT, 2000, and XP.
    There are still issues with the sound, however, it is usable.

  * DOS port is using a new Sound Blaster driver created by Matt Conte which
    supports auto-detection of sound cards.

  * DOS port supports a STELLA_HOME environment variable that defines 
    the location of config files.
 
  * In the DOS port the stella.pro file is searched for first in the
    current working director and then in the $STELLA_HOME directory

  * In the DOS port the ROM image is searched for first using the
    specified path, then in $STELLA_HOME/ROMS, and finally in $STELLA_HOME
  

Cyberstella 1.2.1 (May 16, 2002)

  * Removed the built-in games until some legal stuff is sorted out


Cyberstella 1.2 (May 10, 2002)

  * Initial release of a new WIN 32 port of Stella


DOS 1.2 to DOS 1.2.1: (April 28, 2002)

  * Fixed a bug with control keys being confused with the pause key

  * Fixed a bug with the pause key causing the application to lockup


1.1 to 1.2: (April 21, 2002)

  * Improved illegal CPU instruction support. Thrust and Qb will now operate
    correctly.

  * Improved emulation of undefined TIA reads. The ball in Video Pinball
    finally bounces off of the paddles!

  * More accurate NTSC and PAL palettes. These palettes should be much more
    like the colors displayed on a real TV.

  * PAL color loss is now emulated. If a PAL game displays an odd number
    of scanlines then the next frame will be displayed in black & white.

  * TIA emulation improved to fix some problems with Pole Position,
    Fatal Run, Dolphin, Decathlon, Robot Tank, and Hole Hunter.

  * Support for Pitfall II has been added, however, the enhanced sound
    provided by the DPC chip found in the Pitfall II cartridge isn't
    currently emulated.

  * Support added for the Commavid (CV) bankswitching method.

  * Support added for the Megaboy cartridge.

  * Improved Supercharger emulation including a new BIOS that shows the
    vertical blue progress bars like the real thing.

  * Code for the emulation core has been updated to work with newer C++
    compilers compliant with the C++ standard.

  * Basic message support added to the TIA emulation. This allows a short
    message to overlay the TIA frame. Currently, it's used when switching
    color modes and difficulty settings.
 
  * The internal data structure for the stella.pro file was changed from
    a resizable array to a binary search tree. This results in quicker
    startup times.

  * An SDL port of Stella is available (requires SDL 1.2.0 or greater)

  * Added option to not load in the whole stella.pro file when starting 
    Stella. This option is enabled on the X11, SDL, and DOS versions. Win32 
    version is left alone since it's needed for loading multiple games from 
    the UI. Saves on memory usage.

  * Added INI file option to the X11 and SDL versions. Options can be 
    specified in this file instead of entering them on the commandline. Any 
    options entered on the commandline override options in the INI file.  
    File is called stellarc. For the X11 and SDL versions, it can be in
    either $HOME (as $HOME/.stellarc) or in /etc (as /etc/stellarc).  The
    one in $HOME has higher priority than the one in /etc.

  * Added snapshot support to the X11 and SDL versions. Pressing F12 saves 
    the current screen in PNG format. Requires PNG library.

  * Removed stella.pro file from the binary, resulting in large space
    savings. The stella.pro file is no longer optional.  For the X11 and
    SDL versions, it can be in either $HOME (as $HOME/.stella.pro) or in
    /etc (as /etc/stella.pro). The one in $HOME has higher priority than
    the one in /etc. For DOS and Win32 versions, the stella.pro file must
    be in the same directory as the executable.

  * Added pause functionality to the core. Implemented in DOS, X11, and
    SDL versions for now.


1.0 to 1.1: (February 26, 1999)

  * DOS and Linux versions support real Atari 2600 paddles using a 
    special PC game port adaptor

  * Linux version uses the new 1.2.x joystick driver API

  * Added support for the "-display" option to the X Window version

  * Added support for private colormaps to the X Window version

  * Fixed a few bugs in the Supercharger emulation

    - A major bug in the ROM loading routine was fixed

    - Multi-loading in "Escape from the Mindmaster" works correctly

    - All Supercharger games load and execute at this point

  * Added a small hack to the TIA code to fix a display problem in "Escape 
    from the Mindmaster"

  * Improved TIA emulation to support the RESPx multi-sprite trick


1.0b1 to 1.0: (October 7, 1998)

  * DOS version supports 320x200 and 320x240 graphics modes

  * Several portability issues have been resolved 

  * Preliminary support for Chris Wilkson's Megacart bank-switching scheme

  * BSDI target included in makefile 

  * Improved Users Manual in several "popular" formats


0.7 to 1.0b1: (July 25, 1998)

  * Supports the following controllers:

      Joysticks, Paddles, Booster-Grip, Keyboard and Driving

  * Supports the following bank switching methods:

      2K, 3F, 4K, AR, E0, E7, F4SC, F6, F8, F8SC, FASC, FE

  * Properties are associated with games using their MD5 checksum
    calculated on the entire ROM image

  * Uses the new 'stella.pro' file format for game properties

  * Includes Erik's latest stella.pro properties file

  * New frame rate throttle code for X windows GUI

  * Based on the new and improved M6502 CPU emulation

  * Improvements to TIA emulation

    - Support HMOVE blanks

    - Improved Cosmic Ark star field effect

    - Some support for the RESPx multiple sprite trick

    - Support NTSC and PAL palettes

  * Improvements to PIA emulation (timing)

  * Improved Supercharger emulation


0.6 to 0.7: (June 7, 1997)

  * Improved emulation speed of TIA and 6507

  * Added Starpath Supercharger support

  * Added Tigervision bank-switching support (3F bank-switching)

  * Added pause game feature for Unix and DOS

  * VCS files combined into a single builtin property file

  * Added TIA HMOVE "feature" to support Cosmic Ark stars

  * Improved TIA VSYNC code so that it works more like the real
    thing (0.6 VSYNC code caused the graphics of some games to
    be off such as Alien and Battle Zone)

  * Added two 6507 emulators: one is designed to act more like
    the real thing, while the other is designed to be as fast as
    possible (required for Supercharger support)

  * Changed TIA peeking so lower nibble of byte read is the same
    as the TIA address being accessed (Warlords now works)
  

0.5 to 0.6: (January 18, 1997)

  * Fixed collision detection problem (Freeway works)

  * Changed PIA timing code to fix screen jitters

  * Added new bank-switching methods: F4SC (Fatal Run), E7 (Burgertime)

  * Fixed some code in the TIA emulation that caused SEGFAULTS

  * Improved frame rate throttling code to work better on fast machines

  * Improved TIA emulation (missle graphics are fully emulated now)

  * Included Bob Colbert's "Okie Dokie" game

  * Uses version 1.1 of the TIA Sound library by Ron Fries


0.4 to 0.5: (November 17, 1996)

  * Added sound support

  * Added new bank-switching methods: F8SC (Defender II), FASC (CBS RAM+)

  * Changed TIA so peeking $E and $F return $F not $0 for Haunted House

  * Changed PIA timing code to fix screen jitters in Frogger

  * Addressing scheme rewritten

  * Optimized 6507 memory accesses

  * Randomized memory in PIA upon startup

  * Removed auto-disabling of objects at the start of a frame
    so you can't walk through walls in Adventure

  * Changed the X windows terminal update method to make it faster and
    easier to understand


0.3 to 0.4 (August 28, 1996):

  * TIA code has been optimized some

  * Some games can be played with just a ROM image

  * New search method for ROM images (no more STELLA_PATH)

  * Delta screen update supported

  * Better error handling added to the "core"


0.2 to 0.3 (July 12, 1996):

  * Keyboard joystick support is much better (Daniel Marks)

  * Paddles are now supported via the mouse (Bradford Mott)

  * Many portability issues have been resolved (Keith Wilkins)

  * Fixed a problem with the 6507 ADC and SBC instructions that caused
    some games (Enduro) not to work correctly (Bradford Mott)

  * Power Macintosh port (Aaron Giles)

  * Windows 95 & NT port (Jeff Miller)
