Fixed bug in F4SC bankswitching; writes to the BS addresses weren't

actually performing a bankswitch.

(Hopefully) improved Pitfall2 sound generation.  At least it sounds
more authentic to me.

Updates for the 2.7.7 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1709 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
stephena 2009-05-01 11:25:07 +00:00
parent 41010aa5ee
commit 8bbf7e321b
29 changed files with 111 additions and 86 deletions

View File

@ -9,7 +9,7 @@
SSSS ttt eeeee llll llll aaaaa SSSS ttt eeeee llll llll aaaaa
=============================================================================== ===============================================================================
Release 2.7.6 for Linux, Mac OSX and Windows Release 2.7.7 for Linux, Mac OSX and Windows
=============================================================================== ===============================================================================
The Atari 2600 Video Computer System (VCS), introduced in 1977, was the most The Atari 2600 Video Computer System (VCS), introduced in 1977, was the most
@ -21,25 +21,25 @@ of your favorite Atari 2600 games again! Stella was originally developed for
Linux by Bradford W. Mott, however, it has been ported to a number of other Linux by Bradford W. Mott, however, it has been ported to a number of other
platforms. platforms.
This is the 2.7.6 release of Stella for Linux, Mac OSX and Windows. This is the 2.7.7 release of Stella for Linux, Mac OSX and Windows.
Distributions for other operating systems will appear as they become available. Distributions for other operating systems will appear as they become available.
The distributions currently available are: The distributions currently available are:
* Binary distribution in 32-bit RPM format for Linux (stella-2.7.6-1.i586.rpm) * Binary distribution in 32-bit RPM format for Linux (stella-2.7.7-1.i586.rpm)
* Binary distribution in 32-bit Ubuntu DEB format (stella_2.7.6-1_i386.deb) * Binary distribution in 32-bit Ubuntu DEB format (stella_2.7.7-1_i386.deb)
* Binary distribution in 64-bit Ubuntu DEB format (stella_2.7.6-1_amd64.deb) * Binary distribution in 64-bit Ubuntu DEB format (stella_2.7.7-1_amd64.deb)
* Binary distribution for Mac OSX (StellaOSX2.7.6.dmg.gz) * Binary distribution for Mac OSX (StellaOSX2.7.7.dmg.gz)
* Binary installer (exe) for Windows (stella-2.7.6-win32.exe) * Binary installer (exe) for Windows (stella-2.7.7-win32.exe)
* Binary zip for Windows (stella-2.7.6-win32.zip) * Binary zip for Windows (stella-2.7.7-win32.zip)
* Binary zip for 64-bit Windows (stella-2.7.6-win64.zip) * Binary zip for 64-bit Windows (stella-2.7.7-win64.zip)
* Source code distribution for all platforms (stella-2.7.6-src.tar.gz) * Source code distribution for all platforms (stella-2.7.7-src.tar.gz)
PLEASE DO NOT WRITE ASKING FOR ROM IMAGES TO USE WITH STELLA! ALL SUCH PLEASE DO NOT WRITE ASKING FOR ROM IMAGES TO USE WITH STELLA! ALL SUCH
REQUESTS WILL BE IGNORED! REQUESTS WILL BE IGNORED!

View File

@ -12,6 +12,21 @@
Release History Release History
=============================================================================== ===============================================================================
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.
-Have fun!
2.7.5 to 2.7.6: (April 14, 2009) 2.7.5 to 2.7.6: (April 14, 2009)
* Added support for 'EF' bankswitching (Paul Slocum Homestar Runner), * Added support for 'EF' bankswitching (Paul Slocum Homestar Runner),
@ -32,8 +47,6 @@
* The currently selected CPU register now displays its value in * The currently selected CPU register now displays its value in
decimal and binary (in addition to hex) in the debugger. decimal and binary (in addition to hex) in the debugger.
-Have fun!
2.7.3 to 2.7.5: (Mar. 27, 2009) 2.7.3 to 2.7.5: (Mar. 27, 2009)

View File

