[Docs] Update 0xE0000000 range info

This commit is contained in:
Triang3l 2019-08-16 09:26:34 +03:00
parent 126978d960
commit 0faafd738a
1 changed files with 5 additions and 4 deletions

View File

@ -93,10 +93,11 @@ physical pages are usually allocated by MmAllocatePhysicalMemoryEx.
Virtual pages mapped to physical memory are also mapped to the physical membase, Virtual pages mapped to physical memory are also mapped to the physical membase,
i.e. virtual 0xA0000000 == physical 0x00000000 i.e. virtual 0xA0000000 == physical 0x00000000
Unfortunately, the 0xE0000000-0xFFFFFFFF range is unused in Xenia because The 0xE0000000-0xFFFFFFFF range is mapped to physical memory with a single 4 KB
it maps to physical memory with a single page offset, which is impossible page offset. On Windows, memory mappings must be aligned to 64 KB, so the offset
to do under the Win32 API. We can't fake this either, as this offset is has to be added when guest addresses are converted to host addresses in the
built into games - see the following sequence: translated CPU code. This can't be faked other ways because calculations
involving the offset are built into games - see the following sequence:
``` ```
srwi r9, r10, 20 # r9 = r10 >> 20 srwi r9, r10, 20 # r9 = r10 >> 20