Line 227: |
Line 227: |
| ! Argument || Type || Name | | ! Argument || Type || Name |
| |- | | |- |
− | | (In) X0 || u64 || <code>Size</code> | + | | (In) W1 || u64 || <code>Size</code> |
| |- | | |- |
| | (Out) W0 || [[#Result]] || <code>Ret</code> | | | (Out) W0 || [[#Result]] || <code>Ret</code> |
Line 242: |
Line 242: |
| | | |
| [2.0.0+] <code>Size</code> must be less than 0x18000000. | | [2.0.0+] <code>Size</code> must be less than 0x18000000. |
− |
| |
− |
| |
| | | |
| == svcSetMemoryPermission == | | == svcSetMemoryPermission == |
Line 251: |
Line 249: |
| | | |
| This can be used to move back and forth between ---, r-- and rw-. | | This can be used to move back and forth between ---, r-- and rw-. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X0 || u64 || <code>Addr</code> |
| + | |- |
| + | | (In) X1 || u64 || <code>Size</code> |
| + | |- |
| + | | (In) W2 || u64 || <code>Prot</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |} |
| + | </div> |
| | | |
| == svcSetMemoryAttribute == | | == svcSetMemoryAttribute == |
Line 258: |
Line 271: |
| | | |
| What happens "under the hood" is the "Memory Attribute Indirection Register" index is changed from 2 to 3 in the MMU descriptor. | | What happens "under the hood" is the "Memory Attribute Indirection Register" index is changed from 2 to 3 in the MMU descriptor. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X0 || u64 || <code>Addr</code> |
| + | |- |
| + | | (In) X1 || u64 || <code>Size</code> |
| + | |- |
| + | | (In) W2 || u64 || <code>State0</code> |
| + | |- |
| + | | (In) W3 || u64 || <code>State1</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |} |
| + | </div> |
| | | |
| {| class=wikitable | | {| class=wikitable |
Line 285: |
Line 315: |
| | | |
| [2.0.0+] Support for the <code>0x482907</code> mappings outside the "MapRegion" were removed. | | [2.0.0+] Support for the <code>0x482907</code> mappings outside the "MapRegion" were removed. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X0 || u64 || <code>Dst</code> |
| + | |- |
| + | | (In) X1 || u64 || <code>Src</code> |
| + | |- |
| + | | (In) X2 || u64 || <code>Size</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |} |
| + | </div> |
| | | |
| == svcUnmapMemory == | | == svcUnmapMemory == |
Line 292: |
Line 337: |
| | | |
| The srcaddr/dstaddr must match what was given when the pages were originally mapped. | | The srcaddr/dstaddr must match what was given when the pages were originally mapped. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X0 || u64 || <code>Dst</code> |
| + | |- |
| + | | (In) X1 || u64 || <code>Src</code> |
| + | |- |
| + | | (In) X2 || u64 || <code>Size</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |} |
| + | </div> |
| | | |
| == svcQueryMemory == | | == svcQueryMemory == |
Line 297: |
Line 357: |
| | | |
| Outputs a [[#MemoryInfo]] struct. | | Outputs a [[#MemoryInfo]] struct. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X0 || MemoryInfo*|| <code>Mem Info</code> |
| + | |- |
| + | | (In) X2 || u64 || <code>Addr</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |- |
| + | | (Out) W1 || PageInfo || <code>Page Info</code> |
| + | |} |
| + | </div> |
| | | |
| == svcExitProcess == | | == svcExitProcess == |
| '''Description:''' Exits the current process. | | '''Description:''' Exits the current process. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) None || || |
| + | |- |
| + | | (Out) None || || |
| + | |} |
| + | </div> |
| | | |
| == svcCreateThread == | | == svcCreateThread == |
Line 305: |
Line 391: |
| | | |
| Processor_id must be 0,1,2,3 or -2, where -2 uses the default cpuid for process. | | Processor_id must be 0,1,2,3 or -2, where -2 uses the default cpuid for process. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) X1 || u64 || <code>Entry</code> |
| + | |- |
| + | | (In) X2 || u64 || <code>Arg</code> |
| + | |- |
| + | | (In) X3 || u64 || <code>Stack Top</code> |
| + | |- |
| + | | (In) W4 || u64 || <code>Priority</code> |
| + | |- |
| + | | (In) W5 || u64 || <code>Processor ID</code> |
| + | |- |
| + | | (Out) W0 || [[#Result]] || <code>Ret</code> |
| + | |- |
| + | | (Out) W1 || Handle || <code>Handle</code> |
| + | |} |
| + | </div> |
| | | |
| == svcStartThread == | | == svcStartThread == |
| '''Description:''' Starts the thread for the provided handle. | | '''Description:''' Starts the thread for the provided handle. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) W0|| u64 || <code>Handle</code> |
| + | |- |
| + | | (Out) None || || |
| + | |} |
| + | </div> |
| | | |
| == svcExitThread == | | == svcExitThread == |
| '''Description:''' Exits the current thread. | | '''Description:''' Exits the current thread. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) None || || |
| + | |- |
| + | | (Out) None || || |
| + | |} |
| + | </div> |
| | | |
| == svcSleepThread == | | == svcSleepThread == |
Line 335: |
Line 464: |
| | | |
| Cpu-id is an integer in the range 0-3. | | Cpu-id is an integer in the range 0-3. |
| + | |
| + | <div style="display: inline-block;"> |
| + | {| class="wikitable" border="1" |
| + | |- |
| + | ! Argument || Type || Name |
| + | |- |
| + | | (In) None || || |
| + | |- |
| + | | (Out) W0/X0 || u64 || <code>CPU ID</code> |
| + | |} |
| + | </div> |
| | | |
| == svcMapSharedMemory == | | == svcMapSharedMemory == |