mirror of
https://github.com/libretro/stella2023.git
synced 2024-12-04 23:46:57 +00:00
b6cab4e626
of RAM addresses in debugger RamWidget. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2295 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2205 lines
90 KiB
Plaintext
2205 lines
90 KiB
Plaintext
===========================================================================
|
|
|
|
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
|
|
===========================================================================
|
|
|
|
3.4.1 to 3.5: (December xx, 2011)
|
|
|
|
* Added several improvements to the joystick management code. Joystick
|
|
event mapping is now saved per device, meaning that if you map events
|
|
to a certain joystick device, remove the device and then later insert
|
|
it again, Stella will remember the original mapping.
|
|
|
|
* The total number of joysticks present and their associated properties
|
|
(number of axes, buttons and hats) is now dynamic. That is, there's
|
|
no longer a hard-coded limit on the number of joysticks that Stella
|
|
can use, or the number of buttons, etc that it contains. This fixes
|
|
a serious bug with PS3 controllers with 27 buttons, whereby adding a
|
|
mapping for joystick 0 would inadvertantly change settings for
|
|
joystick 1, and could potentially lead to a program crash.
|
|
|
|
* Huge restructuring of the OpenGL code, making it compatible with
|
|
OpenGL 2.x+ features (such as vertex buffer objects), while at the
|
|
same time keeping compatibility with OpenGL 1.5 / OpenGL ES.
|
|
Because of the required changes, TV effects were removed (they will
|
|
be added again for the next release).
|
|
|
|
* Improvements to audio handling, particularly for certain cases of
|
|
Windows, ATI video cards, and OpenGL mode. The sound device is now
|
|
opened only once when Stella starts, and is paused between loading
|
|
different ROMs. This fixes a problem whereby sound could possibly
|
|
not be functional after loading the first ROM. Related to this,
|
|
removed the 'audiofirst' commandline argument as it's now redundant.
|
|
|
|
* Fixed bug with displaying the ROM launcher in Windows XP; the initial
|
|
load was sometimes taking up to 30 seconds to complete.
|
|
|
|
* Added logging facility, whereby the output of the application is
|
|
available within Stella itself. This can still be printed to the
|
|
console, or also saved to a file. Add the 'loglevel' and
|
|
'logtoconsole' commandline arguments which control these settings,
|
|
and removed the 'showinfo' argument as it's now redundant.
|
|
|
|
* Updated DPC+ bankswitching scheme to latest code provided by
|
|
SpiceWare.
|
|
|
|
* Added MAMCR handling to the Thumb ARM emulation code. Note that
|
|
MAMCR isn't actually emulated, it is just ignored for now. This
|
|
fixes a bug whereby accessing MAMCR would crash the ARM emulation.
|
|
|
|
* Added 'thumb.trapfatal' commandline argument, which causes the
|
|
Thumb ARM emulation to either trap on a fatal error (throw an
|
|
exception to the debugger and exit emulation) or simply log the
|
|
error and continue. This should normally always be enabled, but
|
|
can be disabled by developers for testing reasons.
|
|
|
|
* Updated default snapshot directory to be much saner and easier to
|
|
find. For most systems, it now defaults to the users 'Desktop'.
|
|
Note that the commandline argument has changed to 'snapdir'.
|
|
|
|
* The debugger 'print' command now indicates "special" addresses if
|
|
they are read-only (R), write-only (W) or read-write (R/W).
|
|
|
|
* Fixed a bug where scrolling the mouse-wheel in certain debugger UI
|
|
items would cause the program to crash; scrolling now works as
|
|
expected.
|
|
|
|
* Fixed minor display issue in the debugger RAM area; some addresses
|
|
were being displayed as '...'.
|
|
|
|
* Fixed compile issues in the latest versions of Ubuntu and Debian, and
|
|
fixed UNIX desktop file so that Stella will launch with a ROM when
|
|
selected from its icon. Thanks go to Stephen Kitt for this code.
|
|
|
|
* Updated included PNG library to latest stable version.
|
|
|
|
* Updated the credits list in the documentation, listing people that
|
|
have donated hardware to the Stella team.
|
|
|
|
-Have fun!
|
|
|
|
|
|
3.4 to 3.4.1: (June 11, 2011)
|
|
|
|
* Re-enabled 'grabmouse' commandline argument and associated
|
|
functionality with the following changes:
|
|
- it is changed in the "Input Settings' UI, not in 'Video Settings'
|
|
- it only has meaning while in emulation mode
|
|
- it is enabled by default
|
|
|
|
* Fixed bug with emulation of paddles using the mouse most evident in
|
|
Warlords; movement was being filtered out if the mouse was moved too
|
|
fast. There's still more work required in this area, however.
|
|
|
|
* Fixed bug with analog axes on gamepad devices, whereby jittering in
|
|
these axes would override input from digital axis, hat or keyboard
|
|
input.
|
|
|
|
* Fixed bug when switching to the debugger and back again would
|
|
sometimes cause an extra mouse motion event (which would cause the
|
|
emulation to think the mouse was moved and move the player
|
|
accordingly).
|
|
|
|
* Tweaked bankswitch autodetection code for 4A50 bankswitching; several
|
|
more test ROMs are automatically detected.
|
|
|
|
* The 'saverom' debugger command now saves ROMs in your home
|
|
directory by default if you don't specify a valid path. This fixes
|
|
a bug whereby ROMs were saved in strange locations and couldn't later
|
|
be found.
|
|
|
|
* Fixed bug in automatically executing the debugger 'autoexec.stella'
|
|
file; any commands it contained weren't actually being executed.
|
|
|
|
* Zero-byte ROMs are no longer loaded and mis-detected as Supercharger
|
|
images.
|
|
|
|
|
|
3.3 to 3.4: (May. 29, 2011)
|
|
|
|
* Many improvements to input handling, particularly with the mouse and
|
|
paddles:
|
|
- The mouse can now be used to emulate a joystick, booster-grip or
|
|
driving controller.
|
|
|
|
- The mouse now controls only one device at a time (1 of 4 paddles,
|
|
1 of 2 joysticks, etc), instead of devices from both virtual ports.
|
|
|
|
- The sensitivity for digital and mouse input (for paddles) can now
|
|
be set separately with the 'dsense' and 'msense' commandline
|
|
arguments, and from within the Input Settings UI.
|
|
|
|
* Added support for the 2600-daptor device (2600-daptor.com), which is
|
|
similar to a Stelladaptor but improves handling of paddles. Thanks
|
|
go to Tom Hafner for a complimentary test sample of this device.
|
|
|
|
* Added new controller types 'Paddles_IAxis', 'Paddles_IDir', and
|
|
'Paddles_IAxDr', which invert the paddle axis, direction, and
|
|
axis+direction, respectively. These are used for certain ROMs
|
|
that have the axis or direction inverted from normal (for example,
|
|
using the paddles causes on onscreen object to move up and down vs.
|
|
left and right). All applicable ROMs in the internal database
|
|
have been updated.
|
|
|
|
* Added preliminary support for emulating ARM code to the DPC+
|
|
bankswitching scheme (thanks to Batari). Related to this, fatal
|
|
errors in the DPC+ ARM code are now caught and shown in the debugger.
|
|
|
|
* Updated internal ROM properties database to ROM-Hunter version 6
|
|
(thanks go to RomHunter for his tireless research in this area).
|
|
|
|
* The ROM audit dialog now automatically selects the current
|
|
directory in the ROM launcher, and reloads the directory after
|
|
the audit is complete.
|
|
|
|
* Removed the 'grabmouse' functionality; the mouse is now always
|
|
grabbed while playing a game, and released otherwise.
|
|
|
|
* Updated built-in version of the PNG library to the latest version.
|
|
|
|
|
|
3.2.2 to 3.3: (November 12, 2010)
|
|
|
|
* Added the following Distella 'directives', which are used to override
|
|
and specifically tell the debugger how to treat address space (CODE,
|
|
GFX, PGFX, DATA, ROW). See the debugger documentation for more
|
|
information.
|
|
|
|
* Disassembly from the debugger is now tracked by the emulation core,
|
|
and accented by the built-in Distella code. Basically, the emulation
|
|
core knows when an address is referenced as code, making for very
|
|
accurate disassembled output. Related to this, the emulation core now
|
|
tracks accesses to GRPx and PFx registers, automatically marking the
|
|
addresses as GFX or PGFX sections. This will be improved in future
|
|
releases, as there are many ways to store data in the graphics
|
|
registers.
|
|
|
|
* Improved output of graphics output in the disassembler, by marking
|
|
such addresses with a bitmap of the data they represent. This
|
|
allows player graphics (GFX directive) and playfield graphics (PGFX
|
|
directive) to really stand out in the disassembly. Related to this,
|
|
added ability to edit such graphics in either binary or hexidecimal.
|
|
|
|
* Added preliminary support for Distella configuration files. Much
|
|
more work is required in this area, since Stella now contains
|
|
directives that don't yet exist in the standalone Distella program.
|
|
Configuration files are automatically loaded, and debugger commands
|
|
now exist to load and save configuration directives directly from
|
|
the debugger.
|
|
|
|
* Added the following commands to the debugger prompt:
|
|
- clearconfig, listconfig, loadconfig, saveconfig
|
|
(used for Distella configuration files)
|
|
- code, data, gfx, pgfx, row
|
|
(directives used to override automatic disassembly types)
|
|
- jump (jumps to a specific address in the disassembly)
|
|
- type (gives detailed info for disassembly type of an address)
|
|
|
|
* The debugger prompt commands 'trap', 'trapread' and 'trapwrite' now
|
|
accept a range of addresses as well as a single address.
|
|
|
|
* Added 'data source' address output for the CPU SP/A/X/Y registers.
|
|
This is useful for quickly seeing what an operand address resolves
|
|
into with various load commands.
|
|
|
|
* Many commands in the debugger prompt are now case-insensitive;
|
|
further improvements will be made in future releases.
|
|
|
|
* Many improvements to the built-in Distella disassembler. When passing
|
|
a relative branch or jump, data is now disassembled as code only if
|
|
the emulation core hasn't detected it as data. Such 'preliminary'
|
|
code is marked with a '*' in the disassembler, indicating that it is
|
|
tentative code, and hasn't actually been executed yet. This allows to
|
|
quickly see possible code paths, and at the same time eliminate
|
|
disassembly of addresses that are never used as code sections.
|
|
|
|
* Program counter/instruction addresses can now be toggled in the
|
|
disassembly.
|
|
|
|
* Disassembled instructions involving relative branches now show only
|
|
one byte for the operand, not two bytes.
|
|
|
|
* Fixed bug in several text input fields, whereby binary data couldn't
|
|
be input (a '\' was required, but the character was blocked).
|
|
|
|
* Fixed issues with PAL ROMs on screenmodes smaller than a PAL ROM
|
|
would require. In this case, the image is centered and clipped to
|
|
the screen resolution. This prevents the message "PAL ROM not
|
|
supported" from appearing.
|
|
|
|
* Fixed bug in fullscreen OpenGL mode when using ATI video cards;
|
|
the desktop background was 'bleeding through', resulting in a very
|
|
annoying flickering.
|
|
|
|
* Fixed crashes when opening windows larger than the desktop resolution
|
|
in fullscreen mode; this is now allowed only in windowed mode.
|
|
|
|
* Application window centering now also works when switching between
|
|
video modes, not just when starting the application.
|
|
|
|
* Added support for building a Windows version compatible with Windows
|
|
98 and 2000 (compiled with Visual Studio 2005). Testing is very
|
|
limited, since I no longer have access to these systems.
|
|
|
|
* Fixed build issues for Innosetup in Windows XP.
|
|
|
|
* Fixed bug in OSX version where the name of the application wasn't
|
|
being shown in Activity Monitor.
|
|
|
|
* State files from older versions will no longer work in this release,
|
|
because of the extensive changes to the debugger and disassembler.
|
|
|
|
|
|
3.2.1 to 3.2.2: (September 17, 2010)
|
|
|
|
* 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
|
|
increasingly larger numbers provide more debug output. Related to
|
|
this, added UI item to modify 'showinfo'.
|
|
|
|
* Updated DPC+ bankswitch scheme to latest specifications, including
|
|
support for 32K ROMs with ARM code (the ARM code is ignored for now).
|
|
|
|
* Fixed bug in saving patched ROMs using DPC and DPC+ bankswitch
|
|
schemes; the saved image didn't actually include any changes made by
|
|
the user.
|
|
|
|
* Removed 'uselauncher' from the UI, since disabling it will remove
|
|
the ROM launcher on all future runs, and not allow one to enable it
|
|
again. It's still available from the commandline, for those that
|
|
have a need for it.
|
|
|
|
|
|
3.1 to 3.1.1: (April 26, 2010)
|
|
|
|
* Fixed program crash when using RIOT addresses and labels in the
|
|
debugger console prompt.
|
|
|
|
* Updated DPC+ bankswitch scheme to latest specifications.
|
|
|
|
|
|
3.0 to 3.1: (April 22, 2010)
|
|
|
|
* Fixed a major bug with text drawing in software rendering mode.
|
|
Switching between windowed and fullscreen mode while text was being
|
|
shown could result in garbled text or even a program crash.
|
|
|
|
* Fixed issues when using 'sleep' timing, whereby a lockup could occur
|
|
when changing video modes, and/or Stella would consume more CPU time
|
|
than was necessary.
|
|
|
|
* Integrated Distella disassembler, completely replacing the previous
|
|
disassembler. The entire infrastructure has not been completely
|
|
ported yet. As a result, labels defined by the user or from a
|
|
DASM symbol file aren't actually used in the disassembly, and almost
|
|
all distella config options are disabled. These will be addressed in
|
|
a future release.
|
|
|
|
* Completely reworked the debugger cartridge interface, so that
|
|
the disassembly is dynamic (ie, the debugger tracks when cart address
|
|
space has changed, and automatically performs a re-disassembly).
|
|
|
|
* All carts with extended RAM that differentiate between read and write
|
|
ports now behave correctly when a read from the write port occurs.
|
|
|
|
* Added more complete support for the more esoteric bankswitch
|
|
schemes in the debugger. These schemes now support accurate
|
|
disassembly and ROM patch functionality. Related to this, fixed a
|
|
bug in disassembler view when a failure to patch a ROM still showed
|
|
the (incorrect) patched results.
|
|
|
|
* Added ability to disable TIA object collisions, independent of
|
|
enabling/disabling the objects. Previously, one had to completely
|
|
disable an object to avoid collisions, but now an object can be
|
|
enabled (and seen) but still have its collisions disabled. These
|
|
actions are tied to the same keys as the enable ones, except the
|
|
'Shift' key is also used.
|
|
|
|
* Added preliminary support for 'DPC+' bankswitching scheme, thanks to
|
|
Darrell Spice Jr and Fred Quimby.
|
|
|
|
* Added '16in1' bankswitching scheme, which works with various
|
|
ROMs labeled '128-in-1 ...' (the database has been updated for
|
|
these). Related to this, switching between multicart ROMs for 2in1,
|
|
4in1, 8in1, 16in1 and 32in1 now shows a UI message indicating which
|
|
ROM is active.
|
|
|
|
* Reverted some of the TIA improvements with respect to 'starfield
|
|
effect' as seen in "Cosmic Ark" and "Stay Frosty". The emulation is
|
|
now more accurate as compared to the majority of consoles in use.
|
|
|
|
* Added debugger pseudo-register '_rwport', which traps on a read from
|
|
the write port. This differentiates from reads that are normally
|
|
part of a write cycle (ie, it traps only on inadvertent reads).
|
|
|
|
* Added 'resolvedata' commandline argument and associated UI item, used
|
|
to set the "resolve data sections" config option in Distella
|
|
(vs. treating all address space as code).
|
|
|
|
* Added 'runtopc' debugger command, used to step until encountering the
|
|
given program counter. This is also available in the ROM disassembly
|
|
UI from the right-click context menu.
|
|
|
|
* Added 'listfunctions' and 'delfunction' debugger commands to
|
|
access/remove user-defined functions. Related to this, fixed a bug
|
|
in 'function' command that could cause a program crash.
|
|
|
|
* Added 'cls' debugger command, used to erase the text and history
|
|
from the debugger prompt.
|
|
|
|
* Removed the 'listwatches' and 'poke' debugger commands, as they
|
|
were redundant.
|
|
|
|
* Removed the 'loadlst' debugger command and the ability to use a
|
|
DASM .lst file. This code was incomplete, and no longer fits with
|
|
the recent disassembler improvements. Support for this may return
|
|
in a future release.
|
|
|
|
* Modified 'disasm' debugger command to accept a second argument
|
|
indicating the number of lines to disassemble.
|
|
|
|
* Improved tab-completion in the debugger prompt; it now completes
|
|
on functions and pseudo-registers.
|
|
|
|
* Added emulation of the "Sega Genesis" controller, with two buttons
|
|
that are directly supported on a real system.
|
|
|
|
* The ZLib library is now included in the core code, so Windows
|
|
developers no longer have to track down the ZLIBWAPI archive.
|
|
|
|
* Many changes to the MacOS X port, bringing it more in line with
|
|
other systems:
|
|
|
|
The application is now known as 'Stella' (instead of StellaOSX).
|
|
|
|
Two versions are available: the first is a 32-bit Universal Binary
|
|
for OSX 10.4 - 10.6, and the second is 32/64-bit Intel-only for
|
|
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.
|
|
|
|
* Fixed bug in certain editable text fields, where pressing Return/Enter
|
|
would disable any further input.
|
|
|
|
|
|
2.8.4 to 3.0: (September 11, 2009)
|
|
|
|
* Huge updates to the TIA emulation system. Illegal HMOVEs are now
|
|
handled correctly, resulting in improvements to many ROMs (thanks
|
|
to Wilbert Pol for many ideas and code for these improvements). All
|
|
HMOVE emulation 'cheats' were removed; the emulation is now cycle-exact
|
|
in this area.
|
|
|
|
* Improved emulation of the Cosmic Ark 'starfield effect', also used in
|
|
Stay Frosty; the emulation now looks very accurate.
|
|
|
|
* Many improvements to the normal TIA rendering code, fixing problems
|
|
when disabling certain graphical objects (certain objects were
|
|
being misdrawn when others were enabled/disabled).
|
|
|
|
* Improved TIA collision handling in the non-displayable area of the
|
|
screen; this fixes problems in RAMRacer ROM.
|
|
|
|
* Improved TIA redraw problems/graphical garbage when ROMs generate
|
|
many more scanlines than a real TV would allow; this fixes problems
|
|
in Q-Bert and the recent Playaround demo.
|
|
|
|
* Added 'Fixed Debug Colors' option similar to the no$26k emulator.
|
|
This allows each graphical object to be drawn in a fixed color,
|
|
more clearly showing how the objects interact. HMOVE blanks are
|
|
also shown in a different color. The TIA now emulates a 7-color
|
|
register model, allowing even shared objects to show different
|
|
colors. This is toggled with the 'Alt Comma' key.
|
|
|
|
* Related to 'Fixed Debug Colors', HMOVE blanks can now toggled during
|
|
TIA display with the 'Alt-m' key.
|
|
|
|
* Added rewind functionality to the debugger, where states are saved
|
|
after each step/trace/scanline/frame advance. Pressing 'Alt-r' or
|
|
clicking the new rewind button will undo up to 100 previous
|
|
operations.
|
|
|
|
* Added 'electron beam indicator' to the debugger TIA output. Basically,
|
|
this is a visual pointer indicating the position of the electron gun
|
|
when scanning the display.
|
|
|
|
* Added ability to completely disable fullscreen mode, which fixes
|
|
problems for some people where fullscreen mode was being entered
|
|
even if it wasn't enabled.
|
|
|
|
* Added '-joyallow4' commandline argument and associated UI item to
|
|
allow all 4 directions to be pressed simultaneously on a joystick.
|
|
|
|
* Improvements made to the ROM launcher: the backspace key now goes
|
|
to the parent directory (this key can be remapped), and previously
|
|
selected directories are now automatically selected.
|
|
|
|
* Added support for 2IN1 bankswitching scheme, where two ROMs are
|
|
present in one binary. Currently supported are 2, 4, 8, and 16K
|
|
ROMs.
|
|
|
|
* Added bankswitch support for the 6K version of Starpath/Supercharger
|
|
ROMS. This allows the 6K version of Cubis to run.
|
|
|
|
* Updated bankswitching schemes FASC and MB; they are now known as
|
|
FA and F0, respectively. This naming brings Stella in line with
|
|
other emulators and programming utilities.
|
|
|
|
* Fixed editing of cheats in the Cheat Dialog; the old cheat wasn't
|
|
being removed.
|
|
|
|
|
|
2.8.3 to 2.8.4: (July 4, 2009)
|
|
|
|
* Fixed bug where Stella could lock up after running for ~71 minutes.
|
|
Special thanks to Robert Tuccitto for bugtesting and feedback on this
|
|
issue.
|
|
|
|
* Updated UA bankswitch autodetection for Gingerbread Man ROM.
|
|
|
|
* The smallest ROM that Stella can support is 64 bytes; this lower
|
|
limit is now tested when loading Sub2K ROMs.
|
|
|
|
|
|
2.8.2 to 2.8.3: (June 25, 2009)
|
|
|
|
* Fixed OpenGL bug which caused an immediate program crash if the
|
|
available OpenGL version was less than 2.0.
|
|
|
|
|
|
2.8.1 to 2.8.2: (June 23, 2009)
|
|
|
|
* Fixed OpenGL detection bug which could disable OpenGL support entirely
|
|
if TV effects are not available (version < 2.0), when in fact only the
|
|
effects should have been disabled.
|
|
|
|
* The '\' character can now be entered in UI text fields again.
|
|
Related to this, strings containing '\' are now properly loaded and
|
|
saved to various config files.
|
|
|
|
|
|
2.8 to 2.8.1: (June 19, 2009)
|
|
|
|
* NOTE: Windows users will have to reset their options or manually move
|
|
their config folder in this release, since the location of the config
|
|
files has changed.
|
|
|
|
* Fixed OpenGL issue for some Windows users whereby the OpenGL TV
|
|
effects weren't available, even if the available version of OpenGL
|
|
was sufficient. Related to this, the OpenGL version found by
|
|
Stella is now reported in the TV effects dialog.
|
|
|
|
* Added fallback to software rendering when OpenGL rendering has been
|
|
requested, but for whatever reason fails to initialize.
|
|
|
|
* Added native support for 4in1, 8in1 and 32in1 multicart bankswitching
|
|
schemes. When using these schemes, the 'Reload ROM' action
|
|
(by default, Control-r) will switch between each game in the ROM.
|
|
|
|
* Added bankswitch support for ROMs smaller than 2K in size. These
|
|
will be treated as 2K ROMs natively, without having to manually
|
|
'pad' them to 2048 bytes.
|
|
|
|
* Added preliminary suppport for autodetection of X07 bankswitching.
|
|
|
|
* Tweaked PAL autodetection; it was marking some PAL ROMs as NTSC.
|
|
|
|
* Changed default location for Stella config files in Windows to
|
|
the users' APPDATA folder (for XP and Vista, this is
|
|
'~/Application Data/Stella'). The '~' symbol now represents the
|
|
users PROFILE/home directory, matching its usage in Linux and OSX.
|
|
The ability to override this with 'basedir.txt' is still
|
|
available, but not advised.
|
|
|
|
* Changed '-exitlauncher' commandline argument to '-uselauncher'.
|
|
This works as before except the launcher is never used at all if
|
|
the option is set to false.
|
|
|
|
* Fixed crash when launching Stella from the commandline and giving
|
|
a directory name instead of a rom filename.
|
|
|
|
|
|
2.7.7 to 2.8: (June 9, 2009)
|
|
|
|
* Added CRT simulation effects as described in the AtariAge posting
|
|
'CRT emulation for Stella'. For now, this requires OpenGL 2.0 or
|
|
greater with support for GLSL (GL Shading Language). This code
|
|
will be expanded on and optimized in future releases.
|
|
|
|
* Adding editing of extended RAM in the debugger RAM UI. The RAM
|
|
'spreadsheet' now shows the entire address space of RAM in the
|
|
system, in 128 byte increments. The first bank shown is zero-page,
|
|
with the others following in consecutive order. The UI takes care
|
|
of read vs. write port differences, so you don't have to worry
|
|
about the offsets. For now, all SuperChip based ROMs (EFSC, F4SC,
|
|
F6SC, F8SC) as well as 3E, CV, E7 and FASC are supported.
|
|
|
|
* All ROMs which include SC extended RAM will now have memory erased if
|
|
you attempt to read from the write port. Related to this,
|
|
entering/exiting the debugger will no longer erase the extended RAM.
|
|
|
|
* Patching of ROM for bankswitch types 0840, SB, UA and X07 is now
|
|
implemented, but hasn't been extensively tested.
|
|
|
|
* Visual improvements to the CPU register UI in the debugger; the
|
|
SP/A/X/Y registers now have separate decimal and binary views.
|
|
|
|
* Tweaked paddle control so that all positions are reachable in game
|
|
4 of Activision Casino in both NTSC and PAL versions.
|
|
|
|
* SuperCharger/AR ROMs now start with a random value in the CPU
|
|
accumulator. This should fix issues with Dragonstomper always
|
|
starting in exactly the same state.
|
|
|
|
* Auto-detection for '3F' bankswitching improved; several ROMs
|
|
previously detected as 'F8' now work correctly.
|
|
|
|
* Updated internal ROM properties database to ROM-Hunter version 5
|
|
(thanks go to RomHunter for his tireless research in this area).
|
|
|
|
* Added '-exitlauncher' commandline argument and associated UI item,
|
|
to specify what happens when you exit a ROM. Normally, exiting a
|
|
ROM brings up the ROM launcher, but this can be disabled for those
|
|
using an external frontend (in which case exiting a ROM also exits
|
|
from Stella).
|
|
|
|
* Re-added '-fastscbios' commandline argument, and added an associated
|
|
UI item. When enabled, the SuperCharger load bars are now completely
|
|
removed (and not just sped up as in previous releases).
|
|
|
|
* The '-listrominfo' commandline argument now shows all ROM
|
|
information built in to the internal database, taking into account
|
|
any information in 'personal' stella.pro files.
|
|
|
|
|
|
2.7.6 to 2.7.7: (May 1, 2009)
|
|
|
|
* Corrected emulation of CPU opcodes involving 'decimal' mode (ADC/RRA
|
|
and SBC/ISB). Special thanks to SeaGtGruff and others on the Stella
|
|
mailing list for in-depth discussion and creation of test ROMs.
|
|
|
|
* Fixed bug in F4SC bankswitching mode; writes to bankswitch addresses
|
|
weren't triggering a bank switch.
|
|
|
|
* Changed internal sound frequency of Pitfall 2 from 15.75KHz to 20KHz,
|
|
as this sounds much more authentic when compared to a real cartridge.
|
|
|
|
|
|
2.7.5 to 2.7.6: (April 14, 2009)
|
|
|
|
* Added support for 'EF' bankswitching (Paul Slocum Homestar Runner),
|
|
as well as auto-detection of this format.
|
|
|
|
* Added support for 'EFSC' bankswitching, as well as auto-detection of
|
|
this format. This is similar to the 'EF' scheme, but also includes
|
|
128 bytes SuperChip RAM.
|
|
|
|
* Added autodetection for '0840' and 'SB' bankswitching formats.
|
|
|
|
* Improved autodetection for 'UA' bankswitching format.
|
|
|
|
* Fixed bug in selecting video modes larger than the current screen;
|
|
the resulting video mode will now be the largest one available
|
|
(previously it selected the smallest one available).
|
|
|
|
* The currently selected CPU register now displays its value in
|
|
decimal and binary (in addition to hex) in the debugger.
|
|
|
|
|
|
2.7.3 to 2.7.5: (Mar. 27, 2009)
|
|
|
|
* After about 2 years, finally fixed the infamous 'red screen' issue when
|
|
using ATI video cards in OpenGL mode in Windows. In the end, it was
|
|
determined to be a bug in the ATI drivers. Special thanks go to
|
|
Ant (http://aqfl.net) for bugtesting and constant feedback wrt this bug.
|
|
|
|
* Fixed bug in TIA SCORE mode emulation when the Priority bit is also
|
|
set. This fixes a very noticable graphical glitch in 'Swordquest
|
|
Waterworld', as well as minor glitches in several other ROMs such
|
|
as 'Space Shuttle'.
|
|
|
|
* Treat spaces as normal characters in the ROM launcher. This means
|
|
that ROMs with spaces can be located with quick selection (ie,
|
|
typing characters will automatically jump to a ROM with that name,
|
|
and typing 'space' won't cause the launcher to jump back to the top
|
|
of the list).
|
|
|
|
* The debugger window can now have a minimum height of 620 lines
|
|
(previously the minimum was 690), but you lose access to the TIA 'RAM'
|
|
bytes when using this resolution. This should allow it to work
|
|
better on devices with small displays.
|
|
|
|
|
|
2.7.2 to 2.7.3: (Feb. 9, 2009)
|
|
|
|
* Fixed rendering issues in software mode when using 24-bit colour depth.
|
|
This isn't as fast as 16 or 32-bit modes, so you're recommended to use
|
|
one of those whenever possible.
|
|
|
|
* For the Win32 port: re-added ability to change the default location
|
|
for storing Stella config files. To use this, simply create a file
|
|
named 'basedir.txt' in the application directory containing the full
|
|
path where all Stella-related items should be stored.
|
|
|
|
* Tweaked the TIA info statistics overlay to be smaller while still
|
|
including all relevant information.
|
|
|
|
|
|
2.7.1 to 2.7.2: (Jan. 27, 2009)
|
|
|
|
* Fixed major bug in ROM Audit functionality; renaming ROMs would create
|
|
files without an extension.
|
|
|
|
|
|
2.7 to 2.7.1: (Jan. 26, 2009)
|
|
|
|
* Partial workaround for sound not working in OpenGL video mode in
|
|
Windows with ATI video hardware. Sound will now work for the first ROM
|
|
selected, but not for subsequent ones (you will have to quit and
|
|
restart Stella for sound to work again). Related to this, added
|
|
'-audiofirst' commandline argument, which initializes audio before video
|
|
when emulating a ROM. Further work is required to completely fix
|
|
this bug.
|
|
|
|
* Fixed bug where volume wasn't being saved in 'Audio Settings' when
|
|
started from the ROM launcher.
|
|
|
|
* Fixed crash which sometimes occurred when viewing snapshots in the
|
|
ROM Info viewer.
|
|
|
|
* Allow setting window sizes for the ROM launcher and debugger to be larger
|
|
than your desktop resolution. Be careful with this feature, as switching
|
|
to fullscreen mode may cause problems in such cases.
|
|
|
|
* Made the ROM launcher filename filtering be case-insensitive. This fixes
|
|
a bug whereby ROMs with uppercase extensions were marked as invalid.
|
|
|
|
* Added a pattern matching textbox to the ROM launcher, used to
|
|
further filter the files shown in the listing. For now, this filters
|
|
files only (directories are not filtered, and are always shown).
|
|
|
|
* The location of EEPROM files used for AtariVox/Savekey emulation can
|
|
now be changed with the '-eepromdir' commandline argument as well as
|
|
in the UI.
|
|
|
|
* Added '-gl_aspectn' and '-gl_aspectp' commandline arguments (and
|
|
associated UI items), which replace the previous '-gl_aspect' setting.
|
|
The aspect modes can now be set separately for NTSC and PAL mode.
|
|
Related to this, the range of values is now 80 - 120.
|
|
|
|
* Fixed bug with hold-select/reset/button0 when overriding ROM properties;
|
|
the checkboxes in the UI weren't actually doing anything.
|
|
|
|
* The 'grabmouse' option is now configurable from the UI; previously
|
|
it was only accessible from the commandline or its shortcut key.
|
|
|
|
* Removed 'Emulation_HmoveBlanks' ROM property and associated UI item.
|
|
You can no longer optionally turn off HMOVE blanking; it is always
|
|
enabled when necessary.
|
|
|
|
|
|
2.6.1 to 2.7: (Jan. 19, 2009)
|
|
|
|
* Totally reworked the built-in UI to be font-sensitive and use higher-
|
|
resolution fonts. Stella now requires a minimum screen size of 640x480.
|
|
If used in a resolution smaller than that, the fonts will be reduced
|
|
accordingly. Related to this, switching between software and OpenGL
|
|
rendering now requires an application restart.
|
|
|
|
* Added three different sized fonts (small, medium, large) which can be
|
|
used in the ROM launcher.
|
|
|
|
* Added ability to temporarily override ROM properties from the UI. This
|
|
is tied to a right mouse button context menu in the ROM launcher, and
|
|
is very useful when you want to use a set of properties for all
|
|
subsequent ROMs without having to manually change each one.
|
|
|
|
* Added ability to filter the files shown in the ROM launcher. Currently,
|
|
the choices are 'all files', 'all roms', or 'roms ending with a certain
|
|
extension'. This functionality is tied to a right mouse button context
|
|
menu in the ROM launcher. Extensions can also be set with the
|
|
'-launcherexts' commandline argument.
|
|
|
|
* Added ability to reload the listing in the ROM launcher, either from
|
|
a right mouse button context menu or pressing the Control/Cmd-R key.
|
|
|
|
* Made the ROM info viewer in the ROM launcher configurable to show
|
|
snapshots in 1x or 2x mode.
|
|
|
|
* Made the delay between consecutive keys being recognized as one word
|
|
configurable in the ROM launcher. This is useful if you find that you
|
|
have to press keys too quickly to jump to a specific ROM. This can be
|
|
set in the UI or using the '-listdelay' commandline argument.
|
|
|
|
* Updated internal ROM properties database to ROM-Hunter version 4
|
|
(thanks go to RomHunter for his tireless research in this area).
|
|
|
|
* Expanded the statistics overlay for the TIA image to also show
|
|
Display Format and Bankswitch type information.
|
|
|
|
* Added '-ss1x' commandline argument and associated UI item, used to
|
|
generate snapshots in 1x mode, independent of the filtering/scaling
|
|
currently in use.
|
|
|
|
* Various path textboxes in the UI now recognize './' (or '.\') to mean
|
|
the current directory and '~/' (or '~\') to mean your home directory
|
|
(for Windows, home directory will be your 'My Documents' folder).
|
|
|
|
* Large speedup in loading directories with many files in the ROM launcher.
|
|
|
|
* Fixed reset issue in 3E, 4A50, AR, CV, E7, F4SC, F6SC, F8SC, FASC and MC
|
|
ROMs; the internal RAM wasn't being randomized after the initial reset.
|
|
|
|
* M6532/RIOT RAM is now randomized at every reset, not just when the
|
|
emulation starts.
|
|
|
|
* Fixed bug in _diff pseudo-registers in the debugger; they were actually
|
|
defined backwards.
|
|
|
|
* Added fix for 'Challenge/Surfers Delight' ROM; the startup bank was
|
|
incorrect. Combined with the new 'Override Properties' functionality,
|
|
you can now play both games directly from the UI (no need to use the
|
|
commandline).
|
|
|
|
* Fixed paddle issue with Activision Casino ROM; the last card in game 4
|
|
can now be reached.
|
|
|
|
* Added new pseudo-registers to the debugger, useful for conditional
|
|
breakpoints (_fcount, _cclocks, _vsync, _vblank).
|
|
|
|
* Added 'timing' commandline argument functionality to the UI, so you no
|
|
longer need to use the commandline to set it.
|
|
|
|
* Size restrictions on the TIA image are now strictly enforced. The
|
|
maximum height of a 1x TIA image is now 256 lines.
|
|
|
|
* Added a new setting to the 'fullres' option named 'auto'. Using
|
|
'auto' will let Stella decide the best videomode to use in fullscreen.
|
|
|
|
* Changed 'gl_fsmax' option to mean 'scale TIA image in fullscreen'. It
|
|
will have no effect on UI modes.
|
|
|
|
* Changed 'gl_aspect' option to range 80-100 (previously, it was 50-100).
|
|
|
|
* Removed 'ui_zoom' and 'tia_zoom' options, replacing them with
|
|
'tia_filter' (which can be zoom1x, zoom2x, etc). There is no equivalent
|
|
for ui_zoom, since the UI can no longer be scaled.
|
|
|
|
* Added experimental 64-bit version for Vista64 (may also work on WinXP64).
|
|
This hasn't been extensively tested, and is probably quite a bit slower
|
|
than the 32-bit version.
|
|
|
|
* OSX port now requires at least 10.3 and XCode 3.0 to compile. Sorry,
|
|
but I no longer have access to older systems to compile for 10.2.
|
|
|
|
* Huge updates to the documentation, particularly concerning the debugger.
|
|
Many features that have been in Stella for a while are now documented for
|
|
the first time.
|
|
|
|
|
|
2.6 to 2.6.1: (May 22, 2008)
|
|
|
|
* Introduced more accurate timing for NTSC vs. PAL modes, where the
|
|
framerate is based on the number of scanlines per frame. This should
|
|
eliminate 'clicking' sounds when emulating ROMs that don't follow
|
|
the exact NTSC or PAL scanline specs.
|
|
|
|
* Added ability to see the current number of scanlines and corresponding
|
|
framerate to the TIA emulation. This can be set with the '-stats'
|
|
commandline argument, or dynamically turned on and off with the
|
|
'Alt-l' key combo.
|
|
|
|
* Modified '-framerate' commandline argument, where a non-zero value
|
|
overrides the automatic framerate calculation (based on number of
|
|
scanlines). Setting 'framerate' to zero re-enables auto-frame
|
|
calculation. Also, re-enabled changing the framerate from within the
|
|
UI.
|
|
|
|
* Added '-timing' commandline argument, which sets the type of waiting
|
|
between processing frames. Setting it to 'sleep' emulates the
|
|
previous behaviour in Stella; setting it to 'busy' emulates z26,
|
|
and can in some cases eliminate screen tearing (at the expense of
|
|
using all available CPU time).
|
|
|
|
* Fixed issue with debugger disassembly and mirrored $40 TIA write
|
|
addresses. They were actually defined at $30, and generating incorrect
|
|
labels.
|
|
|
|
* Fixed issue in AtariVox and SaveKey controllers where accessing the
|
|
EEPROM sometimes failed after the first write.
|
|
|
|
* Changed AtariVox and SaveKey EEPROM emulation to default to $FF for
|
|
a blank EEPROM.
|
|
|
|
* Fixed regression in cart auto-detection logic; some F6 ROMs were being
|
|
misdetected as E7.
|
|
|
|
* Fixed issue with M6532/RIOT timer initialization; it was causing some
|
|
ROMs to hang (most notably Summer Games). Related to this, reworked
|
|
the built-in random number generator to generate 'more' random numbers.
|
|
|
|
* Fixed bug in CommandMenu where console buttons (Select, Reset, etc)
|
|
weren't doing anything.
|
|
|
|
|
|
2.5.1 to 2.6: (May 16, 2008)
|
|
|
|
* Added AtariVox support using a real AtariVox device, where Stella
|
|
sends data directly to the AtariVox. For now, this is supported in
|
|
Linux/UNIX, OSX, and Win32 only. You'll obviously need a real
|
|
AtariVox, and a serial<->USB adaptor to connect it to your system.
|
|
Added '-avoxport' commandline argument used to set the serial port
|
|
to which the AtariVox is connected. Special thanks to Al Yarusso
|
|
and Richard H. for providing sample hardware.
|
|
|
|
* Added AtariVox and SaveKey EEPROM emulation. This reads/writes data
|
|
to a 32KB file, not to the actual hardware. Very useful for testing
|
|
EEPROM support without actually wearing out the real device. Special
|
|
thanks to J. Payson for providing the EEPROM emulation code, and A.
|
|
Herbert for answering many driver-related questions.
|
|
|
|
* Added support for CX-22, CX-80, and AmigaMouse trackball controllers.
|
|
|
|
* Improved debugger symfile handling so that addresses accessed as
|
|
read-only won't use write-only labels (and vice-versa). More work
|
|
is still needed in this area.
|
|
|
|
* Added M6532/RIOT tab to the debugger. This will be expanded on in a
|
|
future release.
|
|
|
|
* Added TIA emulation fixes for graphical glitches in Escape from the
|
|
Mindmaster, Mission Survive, Solaris, and SWOOPS!
|
|
|
|
* Fixed bug where fullscreen OpenGL scaling wasn't working on 4:3 monitors.
|
|
|
|
* Further improvements to the M6532/RIOT emulation, which unfortunately
|
|
have broken old state files (again).
|
|
|
|
* Added deadzone setting, for adjusting the deadzone amount for
|
|
analog joysticks. This can be set using the commandline argument
|
|
'-joydeadzone' or dynamically within the UI.
|
|
|
|
* Make ROM disassembly in debugger take advantage of a wide window.
|
|
|
|
* Fixed bug in 6507 BCD handling introduced in the last release.
|
|
|
|
* For the Win32 port; Win9x should be fully supported again.
|
|
|
|
|
|
2.5 to 2.5.1: (April 9, 2008)
|
|
|
|
* Fixed M6532 RIOT timer emulation. More testing is needed, but the
|
|
changes so far have fixed several ROMs that didn't work before.
|
|
|
|
* Fixed issue with weird characters in the debugger disassembly when
|
|
loading .lst files.
|
|
|
|
* Fixed bug where entering the debugger for 4A50 and E0 carts caused
|
|
the ROM to be frozen afterwords.
|
|
|
|
* Removed logic whereby starting a ROM from something other than the
|
|
built-in launcher wouldn't allow the user to go back to the ROM launcher.
|
|
|
|
* Fixed bug (hopefully) with the app icon not showing on the Stella window.
|
|
Further testing is needed, since I can't duplicate the error myself.
|
|
|
|
* Fixed default snapshot folder issues; the folder will now be
|
|
automatically created in the same place as state folders, ini files,
|
|
etc (whereever that may be for your platform).
|
|
|
|
* Re-added 'lastrom' functionality, where Stella will remember and
|
|
auto-select the last ROM that was successfully launched in the ROM
|
|
launcher.
|
|
|
|
* For Stella developers, fixed SpeakJet emulation so it compiles again.
|
|
No improvements have been made to the emulation itself, though.
|
|
|
|
|
|
2.4.2 to 2.5: (March 28, 2008)
|
|
|
|
* Added RomInfo widget to the ROM launcher, which shows properties
|
|
information and a snapshot of the currently selected ROM. Updated the UI
|
|
and added '-romviewer' commandline argument to activate this setting.
|
|
Note that the ROM launcher will have to be sized at least 640x480 for this
|
|
to be used. Also note that the snapshots must be in 1x mode with a
|
|
maximum size of 320x260. This will be expanded on in a future release.
|
|
|
|
* Added ROM audit functionality, whereby ROMs can be physically renamed
|
|
according to their properties' name.
|
|
|
|
* Added bankswitching support for 0840, SB, X07 and 4A50. A special thanks
|
|
to Eckhard Stolberg for much help in this area.
|
|
|
|
* Removed "non-browse" functionality from the ROM launcher; it now always
|
|
uses browse/filesystem mode. The previous 'pretty' names can now be
|
|
seen by renaming all your ROMs with the new ROM audit feature.
|
|
|
|
* Huge overhaul of controller handling and Stelladaptor support, making it
|
|
much easier to add new controller types in a future release.
|
|
|
|
* Fixed paddle issues in Night Driver; paddle emulation speed should be
|
|
much better.
|
|
|
|
* Fixed several 6507 emulation bugs related to BCD handling.
|
|
|
|
* Updated ROM properties based on info from RomHunter.
|
|
|
|
* ROM properties can now be edited from the ROM launcher; you no longer
|
|
have to start a ROM to do so.
|
|
|
|
* Added support for configurable font to ROM launcher (currently only
|
|
'small' and 'large'). Updated the UI and added -launcherfont' commandline
|
|
argument to change this setting.
|
|
|
|
* Added SECAM, NTSC50, PAL60 and SECAM60 to the list of formats that can
|
|
be used. Also, switching between these modes with 'Ctrl-f' now switches
|
|
the palette only; the number of scanlines won't change.
|
|
|
|
* Fixed crash when switching between software and OpenGL mode with a
|
|
Stelladaptor plugged in.
|
|
|
|
* Added '-tiafloat' commandline argument, which determines whether or not
|
|
the TIA pins are in a 'floating' state. This is useful for testing on
|
|
certain CMOS EPROM chips where the unused TIA pins on a read are not
|
|
floating but pulled high.
|
|
|
|
* Fixed issue in debugger where once a .sym file was loaded, it was used
|
|
in all ROMs loaded after that.
|
|
|
|
* Fixed issue in debugger where equate names weren't showing up in the RAM
|
|
and CPU widgets. Note that this still isn't perfect, and needs support
|
|
from DASM for proper functionality.
|
|
|
|
* Updated state file format, creating smaller files (and in preparation
|
|
for state rewinding in a future release). Old state saves will no longer
|
|
work.
|
|
|
|
* Added '-bs' commandline argument, which is an alias for '-type' (which
|
|
is still present).
|
|
|
|
* Removed -pXspeed' commandline arguments, and replaced them with a
|
|
single '-pspeed'.
|
|
|
|
* Removed '-paddle' commandline argument. The paddle currently emulated
|
|
by the mouse can still be changed with Ctrl-0..3 or within the UI, but
|
|
the setting is no longer saved.
|
|
|
|
* Reworked UI for specifying that the console ports have been swapped,
|
|
hopefully making it easier to understand.
|
|
|
|
* Added 'Ctrl-c' & 'Ctrl-v' to EditTextWidgets, allowing to copy and paste
|
|
the text widget contents. More work in this area is coming in a future
|
|
release.
|
|
|
|
* Added 'Ctrl-leftarrow' and 'Ctrl-rightarrow' to EditTextWidgets, to move
|
|
to the first character of previous and next words (respectively).
|
|
|
|
* For the Win32 port: fixed OpenGL crashes in Vista. Graphical updates
|
|
are still slower in Vista compared to XP, though.
|
|
|
|
* For the Win32 port: default folder for Stella config files is now
|
|
'My Documents\Stella'; this can be disabled if necessary. This should
|
|
fix issues with losing settings when launching Stella from an IDE,
|
|
and the creation of stella.ini and 'state' directories in many
|
|
different places.
|
|
|
|
* For the Win32 port: several fixes to the Visual Studio project files,
|
|
allowing building in debug or release mode, for both i386 and x86_64.
|
|
The project files have been upgraded to Visual Studio 2008, and Stella
|
|
can now be built and distributed without the VS runtime libraries.
|
|
|
|
* Updated configure script for cross-compiling Win32 version in Linux.
|
|
|
|
|
|
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.
|
|
|
|
|
|
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)
|