SVC: Difference between revisions
No edit summary |
|||
| Line 779: | Line 779: | ||
MapProcessMemory maps RW memory starting at address 0x00100000 in the specified KProcess, at the specified StartAddr in the current process. MapProcessMemory then maps 0x08000000 in the specified process, to StartAddr+0x7f00000 in the current process. UnmapProcessMemory unmaps the memory which was mapped by MapProcessMemory. | MapProcessMemory maps RW memory starting at address 0x00100000 in the specified KProcess, at the specified StartAddr in the current process. MapProcessMemory then maps 0x08000000 in the specified process, to StartAddr+0x7f00000 in the current process. UnmapProcessMemory unmaps the memory which was mapped by MapProcessMemory. | ||
= DMA = | |||
The CTRSDK code for using svcStartInterProcessDma will execute svcBreak when svcStartInterProcessDma returns an error(except for certain error value(s)). Therefore on retail, triggering a svcStartInterProcessDma via a system-module which results in an error from svcStartInterProcessDma will result in the system-module terminating. | |||
= Debugging = | = Debugging = | ||
| Line 921: | Line 924: | ||
| 0xC920181A | | 0xC920181A | ||
| The session was closed due to the other process terminating / calling svcBreak. | | The session was closed due to the other process terminating / calling svcBreak. | ||
|- | |||
| 0xD8E007F1 | |||
| This error indicates Misaligned address. | |||
|- | |- | ||
| 0xD8E007F7 | | 0xD8E007F7 | ||
| This error indicates that the input handle used with the SVC does not exist in the process handle-table, or that the handle kernel object type does not match the type used by the SVC. | | This error indicates that the input handle used with the SVC does not exist in the process handle-table, or that the handle kernel object type does not match the type used by the SVC. | ||
|- | |||
| 0xD9000402 | |||
| Invalid memory permissions for input/output buffers, for svcStartInterProcessDma. | |||
|- | |- | ||
| 0xD92007EA | | 0xD92007EA | ||
| This error is returned when a process attempts to use svcCreateMemoryBlock when the process memorytype is the application memorytype, and when addr=0. | | This error is returned when a process attempts to use svcCreateMemoryBlock when the process memorytype is the application memorytype, and when addr=0. | ||
|- | |- | ||
| 0xF8C007F4 | | 0xF8C007F4 | ||
| Invalid type/param0-param3 input for svcKernelSetState. | | Invalid type/param0-param3 input for svcKernelSetState. | ||
|} | |} | ||