Atari 2600 - AR (Super Charger) - implement Cart Ram memory domain, and a Fast SC Bios sync setting
This commit is contained in:
parent
d1743a2ce3
commit
898c57f5d9
|
@ -122,6 +122,9 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
[Description("Set the Right Difficulty switch on the console")]
|
||||
public bool RightDifficulty { get; set; }
|
||||
|
||||
[Description("Super Charger only, sets whether or not to skip the BIOS intro")]
|
||||
public bool FastScBios { get; set; }
|
||||
|
||||
public A2600SyncSettings Clone()
|
||||
{
|
||||
return (A2600SyncSettings)MemberwiseClone();
|
||||
|
|
|
@ -35,8 +35,6 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
{
|
||||
internal class mAR : MapperBase
|
||||
{
|
||||
// TODO: fastscbios setting
|
||||
// TODO: cart ram
|
||||
public mAR(Atari2600 core)
|
||||
{
|
||||
Core = core;
|
||||
|
@ -165,6 +163,16 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
|
||||
#endregion
|
||||
|
||||
public override bool HasCartRam
|
||||
{
|
||||
get { return true; }
|
||||
}
|
||||
|
||||
public override ByteBuffer CartRam
|
||||
{
|
||||
get { return _superChargerImage; }
|
||||
}
|
||||
|
||||
public override void HardReset()
|
||||
{
|
||||
_superChargerImage = new ByteBuffer(8192);
|
||||
|
@ -353,7 +361,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
// The scrom.asm code checks a value at offset 109 as follows:
|
||||
// 0xFF -> do a complete jump over the SC BIOS progress bars code
|
||||
// 0x00 -> show SC BIOS progress bars as normal
|
||||
DummyRomCode[109] = 0x00; // TODO: fastscbios setting
|
||||
DummyRomCode[109] = (byte)(Core.SyncSettings.FastScBios ? 0xFF : 0x00);
|
||||
|
||||
// Stella does this, but randomness is bad for determinacy! Hopefully we don't really need it
|
||||
//ourDummyROMCode[281] = mySystem->randGenerator().next();
|
||||
|
|
Loading…
Reference in New Issue