- Fix a bit of pkglint.
- patch-aa is no longer needed.
Upstream changelog:
3.7.1 to 3.7.2: (June 10, 2012)
* Fixed bug in handling filenames with the '~' character, as is used
extensively by RomHunter rom-sets.
-Have fun!
3.7 to 3.7.1: (June 8, 2012)
* Note: because of TIA changes, the state file format has changed again,
and old state files will not work with this release.
* Improved TIA emulation with ROMs that have too few or too many
scanlines; the output is now more accurate compared to a real TV.
Special thanks to Omegamatrix of AtariAge for test ROMs in this area.
* Modified hotkey for "Change console palette" (Control-f) to also
change the display properties of the TIA. This allows you to switch
between NTSC/PAL/SECAM (and variant) modes dynamically. Related to
this, added Shift-Control-f key to step backwards through the
available modes.
* Added '64in1' and '128in1' multicart bankswitching schemes, which work
the same as the 2in1/4in1/etc ones (Control-r switches to each
consecutive game in the ROM).
* Fixed several bugs in DPC+ bankswitching scheme, including ability
to load and save state files. As well, ROMs now work correctly after
console format autodetection.
* Fixed bugs in handling relative filenames on the commandline,
introduced in the last release. The new functionality should be much
more robust.
3.6.1 to 3.7: (June 1, 2012)
* Added Blargg TV effects, with presets for Composite, S-video, RGB,
and badly adjusted TV, and well as a custom mode with full
configurability of contrast, brightness, gamma, etc. Many
keyboard shortcuts and commandline arguments were added to support
this; see the documentation for a detailed explanation. These
effects are OpenGL-only. Special thanks to Ian Bogost and the
Georgia Tech Atari Team for the preliminary implementation.
* Updated the CompuMate keyboard handler to recognize more keys on an
actual keyboard, instead of having to remember the weird combinations
used on the original CompuMate keyboard (although those original keys
will continue to work). Related to this, fixed bug whereby
'ghost keys' would be detected by the CompuMate, particularly after
pressing 'Enter' to start a game from the ROM launcher.
* Added emulation for MindLink controller using the mouse; the 'Bionic
Breakthrough' and 'Telepathy' ROMs now work.
* Updated FA2 bankswitch scheme (Star Castle) to emulate load/save
high score functionality to the Harmony cart flash RAM.
* Added ability for ROM launcher to 'descend' into ZIP files when it
contains more than one ROM file. This means you no longer have to
unzip a multi-file archive before using each ROM. Thanks go to Roland
Schabenberger (webOS maintainer) for this idea and sample code.
* Several improvements to the debugger/disassembler:
- The 'resolvedata', 'showaddr' and 'gfxformat' commandline
arguments are renamed to start with 'dis', indicating that
they're used with the built-in disassembler.
- Zero-page code addresses no longer have their high-byte
truncated, and system equates (TIA and I/O registers) are now
properly marked as such.
- The Distella '-r' option (Relocate calls out of address range)
is no longer the default, resulting in output more consistent
with normal usage of Distella. Related to this, added the
'-dis.relocate' commandline argument (and associated UI item)
to toggle this dynamically.
* Fixed bug in EFSC bankswitch scheme state saving; the Superchip RAM
wasn't actually being loaded and saved to state files.
* Improved speed of loading and saving state files, as well as slightly
reducing their size. Because of this, old state files will not work
with this release.
* Replaced commandline argument 'uselauncher' with 'exitlauncher'. The
new option specifies the behaviour of the ROM launcher when exiting
a ROM (always exit to launcher, or only when the launcher was actually
used). This setting can now be changed in the GUI.
* Several updates to the internal properties database:
- 'Juno First' ROMs now use an AtariVox/SaveKey when possible
- 'Astroblast' ROMs now use the paddles by default
- 'Star Castle 2600' ROMs added
* Changed key-combo for enabling TIA objects and collisions to be
toggled on and off with the Alt-period and Shift-Alt-period
respectively (instead of having two separate keys to turn them on
and off).
* When working on the commandline, relative filenames are now
correctly handled (current working directory is used).
* The Windows 98/ME/2000 builds have been discontinued, due to code and
features that are only available on Windows XP/SP3 and later.
* Updated included PNG library to latest stable version.
3.6 to 3.6.1: (March 30, 2012)
* Extended FA2 bankswitch scheme to handle 28K ROMs (in addition to
the previously supported 24K ROMs).
3.5.5 to 3.6: (March 16, 2012)
* Added support for 2600-daptor II device, including native support
for 7800 controllers, BoosterGrip and Keypad controllers. Special
thanks go to Tom Hafner for a complimentary test sample of this
device, and also for donating a BoosterGrip controller.
* Added ability to dynamically swap the port order of Stelladaptor/
2600-daptor devices with the 'Control-1' key combo (useful if you
have only one 2600-daptor and want to use it as a left port
normally, but as a right port for Star Raiders, etc).
* Added CompuMate bankswitching/controller support to the emulation
core; the Spectravideo CompuMate ROMs (NTSC and PAL) now work.
Frequently used keys on the CompuMate are directly mapped to your
keyboard (ie, Func-Space for backspace is mapped to Backspace, etc).
Loading/saving from the cassette player is not yet supported, and
will come in a future release.
* Fixed bug in BoosterGrip controller emulation; the functionality
of the booster and trigger buttons was reversed. Related to this,
renamed these actions in the Event Mapping dialog to be more clear.
* Reverted to SDL 1.2.14 for the Windows 98/2k release, since SDL
1.2.15 isn't supported in that environment.
* Updated included PNG library to latest stable version.
3.5 to 3.5.5: (February 4, 2012)
* Due to changes in the debugger, old state files will not work with
this release.
* Fixed bug in sound restructuring introduced in the last release; in
some cases, there could be some sound 'crackling' when starting a
ROM after at least one ROM had already been loaded.
* Several significant improvements to the debugger I/O tab:
- added controller input widgets for many of the built-in
controllers, allowing to control joysticks, paddles, etc
from within the debugger.
- added ability to modify the SWCHB/SWBCNT port B registers.
- added ability to view TIA INPTx and VBLANK latch/dump bits.
* Reworked 'mcontrol' argument, and added ability to map the mouse
axes separately for paddles 0-3 or driving controllers 0-1. In
such modes, the left mouse button is tied to the x-axis, and the
right button is tied to the y-axis.
* Mouse 'specific-axis' mode is now saved per-ROM, meaning that each
ROM can have separate settings. For example, this allows one ROM to
use paddles 0 and 1, while another can use paddles 0 and 2, etc.
* The key-combo for switching the mouse between controller modes is now
'Control-0' (Control-1,2,3 have been removed). This switches
between all possible modes for the current virtual controllers.
* Fixed bug in 'Fixed Debug Colors' mode; under certain circumstances,
playfield graphics could be coloured as being player graphics.
* Fixed bug in PAL color-loss setting in Video Settings; changing the
settings wouldn't take effect until the ROM was reloaded.
* Fixed bugs with cheatcode handling; loading a ROM with a cheat
disabled would sometimes trash the emulation. More work is
required in this area, including the ability to create more
advanced types of cheats.
* Updated ROM properties database for all Sega Genesis controller
compatible ROMs. Also, the mouse can now emulate a Genesis
controller, with the left/right buttons mapped to buttons B and C,
respectively.
* Added 'FA2' bankswitch scheme, thanks to code from Chris D.
Walton. This scheme will be used in an upcoming 'Star Castle' ROM.
* Updated internal ROM properties database to ROM-Hunter version 7
(thanks go to RomHunter for his tireless research in this area).
* Added several PERL tools to help in automation of analyzing RomHunter
ROM set releases.
* Fixed compile issues in Irix when using the default compiler
instead of gcc. Thanks go to Rainer M. Canavan for this code.
* Updated included PNG library to latest stable version.
3.4.1 to 3.5: (December 29, 2011)
* Stella is now DonationWare! Please see the DonationWare link on the
main webpage for more information.
* 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.
* Added 'mcontrol' commandline argument, which can specify to use each
mouse axis as a separate paddle. The old (and default) behaviour can
be activated by setting this argument to 'auto'. Related to this,
removed redundant 'usemouse' argument.
* 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.
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.
* system properties file was never used.
Changes in 1.4.1:
* Fixed PAL sound issues.
* Cleaned up the SDL event gathering loop.
* 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).
Changes:
* Codebase ported to SDL. X11/OSS ports have been discontinued.
* Added OpenGL rendering support. (not enabled in pkgsrc)
* 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 has been greatly improved.
* Added support for switchable palettes.
* 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.
Changes since 1.1:
* 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
* 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.
* Added snapshot support to the X11 and SDL versions. Pressing F12
saves the current screen in PNG format. Requires PNG library.
* Added pause functionality to the core. Implemented in DOS, X11,
and SDL versions for now.