Debugger: visually show that a 6522 is configured as bad in mini-mem window's title

This commit is contained in:
tomcw 2024-09-28 16:46:28 +01:00
parent 5f40ac8e70
commit e8641555e8
6 changed files with 9 additions and 2 deletions

View File

@ -60,6 +60,7 @@ public:
void SetRegIRA(BYTE reg) { m_regs.ORA = reg; }
bool IsTimer1IrqDelay(void) { return m_timer1IrqDelay ? true : false; }
void SetBusBeingDriven(bool state) { m_isBusDriven = state; }
bool IsBad(void) { return m_bad6522; }
BYTE Read(BYTE nReg);
void Write(BYTE nReg, BYTE nValue);

View File

@ -144,6 +144,7 @@ Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
COLOR_CUSTOM_01, // FG_AY8913_EVEN
Y8, // FG_AY8913_ODD
R8, // FG_AY8913_FUNCTION
R8, // FG_INFO_ADDRESS_SY6522_AY8913_BAD
};

View File

@ -29,7 +29,7 @@
COLOR_CUSTOM_01, COLOR_CUSTOM_02, COLOR_CUSTOM_03, COLOR_CUSTOM_04,
COLOR_CUSTOM_05, COLOR_CUSTOM_06, COLOR_CUSTOM_07, COLOR_CUSTOM_08,
COLOR_CUSTOM_09, COLOR_CUSTOM_11, CUSTOM_COLOR_11, COLOR_CUSTOM_12,
COLOR_CUSTOM_09, COLOR_CUSTOM_10, COLOR_CUSTOM_11, COLOR_CUSTOM_12,
COLOR_CUSTOM_13, COLOR_CUSTOM_14, COLOR_CUSTOM_15, COLOR_CUSTOM_16,
NUM_PALETTE,
@ -138,6 +138,7 @@
, FG_AY8913_EVEN
, FG_AY8913_ODD
, FG_AY8913_FUNCTION
, FG_INFO_ADDRESS_SY6522_AY8913_BAD
, NUM_DEBUG_COLORS
};

View File

@ -2130,7 +2130,7 @@ void DrawMemory ( int line, int iMemDump )
#if DISPLAY_MEMORY_TITLE
if (eDevice == DEV_MB_SUBUNIT)
{
sAddress = StrFormat("%c: SY & AY", 'A' + subUnit);
sAddress = StrFormat("%c:%cSY & AY", 'A' + subUnit, !MB.subUnit[subUnit].is6522Bad ? ' ' : '!');
}
else if (eDevice == DEV_AY8913_PAIR)
{
@ -2160,6 +2160,8 @@ void DrawMemory ( int line, int iMemDump )
PrintTextCursorX(" at ", rect2);
DebuggerSetColorFG(DebuggerGetColor(FG_INFO_ADDRESS));
if (MB.subUnit[subUnit].is6522Bad && eDevice == DEV_MB_SUBUNIT)
DebuggerSetColorFG(DebuggerGetColor(FG_INFO_ADDRESS_SY6522_AY8913_BAD));
PrintTextCursorY(sAddress.c_str(), rect2);
#endif

View File

@ -1036,6 +1036,7 @@ void MockingboardCard::GetSnapshotForDebugger(DEBUGGER_MB_CARD* const pMBForDebu
pMBForDebugger->subUnit[i].nAYCurrentRegister[j] = pMB->nAYCurrentRegister[j];
pMBForDebugger->subUnit[i].isAYLatchedAddressValid[j] = pMB->isAYLatchedAddressValid[j];
pMBForDebugger->subUnit[i].is6522Bad = pMB->sy6522.IsBad();
switch (pMB->state[j])
{

View File

@ -60,6 +60,7 @@ public:
BYTE nAYCurrentRegister[NUM_AY8913_PER_SUBUNIT];
char szState[NUM_AY8913_PER_SUBUNIT][3]; // "--"(INACTIVE), "RD", "WR", "LA"
bool isAYLatchedAddressValid[NUM_AY8913_PER_SUBUNIT];
bool is6522Bad;
};
struct DEBUGGER_MB_CARD
{