X-Git-Url: http://shamusworld.gotdns.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Fgui%2Fdebug%2Fopbrowser.cpp;h=5e1d405477b60c05a31df5d3750e81162e8435d2;hb=d207b11e613703aff7d00191c4595b7359f29700;hp=e30907b13ca83996c12eaba3d6195eb4a844b0b3;hpb=10d7ab1fb217c01030a0b637f9a571c1faf61ede;p=virtualjaguar diff --git a/src/gui/debug/opbrowser.cpp b/src/gui/debug/opbrowser.cpp index e30907b..5e1d405 100644 --- a/src/gui/debug/opbrowser.cpp +++ b/src/gui/debug/opbrowser.cpp @@ -7,7 +7,7 @@ // JLH = James Hammons // // Who When What -// --- ---------- ------------------------------------------------------------- +// --- ---------- ----------------------------------------------------------- // JLH 12/01/2012 Created this file // @@ -29,8 +29,8 @@ OPBrowserWindow::OPBrowserWindow(QWidget * parent/*= 0*/): QWidget(parent, Qt::D // Need to set the size as well... // resize(560, 480); -// QFont fixedFont("Lucida Console", 8, QFont::Normal); - QFont fixedFont("", 8, QFont::Normal); + QFont fixedFont("Lucida Console", 8, QFont::Normal); +// QFont fixedFont("", 8, QFont::Normal); fixedFont.setStyleHint(QFont::TypeWriter); text->setFont(fixedFont); //// layout->setSizeConstraint(QLayout::SetFixedSize); @@ -107,9 +107,12 @@ void OPBrowserWindow::DiscoverObjects(uint32_t address) if (objectType == 3) { - // Recursion needed to follow all links! This does depth-first recursion - // on the not-taken objects - DiscoverObjects(address + 8); + // Branch if YPOS < 2047 (or YPOS > 0) can be treated as a GOTO, so + // don't do any discovery in that case. Otherwise, have at it: + if (((lo & 0xFFFF) != 0x7FFB) && ((lo & 0xFFFF) != 0x8003)) + // Recursion needed to follow all links! This does depth-first + // recursion on the not-taken objects + DiscoverObjects(address + 8); } // Get the next object... @@ -152,12 +155,15 @@ void OPBrowserWindow::DumpObjectList(QString & list) list += "
"; + // Yes, the OP really determines bitmap/scaled bitmap address for the + // following phrases this way...! if (objectType == 0) - DumpFixedObject(list, OPLoadPhrase(address + 0), OPLoadPhrase(address + 8)); + DumpFixedObject(list, OPLoadPhrase(address + 0), + OPLoadPhrase(address | 0x08)); if (objectType == 1) - DumpScaledObject(list, OPLoadPhrase(address + 0), OPLoadPhrase(address + 8), - OPLoadPhrase(address + 16)); + DumpScaledObject(list, OPLoadPhrase(address + 0), + OPLoadPhrase(address | 0x08), OPLoadPhrase(address | 0x10)); if (address == link) // Ruh roh... {