[hatari-devel] Truncated PC address value with code running in TT-RAM?

[ Thread Index | Date Index | More lists.tuxfamily.org/hatari-devel Archives ]


After some debugging I found out why disassembly didn't work with LILO.
It wasn't actually related to LILO, but code running in TT-RAM.

WinUAE core seems to now return 24-bit values for M68000_GetPC() macro,
although I've disabled 24-bit mode.  With code running in TT-RAM,
M68000_GetPC() returns values pointing to ST-RAM addresses (which contents happen to be zeroed).

Adding TT-RAM offset to return PC value, shows the correct disassembly:
	disasm "pc + 0x1000000"

Even WinAUE core function for showing register values shows wrong
address for the next PC.

Because things still *run* correctly, and I'm pretty sure M68000_GetPC()
returned earlier correct 32-bit values for code running in TT-RAM, it
seems that CPU core PC register variable has changed into some kind
of memory segment offset value.


	- Eero

Mail converted by MHonArc 2.6.19+ http://listengine.tuxfamily.org/