mirror of https://github.com/stella-emu/stella.git
disabled some developer options for 'Player settings'
updated doc and changes
This commit is contained in:
parent
f80f291cec
commit
fee5f57179
10
Changes.txt
10
Changes.txt
|
@ -18,8 +18,14 @@
|
||||||
(thanks go to RomHunter for his tireless research in this area).
|
(thanks go to RomHunter for his tireless research in this area).
|
||||||
Related to this, updated the snapshot collection.
|
Related to this, updated the snapshot collection.
|
||||||
|
|
||||||
* Added developer option for an extra playfield delay clock which is
|
* Added various developer options for oddball TIAs
|
||||||
exhibitted by a (very) few consoles.
|
- delayed playfield bits
|
||||||
|
- delayed playfield color
|
||||||
|
- delayed player 0 swap
|
||||||
|
- delayed player 1 swap
|
||||||
|
- stuffed player move
|
||||||
|
|
||||||
|
* disabled some developer options for 'Player settings'
|
||||||
|
|
||||||
* Removed superfluous controller option 'PADDLES_IDIR'
|
* Removed superfluous controller option 'PADDLES_IDIR'
|
||||||
|
|
||||||
|
|
|
@ -2508,7 +2508,7 @@
|
||||||
</tr>
|
</tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
||||||
<p>The following are available in two sets, one for players (prefixed by "plr.") and one
|
<p>The following are almost all available in two sets, one for players (prefixed by "plr.") and one
|
||||||
for developers (prefixd by "dev."). Only use them if you know what you're doing! Note
|
for developers (prefixd by "dev."). Only use them if you know what you're doing! Note
|
||||||
that in all cases, the values supplied to the arguments are <b>not</b> case sensitive.</p>
|
that in all cases, the values supplied to the arguments are <b>not</b> case sensitive.</p>
|
||||||
|
|
||||||
|
@ -2535,17 +2535,17 @@
|
||||||
<td><pre>-<plr.|dev.>cpurandom <S,A,X,Y,P></pre></td>
|
<td><pre>-<plr.|dev.>cpurandom <S,A,X,Y,P></pre></td>
|
||||||
<td>On reset, randomize the content of the specified CPU registers.</td>
|
<td>On reset, randomize the content of the specified CPU registers.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><pre>-<plr.|dev.>tiadriven <1|0></pre></td>
|
<td><pre>dev.tiadriven <1|0></pre></td>
|
||||||
<td>Set unused TIA pins to be randomly driven high or low on a read/peek.
|
<td>Set unused TIA pins to be randomly driven high or low on a read/peek.
|
||||||
If disabled, use the last databus value for those pins instead.</td>
|
If disabled, use the last databus value for those pins instead.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><pre>-<plr.|dev.>rwportbreak <1|0></pre></td>
|
<td><pre>dev.rwportbreak <1|0></pre></td>
|
||||||
<td>Since the 2600 has no dedicated R/W line, different addresses are used
|
<td>Since the 2600 has no dedicated R/W line, different addresses are used
|
||||||
for RAM read or write access. If the code reads from such a write address, this causes
|
for RAM read or write access. If the code reads from such a write address, this causes
|
||||||
an unwanted, semi-random write to that address.
|
an unwanted, semi-random write to that address.
|
||||||
When this option is enabled, such reads interrupt emulation and the debugger is entered.</td>
|
When this option is enabled, such reads interrupt emulation and the debugger is entered.</td>
|
||||||
</tr><tr>
|
</tr><tr>
|
||||||
<td><pre>-<plr.|dev.>thumb.trapfatal <1|0></pre></td>
|
<td><pre>dev.thumb.trapfatal <1|0></pre></td>
|
||||||
<td>When enabled, this allows the Thumb ARM emulation to
|
<td>When enabled, this allows the Thumb ARM emulation to
|
||||||
throw an exception and enter the debugger on fatal errors. When disabled, such
|
throw an exception and enter the debugger on fatal errors. When disabled, such
|
||||||
fatal errors are simply logged, and emulation continues. Do not use this
|
fatal errors are simply logged, and emulation continues. Do not use this
|
||||||
|
@ -3139,16 +3139,16 @@
|
||||||
<tr><td>Random startup bank</td><td>Randomize the startup bank (only for selected bankswitch types)</td><td>-plr.bankrandom<br/>-dev.bankrandom</td></tr>
|
<tr><td>Random startup bank</td><td>Randomize the startup bank (only for selected bankswitch types)</td><td>-plr.bankrandom<br/>-dev.bankrandom</td></tr>
|
||||||
<tr><td>Randomize zero-page ...</td><td>When loading a ROM, randomize all RAM content instead of initializing with all zeroes (for 'Console' = 'Atari 2600' only)</td><td>-plr.ramrandom<br/>-dev.ramrandom</td></tr>
|
<tr><td>Randomize zero-page ...</td><td>When loading a ROM, randomize all RAM content instead of initializing with all zeroes (for 'Console' = 'Atari 2600' only)</td><td>-plr.ramrandom<br/>-dev.ramrandom</td></tr>
|
||||||
<tr><td>Randomize CPU</td><td>When loading a ROM, randomize the content of the specified CPU registers</td><td>-plr.cpurandom<br/>-dev.cpurandom</td></tr>
|
<tr><td>Randomize CPU</td><td>When loading a ROM, randomize the content of the specified CPU registers</td><td>-plr.cpurandom<br/>-dev.cpurandom</td></tr>
|
||||||
<tr><td>Drive unused TIA pins ...</td><td>Unused TIA pins are read random instead of the last databus values</td><td>-plr.tiadriven<br/>-dev.tiadriven</td></tr>
|
<tr><td>Drive unused TIA pins ...</td><td>Unused TIA pins are read random instead of the last databus values</td><td>-dev.tiadriven</td></tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Break on reads from ...</td>
|
<td>Break on reads from ...</td>
|
||||||
<td>A read from a write port interrupts emulation and the debugger is entered.</td>
|
<td>A read from a write port interrupts emulation and the debugger is entered.</td>
|
||||||
<td><span style="white-space:nowrap">-plr.rwportbreak<br/>-dev.rwportbreak</span></td>
|
<td><span style="white-space:nowrap">-dev.rwportbreak</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr>
|
<tr>
|
||||||
<td>Fatal ARM emulation ...</td>
|
<td>Fatal ARM emulation ...</td>
|
||||||
<td>Thumb ARM emulation throws an exception and enters the debugger on fatal errors</td>
|
<td>Thumb ARM emulation throws an exception and enters the debugger on fatal errors</td>
|
||||||
<td><span style="white-space:nowrap">-plr.thumb.trapfatal<br/>-dev.thumb.trapfatal</span></td>
|
<td><span style="white-space:nowrap">-dev.thumb.trapfatal</span></td>
|
||||||
</tr>
|
</tr>
|
||||||
<tr><td>Display AtariVox...</td><td>Display a message when the AtariVox/SaveKey EEPROM is read or written</td><td>-plr.eepromaccess<br/>-dev.eepromaccess</td></tr>
|
<tr><td>Display AtariVox...</td><td>Display a message when the AtariVox/SaveKey EEPROM is read or written</td><td>-plr.eepromaccess<br/>-dev.eepromaccess</td></tr>
|
||||||
</table>
|
</table>
|
||||||
|
|
|
@ -161,7 +161,6 @@ Settings::Settings(OSystem& osystem)
|
||||||
setInternal("plr.tv.jitter", "true");
|
setInternal("plr.tv.jitter", "true");
|
||||||
setInternal("plr.tv.jitter_recovery", "10");
|
setInternal("plr.tv.jitter_recovery", "10");
|
||||||
setInternal("plr.debugcolors", "false");
|
setInternal("plr.debugcolors", "false");
|
||||||
setInternal("plr.tiadriven", "false");
|
|
||||||
setInternal("plr.console", "2600"); // 7800
|
setInternal("plr.console", "2600"); // 7800
|
||||||
setInternal("plr.timemachine", true);
|
setInternal("plr.timemachine", true);
|
||||||
setInternal("plr.tm.size", 200);
|
setInternal("plr.tm.size", 200);
|
||||||
|
@ -183,7 +182,7 @@ Settings::Settings(OSystem& osystem)
|
||||||
setInternal("dev.tiadriven", "true");
|
setInternal("dev.tiadriven", "true");
|
||||||
setInternal("dev.console", "2600"); // 7800
|
setInternal("dev.console", "2600"); // 7800
|
||||||
setInternal("dev.tia.delaypfbits", "false");
|
setInternal("dev.tia.delaypfbits", "false");
|
||||||
setInternal("dev.tia.delaycolorbits", "false");
|
setInternal("dev.tia.delaypfcolor", "false");
|
||||||
setInternal("dev.tia.delayp0swap", "false");
|
setInternal("dev.tia.delayp0swap", "false");
|
||||||
setInternal("dev.tia.delayp1swap", "false");
|
setInternal("dev.tia.delayp1swap", "false");
|
||||||
setInternal("dev.tia.stuffplayerhm", "false");
|
setInternal("dev.tia.stuffplayerhm", "false");
|
||||||
|
@ -622,8 +621,6 @@ void Settings::usage() const
|
||||||
<< " -plr.colorloss <1|0> Enable PAL color-loss effect\n"
|
<< " -plr.colorloss <1|0> Enable PAL color-loss effect\n"
|
||||||
<< " -plr.tv.jitter <1|0> Enable TV jitter effect\n"
|
<< " -plr.tv.jitter <1|0> Enable TV jitter effect\n"
|
||||||
<< " -plr.tv.jitter_recovery <1-20> Set recovery time for TV jitter effect\n"
|
<< " -plr.tv.jitter_recovery <1-20> Set recovery time for TV jitter effect\n"
|
||||||
<< " -plr.tiadriven <1|0> Drive unused TIA pins randomly on a\n"
|
|
||||||
<< " read/peek\n"
|
|
||||||
<< " -plr.eepromaccess <1|0> Enable messages for AtariVox/SaveKey access\n"
|
<< " -plr.eepromaccess <1|0> Enable messages for AtariVox/SaveKey access\n"
|
||||||
<< " messages\n"
|
<< " messages\n"
|
||||||
<< endl
|
<< endl
|
||||||
|
|
|
@ -81,7 +81,7 @@ TIA::TIA(Console& console, Settings& settings)
|
||||||
myCollisionsEnabledBits(0xFF)
|
myCollisionsEnabledBits(0xFF)
|
||||||
{
|
{
|
||||||
bool devSettings = mySettings.getBool("dev.settings");
|
bool devSettings = mySettings.getBool("dev.settings");
|
||||||
myTIAPinsDriven = mySettings.getBool(devSettings ? "dev.tiadriven" : "plr.tiadriven");
|
myTIAPinsDriven = devSettings ? mySettings.getBool("dev.tiadriven") : false;
|
||||||
|
|
||||||
myBackground.setTIA(this);
|
myBackground.setTIA(this);
|
||||||
myPlayfield.setTIA(this);
|
myPlayfield.setTIA(this);
|
||||||
|
@ -1075,10 +1075,8 @@ bool TIA::driveUnusedPinsRandom(uInt8 mode)
|
||||||
// If mode is 0 or 1, use it as a boolean (off or on)
|
// If mode is 0 or 1, use it as a boolean (off or on)
|
||||||
// Otherwise, return the state
|
// Otherwise, return the state
|
||||||
if (mode == 0 || mode == 1)
|
if (mode == 0 || mode == 1)
|
||||||
{
|
|
||||||
myTIAPinsDriven = bool(mode);
|
myTIAPinsDriven = bool(mode);
|
||||||
mySettings.setValue(mySettings.getBool("dev.settings") ? "dev.tiadriven" : "plr.tiadriven", myTIAPinsDriven);
|
|
||||||
}
|
|
||||||
return myTIAPinsDriven;
|
return myTIAPinsDriven;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -551,7 +551,7 @@ void DeveloperDialog::loadSettings(SettingsSet set)
|
||||||
myRandomizeRAM[set] = instance().settings().getBool(prefix + "ramrandom");
|
myRandomizeRAM[set] = instance().settings().getBool(prefix + "ramrandom");
|
||||||
myRandomizeCPU[set] = instance().settings().getString(prefix + "cpurandom");
|
myRandomizeCPU[set] = instance().settings().getString(prefix + "cpurandom");
|
||||||
// Undriven TIA pins
|
// Undriven TIA pins
|
||||||
myUndrivenPins[set] = instance().settings().getBool(prefix + "tiadriven");
|
myUndrivenPins[set] = devSettings ? instance().settings().getBool("dev.tiadriven") : false;
|
||||||
#ifdef DEBUGGER_SUPPORT
|
#ifdef DEBUGGER_SUPPORT
|
||||||
// Read from write ports break
|
// Read from write ports break
|
||||||
myRWPortBreak[set] = devSettings ? instance().settings().getBool("dev.rwportbreak") : false;
|
myRWPortBreak[set] = devSettings ? instance().settings().getBool("dev.rwportbreak") : false;
|
||||||
|
@ -600,7 +600,8 @@ void DeveloperDialog::saveSettings(SettingsSet set)
|
||||||
instance().settings().setValue(prefix + "ramrandom", myRandomizeRAM[set]);
|
instance().settings().setValue(prefix + "ramrandom", myRandomizeRAM[set]);
|
||||||
instance().settings().setValue(prefix + "cpurandom", myRandomizeCPU[set]);
|
instance().settings().setValue(prefix + "cpurandom", myRandomizeCPU[set]);
|
||||||
// Undriven TIA pins
|
// Undriven TIA pins
|
||||||
instance().settings().setValue(prefix + "tiadriven", myUndrivenPins[set]);
|
if(devSettings)
|
||||||
|
instance().settings().setValue("dev.tiadriven", myUndrivenPins[set]);
|
||||||
#ifdef DEBUGGER_SUPPORT
|
#ifdef DEBUGGER_SUPPORT
|
||||||
if(devSettings)
|
if(devSettings)
|
||||||
// Read from write ports break
|
// Read from write ports break
|
||||||
|
@ -1045,6 +1046,7 @@ void DeveloperDialog::handleCommand(CommandSender* sender, int cmd, int data, in
|
||||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||||
void DeveloperDialog::handleSettings(bool devSettings)
|
void DeveloperDialog::handleSettings(bool devSettings)
|
||||||
{
|
{
|
||||||
|
myUndrivenPinsWidget->setEnabled(devSettings);
|
||||||
myRWPortBreakWidget->setEnabled(devSettings);
|
myRWPortBreakWidget->setEnabled(devSettings);
|
||||||
myThumbExceptionWidget->setEnabled(devSettings);
|
myThumbExceptionWidget->setEnabled(devSettings);
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue