Fixed regression with missing VSYNC in certain ROMs, and bumped

version # for next release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2566 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
stephena 2012-10-30 22:21:09 +00:00
parent 19098e1f43
commit 2b27e23276
10 changed files with 48 additions and 30 deletions

View File

@ -9,7 +9,7 @@
SSSS ttt eeeee llll llll aaaaa
===========================================================================
Release 3.7.3 for Linux, MacOSX and Windows
Release 3.7.4 for Linux, MacOSX and Windows
===========================================================================
The Atari 2600 Video Computer System (VCS), introduced in 1977, was the
@ -21,28 +21,28 @@ all of your favourite Atari 2600 games again! Stella was originally
developed for Linux by Bradford W. Mott, however, it has been ported to a
number of other platforms and is currently maintained by Stephen Anthony.
This is the 3.7.3 release of Stella for Linux, Mac OSX and Windows. The
This is the 3.7.4 release of Stella for Linux, Mac OSX and Windows. The
distributions currently available are:
* Binaries for Windows XP/Vista/7 :
Stella-3.7.3-win32.exe (32-bit EXE installer)
Stella-3.7.3-x64.exe (64-bit EXE installer)
Stella-3.7.3-windows.zip (32/64 bit versions)
Stella-3.7.4-win32.exe (32-bit EXE installer)
Stella-3.7.4-x64.exe (64-bit EXE installer)
Stella-3.7.4-windows.zip (32/64 bit versions)
* Binary distribution for MacOS X 32-bit & 64-bit :
Stella-3.7.3-macosx.dmg (32-bit Universal Binary)
Stella-3.7.3_intel-macosx.dmg (32/64-bit Intel/OSX 10.6+)
Stella-3.7.4-macosx.dmg (32-bit Universal Binary)
Stella-3.7.4_intel-macosx.dmg (32/64-bit Intel/OSX 10.6+)
* Binary distribution in 32-bit & 64-bit Ubuntu DEB format :
stella_3.7.3-1_i386.deb
stella_3.7.3-1_amd64.deb
stella_3.7.4-1_i386.deb
stella_3.7.4-1_amd64.deb
* Binary distribution in 32-bit & 64-bit RPM format :
stella-3.7.3-2.i386.rpm
stella-3.7.3-2.x86_64.rpm
stella-3.7.4-2.i386.rpm
stella-3.7.4-2.x86_64.rpm
* Source code distribution for all platforms :
stella-3.7.3-src.tar.gz
stella-3.7.4-src.tar.gz
Distribution Site

View File

@ -12,6 +12,14 @@
Release History
===========================================================================
3.7.3 to 3.7.4: (October 31, 2012)
* Fixed screen blanking regression in 'Video Chess', and improved
behaviour of ROMs that don't use VSYNC.
-Have fun!
3.7.2 to 3.7.3: (October 26, 2012)
* Note: because of TIA/RIOT changes, the state file format has changed
@ -38,8 +46,6 @@
* Updated included PNG library to latest stable version.
-Have fun!
3.7.1 to 3.7.2: (June 10, 2012)

View File

@ -1,4 +1,4 @@
This is release 3.7.3 of Stella. Stella is a multi-platform Atari 2600 VCS
This is release 3.7.4 of Stella. Stella is a multi-platform Atari 2600 VCS
emulator which allows you to play all of your favourite Atari 2600 games
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
@ -9,4 +9,4 @@ the Stella Website at:
Enjoy,
The Stella Team
October 26, 2012
October 31, 2012

7
debian/changelog vendored
View File

@ -1,3 +1,10 @@
stella (3.7.4-1) stable; urgency=high
* Version 3.7.4 release
-- Stephen Anthony <stephena@users.sf.net> Wed, 31 Oct 2012 18:38:25 +0200
stella (3.7.3-1) stable; urgency=high
* Version 3.7.3 release

View File

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

View File

@ -22,7 +22,7 @@
#include <cstdlib>
#define STELLA_VERSION "3.7.3"
#define STELLA_VERSION "3.7.4_pre"
#define STELLA_BUILD atoi("$Rev$" + 6)
#endif

View File

