mirror of https://github.com/stella-emu/stella.git
Well, that didn't take long; we already need a 2.6.1 release.
Fixed issue where some F6 carts were being autodetected as E7. Updated RIOT timer behaviour yet again; Summer Games was broken. I think I've finally got it now. Made random number generation actually generate random numbers, by seeding the generator based on the current 'ticks'. Updated properties for several AtariVox ROMs. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1515 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
1d879fa79a
commit
a45191dbe3
|
@ -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.38 2008-05-16 12:04:34 stephena Exp $
|
// $Id: Version.hxx,v 1.39 2008-05-16 23:56:21 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef VERSION_HXX
|
#ifndef VERSION_HXX
|
||||||
#define VERSION_HXX
|
#define VERSION_HXX
|
||||||
|
|
||||||
#define STELLA_BASE_VERSION "2.6"
|
#define STELLA_BASE_VERSION "2.6.1_pre"
|
||||||
|
|
||||||
#ifdef NIGHTLY_BUILD
|
#ifdef NIGHTLY_BUILD
|
||||||
#define STELLA_VERSION STELLA_BASE_VERSION "pre-" NIGHTLY_BUILD
|
#define STELLA_VERSION STELLA_BASE_VERSION "pre-" NIGHTLY_BUILD
|
||||||
|
|
|
@ -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: Cart.cxx,v 1.41 2008-02-27 20:13:55 stephena Exp $
|
// $Id: Cart.cxx,v 1.42 2008-05-16 23:56:21 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <cassert>
|
#include <cassert>
|
||||||
|
@ -389,36 +389,22 @@ bool Cartridge::isProbablyE0(const uInt8* image, uInt32 size)
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
bool Cartridge::isProbablyE7(const uInt8* image, uInt32 size)
|
bool Cartridge::isProbablyE7(const uInt8* image, uInt32 size)
|
||||||
{
|
{
|
||||||
// E7 carts map their second 1K block of RAM at addresses
|
// E7 cart bankswitching is triggered by accessing addresses
|
||||||
// $800 to $8FF. However, since this occurs in the upper 2K address
|
// $FE0 to $FE6 using absolute non-indexed addressing
|
||||||
// space, and the last 2K in the cart always points to the last 2K of the
|
// To eliminate false positives (and speed up processing), we
|
||||||
// ROM image, the RAM area should fall in addresses $3800 to $38FF
|
// search for only certain known signatures
|
||||||
// Similar to the Superchip cart, we assume this RAM block contains
|
// Thanks to "stella@casperkitty.com" for this advice
|
||||||
// the same bytes for its entire area
|
// These signatures are attributed to the MESS project
|
||||||
// Also, we want to distinguish between ROMs that have large blocks
|
uInt8 signature[2][3] = {
|
||||||
// of the same amount of (probably unused) data by making sure that
|
{ 0x8D, 0xE7, 0xFF }, // STA $FFE7
|
||||||
// something differs in the previous 32 or next 32 bytes
|
{ 0xAD, 0xE5, 0xFF } // LDA $FFE5
|
||||||
uInt8 first = image[0x3800];
|
};
|
||||||
for(uInt32 i = 0x3800; i < 0x3A00; ++i)
|
for(uInt32 i = 0; i < 2; ++i)
|
||||||
{
|
{
|
||||||
if(first != image[i])
|
if(searchForBytes(image, size, signature[i], 3, 1))
|
||||||
|
return true;
|
||||||
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
|
||||||
|
|
||||||
// OK, now scan the surrounding 32 byte blocks
|
|
||||||
uInt32 count1 = 0, count2 = 0;
|
|
||||||
for(uInt32 i = 0x3800 - 32; i < 0x3800; ++i)
|
|
||||||
{
|
|
||||||
if(first != image[i])
|
|
||||||
++count1;
|
|
||||||
}
|
|
||||||
for(uInt32 i = 0x3A00; i < 0x3A00 + 32; ++i)
|
|
||||||
{
|
|
||||||
if(first != image[i])
|
|
||||||
++count2;
|
|
||||||
}
|
|
||||||
|
|
||||||
return (count1 > 0 || count2 > 0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
regenerated and the application recompiled.
|
regenerated and the application recompiled.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#define DEF_PROPS_SIZE 2979
|
#define DEF_PROPS_SIZE 2981
|
||||||
|
|
||||||
static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "000509d1ed2b8d30a9d94be1b3b5febb", "Greg Zumwalt", "", "Jungle Jane (2003) (Greg Zumwalt) (Hack)", "Hack of Pitfall!", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "000509d1ed2b8d30a9d94be1b3b5febb", "Greg Zumwalt", "", "Jungle Jane (2003) (Greg Zumwalt) (Hack)", "Hack of Pitfall!", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -520,7 +520,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "2b27eb194e13f3b38d23c879cc1e3abf", "Quelle", "402.272 9", "Super-Ferrari (1983) (Quelle) (PAL)", "AKA Enduro", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2b27eb194e13f3b38d23c879cc1e3abf", "Quelle", "402.272 9", "Super-Ferrari (1983) (Quelle) (PAL)", "AKA Enduro", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "2b42da79a682ed6e2d735facbf70107e", "", "", "DKjr Improved (Hack)", "Hack of Donkey Kong Jr.", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2b42da79a682ed6e2d735facbf70107e", "", "", "DKjr Improved (Hack)", "Hack of Donkey Kong Jr.", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "2b430c00dc79e495762ac59b2f9b4fcd", "Activision, David Crane", "AX-018, AX-018-04", "Pitfall! (1982) (Activision) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2b430c00dc79e495762ac59b2f9b4fcd", "Activision, David Crane", "AX-018, AX-018-04", "Pitfall! (1982) (Activision) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "2b6f831ff8bca32d6ecc5a0964100bca", "Spiceware", "SW-01", "Medieval Mayhem (PAL)", "", "Homebrew", "STEREO", "", "", "", "", "", "PADDLES", "PADDLES", "", "", "", "", "", "", "" },
|
|
||||||
{ "2b71a59a53be5883399917bf582b7772", "Greg Troutman", "", "Dark Mage (final beta) (Greg Troutman) (PD)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "2b71a59a53be5883399917bf582b7772", "Greg Troutman", "", "Dark Mage (final beta) (Greg Troutman) (PD)", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
{ "2ba02f509a4991aa176ba8d9e540df3d", "Atari, Mark R. Hahn", "CX2678", "Dukes of Hazzard (1983) (Atari) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2ba02f509a4991aa176ba8d9e540df3d", "Atari, Mark R. Hahn", "CX2678", "Dukes of Hazzard (1983) (Atari) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "2bb9f4686f7e08c5fcc69ec1a1c66fe7", "Atari - GCC, Mike Feinstein, John Allred", "CX2688", "Jungle Hunt (1983) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2bb9f4686f7e08c5fcc69ec1a1c66fe7", "Atari - GCC, Mike Feinstein, John Allred", "CX2688", "Jungle Hunt (1983) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -539,6 +538,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "2c8835aed7f52a0da9ade5226ee5aa75", "Arcadia Corporation, Stephen Harland Landrum", "AR-4101", "Communist Mutants from Space (1982) (Arcadia)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2c8835aed7f52a0da9ade5226ee5aa75", "Arcadia Corporation, Stephen Harland Landrum", "AR-4101", "Communist Mutants from Space (1982) (Arcadia)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "2c8c11295d8613f875b7bcf5253ab9bb", "Fabrizio Zavagli", "", "Kool Aid Man (PAL Conversion) (16-11-2002) (Fabrizio Zavagli) (PAL60)", "PAL60 Conversion", "Homebrew", "", "", "", "", "", "", "", "", "", "PAL60", "", "", "", "", "" },
|
{ "2c8c11295d8613f875b7bcf5253ab9bb", "Fabrizio Zavagli", "", "Kool Aid Man (PAL Conversion) (16-11-2002) (Fabrizio Zavagli) (PAL60)", "PAL60 Conversion", "Homebrew", "", "", "", "", "", "", "", "", "", "PAL60", "", "", "", "", "" },
|
||||||
{ "2c9fadd510509cc7f28f1ccba931855f", "", "", "Hangman Invader Biglist1 (Hack)", "Hack of Hangman", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2c9fadd510509cc7f28f1ccba931855f", "", "", "Hangman Invader Biglist1 (Hack)", "Hack of Hangman", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
{ "2ca6445204ffb7686ddee3e33ba64d5b", "Alex Herbert", "", "AtariVox Test ROM", "Uses the AtariVox controller", "", "", "", "", "", "", "", "", "ATARIVOX", "", "", "", "", "", "", "" },
|
||||||
{ "2cb42cf62b2f25f59f909b5447821b14", "Atari, Christopher H. Omarzu", "CX26104", "Big Bird's Egg Catch (1983) (Atari) (PAL) [a]", "Uses Kids/Keypad Controllers", "", "", "", "", "", "", "", "KEYBOARD", "KEYBOARD", "", "", "", "250", "", "", "" },
|
{ "2cb42cf62b2f25f59f909b5447821b14", "Atari, Christopher H. Omarzu", "CX26104", "Big Bird's Egg Catch (1983) (Atari) (PAL) [a]", "Uses Kids/Keypad Controllers", "", "", "", "", "", "", "", "KEYBOARD", "KEYBOARD", "", "", "", "250", "", "", "" },
|
||||||
{ "2cccc079c15e9af94246f867ffc7e9bf", "PlayAround", "203", "Jungle Fever (1982) (PlayAround)", "", "", "", "", "", "", "", "", "", "", "", "", "24", "", "YES", "", "" },
|
{ "2cccc079c15e9af94246f867ffc7e9bf", "PlayAround", "203", "Jungle Fever (1982) (PlayAround)", "", "", "", "", "", "", "", "", "", "", "", "", "24", "", "YES", "", "" },
|
||||||
{ "2cefa695df2ed020899a7df7bb1e3a95", "Manuel Polik, Fabrizio Zavagli", "", "A-Team (2002) (Manuel Polik) (Hack)", "Hack of A-Team", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "2cefa695df2ed020899a7df7bb1e3a95", "Manuel Polik, Fabrizio Zavagli", "", "A-Team (2002) (Manuel Polik) (Hack)", "Hack of A-Team", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -778,6 +778,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "3fe43915e5655cf69485364e9f464097", "CCE", "C-863", "Fisher Price (1983) (CCE)", "AKA Skindiver", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "3fe43915e5655cf69485364e9f464097", "CCE", "C-863", "Fisher Price (1983) (CCE)", "AKA Skindiver", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "3ff5165378213dab531ffa4f1a41ae45", "Quelle", "311377", "Pygmy (1983) (Quelle) (PAL)", "AKA Lock 'n' Chase", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "3ff5165378213dab531ffa4f1a41ae45", "Quelle", "311377", "Pygmy (1983) (Quelle) (PAL)", "AKA Lock 'n' Chase", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "402b1ca3c230a60fb279d4a2a10fa677", "", "", "3-D Tic-Tac-Toe (Unknown) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "62", "", "", "", "" },
|
{ "402b1ca3c230a60fb279d4a2a10fa677", "", "", "3-D Tic-Tac-Toe (Unknown) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "62", "", "", "", "" },
|
||||||
|
{ "402d876ec4a73f9e3133f8f7f7992a1e", "Alex Herbert", "", "Man Goes Down (2006) (A. Herbert) (Prototype)", "Uses AtariVox controller", "Homebrew", "", "", "", "", "", "", "", "ATARIVOX", "", "", "", "", "", "", "" },
|
||||||
{ "405f8591b6941cff56c9b392c2d5e4e5", "Telegames", "", "Star Strike (1989) (Telegames) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "405f8591b6941cff56c9b392c2d5e4e5", "Telegames", "", "Star Strike (1989) (Telegames) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4066309eb3fa3e7a725585b9814bc375", "", "", "Multi Ball Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4066309eb3fa3e7a725585b9814bc375", "", "", "Multi Ball Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4066d7d88ec4a2c656127a67fa52dcf1", "", "", "Overhead Adventure Demo 2 (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "64", "", "", "", "" },
|
{ "4066d7d88ec4a2c656127a67fa52dcf1", "", "", "Overhead Adventure Demo 2 (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "64", "", "", "", "" },
|
||||||
|
@ -888,7 +889,6 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "4a1a0509bfc1015273a542dfe2040958", "Atari", "CX2628 / 6699842 / 4975117", "Bowling (1978) (Atari) [b1]", "", "Common", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4a1a0509bfc1015273a542dfe2040958", "Atari", "CX2628 / 6699842 / 4975117", "Bowling (1978) (Atari) [b1]", "", "Common", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4a2fe6f0f6317f006fd6d4b34515448b", "", "", "Warring Worms (Midwest Classic Edition) (08-06-2002) (Billy Eno)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4a2fe6f0f6317f006fd6d4b34515448b", "", "", "Warring Worms (Midwest Classic Edition) (08-06-2002) (Billy Eno)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4a45c6d75b1ba131f94a9c13194d8e46", "", "", "How to Draw a Playfield II (Joystick Hack) (1997) (Eric Bacher) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4a45c6d75b1ba131f94a9c13194d8e46", "", "", "How to Draw a Playfield II (Joystick Hack) (1997) (Eric Bacher) (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4a5a2a33ccaf2f0c7ff6b60b9e1a0791", "Spiceware", "SW-01", "Medieval Mayhem (NTSC)", "", "Homebrew", "STEREO", "", "", "", "", "", "PADDLES", "PADDLES", "", "", "", "", "", "", "" },
|
|
||||||
{ "4a6be79310f86f0bebc7dfcba4d74161", "", "", "Demolition Herby (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "4a6be79310f86f0bebc7dfcba4d74161", "", "", "Demolition Herby (Unknown) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
{ "4a7eee19c2dfb6aeb4d9d0a01d37e127", "Hozer Video Games", "", "Crazy Valet (Hozer Video Games)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4a7eee19c2dfb6aeb4d9d0a01d37e127", "Hozer Video Games", "", "Crazy Valet (Hozer Video Games)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "4ab4af3adcdae8cdacc3d06084fc8d6a", "Nick Bensema", "", "Sucky Zepplin (Nick Bensema) (PD)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "4ab4af3adcdae8cdacc3d06084fc8d6a", "Nick Bensema", "", "Sucky Zepplin (Nick Bensema) (PD)", "", "New Release", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -1523,7 +1523,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "8055b9c2622136fd91edfea6df642daf", "Activision", "", "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "8055b9c2622136fd91edfea6df642daf", "Activision", "", "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "805f9a32ef97ac25f999a25014dc5c23", "SnailSoft", "", "Balthazar (SnailSoft)", "AKA Babylon 5", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "805f9a32ef97ac25f999a25014dc5c23", "SnailSoft", "", "Balthazar (SnailSoft)", "AKA Babylon 5", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
{ "8068e07b484dfd661158b3771d6621ca", "Epyx, Steven A. Baker, Peter Engelbrite", "80561-00286", "California Games (1988) (Epyx) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "8068e07b484dfd661158b3771d6621ca", "Epyx, Steven A. Baker, Peter Engelbrite", "80561-00286", "California Games (1988) (Epyx) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "807a8ff6216b00d52aba2dfea5d8d860", "John Payson", "", "Strat-O-Gems Deluxe", "", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "807a8ff6216b00d52aba2dfea5d8d860", "John Payson", "", "Strat-O-Gems Deluxe (2005) (J. Payson)", "Uses the AtariVox controller", "Homebrew", "", "", "", "", "", "", "", "ATARIVOX", "", "", "", "", "", "", "" },
|
||||||
{ "808c3b1e60ee0e7c65205fa4bd772221", "CCE", "", "Defender (CCE)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "808c3b1e60ee0e7c65205fa4bd772221", "CCE", "", "Defender (CCE)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "80cd42881e670e4b74a9ccd10d0d7b2e", "20th Century Fox Video Games - Sirius, Ed Hodapp", "11004", "Deadly Duck (1982) (20th Century Fox) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "80cd42881e670e4b74a9ccd10d0d7b2e", "20th Century Fox Video Games - Sirius, Ed Hodapp", "11004", "Deadly Duck (1982) (20th Century Fox) [a]", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "80cec82239913cb8c4016eb13749de44", "David Marli", "", "Invaders from Space by David Marli (Space Invaders Hack)", "Hack of Space Invaders (Atari)", "New Release (Hack)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "80cec82239913cb8c4016eb13749de44", "David Marli", "", "Invaders from Space by David Marli (Space Invaders Hack)", "Hack of Space Invaders (Atari)", "New Release (Hack)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -2387,6 +2387,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "cff1e9170bdbc29859b815203edf18fa", "Retroactive", "", "Push (V0.01) (1998) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "cff1e9170bdbc29859b815203edf18fa", "Retroactive", "", "Push (V0.01) (1998) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
{ "cff578e5c60de8caecbee7f2c9bbb57b", "George Veeder", "", "Suicide Adventure (George Veeder) (Hack)", "Hack of Adventure", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "cff578e5c60de8caecbee7f2c9bbb57b", "George Veeder", "", "Suicide Adventure (George Veeder) (Hack)", "Hack of Adventure", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "cff9950d4e650094f65f40d179a9882d", "Paul Slocum", "", "Mr. Roboto (Paul Slocum) (Hack)", "Hack of Berzerk", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "cff9950d4e650094f65f40d179a9882d", "Paul Slocum", "", "Mr. Roboto (Paul Slocum) (Hack)", "Hack of Berzerk", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
|
{ "d00f6f8ba89559e4b20972a478fc0370", "Spiceware", "SW-01", "Medieval Mayhem (PAL)", "", "Homebrew", "STEREO", "", "", "", "", "", "PADDLES", "PADDLES", "", "", "", "", "", "", "" },
|
||||||
{ "d010e3dfe7366e47561c088079a59439", "Retroactive", "", "Qb (V0.10) (Stella) (2001) (Retroactive)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
{ "d010e3dfe7366e47561c088079a59439", "Retroactive", "", "Qb (V0.10) (Stella) (2001) (Retroactive)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "", "" },
|
||||||
{ "d026716b3c5be2c951cc4c064317c524", "", "", "Fu Kung! (V0.06) (14-01-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "d026716b3c5be2c951cc4c064317c524", "", "", "Fu Kung! (V0.06) (14-01-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "d0498baca989e792db4b8270a02b9624", "", "", "Pac Ghost Sprite Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "d0498baca989e792db4b8270a02b9624", "", "", "Pac Ghost Sprite Demo (PD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
@ -2884,6 +2885,7 @@ static const char* DefProps[DEF_PROPS_SIZE][21] = {
|
||||||
{ "f7d6592dcb773c81c278140ed4d01669", "Activision, David Crane, Dan Kitchen", "EAG-108-04, EAZ-108-04B", "Ghostbusters (1985) (Activision) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "f7d6592dcb773c81c278140ed4d01669", "Activision, David Crane, Dan Kitchen", "EAG-108-04, EAZ-108-04B", "Ghostbusters (1985) (Activision) (PAL)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "f7e07080ed8396b68f2e5788a5c245e2", "Video Game Cartridge - Ariola", "TP-617", "Farmyard Fun (Ariola)", "", "", "", "", "", "", "", "", "", "", "", "", "33", "217", "", "", "" },
|
{ "f7e07080ed8396b68f2e5788a5c245e2", "Video Game Cartridge - Ariola", "TP-617", "Farmyard Fun (Ariola)", "", "", "", "", "", "", "", "", "", "", "", "", "33", "217", "", "", "" },
|
||||||
{ "f7f50d9c9d28bcc9f7d3075668b7ac89", "Activision, David Crane - Ariola", "EAG-008, PAG-008, EAG-008-04I - 711 008-720", "Laser Blast (1981) (Activision) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "f7f50d9c9d28bcc9f7d3075668b7ac89", "Activision, David Crane - Ariola", "EAG-008, PAG-008, EAG-008-04I - 711 008-720", "Laser Blast (1981) (Activision) (PAL) (4K)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
{ "f7fac15cf54b55c5597718b6742dbec2", "Spiceware", "SW-01", "Medieval Mayhem (NTSC)", "", "Homebrew", "STEREO", "", "", "", "", "", "PADDLES", "PADDLES", "", "", "", "", "", "", "" },
|
||||||
{ "f802fa61011dd9eb6f80b271bac479d0", "Suntek", "SS-023", "Mole Hunter (Suntek) (PAL)", "AKA Topy", "", "", "", "", "", "", "", "", "", "", "", "60", "", "", "", "" },
|
{ "f802fa61011dd9eb6f80b271bac479d0", "Suntek", "SS-023", "Mole Hunter (Suntek) (PAL)", "AKA Topy", "", "", "", "", "", "", "", "", "", "", "", "60", "", "", "", "" },
|
||||||
{ "f80cf77164079d774b9b0fae33dffca9", "", "", "Fu Kung! (V0.15) (Negative Version) (05-02-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "f80cf77164079d774b9b0fae33dffca9", "", "", "Fu Kung! (V0.15) (Negative Version) (05-02-2003) (AD)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
{ "f8240e62d8c0a64a61e19388414e3104", "Activision, Steve Cartwright", "AX-013", "Barnstorming (1982) (Activision)", "", "Uncommon", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
{ "f8240e62d8c0a64a61e19388414e3104", "Activision, Steve Cartwright", "AX-013", "Barnstorming (1982) (Activision)", "", "Uncommon", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||||
|
|
|
@ -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: M6532.cxx,v 1.24 2008-05-06 16:39:11 stephena Exp $
|
// $Id: M6532.cxx,v 1.25 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <assert.h>
|
#include <assert.h>
|
||||||
|
@ -52,8 +52,10 @@ void M6532::reset()
|
||||||
{
|
{
|
||||||
class Random random;
|
class Random random;
|
||||||
|
|
||||||
myTimer = 25 + (random.next() % 75);
|
// The timer absolutely cannot be initialized to zero; some games will
|
||||||
myIntervalShift = 6;
|
// loop or hang (notably Solaris and H.E.R.O.)
|
||||||
|
myTimer = (0xff - (random.next() % 0xfe)) << 10;
|
||||||
|
myIntervalShift = 10;
|
||||||
myCyclesWhenTimerSet = 0;
|
myCyclesWhenTimerSet = 0;
|
||||||
myInterruptEnabled = false;
|
myInterruptEnabled = false;
|
||||||
myInterruptTriggered = false;
|
myInterruptTriggered = false;
|
||||||
|
@ -176,16 +178,9 @@ uInt8 M6532::peek(uInt16 addr)
|
||||||
|
|
||||||
// According to the M6532 documentation, the timer continues to count
|
// According to the M6532 documentation, the timer continues to count
|
||||||
// down to -255 timer clocks after wraparound. However, it isn't
|
// down to -255 timer clocks after wraparound. However, it isn't
|
||||||
// entirely clear what happens *after* if reaches -255. If we go
|
// entirely clear what happens *after* if reaches -255.
|
||||||
// to zero at that time, Solaris fails to load correctly.
|
// For now, we'll set it to 0.
|
||||||
// However, if the count goes on forever, HERO fails to load
|
return (uInt8)(timer >= -255 ? timer : 0);
|
||||||
// correctly.
|
|
||||||
// So we use the approach of z26, and let the counter continue
|
|
||||||
// downward (after wraparound) for the maximum number of clocks
|
|
||||||
// (256 * 1024) = 0x40000. I suspect this is a hack that works
|
|
||||||
// for all the ROMs we've tested; it would be nice to determine
|
|
||||||
// what really happens in hardware.
|
|
||||||
return (uInt8)(timer >= -0x40000 ? timer : 0);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -237,14 +232,14 @@ void M6532::poke(uInt16 addr, uInt8 value)
|
||||||
case 0: // Port A I/O Register (Joystick)
|
case 0: // Port A I/O Register (Joystick)
|
||||||
{
|
{
|
||||||
myOutA = value;
|
myOutA = value;
|
||||||
setOutputState();
|
setPinState();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case 1: // Port A Data Direction Register
|
case 1: // Port A Data Direction Register
|
||||||
{
|
{
|
||||||
myDDRA = value;
|
myDDRA = value;
|
||||||
setOutputState();
|
setPinState();
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -267,14 +262,14 @@ void M6532::setTimerRegister(uInt8 value, uInt8 interval)
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
void M6532::setOutputState()
|
void M6532::setPinState()
|
||||||
{
|
{
|
||||||
/*
|
/*
|
||||||
When a bit in the DDR is set as input, +5V is placed on its output
|
When a bit in the DDR is set as input, +5V is placed on its output
|
||||||
pin. When it's set as output, either +5V or 0V (depending on the
|
pin. When it's set as output, either +5V or 0V (depending on the
|
||||||
contents of SWCHA) will be placed on the output pin.
|
contents of SWCHA) will be placed on the output pin.
|
||||||
The standard macros for the AtariVox use this fact to send data
|
The standard macros for the AtariVox and SaveKey use this fact to
|
||||||
to the port. This is represented by the following algorithm:
|
send data to the port. This is represented by the following algorithm:
|
||||||
|
|
||||||
if(DDR bit is input) set output as 1
|
if(DDR bit is input) set output as 1
|
||||||
else if(DDR bit is output) set output as bit in ORA
|
else if(DDR bit is output) set output as bit in ORA
|
||||||
|
|
|
@ -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: M6532.hxx,v 1.13 2008-05-06 16:39:11 stephena Exp $
|
// $Id: M6532.hxx,v 1.14 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef M6532_HXX
|
#ifndef M6532_HXX
|
||||||
|
@ -32,7 +32,7 @@ class Deserializer;
|
||||||
RIOT
|
RIOT
|
||||||
|
|
||||||
@author Bradford W. Mott
|
@author Bradford W. Mott
|
||||||
@version $Id: M6532.hxx,v 1.13 2008-05-06 16:39:11 stephena Exp $
|
@version $Id: M6532.hxx,v 1.14 2008-05-16 23:56:30 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class M6532 : public Device
|
class M6532 : public Device
|
||||||
{
|
{
|
||||||
|
@ -131,7 +131,7 @@ class M6532 : public Device
|
||||||
{ return myTimer - (mySystem->cycles() - myCyclesWhenTimerSet); }
|
{ return myTimer - (mySystem->cycles() - myCyclesWhenTimerSet); }
|
||||||
|
|
||||||
void setTimerRegister(uInt8 data, uInt8 interval);
|
void setTimerRegister(uInt8 data, uInt8 interval);
|
||||||
void setOutputState();
|
void setPinState();
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Reference to the console
|
// Reference to the console
|
||||||
|
|
|
@ -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: OSystem.cxx,v 1.124 2008-04-14 15:12:55 stephena Exp $
|
// $Id: OSystem.cxx,v 1.125 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <cassert>
|
#include <cassert>
|
||||||
|
@ -57,6 +57,7 @@
|
||||||
#include "ConsoleFont.hxx"
|
#include "ConsoleFont.hxx"
|
||||||
#include "Widget.hxx"
|
#include "Widget.hxx"
|
||||||
#include "Console.hxx"
|
#include "Console.hxx"
|
||||||
|
#include "Random.hxx"
|
||||||
#include "StateManager.hxx"
|
#include "StateManager.hxx"
|
||||||
|
|
||||||
#include "OSystem.hxx"
|
#include "OSystem.hxx"
|
||||||
|
@ -229,6 +230,9 @@ bool OSystem::create()
|
||||||
mySerialPort = new SerialPort();
|
mySerialPort = new SerialPort();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
// Let the random class know about us; it needs access to getTicks()
|
||||||
|
Random::setSystem(this);
|
||||||
|
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -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: OSystem.hxx,v 1.64 2008-03-31 00:59:30 stephena Exp $
|
// $Id: OSystem.hxx,v 1.65 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef OSYSTEM_HXX
|
#ifndef OSYSTEM_HXX
|
||||||
|
@ -56,7 +56,7 @@ typedef Common::Array<Resolution> ResolutionList;
|
||||||
other objects belong.
|
other objects belong.
|
||||||
|
|
||||||
@author Stephen Anthony
|
@author Stephen Anthony
|
||||||
@version $Id: OSystem.hxx,v 1.64 2008-03-31 00:59:30 stephena Exp $
|
@version $Id: OSystem.hxx,v 1.65 2008-05-16 23:56:30 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class OSystem
|
class OSystem
|
||||||
{
|
{
|
||||||
|
@ -379,7 +379,7 @@ class OSystem
|
||||||
|
|
||||||
@return Current time in microseconds.
|
@return Current time in microseconds.
|
||||||
*/
|
*/
|
||||||
virtual uInt32 getTicks() = 0;
|
virtual uInt32 getTicks() const = 0;
|
||||||
|
|
||||||
//////////////////////////////////////////////////////////////////////
|
//////////////////////////////////////////////////////////////////////
|
||||||
// The following methods are system-specific and can be overrided in
|
// The following methods are system-specific and can be overrided in
|
||||||
|
|
|
@ -13,30 +13,20 @@
|
||||||
// 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: Random.cxx,v 1.5 2008-02-06 13:45:22 stephena Exp $
|
// $Id: Random.cxx,v 1.6 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <time.h>
|
#include <time.h>
|
||||||
|
#include "OSystem.hxx"
|
||||||
#include "Random.hxx"
|
#include "Random.hxx"
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
||||||
void Random::seed(uInt32 value)
|
|
||||||
{
|
|
||||||
ourSeed = value;
|
|
||||||
ourSeeded = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
Random::Random()
|
Random::Random()
|
||||||
{
|
{
|
||||||
// If we haven't been seeded then seed ourself
|
if(ourSystem)
|
||||||
if(!ourSeeded)
|
myValue = ourSystem->getTicks();
|
||||||
{
|
else
|
||||||
ourSeed = (uInt32)time(0);
|
myValue = (uInt32)time(0);
|
||||||
ourSeeded = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
myValue = ourSeed;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
|
@ -46,8 +36,4 @@ uInt32 Random::next()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
uInt32 Random::ourSeed = 0;
|
const OSystem* Random::ourSystem = NULL;
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
|
||||||
bool Random::ourSeeded = false;
|
|
||||||
|
|
||||||
|
|
|
@ -13,12 +13,14 @@
|
||||||
// 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: Random.hxx,v 1.5 2008-02-06 13:45:22 stephena Exp $
|
// $Id: Random.hxx,v 1.6 2008-05-16 23:56:30 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef RANDOM_HXX
|
#ifndef RANDOM_HXX
|
||||||
#define RANDOM_HXX
|
#define RANDOM_HXX
|
||||||
|
|
||||||
|
class OSystem;
|
||||||
|
|
||||||
#include "bspf.hxx"
|
#include "bspf.hxx"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -27,19 +29,10 @@
|
||||||
linear congruential generator.
|
linear congruential generator.
|
||||||
|
|
||||||
@author Bradford W. Mott
|
@author Bradford W. Mott
|
||||||
@version $Id: Random.hxx,v 1.5 2008-02-06 13:45:22 stephena Exp $
|
@version $Id: Random.hxx,v 1.6 2008-05-16 23:56:30 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class Random
|
class Random
|
||||||
{
|
{
|
||||||
public:
|
|
||||||
/**
|
|
||||||
Class method which allows you to set the seed that'll be used
|
|
||||||
for created new instances of this class
|
|
||||||
|
|
||||||
@param value The value to seed the random number generator with
|
|
||||||
*/
|
|
||||||
static void seed(uInt32 value);
|
|
||||||
|
|
||||||
public:
|
public:
|
||||||
/**
|
/**
|
||||||
Create a new random number generator
|
Create a new random number generator
|
||||||
|
@ -54,16 +47,22 @@ class Random
|
||||||
*/
|
*/
|
||||||
uInt32 next();
|
uInt32 next();
|
||||||
|
|
||||||
|
/**
|
||||||
|
Class method which sets the OSystem in use; the constructor will
|
||||||
|
use this to reseed the random number generator every time a new
|
||||||
|
instance is created
|
||||||
|
|
||||||
|
@param system The system currently in use
|
||||||
|
*/
|
||||||
|
static void setSystem(const OSystem* system) { ourSystem = system; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Indicates the next random number
|
// Indicates the next random number
|
||||||
uInt32 myValue;
|
uInt32 myValue;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
// Seed to use for creating new random number generators
|
// Set the OSystem we're using
|
||||||
static uInt32 ourSeed;
|
static const OSystem* ourSystem;
|
||||||
|
|
||||||
// Indicates if seed has been set or not
|
|
||||||
static bool ourSeeded;
|
|
||||||
};
|
};
|
||||||
#endif
|
|
||||||
|
|
||||||
|
#endif
|
||||||
|
|
|
@ -3092,7 +3092,7 @@
|
||||||
"Display.Phosphor" "YES"
|
"Display.Phosphor" "YES"
|
||||||
""
|
""
|
||||||
|
|
||||||
"Cartridge.MD5" "2b6f831ff8bca32d6ecc5a0964100bca"
|
"Cartridge.MD5" "d00f6f8ba89559e4b20972a478fc0370"
|
||||||
"Cartridge.Manufacturer" "Spiceware"
|
"Cartridge.Manufacturer" "Spiceware"
|
||||||
"Cartridge.ModelNo" "SW-01"
|
"Cartridge.ModelNo" "SW-01"
|
||||||
"Cartridge.Name" "Medieval Mayhem (PAL)"
|
"Cartridge.Name" "Medieval Mayhem (PAL)"
|
||||||
|
@ -3335,7 +3335,7 @@
|
||||||
"Cartridge.Name" "Star Voyager (1983) (CCE) [a]"
|
"Cartridge.Name" "Star Voyager (1983) (CCE) [a]"
|
||||||
""
|
""
|
||||||
|
|
||||||
"Cartridge.MD5" "4a5a2a33ccaf2f0c7ff6b60b9e1a0791"
|
"Cartridge.MD5" "f7fac15cf54b55c5597718b6742dbec2"
|
||||||
"Cartridge.Manufacturer" "Spiceware"
|
"Cartridge.Manufacturer" "Spiceware"
|
||||||
"Cartridge.ModelNo" "SW-01"
|
"Cartridge.ModelNo" "SW-01"
|
||||||
"Cartridge.Name" "Medieval Mayhem (NTSC)"
|
"Cartridge.Name" "Medieval Mayhem (NTSC)"
|
||||||
|
@ -9061,8 +9061,10 @@
|
||||||
|
|
||||||
"Cartridge.MD5" "807a8ff6216b00d52aba2dfea5d8d860"
|
"Cartridge.MD5" "807a8ff6216b00d52aba2dfea5d8d860"
|
||||||
"Cartridge.Manufacturer" "John Payson"
|
"Cartridge.Manufacturer" "John Payson"
|
||||||
"Cartridge.Name" "Strat-O-Gems Deluxe"
|
"Cartridge.Name" "Strat-O-Gems Deluxe (2005) (J. Payson)"
|
||||||
|
"Cartridge.Note" "Uses the AtariVox controller"
|
||||||
"Cartridge.Rarity" "Homebrew"
|
"Cartridge.Rarity" "Homebrew"
|
||||||
|
"Controller.Right" "ATARIVOX"
|
||||||
""
|
""
|
||||||
|
|
||||||
"Cartridge.MD5" "8c8a26ed57870daba8e13162d497bad1"
|
"Cartridge.MD5" "8c8a26ed57870daba8e13162d497bad1"
|
||||||
|
@ -17813,3 +17815,18 @@
|
||||||
"Cartridge.Name" "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)"
|
"Cartridge.Name" "Unknown Activision Game #1 (1983) (Activision) (Prototype) (PAL)"
|
||||||
"Cartridge.Rarity" "Prototype"
|
"Cartridge.Rarity" "Prototype"
|
||||||
""
|
""
|
||||||
|
|
||||||
|
"Cartridge.MD5" "402d876ec4a73f9e3133f8f7f7992a1e"
|
||||||
|
"Cartridge.Manufacturer" "Alex Herbert"
|
||||||
|
"Cartridge.Name" "Man Goes Down (2006) (A. Herbert) (Prototype)"
|
||||||
|
"Cartridge.Note" "Uses AtariVox controller"
|
||||||
|
"Cartridge.Rarity" "Homebrew"
|
||||||
|
"Controller.Right" "ATARIVOX"
|
||||||
|
""
|
||||||
|
|
||||||
|
"Cartridge.MD5" "2ca6445204ffb7686ddee3e33ba64d5b"
|
||||||
|
"Cartridge.Manufacturer" "Alex Herbert"
|
||||||
|
"Cartridge.Name" "AtariVox Test ROM"
|
||||||
|
"Cartridge.Note" "Uses the AtariVox controller"
|
||||||
|
"Controller.Right" "ATARIVOX"
|
||||||
|
""
|
||||||
|
|
|
@ -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: OSystemGP2X.cxx,v 1.29 2008-02-20 00:17:49 stephena Exp $
|
// $Id: OSystemGP2X.cxx,v 1.30 2008-05-16 23:56:31 stephena Exp $
|
||||||
// Modified on 2006/01/06 by Alex Zaballa for use on GP2X
|
// Modified on 2006/01/06 by Alex Zaballa for use on GP2X
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
|
@ -74,7 +74,7 @@ OSystemGP2X::~OSystemGP2X()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
uInt32 OSystemGP2X::getTicks()
|
uInt32 OSystemGP2X::getTicks() const
|
||||||
{
|
{
|
||||||
#ifdef HAVE_GETTIMEOFDAY
|
#ifdef HAVE_GETTIMEOFDAY
|
||||||
timeval now;
|
timeval now;
|
||||||
|
|
|
@ -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: OSystemGP2X.hxx,v 1.12 2008-02-20 00:17:49 stephena Exp $
|
// $Id: OSystemGP2X.hxx,v 1.13 2008-05-16 23:56:31 stephena Exp $
|
||||||
// Modified by Alex Zaballa on 2006/01/04 for use on GP2X
|
// Modified by Alex Zaballa on 2006/01/04 for use on GP2X
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
|
@ -45,7 +45,7 @@ class OSystemGP2X : public OSystem
|
||||||
|
|
||||||
@return Current time in microseconds.
|
@return Current time in microseconds.
|
||||||
*/
|
*/
|
||||||
uInt32 getTicks();
|
uInt32 getTicks() const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
This method queries the dimensions of the screen for this hardware.
|
This method queries the dimensions of the screen for this hardware.
|
||||||
|
|
|
@ -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: OSystemMACOSX.cxx,v 1.18 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemMACOSX.cxx,v 1.19 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
|
@ -103,7 +103,7 @@ OSystemMACOSX::~OSystemMACOSX()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
uInt32 OSystemMACOSX::getTicks()
|
uInt32 OSystemMACOSX::getTicks() const
|
||||||
{
|
{
|
||||||
#ifdef HAVE_GETTIMEOFDAY
|
#ifdef HAVE_GETTIMEOFDAY
|
||||||
timeval now;
|
timeval now;
|
||||||
|
|
|
@ -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: OSystemMACOSX.hxx,v 1.11 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemMACOSX.hxx,v 1.12 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef OSYSTEM_MACOSX_HXX
|
#ifndef OSYSTEM_MACOSX_HXX
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
This class defines UNIX-like OS's (Linux) system specific settings.
|
This class defines UNIX-like OS's (Linux) system specific settings.
|
||||||
|
|
||||||
@author Mark Grebe
|
@author Mark Grebe
|
||||||
@version $Id: OSystemMACOSX.hxx,v 1.11 2008-02-06 13:45:24 stephena Exp $
|
@version $Id: OSystemMACOSX.hxx,v 1.12 2008-05-16 23:56:31 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class OSystemMACOSX : public OSystem
|
class OSystemMACOSX : public OSystem
|
||||||
{
|
{
|
||||||
|
@ -47,7 +47,7 @@ class OSystemMACOSX : public OSystem
|
||||||
|
|
||||||
@return Current time in microseconds.
|
@return Current time in microseconds.
|
||||||
*/
|
*/
|
||||||
virtual uInt32 getTicks();
|
virtual uInt32 getTicks() const;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
This method queries the dimensions of the screen for this hardware.
|
This method queries the dimensions of the screen for this hardware.
|
||||||
|
|
|
@ -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: OSystemUNIX.cxx,v 1.28 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemUNIX.cxx,v 1.29 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <cstdlib>
|
#include <cstdlib>
|
||||||
|
@ -58,7 +58,7 @@ OSystemUNIX::~OSystemUNIX()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
uInt32 OSystemUNIX::getTicks()
|
uInt32 OSystemUNIX::getTicks() const
|
||||||
{
|
{
|
||||||
#ifdef HAVE_GETTIMEOFDAY
|
#ifdef HAVE_GETTIMEOFDAY
|
||||||
timeval now;
|
timeval now;
|
||||||
|
|
|
@ -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: OSystemUNIX.hxx,v 1.17 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemUNIX.hxx,v 1.18 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef OSYSTEM_UNIX_HXX
|
#ifndef OSYSTEM_UNIX_HXX
|
||||||
|
@ -25,7 +25,7 @@
|
||||||
This class defines UNIX-like OS's (Linux) system specific settings.
|
This class defines UNIX-like OS's (Linux) system specific settings.
|
||||||
|
|
||||||
@author Stephen Anthony
|
@author Stephen Anthony
|
||||||
@version $Id: OSystemUNIX.hxx,v 1.17 2008-02-06 13:45:24 stephena Exp $
|
@version $Id: OSystemUNIX.hxx,v 1.18 2008-05-16 23:56:31 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class OSystemUNIX : public OSystem
|
class OSystemUNIX : public OSystem
|
||||||
{
|
{
|
||||||
|
@ -45,7 +45,7 @@ class OSystemUNIX : public OSystem
|
||||||
|
|
||||||
@return Current time in microseconds.
|
@return Current time in microseconds.
|
||||||
*/
|
*/
|
||||||
uInt32 getTicks();
|
uInt32 getTicks() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -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: OSystemWin32.cxx,v 1.24 2008-04-26 16:51:13 stephena Exp $
|
// $Id: OSystemWin32.cxx,v 1.25 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
@ -77,7 +77,7 @@ OSystemWin32::~OSystemWin32()
|
||||||
}
|
}
|
||||||
|
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
uInt32 OSystemWin32::getTicks()
|
uInt32 OSystemWin32::getTicks() const
|
||||||
{
|
{
|
||||||
return (uInt32) SDL_GetTicks() * 1000;
|
return (uInt32) SDL_GetTicks() * 1000;
|
||||||
}
|
}
|
||||||
|
|
|
@ -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: OSystemWin32.hxx,v 1.13 2008-04-26 16:51:13 stephena Exp $
|
// $Id: OSystemWin32.hxx,v 1.14 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef OSYSTEM_WIN32_HXX
|
#ifndef OSYSTEM_WIN32_HXX
|
||||||
|
@ -27,7 +27,7 @@
|
||||||
This class defines Windows system specific settings.
|
This class defines Windows system specific settings.
|
||||||
|
|
||||||
@author Stephen Anthony
|
@author Stephen Anthony
|
||||||
@version $Id: OSystemWin32.hxx,v 1.13 2008-04-26 16:51:13 stephena Exp $
|
@version $Id: OSystemWin32.hxx,v 1.14 2008-05-16 23:56:31 stephena Exp $
|
||||||
*/
|
*/
|
||||||
class OSystemWin32 : public OSystem
|
class OSystemWin32 : public OSystem
|
||||||
{
|
{
|
||||||
|
@ -48,7 +48,7 @@ class OSystemWin32 : public OSystem
|
||||||
|
|
||||||
@return Current time in microseconds.
|
@return Current time in microseconds.
|
||||||
*/
|
*/
|
||||||
virtual uInt32 getTicks();
|
virtual uInt32 getTicks() const;
|
||||||
};
|
};
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// Windows CE Port by Kostas Nakos
|
// Windows CE Port by Kostas Nakos
|
||||||
// $Id: OSystemWinCE.cxx,v 1.13 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemWinCE.cxx,v 1.14 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
|
@ -103,7 +103,7 @@ void OSystemWinCE::mainLoop()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
uInt32 OSystemWinCE::getTicks(void)
|
uInt32 OSystemWinCE::getTicks(void) const
|
||||||
{
|
{
|
||||||
return GetTickCount();
|
return GetTickCount();
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@
|
||||||
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||||
//
|
//
|
||||||
// Windows CE Port by Kostas Nakos
|
// Windows CE Port by Kostas Nakos
|
||||||
// $Id: OSystemWinCE.hxx,v 1.10 2008-02-06 13:45:24 stephena Exp $
|
// $Id: OSystemWinCE.hxx,v 1.11 2008-05-16 23:56:31 stephena Exp $
|
||||||
//============================================================================
|
//============================================================================
|
||||||
|
|
||||||
#ifndef OSYSTEM_WINCE_HXX
|
#ifndef OSYSTEM_WINCE_HXX
|
||||||
|
@ -31,7 +31,7 @@ class OSystemWinCE : public OSystem
|
||||||
|
|
||||||
public:
|
public:
|
||||||
virtual void mainLoop();
|
virtual void mainLoop();
|
||||||
virtual uInt32 getTicks(void);
|
virtual uInt32 getTicks(void) const;
|
||||||
virtual void setFramerate(uInt32 framerate);
|
virtual void setFramerate(uInt32 framerate);
|
||||||
virtual void getScreenDimensions(int& width, int& height);
|
virtual void getScreenDimensions(int& width, int& height);
|
||||||
};
|
};
|
||||||
|
|
Loading…
Reference in New Issue