tracer: log bank number
mandatory when debugging banking glitches
This commit is contained in:
parent
a01894c913
commit
7b1609e75e
|
@ -482,7 +482,7 @@ void Disassemble(HWND hWnd, int id, int scrollid, unsigned int addr)
|
|||
}
|
||||
} else
|
||||
{
|
||||
sprintf(chr, " :%04X:", addr);
|
||||
sprintf(chr, " %04X:", addr);
|
||||
}
|
||||
|
||||
// Add address
|
||||
|
|
|
@ -817,7 +817,7 @@ BEGIN
|
|||
CONTROL "Log Frames count",IDC_CHECK_LOG_FRAMES_COUNT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,109,98,10
|
||||
CONTROL "Log Cycles count",IDC_CHECK_LOG_CYCLES_COUNT,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,113,109,94,10
|
||||
CONTROL "Log Instructions count",IDC_CHECK_LOG_INSTRUCTIONS_COUNT,
|
||||
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,211,109,98,10
|
||||
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,211,109,100,10
|
||||
CONTROL "Log emulator messages",IDC_CHECK_LOG_MESSAGES,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,122,97,10
|
||||
CONTROL "Log breakpoint hits",IDC_CHECK_LOG_BREAKPOINTS,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,113,122,91,10
|
||||
CONTROL "Symbolic trace",IDC_CHECK_SYMBOLIC_TRACING,"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,135,96,10
|
||||
|
@ -828,6 +828,7 @@ BEGIN
|
|||
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,8,162,102,10
|
||||
CONTROL "Only log code that accesses newly mapped data",IDC_CHECK_LOG_NEW_DATA,
|
||||
"Button",BS_AUTOCHECKBOX | BS_LEFT | WS_TABSTOP,112,162,171,10
|
||||
CONTROL "Log Bank number",IDC_CHECK_LOG_BANK_NUMBER,"Button",BS_AUTOCHECKBOX | WS_TABSTOP,211,121,100,10
|
||||
END
|
||||
|
||||
ADDBP DIALOGEX 66, 83, 196, 130
|
||||
|
|
|
@ -643,6 +643,7 @@
|
|||
#define CHECK_SOUND_SWAPDUTY 1203
|
||||
#define CB_OVERCLOCKING 1203
|
||||
#define CHECK_DEEMPH_SWAP 1203
|
||||
#define IDC_CHECK_LOG_BANK_NUMBER 1203
|
||||
#define IDC_VOLUMEGROUP 1204
|
||||
#define IDC_OMITBLANK 1204
|
||||
#define IDC_CHECK3 1204
|
||||
|
|
|
@ -433,6 +433,7 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
CheckDlgButton(hwndDlg, IDC_CHECK_LOG_BREAKPOINTS, (logging_options & LOG_BREAKPOINTS) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hwndDlg, IDC_CHECK_SYMBOLIC_TRACING, (logging_options & LOG_SYMBOLIC) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hwndDlg, IDC_CHECK_CODE_TABBING, (logging_options & LOG_CODE_TABBING) ? BST_CHECKED : BST_UNCHECKED);
|
||||
CheckDlgButton(hwndDlg, IDC_CHECK_LOG_BANK_NUMBER, (logging_options & LOG_BANK_NUMBER) ? BST_CHECKED : BST_UNCHECKED);
|
||||
|
||||
EnableWindow(GetDlgItem(hwndDlg, IDC_TRACER_LOG_SIZE), TRUE);
|
||||
EnableWindow(GetDlgItem(hwndDlg, IDC_BTN_LOG_BROWSE), FALSE);
|
||||
|
@ -576,6 +577,10 @@ BOOL CALLBACK TracerCallB(HWND hwndDlg, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
|||
logging_options ^= LOG_CODE_TABBING;
|
||||
CheckDlgButton(hwndDlg, IDC_CHECK_CODE_TABBING, (logging_options & LOG_CODE_TABBING) ? BST_CHECKED : BST_UNCHECKED);
|
||||
break;
|
||||
case IDC_CHECK_LOG_BANK_NUMBER:
|
||||
logging_options ^= LOG_BANK_NUMBER;
|
||||
CheckDlgButton(hwndDlg, IDC_CHECK_LOG_BANK_NUMBER, (logging_options & LOG_BANK_NUMBER) ? BST_CHECKED : BST_UNCHECKED);
|
||||
break;
|
||||
case IDC_CHECK_LOG_NEW_INSTRUCTIONS:
|
||||
logging_options ^= LOG_NEW_INSTRUCTIONS;
|
||||
if(logging && (!PromptForCDLogger()))
|
||||
|
@ -932,7 +937,17 @@ void FCEUD_TraceInstruction(uint8 *opcode, int size)
|
|||
strcat(str_result, " ");
|
||||
}
|
||||
|
||||
sprintf(str_address, "$%04X:", addr);
|
||||
if (logging_options & LOG_BANK_NUMBER)
|
||||
{
|
||||
if (addr >= 0x8000)
|
||||
sprintf(str_address, "$%02X:%04X: ", getBank(addr), addr);
|
||||
else
|
||||
sprintf(str_address, " $%04X: ", addr);
|
||||
} else
|
||||
{
|
||||
sprintf(str_address, "$%04X: ", addr);
|
||||
}
|
||||
|
||||
strcat(str_result, str_address);
|
||||
strcat(str_result, str_data);
|
||||
strcat(str_result, str_disassembly);
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
#define LOG_CODE_TABBING 512
|
||||
#define LOG_CYCLES_COUNT 1024
|
||||
#define LOG_INSTRUCTIONS_COUNT 2048
|
||||
#define LOG_BANK_NUMBER 4096
|
||||
|
||||
#define LOG_LINE_MAX_LEN 160
|
||||
// Frames count - 1+6+1 symbols
|
||||
|
@ -29,7 +30,7 @@
|
|||
#define LOG_AXYSTATE_MAX_LEN 21
|
||||
#define LOG_PROCSTATUS_MAX_LEN 12
|
||||
#define LOG_TABS_MASK 31
|
||||
#define LOG_ADDRESS_MAX_LEN 7
|
||||
#define LOG_ADDRESS_MAX_LEN 13
|
||||
#define LOG_DATA_MAX_LEN 11
|
||||
#define LOG_DISASSEMBLY_MAX_LEN 46
|
||||
|
||||
|
|
Loading…
Reference in New Issue