some misc cleanups in atari 2600 mappers
This commit is contained in:
parent
fd793322f9
commit
48c9ada3e7
|
@ -46,7 +46,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
{
|
||||
}
|
||||
|
||||
// THis is here purely for mapper 3E because it needs the 13th bit to determine bankswitching (but only receives the first 12 on read memory)
|
||||
// This is here purely for mapper 3E because it needs the 13th bit to determine bankswitching (but only receives the first 12 on read memory)
|
||||
public bool Bit13 { get; set; }
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,9 +10,9 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
private int _gameTotal;
|
||||
private int _currentGame;
|
||||
|
||||
public Multicart2K(int gametotal)
|
||||
public Multicart2K(int gameTotal)
|
||||
{
|
||||
_gameTotal = gametotal;
|
||||
_gameTotal = gameTotal;
|
||||
_currentGame = 0;
|
||||
}
|
||||
|
||||
|
@ -44,12 +44,9 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
return base.ReadMemory(addr);
|
||||
}
|
||||
|
||||
return this.Core.Rom[(addr & 0x7FF) + (_currentGame * 2048)];
|
||||
return Core.Rom[(addr & 0x7FF) + (_currentGame * 2048)];
|
||||
}
|
||||
|
||||
public override byte PeekMemory(ushort addr)
|
||||
{
|
||||
return ReadMemory(addr);
|
||||
}
|
||||
public override byte PeekMemory(ushort addr) => ReadMemory(addr);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,9 +10,9 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
private int _gameTotal;
|
||||
private int _currentGame;
|
||||
|
||||
public Multicart4K(int gametotal)
|
||||
public Multicart4K(int gameTotal)
|
||||
{
|
||||
_gameTotal = gametotal;
|
||||
_gameTotal = gameTotal;
|
||||
_currentGame = 0;
|
||||
}
|
||||
|
||||
|
@ -47,9 +47,6 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
return Core.Rom[(addr & 0xFFF) + (_currentGame * 4096)];
|
||||
}
|
||||
|
||||
public override byte PeekMemory(ushort addr)
|
||||
{
|
||||
return ReadMemory(addr);
|
||||
}
|
||||
public override byte PeekMemory(ushort addr) => ReadMemory(addr);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -12,9 +12,9 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
private int _gameTotal;
|
||||
private int _currentGame;
|
||||
|
||||
public Multicart8K(int gametotal)
|
||||
public Multicart8K(int gameTotal)
|
||||
{
|
||||
_gameTotal = gametotal;
|
||||
_gameTotal = gameTotal;
|
||||
_currentGame = 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -9,12 +9,9 @@
|
|||
return base.ReadMemory(addr);
|
||||
}
|
||||
|
||||
return this.Core.Rom[addr & 0x7FF];
|
||||
return Core.Rom[addr & 0x7FF];
|
||||
}
|
||||
|
||||
public override byte PeekMemory(ushort addr)
|
||||
{
|
||||
return ReadMemory(addr);
|
||||
}
|
||||
public override byte PeekMemory(ushort addr) => ReadMemory(addr);
|
||||
}
|
||||
}
|
|
@ -102,7 +102,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
else if (addr == 0x003F)
|
||||
{
|
||||
_hasRam = false;
|
||||
if ((value << 11) < Core.Rom.Length)
|
||||
if (value << 11 < Core.Rom.Length)
|
||||
{
|
||||
_lowbank2K = value;
|
||||
}
|
||||
|
|
|
@ -12,9 +12,6 @@
|
|||
return Core.Rom[addr & 0xFFF];
|
||||
}
|
||||
|
||||
public override byte PeekMemory(ushort addr)
|
||||
{
|
||||
return ReadMemory(addr);
|
||||
}
|
||||
public override byte PeekMemory(ushort addr) => ReadMemory(addr);
|
||||
}
|
||||
}
|
|
@ -2,7 +2,7 @@
|
|||
using System.Linq;
|
||||
|
||||
using BizHawk.Common;
|
||||
/**
|
||||
/*
|
||||
This is the cartridge class for Arcadia (aka Starpath) Supercharger
|
||||
games. Christopher Salomon provided most of the technical details
|
||||
used in creating this class. A good description of the Supercharger
|
||||
|
|
|
@ -292,7 +292,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
|
||||
private void WriteMem(ushort addr, byte value, bool poke)
|
||||
{
|
||||
// Mimicking the 6532 logic for accesing port A, for testing
|
||||
// Mimicking the 6532 logic for accessing port A, for testing
|
||||
////var isPortA = false; // adelikat: Commented out this variable to remove a warning. Should this be deleted or is this supposed to be actually used?
|
||||
|
||||
if ((addr & 0x0200) == 0) // If the RS bit is not set, this is a ram write
|
||||
|
|
|
@ -241,7 +241,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
private float _fractionalClocks; // Fractional DPC music OSC clocks unused during the last update
|
||||
|
||||
private byte[] _dspData;
|
||||
public byte[] DspData => _dspData ?? (_dspData = Core.Rom.Skip(8192).Take(2048).ToArray());
|
||||
public byte[] DspData => _dspData ??= Core.Rom.Skip(8192).Take(2048).ToArray();
|
||||
|
||||
public override void Dispose()
|
||||
{
|
||||
|
@ -502,7 +502,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
// Using bits 7, 5, 4, & 3 of the shift register compute the input
|
||||
// bit for the shift register
|
||||
var bit = _randomInputBits[((_currentRandomVal >> 3) & 0x07) |
|
||||
(((_currentRandomVal & 0x80) > 0) ? 0x08 : 0x00)];
|
||||
((_currentRandomVal & 0x80) > 0 ? 0x08 : 0x00)];
|
||||
|
||||
// Update the shift register
|
||||
_currentRandomVal = (byte)((_currentRandomVal << 1) | bit);
|
||||
|
|
|
@ -29,7 +29,7 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
private float _fractionalClocks; // Fractional DPC music OSC clocks unused during the last update
|
||||
|
||||
private byte[] _dspData;
|
||||
public byte[] DspData => _dspData ?? (_dspData = Core.Rom.Skip(8192).Take(2048).ToArray());
|
||||
public byte[] DspData => _dspData ??= Core.Rom.Skip(8192).Take(2048).ToArray();
|
||||
|
||||
// Table for computing the input bit of the random number generator's
|
||||
// shift register (it's the NOT of the EOR of four bits)
|
||||
|
|
|
@ -50,10 +50,11 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
|
||||
if (addr < 0x1080)
|
||||
{
|
||||
_ram[(addr & 0x7F)] = 0xFF; // Reading from the write port triggers an unwanted write of open bus
|
||||
_ram[addr & 0x7F] = 0xFF; // Reading from the write port triggers an unwanted write of open bus
|
||||
return 0xFF; // 0xFF is used for deterministic emulation, in reality it would be a random value based on pins being high or low
|
||||
}
|
||||
else if (addr < 0x1100)
|
||||
|
||||
if (addr < 0x1100)
|
||||
{
|
||||
return _ram[(addr & 0x7F)];
|
||||
}
|
||||
|
|
|
@ -52,7 +52,8 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
_ram[(addr & 0x7F)] = 0xFF; // Reading from the write port triggers an unwanted write of open bus
|
||||
return 0xFF; // 0xFF is used for deterministic emulation, in reality it would be a random value based on pins being high or low
|
||||
}
|
||||
else if (addr < 0x1100)
|
||||
|
||||
if (addr < 0x1100)
|
||||
{
|
||||
return _ram[(addr & 0x7F)];
|
||||
}
|
||||
|
|
|
@ -39,7 +39,8 @@ namespace BizHawk.Emulation.Cores.Atari.Atari2600
|
|||
_ram[(addr & 0x7F)] = 0xFF; // Reading from the write port triggers an unwanted write of open bus
|
||||
return 0xFF; // 0xFF is used for deterministic emulation, in reality it would be a random value based on pins being high or low
|
||||
}
|
||||
else if (addr < 0x1100)
|
||||
|
||||
if (addr < 0x1100)
|
||||
{
|
||||
return _ram[(addr & 0x7F)];
|
||||
}
|
||||
|
|
|
@ -202,6 +202,7 @@
|
|||
<s:Boolean x:Key="/Default/UserDictionary/Words/=avisynth/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=backbuffer/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=backcolor/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=bankswitched/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=bankswitching/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Bezier/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=bicubic/@EntryIndexedValue">True</s:Boolean>
|
||||
|
@ -322,6 +323,7 @@
|
|||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Missle/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=mmsys/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=MOTW/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Multicart/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=Multidisk/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=multidump/@EntryIndexedValue">True</s:Boolean>
|
||||
<s:Boolean x:Key="/Default/UserDictionary/Words/=multilines/@EntryIndexedValue">True</s:Boolean>
|
||||
|
|
Loading…
Reference in New Issue