Describe addresses correctly in unbanked portions of RAM and ROM

This commit is contained in:
Lior Halphon 2025-06-24 21:53:18 +03:00
parent 58bd40b833
commit 00000971d7
2 changed files with 4 additions and 1 deletions

View File

@ -136,7 +136,7 @@
if (!_gb) {
return [NSString stringWithFormat:@"$%llX", offset];
}
return @(GB_debugger_describe_address(_gb, offset + _baseAddress, _bankForDescription, false, isRangeEnd));
return @(GB_debugger_describe_address(_gb, offset + _baseAddress, offset < 0x4000? -1 :_bankForDescription, false, isRangeEnd));
}

View File

@ -2775,6 +2775,9 @@ const char *GB_debugger_describe_address(GB_gameboy_t *gb,
if (bank == (uint16_t)-1) {
bank = bank_for_addr(gb, addr);
}
if ((addr >> 12) == 0xC) {
bank = 0;
}
if (exact_match) {
const GB_bank_symbol_t *symbol = GB_map_find_symbol(get_symbol_map(gb, bank), addr, prefer_local);
if (symbol && symbol->addr == addr) return symbol->name;