Difference between revisions of "Mode Control Services PXI"

From 3dbrew
Jump to navigation Jump to search
(Mode Control Sleep)
 
Line 8: Line 8:
 
| 0x00010000
 
| 0x00010000
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
|  This is sent to the ARM9 by the ARM11 PXI-module, when PXI-module is shutting down due to receiving [[Services|srv]] notification-ID 0x100. This sets [[CONFIG_Registers#CFG_BOOTENV|CFG_BOOTENV]] to the value for CTR (0x1), and is only time it's set by Process9.
+
ShutdownPxi. This is sent to the ARM9 by the ARM11 PXI-module, when PXI-module is shutting down due to receiving [[Services|srv]] notification-ID 0x100. This sets [[CONFIG_Registers#CFG_BOOTENV|CFG_BOOTENV]] to the value for CTR (0x1), and is only time it's set by Process9.
 
|-
 
|-
 
| 0x0002....
 
| 0x0002....
Line 24: Line 24:
 
| 0x00050040
 
| 0x00050040
 
| [[1.0.0-0]]
 
| [[1.0.0-0]]
| (u8 unkval) Unknown. Used by [[PTM_Services|PTM]] module.
+
| Sleep (bool sleep). Used by [[PTM_Services|PTM]] module. When seeing this command with a non-zero argument [[PXI_Services|PXI]] module will block all other communication with Process9. This makes Process9
 +
call svcKernelSetState(2), which will make Kernel9 synchronize with the Arm11's own KernelSetState(2) code and wait for a PXI_SYNC interrupt (sleep exit command).
 
|-
 
|-
 
| 0x0006....
 
| 0x0006....

Latest revision as of 17:46, 4 May 2020

"pxi:mc" service[edit]

Command Header Available since system version Description
0x00010000 1.0.0-0 ShutdownPxi. This is sent to the ARM9 by the ARM11 PXI-module, when PXI-module is shutting down due to receiving srv notification-ID 0x100. This sets CFG_BOOTENV to the value for CTR (0x1), and is only time it's set by Process9.
0x0002.... 1.0.0-0 Stubbed, does nothing...
0x0003.... 1.0.0-0 Stubbed, does nothing...
0x0004.... 1.0.0-0 Stubbed, does nothing...
0x00050040 1.0.0-0 Sleep (bool sleep). Used by PTM module. When seeing this command with a non-zero argument PXI module will block all other communication with Process9. This makes Process9

call svcKernelSetState(2), which will make Kernel9 synchronize with the Arm11's own KernelSetState(2) code and wait for a PXI_SYNC interrupt (sleep exit command).

0x0006.... 1.0.0-0 Stubbed, does nothing...
0x00070000 1.0.0-0 Stubbed, writes uninitialized stack byte to (u8*)(cmdbuf+4).
0x0008.... 1.0.0-0 Stubbed, returns 0xE0C0EC03...
0x0009.... 1.0.0-0 Stubbed, returns 0xE0C0EC03...
0x000A.... 1.0.0-0 Sets internal Process9 date/time, same as Legacy_FIRM_PXI#Command_0xA
0x000B.... 1.0.0-0 Stubbed, does some unnecessary copying to stack...
0x000C.... 1.0.0-0 Stubbed, does some unnecessary copying to stack...

Back to↓

Services API