Re: [hatari-devel] Bcc target address in debugger |
[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]
Le 01/09/2021 à 23:13, Christian Zietz a écrit :
Eero Tamminen schrieb:Hi, On 29.8.2021 23.39, Miro Kropáček wrote:I've been playing with Hatari's debugger for the past few days and I don't get one thing. Why does it always show $0000000 as the target address? Likethis: CPU=$1889a, VBL=972, FrameCycles=565296, HBL=276, LineCycles=48, DSP=N/A 0001889A 66fa BNE.B #$fa == $00000000 (T)There wasn't a single case where I'd see something else. The T/F indicatorworks, the jump itself works, I just don't understand that that zero issupposed to mean. Latest Hatari, nothing strange, just stepping the code.I think either Toni or Nicolas need to answer this...Well.... It seems that the UAE disassembler uses 0xFFFFFFFF as a special value to indicate whether a source or destination address is valid:https://github.com/tonioni/WinUAE/blob/1e81c84ed109b945dce6bdbba10eda9da3e35d64/disasm.cpp#L1743Hatari, however, for reasons unknown to me, initializes these variables to 0 instead: https://git.tuxfamily.org/hatari/hatari.git/tree/src/cpu/disasm.c#n1754 Unfortunately, when printing the target address, it checks for the special value to decide which address to use and ends up using deaddr2 instead of seaddr2: https://git.tuxfamily.org/hatari/hatari.git/tree/src/cpu/disasm.c#n2190
Hi good catch, thanks for pointing it.it seems that at one point I did not fully merge some WinUAE's change into Hatari and this results in these difference (in that case, Hatari should use the same code as WinUAE)
I will do a diff between the 2 source trees to see if there're more point to fix.
Nicolas
Mail converted by MHonArc 2.6.19+ | http://listengine.tuxfamily.org/ |