Debugger: when displaying 6522 regs, if T1/T2 are active, then display in white

This commit is contained in:
tomcw 2021-05-09 13:38:16 +01:00
parent b15abd0ba9
commit ce309324bb
3 changed files with 18 additions and 7 deletions

View File

@ -2051,10 +2051,21 @@ void DrawMemory ( int line, int iMemDump )
if (eDevice == DEV_SY6522)
{
sprintf( sText, "%02X ", (unsigned) ((BYTE*)&SS_MB.Unit[nAddr & 1].RegsSY6522)[iAddress] );
if (iCol & 1)
DebuggerSetColorFG( DebuggerGetColor( iForeground ));
if (SS_MB.Unit[nAddr & 1].bTimer1Active && (iAddress == 4 || iAddress == 5)) // T1C
{
DebuggerSetColorFG(DebuggerGetColor(FG_INFO_TITLE)); // if timer1 active then draw in white
}
else if (SS_MB.Unit[nAddr & 1].bTimer2Active && (iAddress == 8 || iAddress == 9)) // T2C
{
DebuggerSetColorFG(DebuggerGetColor(FG_INFO_TITLE)); // if timer2 active then draw in white
}
else
DebuggerSetColorFG( DebuggerGetColor( FG_INFO_ADDRESS ));
{
if (iCol & 1)
DebuggerSetColorFG( DebuggerGetColor( iForeground ));
else
DebuggerSetColorFG( DebuggerGetColor( FG_INFO_ADDRESS ));
}
}
else
if (eDevice == DEV_AY8910)

View File

@ -1805,8 +1805,8 @@ void MB_GetSnapshot_v1(SS_CARD_MOCKINGBOARD_v1* const pSS, const DWORD dwSlot)
memset(&pSS->Unit[i].RegsSSI263, 0, sizeof(SSI263A)); // Not used by debugger
pSS->Unit[i].nAYCurrentRegister = pMB->nAYCurrentRegister;
pSS->Unit[i].bTimer1IrqPending = false;
pSS->Unit[i].bTimer2IrqPending = false;
pSS->Unit[i].bTimer1Active = pMB->bTimer1Active;
pSS->Unit[i].bTimer2Active = pMB->bTimer2Active;
pSS->Unit[i].bSpeechIrqPending = false;
nDeviceNum++;

View File

@ -116,8 +116,8 @@ struct MB_Unit_v1
BYTE RegsAY8910[16];
SSI263A RegsSSI263;
BYTE nAYCurrentRegister;
bool bTimer1IrqPending;
bool bTimer2IrqPending;
bool bTimer1Active;
bool bTimer2Active;
bool bSpeechIrqPending;
};