|Re: [hatari-devel] Truncated PC address value with code running in TT-RAM?|
[ Thread Index |
| More lists.tuxfamily.org/hatari-devel Archives
On Samstag, 30. März 2019 18:33:03 CET Nicolas Pomarède wrote:
>yes it could be possible that linux install its own mmu table to handle
Yes, definitely. Not only for page swapping, but every process gets the same
virtual address space, regardless where it is located physically in RAM. This
is different from current Mint behaviour for example, where the MMU is only
used for protection, but there is a 1-to-1 mapping for addresses.
> then it seems the bug is not in Hatari or in
> the cpu core.
Maybe not in the CPU core, but apparently in the disassembler, using the
functions that use physical addresses to fetch opcodes. When the MMU is
active, you need to translate them first (it is not just adding the memory
bank offset, you really have to go through the MMU table).
I'm not sure how Hatari handles this currently, but in Aranym there are
functions like phys_get_long(), mmu_get_long() etc. for this purpose.