Line 198: |
Line 198: |
| | 0x58 || [[#svcDetachDeviceAddressSpace]] || W0=device, X1=dev_as_handle || W0=result | | | 0x58 || [[#svcDetachDeviceAddressSpace]] || W0=device, X1=dev_as_handle || W0=result |
| |- | | |- |
− | | 0x59 || [[#svcMapDeviceAddressSpaceByForce]] || W0=dev_as_handle, W1=proc_handle, X2=dev_map_addr, X3=dev_as_size, X4=dev_as_addr, W5=perm || W0=result | + | | 0x59 || [[#svcMapDeviceAddressSpaceByForce]] || W0=dev_as_handle, W1=proc_handle, X2=dev_map_addr, X3=dev_as_size, X4=dev_as_addr, W5=perm |
| + | R0=dev_as_handle, R1=proc_handle, R2=dev_map_addr_lower32, R3=dev_map_addr_upper32, R4=rev_as_size, R5=dev_as_addr_lower32, R6=dev_as_addr_upper32, R7=perm |
| + | || W0=result |
| |- | | |- |
− | | 0x5A || [[#svcMapDeviceAddressSpaceAligned]] || W0=dev_as_handle, W1=proc_handle, X2=dev_map_addr, X3=dev_as_size, X4=dev_as_addr, W5=perm || W0=result | + | | 0x5A || [[#svcMapDeviceAddressSpaceAligned]] || W0=dev_as_handle, W1=proc_handle, X2=dev_map_addr, X3=dev_as_size, X4=dev_as_addr, W5=perm |
| + | R0=dev_as_handle, R1=proc_handle, R2=dev_map_addr_lower32, R3=dev_map_addr_upper32, R4=rev_as_size, R5=dev_as_addr_lower32, R6=dev_as_addr_upper32, R7=perm |
| + | || W0=result |
| |- | | |- |
| | 0x5B || svcMapDeviceAddressSpace || || | | | 0x5B || svcMapDeviceAddressSpace || || |
Line 1,263: |
Line 1,267: |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
− | ! Argument || Type || Name | + | ! Argument64 || Argument32 || Type || Name |
| |- | | |- |
− | | (In) W0 || Handle<DeviceAddressSpace> || DeviceAsHandle | + | | (In) W0 || R0 || Handle<DeviceAddressSpace> || DeviceAsHandle |
| |- | | |- |
− | | (In) W1 || Handle<Process> || ProcessHandle | + | | (In) W1 || R1 || Handle<Process> || ProcessHandle |
| |- | | |- |
− | | (In) X2 || void* || SrcAddr | + | | (In) X2 || R2, R3 || void* || SrcAddr |
| |- | | |- |
− | | (In) X3 || u64 || DeviceAsSize | + | | (In) X3 || R4 || u64 || DeviceAsSize |
| |- | | |- |
− | | (In) X4 || u64 || DeviceAsAddr | + | | (In) X4 || R5, R6 || u64 || DeviceAsAddr |
| |- | | |- |
− | | (In) W5 || [[#Permission]] || Permissions | + | | (In) W5 || R7 || [[#Permission]] || Permissions |
| |- | | |- |
− | | (Out) W0 || [[#Result]] || Ret | + | | (Out) W0 || R0 || [[#Result]] || Ret |
| |} | | |} |
| </div> | | </div> |
Line 1,292: |
Line 1,296: |
| {| class="wikitable" border="1" | | {| class="wikitable" border="1" |
| |- | | |- |
− | ! Argument || Type || Name | + | ! Argument64 || Argument32 || Type || Name |
| |- | | |- |
− | | (In) W0 || Handle<DeviceAddressSpace> || DeviceAsHandle | + | | (In) W0 || R0 || Handle<DeviceAddressSpace> || DeviceAsHandle |
| |- | | |- |
− | | (In) W1 || Handle<Process> || ProcessHandle | + | | (In) W1 || R1 || Handle<Process> || ProcessHandle |
| |- | | |- |
− | | (In) X2 || void* || SrcAddr | + | | (In) X2 || R2, R3 || void* || SrcAddr |
| |- | | |- |
− | | (In) X3 || u64 || DeviceAsSize | + | | (In) X3 || R4 || u64 || DeviceAsSize |
| |- | | |- |
− | | (In) X4 || u64 || DeviceAsAddr | + | | (In) X4 || R5, R6 || u64 || DeviceAsAddr |
| |- | | |- |
− | | (In) W5 || [[#Permission]] || Permissions | + | | (In) W5 || R7 || [[#Permission]] || Permissions |
| |- | | |- |
− | | (Out) W0 || [[#Result]] || Ret | + | | (Out) W0 || R0 || [[#Result]] || Ret |
| |} | | |} |
| </div> | | </div> |