Skip to content

Commit 93e8413

Browse files
committed
[debugger] Avoid disassembling hardware bank
1 parent 0e7f153 commit 93e8413

File tree

3 files changed

+10
-1
lines changed

3 files changed

+10
-1
lines changed

src/huc6280_inline.h

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -710,6 +710,9 @@ INLINE void HuC6280::PopulateDisassemblerRecord(GG_Disassembler_Record* record,
710710
case Memory::MEMORY_BANK_TYPE_CDROM_RAM:
711711
strncpy_fit(record->segment, "CDRAM", sizeof(record->segment));
712712
break;
713+
case Memory::MEMORY_BANK_TYPE_HARDWARE:
714+
strncpy_fit(record->segment, "HW ", sizeof(record->segment));
715+
break;
713716
default:
714717
strncpy_fit(record->segment, "???? ", sizeof(record->segment));
715718
break;
@@ -773,7 +776,9 @@ inline void HuC6280::DisassembleAhead(u16 start_address, int count, int depth)
773776

774777
if (record->jump && record->jump_address != 0)
775778
{
776-
DisassembleAhead(record->jump_address, count / 2, depth + 1);
779+
u8 jump_bank = m_memory->GetBank(record->jump_address);
780+
if (jump_bank != 0xFF)
781+
DisassembleAhead(record->jump_address, count / 2, depth + 1);
777782
}
778783

779784
address += opcode_size;

src/memory.cpp

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -365,6 +365,9 @@ Memory::MemoryBankType Memory::GetBankType(u8 bank)
365365
if (bank < 0x80)
366366
return m_media->IsCDROM() ? MEMORY_BANK_TYPE_BIOS : MEMORY_BANK_TYPE_ROM;
367367

368+
if (bank == 0xFF)
369+
return MEMORY_BANK_TYPE_HARDWARE;
370+
368371
return MEMORY_BANK_TYPE_UNUSED;
369372
}
370373

src/memory.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ class Memory
4646
MEMORY_BANK_TYPE_BACKUP_RAM,
4747
MEMORY_BANK_TYPE_WRAM,
4848
MEMORY_BANK_TYPE_CDROM_RAM,
49+
MEMORY_BANK_TYPE_HARDWARE,
4950
MEMORY_BANK_TYPE_UNUSED
5051
};
5152

0 commit comments

Comments
 (0)