@ -559,7 +559,7 @@ inline void TIA::startFrame()
mySystem->resetCycles();
// Setup clocks that'll be used for drawing this frame
myClockWhenFrameStarted = -1 * clocks;
myClockWhenFrameStarted = -clocks;
myClockStartDisplay = myClockWhenFrameStarted;
myClockStopDisplay = myClockWhenFrameStarted + myStopDisplayOffset;
myClockAtLastUpdate = myClockStartDisplay;
@ -600,12 +600,14 @@ inline void TIA::startFrame()
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
inline void TIA::endFrame()
{
uInt32 currentlines = scanlines();
// The TIA may generate frames that are 'invisible' to TV (they complete
// before the first visible scanline)
// Such 'short' frames can't simply be eliminated, since they're running
// code at that point; however, they are not shown at all, otherwise the
// double-buffering of the video output will get confused
if(scanlines() <= myStartScanline)
if(currentlines <= myStartScanline)
{
// Skip display of this frame, as if it wasn't generated at all
startFrame();
@ -614,7 +616,7 @@ inline void TIA::endFrame()
// Compute the number of scanlines in the frame
uInt32 previousCount = myScanlineCountForLastFrame;
myScanlineCountForLastFrame = scanlines();
myScanlineCountForLastFrame = currentlines;
// The following handle cases where scanlines either go too high or too
// low compared to the previous frame, in which case certain portions
@ -627,10 +629,10 @@ inline void TIA::endFrame()
// Did we generate too many scanlines?
// (usually caused by VBLANK/VSYNC taking too long or not occurring at all)
// If so, blank entire viewable area
if(myScanlineCountForLastFrame > 342)
if(myScanlineCountForLastFrame > myMaximumNumberOfScanlines+1)
{
myScanlineCountForLastFrame = 342;
if(previousCount <= 342)
myScanlineCountForLastFrame = myMaximumNumberOfScanlines;
if(previousCount < myMaximumNumberOfScanlines)
{
memset(myCurrentFrameBuffer, 0, 160 * 320);
memset(myPreviousFrameBuffer, 1, 160 * 320);

View File

@ -53,7 +53,7 @@
<key>CFBundleSignature</key>
<string>StLa</string>
<key>CFBundleVersion</key>
<string>3.7.3</string>
<string>3.7.4</string>
<key>NSMainNibFile</key>
<string>SDLMain.nib</string>
<key>NSPrincipalClass</key>

View File

@ -1,5 +1,5 @@
%define name stella
%define version 3.7.3
%define version 3.7.4
%define rel 1
%define enable_gl 1
@ -108,6 +108,9 @@ rm -rf $RPM_BUILD_DIR/%{name}-%{version}
%_datadir/icons/large/%{name}.png
%changelog
* Wed Oct 31 2012 Stephen Anthony <stephena@users.sf.net> 3.7.4-1
- Version 3.7.4 release
* Fri Oct 26 2012 Stephen Anthony <stephena@users.sf.net> 3.7.3-1
- Version 3.7.3 release

View File

@ -36,8 +36,8 @@ IDI_ICON ICON "stella.ico"
//
VS_VERSION_INFO VERSIONINFO
FILEVERSION 3,7,3,0
PRODUCTVERSION 3,7,3,0
FILEVERSION 3,7,4,0
PRODUCTVERSION 3,7,4,0
FILEFLAGSMASK 0x3fL
#ifdef _DEBUG
FILEFLAGS 0x1L
@ -55,12 +55,12 @@ BEGIN
VALUE "Comments", "The multi-platform Atari 2600 emulator. Stella is released under the GPLv2."
VALUE "CompanyName", "The Stella Team (http://stella.sourceforge.net)"
VALUE "FileDescription", "Stella"
VALUE "FileVersion", "3.7.3"
VALUE "FileVersion", "3.7.4"
VALUE "InternalName", "Stella"
VALUE "LegalCopyright", "Copyright (C) 1995-2012 The Stella Team"
VALUE "OriginalFilename", "Stella.exe"
VALUE "ProductName", "Stella"
VALUE "ProductVersion", "3.7.3"
VALUE "ProductVersion", "3.7.4"
END
END
BLOCK "VarFileInfo"