Changes

70 bytes added ,  06:53, 10 October 2014
Line 374: Line 374:  
| 0x1F000000
 
| 0x1F000000
 
| 0x00400000
 
| 0x00400000
| [[New_3DS]] additional memory, access to this is specified by the exheader. Added with [[8.0.0-18]]. This area is used by [[QTM Services]]. This area is not accessible to the GPU on an original 3DS system.
+
| [[New_3DS]] additional memory, access to this is specified by the exheader. Added with [[8.0.0-18]]. This area is used by [[QTM Services]]. This area is not accessible to the GPU on an original 3DS system. Old3DS/New3DS GSP module has vaddr->physaddr conversion code for this region.
 
|-
 
|-
 
| 0x1EC00000
 
| 0x1EC00000
Line 409: Line 409:  
| FCRAM+0
 
| FCRAM+0
 
| 0x08000000(Old3DS) / 0x10000000([[New_3DS]])
 
| 0x08000000(Old3DS) / 0x10000000([[New_3DS]])
| This LINEAR memory mapping was added with [[8.0.0-18]], see [[SVC#enum_MemoryOperation|here]]. This replaces the original 0x14000000 mapping, for system(memory-region=BASE)/newer titles. The Old3DS kernel uses size 0x08000000 for LINEAR-memory address range checks, while the New3DS kernel uses size 0x10000000 for those range checks. System-module code doing vaddr->phys-addr conversion uses size 0x10000000 instead of 0x08000000.
+
| This LINEAR memory mapping was added with [[8.0.0-18]], see [[SVC#enum_MemoryOperation|here]]. This replaces the original 0x14000000 mapping, for system(memory-region=BASE)/newer titles. The Old3DS kernel uses size 0x08000000 for LINEAR-memory address range checks, while the New3DS kernel uses size 0x10000000 for those range checks. Old3DS/New3DS system-module code doing vaddr->phys-addr conversion uses size 0x10000000.
 
|-
 
|-
 
| 0x20000000 / 0x40000000
 
| 0x20000000 / 0x40000000