Debugger lst and sym files now follow ROM filename, not properties filename.

This commit is contained in:
Stephen Anthony 2017-06-11 13:02:47 -02:30
parent 44ead7b926
commit a7b3ee4448
2 changed files with 15 additions and 20 deletions

View File

@ -19,14 +19,13 @@
* New TIA core: TODO - gather info on all new functionality: * New TIA core: TODO - gather info on all new functionality:
- RSYNC - RSYNC
- YStart autodetection - YStart autodetection
- Proper emulation of RDY during write cycles (WSYNC).
- ... - ...
* Implemented new phosphor emulation mode, which is much closer to real * Implemented new phosphor emulation mode, which is much closer to real
TV output. Special thanks to Thomas Jentzsch for the idea and TV output. Special thanks to Thomas Jentzsch for the idea and
implementation. implementation.
* Proper emulation of RDY during write cycles.
* Much improved RIOT timer emulation never before seen in any emulator. * Much improved RIOT timer emulation never before seen in any emulator.
Special thanks to DirtyHairy for the implementation, and alex_79 for Special thanks to DirtyHairy for the implementation, and alex_79 for
finding documentation that finally describes in more detail how the finding documentation that finally describes in more detail how the
@ -60,6 +59,8 @@
- In general, input error checking is much more strictly enforced - In general, input error checking is much more strictly enforced
- Read-only UI items now have a different background color, to - Read-only UI items now have a different background color, to
clearly indicate if an item can be modified. clearly indicate if an item can be modified.
- Debugger '.lst' and '.sym' files are now searched based on the name
of the ROM file, and not on the internal properties name.
* Mouse grabbing is now enabled in windowed mode only when the ROM is * Mouse grabbing is now enabled in windowed mode only when the ROM is
using a virtual analog controller (paddles, trakball, etc). using a virtual analog controller (paddles, trakball, etc).

View File

@ -676,19 +676,16 @@ int CartDebug::getAddress(const string& label) const
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
string CartDebug::loadListFile() string CartDebug::loadListFile()
{ {
// Currently, the default naming/location for list files is: // The default naming/location for list files is the ROM dir based on the
// 1) ROM dir based on properties entry name // actual ROM filename
if(myListFile == "") if(myListFile == "")
{ {
const string& propsname = FilesystemNode lst(myOSystem.romFile().getPathWithExt("") + ".lst");
myConsole.properties().get(Cartridge_Name) + ".lst"; if(lst.isFile() && lst.isReadable())
myListFile = lst.getPath();
FilesystemNode case1(myOSystem.romFile().getParent().getPath() + propsname);
if(case1.isFile() && case1.isReadable())
myListFile = case1.getPath();
else else
return DebuggerParser::red("list file not found in:\n " + case1.getShortPath()); return DebuggerParser::red("list file not found in:\n " + lst.getShortPath());
} }
FilesystemNode node(myListFile); FilesystemNode node(myListFile);
@ -740,19 +737,16 @@ string CartDebug::loadListFile()
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - // - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
string CartDebug::loadSymbolFile() string CartDebug::loadSymbolFile()
{ {
// Currently, the default naming/location for symbol files is: // The default naming/location for symbol files is the ROM dir based on the
// 1) ROM dir based on properties entry name // actual ROM filename
if(mySymbolFile == "") if(mySymbolFile == "")
{ {
const string& propsname = FilesystemNode sym(myOSystem.romFile().getPathWithExt("") + ".sym");
myConsole.properties().get(Cartridge_Name) + ".sym"; if(sym.isFile() && sym.isReadable())
mySymbolFile = sym.getPath();
FilesystemNode case1(myOSystem.romFile().getParent().getPath() + propsname);
if(case1.isFile() && case1.isReadable())
mySymbolFile = case1.getPath();
else else
return DebuggerParser::red("symbol file not found in:\n " + case1.getShortPath()); return DebuggerParser::red("symbol file not found in:\n " + sym.getShortPath());
} }
FilesystemNode node(mySymbolFile); FilesystemNode node(mySymbolFile);