Difference between revisions of "RO:LoadExeCRO"

 
(3 intermediate revisions by 2 users not shown)
Line 6: Line 6:
 
|-
 
|-
 
| 0
 
| 0
| Header code [0x000402C2]
+
| Header code [0x000402C2] ([0x000902C2] for the new version)
 
|-
 
|-
 
| 1
 
| 1
Line 17: Line 17:
 
| Total size of input CRO.
 
| Total size of input CRO.
 
|-
 
|-
| 4-11
+
| 4
| Unknown
+
| Process-memory buffer address to use for the CRO .data section, all CRO .data section addresses are automatically adjusted to use this address.
 +
|-
 +
| 5
 +
| Usually zero?
 +
|-
 +
| 6
 +
| .data section buffer size.
 +
|-
 +
| 7
 +
| Process-memory buffer address to use for the CRO .bss section, all CRO .bss section addresses are automatically adjusted to use this address.
 +
|-
 +
| 8
 +
| .bss section buffer size.
 +
|-
 +
| 9
 +
| Register as auto-link module if non-zero.
 +
|-
 +
| 10
 +
| Fix level.
 +
|-
 +
| 11
 +
| Usually zero?
 
|-
 
|-
 
| 12
 
| 12
| Must be zero
+
| Must be zero ([[IPC#Message_Structure|translation descriptor]])
 
|-
 
|-
 
| 13
 
| 13
Line 40: Line 61:
 
|-
 
|-
 
| 2
 
| 2
| Unknown
+
| CRO size after fixing
 
|}
 
|}
 +
 +
=Description=
 +
This loads a [[CRO0|CRO]], and maps virtual memory for it with the required memory-permissions.

Latest revision as of 09:26, 23 June 2017

RequestEdit

Index Word Description
0 Header code [0x000402C2] ([0x000902C2] for the new version)
1 Process-memory input CRO address(usually located on the process heap).
2 Process-memory address where the CRO will be mapped, starting at the CRO header(normally in the 0x00100000-0x04000000 range).
3 Total size of input CRO.
4 Process-memory buffer address to use for the CRO .data section, all CRO .data section addresses are automatically adjusted to use this address.
5 Usually zero?
6 .data section buffer size.
7 Process-memory buffer address to use for the CRO .bss section, all CRO .bss section addresses are automatically adjusted to use this address.
8 .bss section buffer size.
9 Register as auto-link module if non-zero.
10 Fix level.
11 Usually zero?
12 Must be zero (translation descriptor)
13 KProcess handle

ResponseEdit

Index Word Description
0 Header code
1 Result code
2 CRO size after fixing

DescriptionEdit

This loads a CRO, and maps virtual memory for it with the required memory-permissions.