mirror of https://github.com/stella-emu/stella.git
Fixed bug with the last commit; the M0 and M1 graphics were completely
screwed up by my placement of the 'mmr' logic. Added StayFrosty ROM info to properties database. git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1863 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
This commit is contained in:
parent
67fec652b0
commit
933ecd6cd7
|
@ -26,7 +26,7 @@
|
|||
regenerated and the application recompiled.
|
||||
*/
|
||||
|
||||
#define DEF_PROPS_SIZE 3246
|
||||
#define DEF_PROPS_SIZE 3247
|
||||
|
||||
static const char* DefProps[DEF_PROPS_SIZE][20] = {
|
||||
{ "000509d1ed2b8d30a9d94be1b3b5febb", "Greg Zumwalt", "", "Jungle Jane (2003) (Greg Zumwalt) (Hack)", "Hack of Pitfall!", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
@ -2478,6 +2478,7 @@ static const char* DefProps[DEF_PROPS_SIZE][20] = {
|
|||
{ "c5930d0e8cdae3e037349bfa08e871be", "Atari, Howard Scott Warshaw - Sears", "CX2655 - 49-75167", "Yars' Revenge (1982) (Atari)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "" },
|
||||
{ "c59633dbebd926c150fb6d30b0576405", "Telegames", "5861 A030", "Bogey Blaster (1989) (Telegames)", "AKA Air Raiders", "Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "c5a76bafc4676edb76e0126fb9f0fb2d", "Charles Morgan", "", "Zero Patrol (Charles Morgan) (Hack)", "Hack of Moon Patrol", "Hack", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "c5bab953ac13dbb2cba03cd0684fb125", "SpiceWare - Darrell Spice Jr.", "", "Stay Frosty (SpiceWare)", "Part of Stella's Stocking 2007 Xmas compilation", "Homebrew", "", "", "", "", "", "", "", "", "", "", "", "", "YES", "" },
|
||||
{ "c5c7cc66febf2d4e743b4459de7ed868", "Atari, Jerome Domurat, Steve Woita", "CX2696", "Asterix (1983) (Atari) (PAL) [a]", "AKA Taz", "Extremely Rare", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "c5d2834bf98e90245e545573eb7e6bbc", "CCE", "", "Snoopy and the Red Baron (CCE)", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
{ "c5dd8399257d8862f3952be75c23e0eb", "Atari - GCC", "CX2680", "RealSports Tennis (1982) (Atari) (Prototype)", "", "Prototype", "", "", "", "", "", "", "", "", "", "", "", "", "", "" },
|
||||
|
|
|
@ -821,6 +821,33 @@ inline void TIA::updateFrameScanline(uInt32 clocksToUpdate, uInt32 hpos)
|
|||
myCurrentP1Mask = &TIATables::PxMask[myPOSP1 & 0x03]
|
||||
[mySuppressP1][myNUSIZ1 & 0x07][160 - (myPOSP1 & 0xFC)];
|
||||
|
||||
// TODO - 08-27-2009: Simulate the weird effects of Cosmic Ark and
|
||||
// Stay Frosty. The movement itself is well understood, but there
|
||||
// also seems to be some widening and blanking occurring as well.
|
||||
// This doesn't properly emulate the effect, but it does give a
|
||||
// fair approximation. More testing is required to figure out
|
||||
// what's really going on here.
|
||||
if(myHMM0mmr && myPOSM0 % 4 == 3)
|
||||
{
|
||||
// Stretch this missle so it's at least 2 pixels wide
|
||||
myCurrentM0Mask = &TIATables::MxMask[myPOSM0 & 0x03]
|
||||
[myNUSIZ0 & 0x07][((myNUSIZ0 & 0x30) >> 4) | 0x01]
|
||||
[160 - (myPOSM0 & 0xFC)];
|
||||
}
|
||||
else
|
||||
myCurrentM0Mask = &TIATables::MxMask[myPOSM0 & 0x03]
|
||||
[myNUSIZ0 & 0x07][(myNUSIZ0 & 0x30) >> 4][160 - (myPOSM0 & 0xFC)];
|
||||
if(myHMM1mmr && myPOSM1 % 4 == 3)
|
||||
{
|
||||
// Stretch this missle so it's at least 2 pixels wide
|
||||
myCurrentM1Mask = &TIATables::MxMask[myPOSM1 & 0x03]
|
||||
[myNUSIZ1 & 0x07][((myNUSIZ1 & 0x30) >> 4) | 0x01]
|
||||
[160 - (myPOSM1 & 0xFC)];
|
||||
}
|
||||
else
|
||||
myCurrentM1Mask = &TIATables::MxMask[myPOSM1 & 0x03]
|
||||
[myNUSIZ1 & 0x07][(myNUSIZ1 & 0x30) >> 4][160 - (myPOSM1 & 0xFC)];
|
||||
|
||||
switch(myEnabledObjects | myPlayfieldPriorityAndScore)
|
||||
{
|
||||
// Background
|
||||
|
@ -1445,54 +1472,9 @@ void TIA::updateFrame(Int32 clock)
|
|||
// Apply extra clocks for 'more motion required/mmr'
|
||||
if(myHMP0mmr) { myPOSP0 -= 17; posChanged = true; }
|
||||
if(myHMP1mmr) { myPOSP1 -= 17; posChanged = true; }
|
||||
if(myHMM0mmr) { myPOSM0 -= 17; posChanged = true; }
|
||||
if(myHMM1mmr) { myPOSM1 -= 17; posChanged = true; }
|
||||
if(myHMBLmmr) { myPOSBL -= 17; posChanged = true; }
|
||||
|
||||
// TODO - 08-27-2009: Simulate the weird effects of Cosmic Ark and
|
||||
// Stay Frosty. The movement itself is well understood, but there
|
||||
// also seems to be some widening and blanking occurring as well.
|
||||
// This doesn't properly emulate the effect, but it does give a
|
||||
// fair approximation. More testing is required to figure out
|
||||
// what's really going on here.
|
||||
if(myHMM0mmr)
|
||||
{
|
||||
myPOSM0 -= 17; if(myPOSM0 < 0) { myPOSM0 += 160; } myPOSM0 %= 160;
|
||||
if(myPOSM0 % 4 == 3)
|
||||
{
|
||||
// Stretch this missle so it's at least 2 pixels wide
|
||||
myCurrentM0Mask = &TIATables::MxMask[myPOSM0 & 0x03]
|
||||
[myNUSIZ0 & 0x07][((myNUSIZ0 & 0x30) >> 4) | 0x01]
|
||||
[160 - (myPOSM0 & 0xFC)];
|
||||
}
|
||||
else
|
||||
myCurrentM0Mask = &TIATables::MxMask[myPOSM0 & 0x03]
|
||||
[myNUSIZ0 & 0x07][(myNUSIZ0 & 0x30) >> 4][160 - (myPOSM0 & 0xFC)];
|
||||
}
|
||||
else
|
||||
{
|
||||
if(myPOSM0 < 0) { myPOSM0 += 160; } myPOSM0 %= 160;
|
||||
myCurrentM0Mask = &TIATables::MxMask[myPOSM0 & 0x03]
|
||||
[myNUSIZ0 & 0x07][(myNUSIZ0 & 0x30) >> 4][160 - (myPOSM0 & 0xFC)];
|
||||
}
|
||||
if(myHMM1mmr)
|
||||
{
|
||||
myPOSM1 -= 17; if(myPOSM1 < 0) { myPOSM1 += 160; } myPOSM1 %= 160;
|
||||
if(myPOSM1 % 4 == 3)
|
||||
{
|
||||
// Stretch this missle so it's at least 2 pixels wide
|
||||
myCurrentM1Mask = &TIATables::MxMask[myPOSM1 & 0x03]
|
||||
[myNUSIZ1 & 0x07][((myNUSIZ1 & 0x30) >> 4) | 0x01]
|
||||
[160 - (myPOSM1 & 0xFC)];
|
||||
}
|
||||
else
|
||||
myCurrentM1Mask = &TIATables::MxMask[myPOSM1 & 0x03]
|
||||
[myNUSIZ1 & 0x07][(myNUSIZ1 & 0x30) >> 4][160 - (myPOSM1 & 0xFC)];
|
||||
}
|
||||
else
|
||||
{
|
||||
if(myPOSM1 < 0) { myPOSM1 += 160; } myPOSM1 %= 160;
|
||||
myCurrentM1Mask = &TIATables::MxMask[myPOSM1 & 0x03]
|
||||
[myNUSIZ1 & 0x07][(myNUSIZ1 & 0x30) >> 4][160 - (myPOSM1 & 0xFC)];
|
||||
}
|
||||
#endif
|
||||
// Make sure positions are in range
|
||||
if(posChanged)
|
||||
|
|
|
@ -19648,3 +19648,11 @@
|
|||
"Cartridge.Name" "Challenge of.... Nexar, The (Jone Yuan) (Hack)"
|
||||
"Cartridge.Note" "Hack"
|
||||
""
|
||||
|
||||
"Cartridge.MD5" "c5bab953ac13dbb2cba03cd0684fb125"
|
||||
"Cartridge.Manufacturer" "SpiceWare - Darrell Spice Jr."
|
||||
"Cartridge.Name" "Stay Frosty (SpiceWare)"
|
||||
"Cartridge.Note" "Part of Stella's Stocking 2007 Xmas compilation"
|
||||
"Cartridge.Rarity" "Homebrew"
|
||||
"Display.Phosphor" "YES"
|
||||
""
|
||||
|
|
Loading…
Reference in New Issue