@ -1,4 +1,4 @@
This is release 2.7.6 of Stella. Stella is a multi-platform Atari 2600 VCS This is release 2.7.7 of Stella. Stella is a multi-platform Atari 2600 VCS
emulator which allows you to play all of your favorite Atari 2600 games emulator which allows you to play all of your favorite Atari 2600 games
on your PC. You'll find the Stella Users Manual in the docs subdirectory. on your PC. You'll find the Stella Users Manual in the docs subdirectory.
If you'd like to verify that you have the latest release of Stella visit If you'd like to verify that you have the latest release of Stella visit
@ -9,4 +9,4 @@ the Stella Website at:
Enjoy, Enjoy,
The Stella Team The Stella Team
April 14, 2009 May 1, 2009

View File

@ -1,3 +1,10 @@
stella (2.7.7-1) stable; urgency=low
* Version 2.7.7 release
-- Stephen Anthony <stephena@users.sf.net> Fri, 1 May 2009 18:38:25 +0200
stella (2.7.6-1) stable; urgency=low stella (2.7.6-1) stable; urgency=low
* Version 2.7.6 release * Version 2.7.6 release

View File

@ -10,7 +10,7 @@
<br><br> <br><br>
<center><h2><b>A multi-platform Atari 2600 VCS emulator</b></h2></center> <center><h2><b>A multi-platform Atari 2600 VCS emulator</b></h2></center>
<center><h4><b>Release 2.7.6</b></h4></center> <center><h4><b>Release 2.7.7</b></h4></center>
<br><br> <br><br>
<center><h2><b>User's Guide</b></h2></center> <center><h2><b>User's Guide</b></h2></center>

View File

@ -13,13 +13,13 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: Version.hxx,v 1.57 2009-04-15 12:43:22 stephena Exp $ // $Id: Version.hxx,v 1.58 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#ifndef VERSION_HXX #ifndef VERSION_HXX
#define VERSION_HXX #define VERSION_HXX
#define STELLA_BASE_VERSION "2.7.7_cvs" #define STELLA_BASE_VERSION "2.7.7"
#ifdef NIGHTLY_BUILD #ifdef NIGHTLY_BUILD
#define STELLA_VERSION STELLA_BASE_VERSION "pre-" NIGHTLY_BUILD #define STELLA_VERSION STELLA_BASE_VERSION "pre-" NIGHTLY_BUILD

View File

