in atari_py/ale_interface/src/emucore/TIA.cxx [132:215]
void TIA::reset()
{
// Reset the sound device
mySound->reset();
// Currently no objects are enabled
myEnabledObjects = 0;
// Some default values for the registers
myVSYNC = 0;
myVBLANK = 0;
myNUSIZ0 = 0;
myNUSIZ1 = 0;
myCOLUP0 = 0;
myCOLUP1 = 0;
myCOLUPF = 0;
myPlayfieldPriorityAndScore = 0;
myCOLUBK = 0;
myCTRLPF = 0;
myREFP0 = false;
myREFP1 = false;
myPF = 0;
myGRP0 = 0;
myGRP1 = 0;
myDGRP0 = 0;
myDGRP1 = 0;
myENAM0 = false;
myENAM1 = false;
myENABL = false;
myDENABL = false;
myHMP0 = 0;
myHMP1 = 0;
myHMM0 = 0;
myHMM1 = 0;
myHMBL = 0;
myVDELP0 = false;
myVDELP1 = false;
myVDELBL = false;
myRESMP0 = false;
myRESMP1 = false;
myCollision = 0;
myPOSP0 = 0;
myPOSP1 = 0;
myPOSM0 = 0;
myPOSM1 = 0;
myPOSBL = 0;
// Some default values for the "current" variables
myCurrentGRP0 = 0;
myCurrentGRP1 = 0;
myCurrentBLMask = ourBallMaskTable[0][0];
myCurrentM0Mask = ourMissleMaskTable[0][0][0];
myCurrentM1Mask = ourMissleMaskTable[0][0][0];
myCurrentP0Mask = ourPlayerMaskTable[0][0][0];
myCurrentP1Mask = ourPlayerMaskTable[0][0][0];
myCurrentPFMask = ourPlayfieldTable[0];
myLastHMOVEClock = 0;
myHMOVEBlankEnabled = false;
myM0CosmicArkMotionEnabled = false;
myM0CosmicArkCounter = 0;
enableBits(true);
myDumpEnabled = false;
myDumpDisabledCycle = 0;
myAllowHMOVEBlanks =
(myConsole.properties().get(Emulation_HmoveBlanks) == "YES");
if(myConsole.getFormat().compare(0, 3, "PAL") == 0)
{
myColorLossEnabled = true;
myMaximumNumberOfScanlines = 342;
}
else // NTSC
{
myColorLossEnabled = false;
myMaximumNumberOfScanlines = 290;
}
// Recalculate the size of the display
frameReset();
}