Update asm.cpp

получение инфы о том, куда будет переход после RTS и RTI
This commit is contained in:
Cyneprepou4uk 2022-02-14 21:38:37 +03:00
parent f5214f17d3
commit 9627a7cdfc
1 changed files with 11 additions and 1 deletions

View File

@ -714,7 +714,17 @@ char *bzk_Disassemble(int addr, uint8 *opcode) {
tmp = GetMem(tmp) | GetMem(tmp + 1) << 8;
sprintf(str, "%u|%u", bzk_GetNesFileAddress(tmp), bzk_getBank(tmp));
break;
//return from subroutine
case 0x60: //RTS
tmp = GetMem(((X.S) + 1)|0x0100) + (GetMem(((X.S) + 2)|0x0100) << 8) + 0x01
sprintf(str, "%u|%u", bzk_GetNesFileAddress(tmp), bzk_getBank(tmp));
//return from interrupt
case 0x40: //RTI
tmp = GetMem(((X.S) + 2)|0x0100) + (GetMem(((X.S) + 3)|0x0100) << 8)
sprintf(str, "%u|%u", bzk_GetNesFileAddress(tmp), bzk_getBank(tmp));
//for all other other opcodes, which are immediate and 1-byte instructions
default:
strcpy(str, "?|?");