APT:GetProgramInfo: Difference between revisions

From 3dbrew
Jump to navigation Jump to search
Steveice10 (talk | contribs)
m Update link.
Steveice10 (talk | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 9: Line 9:
|-
|-
| 1-4
| 1-4
| [[FSReg:LoadProgram#ProgramInfo|ProgramInfo struct]] for the input title.
| [[Filesystem_services#ProgramInfo|Program Info]]
|}
|}


Line 25: Line 25:
|-
|-
| 2
| 2
| u8 flag: TWL = 1, CTR = ((flags[7] & 0xF0) >> 4). ("System mode" from exheader flags)
| u8, [[NCCH/Extended_Header#Flag0|System Mode]]
|-
|-
| 3
| 3
| Output programID-low.
| FIRM Program ID Low
|}
|}


=Description=
=Description=
This obtains info mainly used for [[APT:Reboot|launching]] [[FIRM]]. For TWL titles, the output programID-low is 0x102 for TWL_FIRM, however for CTR titles this is [[PMApp:GetTitleExheaderFlags|loaded]] from the first 4-bytes of the exheader_arm11systemlocalcaps.flags("Core Version"). For non-TWL titles when a certain NS state flag is set, the output flag is the value from config-mem [[Configuration_Memory|APPMEMTYPE]].
This obtains info mainly used for [[APT:Reboot|launching]] [[FIRM]]. For TWL titles, the output Program ID Low is 0x102 for TWL_FIRM, however for CTR titles this is [[PMApp:GetTitleExheaderFlags|loaded]] from the first 4-bytes of the exheader_arm11systemlocalcaps.flags("Core Version"). For non-TWL titles when a certain NS state flag is set, the output flag is the value from config-mem [[Configuration_Memory|APPMEMTYPE]].

Latest revision as of 06:28, 24 July 2023

Request

Index Word Description
0 Header code [0x00480100]
1-4 Program Info

Response

Index Word Description
0 Header code
1 Result code
2 u8, System Mode
3 FIRM Program ID Low

Description

This obtains info mainly used for launching FIRM. For TWL titles, the output Program ID Low is 0x102 for TWL_FIRM, however for CTR titles this is loaded from the first 4-bytes of the exheader_arm11systemlocalcaps.flags("Core Version"). For non-TWL titles when a certain NS state flag is set, the output flag is the value from config-mem APPMEMTYPE.