@ -81,7 +81,7 @@ void Cartridge0840::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 Cartridge0840::peek(uInt16 address) uInt8 Cartridge0840::peek(uInt16 address)
{ {
address = address & 0x1840; address &= 0x1840;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -114,7 +114,7 @@ uInt8 Cartridge0840::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void Cartridge0840::poke(uInt16 address, uInt8 value) void Cartridge0840::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x1840; address &= 0x1840;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: Cart3E.cxx,v 1.18 2009-01-01 18:13:35 stephena Exp $ // $Id: Cart3E.cxx,v 1.19 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -91,7 +91,7 @@ void Cartridge3E::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 Cartridge3E::peek(uInt16 address) uInt8 Cartridge3E::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
if(address < 0x0800) if(address < 0x0800)
{ {
@ -109,7 +109,7 @@ uInt8 Cartridge3E::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void Cartridge3E::poke(uInt16 address, uInt8 value) void Cartridge3E::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary. Armin (Kroko) says there are no mirrored // Switch banks if necessary. Armin (Kroko) says there are no mirrored
// hotspots. // hotspots.

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: Cart3F.cxx,v 1.19 2009-01-01 18:13:35 stephena Exp $ // $Id: Cart3F.cxx,v 1.20 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -88,7 +88,7 @@ void Cartridge3F::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 Cartridge3F::peek(uInt16 address) uInt8 Cartridge3F::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
if(address < 0x0800) if(address < 0x0800)
{ {
@ -103,7 +103,7 @@ uInt8 Cartridge3F::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void Cartridge3F::poke(uInt16 address, uInt8 value) void Cartridge3F::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if(address <= 0x003F) if(address <= 0x003F)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartDPC.cxx,v 1.22 2009-01-01 18:13:35 stephena Exp $ // $Id: CartDPC.cxx,v 1.23 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -146,7 +146,7 @@ inline void CartridgeDPC::updateMusicModeDataFetchers()
mySystemCycles = mySystem->cycles(); mySystemCycles = mySystem->cycles();
// Calculate the number of DPC OSC clocks since the last update // Calculate the number of DPC OSC clocks since the last update
double clocks = ((15750.0 * cycles) / 1193191.66666667) + myFractionalClocks; double clocks = ((20000.0 * cycles) / 1193191.66666667) + myFractionalClocks;
Int32 wholeClocks = (Int32)clocks; Int32 wholeClocks = (Int32)clocks;
myFractionalClocks = clocks - (double)wholeClocks; myFractionalClocks = clocks - (double)wholeClocks;
@ -195,7 +195,7 @@ inline void CartridgeDPC::updateMusicModeDataFetchers()
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeDPC::peek(uInt16 address) uInt8 CartridgeDPC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Clock the random number generator. This should be done for every // Clock the random number generator. This should be done for every
// cartridge access, however, we're only doing it for the DPC and // cartridge access, however, we're only doing it for the DPC and
@ -318,7 +318,7 @@ uInt8 CartridgeDPC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeDPC::poke(uInt16 address, uInt8 value) void CartridgeDPC::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Clock the random number generator. This should be done for every // Clock the random number generator. This should be done for every
// cartridge access, however, we're only doing it for the DPC and // cartridge access, however, we're only doing it for the DPC and

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartE0.cxx,v 1.17 2009-01-01 18:13:35 stephena Exp $ // $Id: CartE0.cxx,v 1.18 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -85,7 +85,7 @@ void CartridgeE0::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeE0::peek(uInt16 address) uInt8 CartridgeE0::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FE7)) if((address >= 0x0FE0) && (address <= 0x0FE7))
@ -107,7 +107,7 @@ uInt8 CartridgeE0::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeE0::poke(uInt16 address, uInt8) void CartridgeE0::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FE7)) if((address >= 0x0FE0) && (address <= 0x0FE7))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartE7.cxx,v 1.22 2009-01-01 18:13:35 stephena Exp $ // $Id: CartE7.cxx,v 1.23 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -87,7 +87,7 @@ void CartridgeE7::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeE7::peek(uInt16 address) uInt8 CartridgeE7::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FE7)) if((address >= 0x0FE0) && (address <= 0x0FE7))
@ -108,7 +108,7 @@ uInt8 CartridgeE7::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeE7::poke(uInt16 address, uInt8) void CartridgeE7::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FE7)) if((address >= 0x0FE0) && (address <= 0x0FE7))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartEF.cxx,v 1.3 2009-04-11 19:48:25 stephena Exp $ // $Id: CartEF.cxx,v 1.4 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -68,7 +68,7 @@ void CartridgeEF::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeEF::peek(uInt16 address) uInt8 CartridgeEF::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FEF)) if((address >= 0x0FE0) && (address <= 0x0FEF))
@ -80,7 +80,7 @@ uInt8 CartridgeEF::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeEF::poke(uInt16 address, uInt8) void CartridgeEF::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FEF)) if((address >= 0x0FE0) && (address <= 0x0FEF))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartEFSC.cxx,v 1.1 2009-04-05 20:18:41 stephena Exp $ // $Id: CartEFSC.cxx,v 1.2 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -92,7 +92,7 @@ void CartridgeEFSC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeEFSC::peek(uInt16 address) uInt8 CartridgeEFSC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FEF)) if((address >= 0x0FE0) && (address <= 0x0FEF))
@ -107,7 +107,7 @@ uInt8 CartridgeEFSC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeEFSC::poke(uInt16 address, uInt8) void CartridgeEFSC::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FE0) && (address <= 0x0FEF)) if((address >= 0x0FE0) && (address <= 0x0FEF))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF4.cxx,v 1.15 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF4.cxx,v 1.16 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -71,7 +71,7 @@ void CartridgeF4::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF4::peek(uInt16 address) uInt8 CartridgeF4::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FF4) && (address <= 0x0FFB)) if((address >= 0x0FF4) && (address <= 0x0FFB))
@ -85,7 +85,7 @@ uInt8 CartridgeF4::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF4::poke(uInt16 address, uInt8) void CartridgeF4::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FF4) && (address <= 0x0FFB)) if((address >= 0x0FF4) && (address <= 0x0FFB))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF4SC.cxx,v 1.20 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF4SC.cxx,v 1.21 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -92,7 +92,7 @@ void CartridgeF4SC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF4SC::peek(uInt16 address) uInt8 CartridgeF4SC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FF4) && (address <= 0x0FFB)) if((address >= 0x0FF4) && (address <= 0x0FFB))
@ -109,6 +109,8 @@ uInt8 CartridgeF4SC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF4SC::poke(uInt16 address, uInt8) void CartridgeF4SC::poke(uInt16 address, uInt8)
{ {
address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
if((address >= 0x0FF4) && (address <= 0x0FFB)) if((address >= 0x0FF4) && (address <= 0x0FFB))
{ {

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF6.cxx,v 1.17 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF6.cxx,v 1.18 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -72,7 +72,7 @@ void CartridgeF6::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF6::peek(uInt16 address) uInt8 CartridgeF6::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -107,7 +107,7 @@ uInt8 CartridgeF6::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF6::poke(uInt16 address, uInt8) void CartridgeF6::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF6SC.cxx,v 1.19 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF6SC.cxx,v 1.20 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -92,7 +92,7 @@ void CartridgeF6SC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF6SC::peek(uInt16 address) uInt8 CartridgeF6SC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -130,7 +130,7 @@ uInt8 CartridgeF6SC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF6SC::poke(uInt16 address, uInt8) void CartridgeF6SC::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF8.cxx,v 1.20 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF8.cxx,v 1.21 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -72,7 +72,7 @@ void CartridgeF8::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF8::peek(uInt16 address) uInt8 CartridgeF8::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -97,7 +97,7 @@ uInt8 CartridgeF8::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF8::poke(uInt16 address, uInt8) void CartridgeF8::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartF8SC.cxx,v 1.19 2009-01-01 18:13:35 stephena Exp $ // $Id: CartF8SC.cxx,v 1.20 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -92,7 +92,7 @@ void CartridgeF8SC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeF8SC::peek(uInt16 address) uInt8 CartridgeF8SC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -120,7 +120,7 @@ uInt8 CartridgeF8SC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeF8SC::poke(uInt16 address, uInt8) void CartridgeF8SC::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartFASC.cxx,v 1.19 2009-01-01 18:13:35 stephena Exp $ // $Id: CartFASC.cxx,v 1.20 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -92,7 +92,7 @@ void CartridgeFASC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeFASC::peek(uInt16 address) uInt8 CartridgeFASC::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -131,7 +131,7 @@ uInt8 CartridgeFASC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeFASC::poke(uInt16 address, uInt8) void CartridgeFASC::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartMB.cxx,v 1.15 2009-01-01 18:13:35 stephena Exp $ // $Id: CartMB.cxx,v 1.16 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -72,7 +72,7 @@ void CartridgeMB::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeMB::peek(uInt16 address) uInt8 CartridgeMB::peek(uInt16 address)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch to next bank // Switch to next bank
if(address == 0x0FF0) incbank(); if(address == 0x0FF0) incbank();
@ -83,7 +83,7 @@ uInt8 CartridgeMB::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeMB::poke(uInt16 address, uInt8) void CartridgeMB::poke(uInt16 address, uInt8)
{ {
address = address & 0x0FFF; address &= 0x0FFF;
// Switch to next bank // Switch to next bank
if(address == 0x0FF0) incbank(); if(address == 0x0FF0) incbank();

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartMC.cxx,v 1.17 2009-01-01 18:13:35 stephena Exp $ // $Id: CartMC.cxx,v 1.18 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -91,7 +91,7 @@ void CartridgeMC::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeMC::peek(uInt16 address) uInt8 CartridgeMC::peek(uInt16 address)
{ {
address = address & 0x1FFF; address &= 0x1FFF;
// Accessing the RESET vector so lets handle the powerup special case // Accessing the RESET vector so lets handle the powerup special case
if((address == 0x1FFC) || (address == 0x1FFD)) if((address == 0x1FFC) || (address == 0x1FFD))
@ -151,7 +151,7 @@ uInt8 CartridgeMC::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeMC::poke(uInt16 address, uInt8 value) void CartridgeMC::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x1FFF; address &= 0x1FFF;
// Accessing the RESET vector so lets handle the powerup special case // Accessing the RESET vector so lets handle the powerup special case
if((address == 0x1FFC) || (address == 0x1FFD)) if((address == 0x1FFC) || (address == 0x1FFD))

View File

@ -13,7 +13,7 @@
// See the file "license" for information on usage and redistribution of // See the file "license" for information on usage and redistribution of
// this file, and for a DISCLAIMER OF ALL WARRANTIES. // this file, and for a DISCLAIMER OF ALL WARRANTIES.
// //
// $Id: CartUA.cxx,v 1.14 2009-01-01 18:13:35 stephena Exp $ // $Id: CartUA.cxx,v 1.15 2009-05-01 11:25:07 stephena Exp $
//============================================================================ //============================================================================
#include <cassert> #include <cassert>
@ -72,7 +72,7 @@ void CartridgeUA::install(System& system)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
uInt8 CartridgeUA::peek(uInt16 address) uInt8 CartridgeUA::peek(uInt16 address)
{ {
address = address & 0x1FFF; address &= 0x1FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)
@ -104,7 +104,7 @@ uInt8 CartridgeUA::peek(uInt16 address)
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
void CartridgeUA::poke(uInt16 address, uInt8 value) void CartridgeUA::poke(uInt16 address, uInt8 value)
{ {
address = address & 0x1FFF; address &= 0x1FFF;
// Switch banks if necessary // Switch banks if necessary
switch(address) switch(address)

View File

@ -33,7 +33,7 @@
<key>CFBundleExecutable</key> <key>CFBundleExecutable</key>
<string>StellaOSX</string> <string>StellaOSX</string>
<key>CFBundleGetInfoString</key> <key>CFBundleGetInfoString</key>
<string>StellaOSX 2.7.6</string> <string>StellaOSX 2.7.7</string>
<key>CFBundleHelpBookFolder</key> <key>CFBundleHelpBookFolder</key>
<string>docs</string> <string>docs</string>
<key>CFBundleHelpBookName</key> <key>CFBundleHelpBookName</key>
@ -45,13 +45,13 @@
<key>CFBundleInfoDictionaryVersion</key> <key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string> <string>6.0</string>
<key>CFBundleName</key> <key>CFBundleName</key>
<string>StellaOSX 2.7.6</string> <string>StellaOSX 2.7.7</string>
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>APPL</string> <string>APPL</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>StLa</string> <string>StLa</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>
<string>StellaOSX 2.7.6</string> <string>StellaOSX 2.7.7</string>
<key>NSMainNibFile</key> <key>NSMainNibFile</key>
<string>SDLMain.nib</string> <string>SDLMain.nib</string>
<key>NSPrincipalClass</key> <key>NSPrincipalClass</key>

View File

@ -1,6 +1,6 @@
#!/bin/sh #!/bin/sh
# $Id: stella.SlackBuild,v 1.13 2009-01-15 18:45:23 stephena Exp $ # $Id: stella.SlackBuild,v 1.14 2009-05-01 11:25:07 stephena Exp $
# stella.SlackBuild for Stella 2.x, B. Watson, 2005 # stella.SlackBuild for Stella 2.x, B. Watson, 2005
@ -13,7 +13,7 @@ die() {
exit 1 exit 1
} }
VERSION=2.7 VERSION=2.7.7
ARCH=${ARCH-i486} ARCH=${ARCH-i486}
BUILD=1 BUILD=1

View File

@ -1,5 +1,5 @@
%define name stella %define name stella
%define version 2.7.6 %define version 2.7.7
%define rel 1 %define rel 1
%define enable_gl 1 %define enable_gl 1
@ -107,6 +107,9 @@ rm -rf $RPM_BUILD_DIR/%{name}-%{version}
%_datadir/icons/large/%{name}.png %_datadir/icons/large/%{name}.png
%changelog %changelog
* Tue May 1 2009 Stephen Anthony <stephena@users.sf.net> 2.7.7-1
- Version 2.7.7 release
* Tue Apr 14 2009 Stephen Anthony <stephena@users.sf.net> 2.7.6-1 * Tue Apr 14 2009 Stephen Anthony <stephena@users.sf.net> 2.7.6-1
- Version 2.7.6 release - Version 2.7.6 release

View File

@ -3,14 +3,14 @@
[Setup] [Setup]
AppName=Stella AppName=Stella
AppVerName=Stella 2.7.6 AppVerName=Stella 2.7.7
AppPublisher=Bradford W. Mott and the Stella team AppPublisher=Bradford W. Mott and the Stella team
AppPublisherURL=http://stella.sourceforge.net AppPublisherURL=http://stella.sourceforge.net
AppSupportURL=http://stella.sourceforge.net AppSupportURL=http://stella.sourceforge.net
AppUpdatesURL=http://stella.sourceforge.net AppUpdatesURL=http://stella.sourceforge.net
DefaultDirName={pf}\Stella DefaultDirName={pf}\Stella
DefaultGroupName=Stella DefaultGroupName=Stella
OutputBaseFilename=stella-2.7.6-win32 OutputBaseFilename=stella-2.7.7-win32
Compression=lzma Compression=lzma
SolidCompression=yes SolidCompression=yes
@ -21,10 +21,10 @@ Name: "eng"; MessagesFile: "compiler:Default.isl"
Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked Name: "desktopicon"; Description: "{cm:CreateDesktopIcon}"; GroupDescription: "{cm:AdditionalIcons}"; Flags: unchecked
[Files] [Files]
Source: "..\..\stella-2.7.6\Stella.exe"; DestDir: "{app}"; Flags: ignoreversion Source: "..\..\stella-2.7.7\Stella.exe"; DestDir: "{app}"; Flags: ignoreversion
;Source: "..\..\stella-2.7.6\zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion ;Source: "..\..\stella-2.7.7\zlib1.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\..\stella-2.7.6\SDL.dll"; DestDir: "{app}"; Flags: ignoreversion Source: "..\..\stella-2.7.7\SDL.dll"; DestDir: "{app}"; Flags: ignoreversion
Source: "..\..\stella-2.7.6\docs\*"; DestDir: "{app}\docs"; Flags: ignoreversion recursesubdirs createallsubdirs Source: "..\..\stella-2.7.7\docs\*"; DestDir: "{app}\docs"; Flags: ignoreversion recursesubdirs createallsubdirs
; NOTE: Don't use "Flags: ignoreversion" on any shared system files ; NOTE: Don't use "Flags: ignoreversion" on any shared system files
[Icons] [Icons]

View File

@ -28,8 +28,8 @@ IDI_ICON ICON "stella.ico"
// Version // Version
// //
VS_VERSION_INFO VERSIONINFO VS_VERSION_INFO VERSIONINFO
FILEVERSION 2,7,6,0 FILEVERSION 2,7,7,0
PRODUCTVERSION 2,7,6,0 PRODUCTVERSION 2,7,7,0
FILEFLAGSMASK 0x3fL FILEFLAGSMASK 0x3fL
#ifdef _DEBUG #ifdef _DEBUG
FILEFLAGS 0x1L FILEFLAGS 0x1L
@ -47,12 +47,12 @@ BEGIN
VALUE "Comments", "The multi-platform Atari 2600 emulator. Stella is released under the GPL." VALUE "Comments", "The multi-platform Atari 2600 emulator. Stella is released under the GPL."
VALUE "CompanyName", "Bradford W. Mott and the Stella team (http://stella.sourceforge.net)" VALUE "CompanyName", "Bradford W. Mott and the Stella team (http://stella.sourceforge.net)"
VALUE "FileDescription", "Stella" VALUE "FileDescription", "Stella"
VALUE "FileVersion", "2.7.6" VALUE "FileVersion", "2.7.7"
VALUE "InternalName", "Stella" VALUE "InternalName", "Stella"
VALUE "LegalCopyright", "Copyright (C) 1995-2009 B. Mott & the Stella team" VALUE "LegalCopyright", "Copyright (C) 1995-2009 B. Mott & the Stella team"
VALUE "OriginalFilename", "Stella.exe" VALUE "OriginalFilename", "Stella.exe"
VALUE "ProductName", "Stella" VALUE "ProductName", "Stella"
VALUE "ProductVersion", "2.7.6" VALUE "ProductVersion", "2.7.7"
END END
END END
BLOCK "VarFileInfo" BLOCK "VarFileInfo"