Boot2: Difference between revisions
(8 intermediate revisions by 2 users not shown) | |||
Line 12: | Line 12: | ||
* 0100000000000007 (tma) | * 0100000000000007 (tma) | ||
* 010000000000001A (pcv) | * 010000000000001A (pcv) | ||
All processes are launched with [[Process_Manager_services|pm:shell]] LaunchProgram and launch_flags=0, Abort is used if the returned Result matches certain errors. | |||
It then opens the [[Settings_services#set:sys|set:sys]] service and reads a bool from the "boot" section called "force_maintenance" with default value set to "true". | It then opens the [[Settings_services#set:sys|set:sys]] service and reads a bool from the "boot" section called "force_maintenance" with default value set to "true". | ||
Line 74: | Line 76: | ||
Then it launches the following titles in order: | Then it launches the following titles in order: | ||
* 0100000000000045 (omm) [14.0.0+] | |||
* 0100000000000023 (am) | * 0100000000000023 (am) | ||
* 0100000000000019 (nvservices) | * 0100000000000019 (nvservices) | ||
Line 87: | Line 90: | ||
* 010000000000000B (bluetooth) | * 010000000000000B (bluetooth) | ||
* 0100000000000012 (bsdsockets) | * 0100000000000012 (bsdsockets) | ||
* 0100000000000046 (eth) [15.0.0+] | |||
* 010000000000000F (nifm) | * 010000000000000F (nifm) | ||
* 0100000000000018 (ldn) | * 0100000000000018 (ldn) | ||
Line 110: | Line 114: | ||
* 0100000000000035 (grc) [10.0.0-11.0.1] | * 0100000000000035 (grc) [10.0.0-11.0.1] | ||
* 010000000000003E (olsc) | * 010000000000003E (olsc) | ||
* 0100000000000050 (ngc) [16.0.0+] | |||
* 0100000000000041 (ngct) | * 0100000000000041 (ngct) | ||
* 010000000000000E (friends) [skipped in maintenance mode] | * 010000000000000E (friends) [skipped in maintenance mode] | ||
* 010000000000000C (bcat) [skipped in maintenance mode] | * 010000000000000C (bcat) [skipped in maintenance mode] | ||
* 0100000000000030 (eupld) [skipped in maintenance mode] | * 0100000000000030 (eupld) [skipped in maintenance mode] | ||
[16.0.0+] After launching pcv and before tma, it uses [[NCM_services|ncm]] cmd15 with input value 0, Aborting on failure (service init/exit is also done in nnMain now). | |||
After launching all titles, it'll check the "boot!boot_devmenuapp_installer" setting and attempt to launch 01000000000020f0 (devmenuapp_installer) if it's set to true. | After launching all titles, it'll check the "boot!boot_devmenuapp_installer" setting and attempt to launch 01000000000020f0 (devmenuapp_installer) if it's set to true. | ||
Line 188: | Line 195: | ||
* 010000000000001A (pcv) | * 010000000000001A (pcv) | ||
* 0100000000000007 (tma) or 010000000000B240 (htc) | * 0100000000000007 (tma) or 010000000000B240 (htc) | ||
* 0100000000000051 (dmgr) [17.0.0+] | |||
* 010000000000000D (dmnt) or 010000000000D609 (dmnt.gen2) | * 010000000000000D (dmnt) or 010000000000D609 (dmnt.gen2) | ||
Line 193: | Line 201: | ||
Then it launches the following titles in order: | Then it launches the following titles in order: | ||
* 0100000000000045 (omm) [14.0.0+] | |||
* 0100000000000023 (am) | * 0100000000000023 (am) | ||
* 0100000000000019 (nvservices) | * 0100000000000019 (nvservices) | ||
Line 200: | Line 209: | ||
* 0100000000000017 (cs) | * 0100000000000017 (cs) | ||
* 0100000000000011 (shell) | * 0100000000000011 (shell) | ||
* 010000000000D640 (htcnet) [16.0.0+] [skipped in maintenance] | |||
* 010000000000D633 [14.0.0+] [skipped in maintenance mode] | |||
* 0100000000000042 (pgl) | * 0100000000000042 (pgl) | ||
* 010000000000001F (ns) | * 010000000000001F (ns) | ||
Line 209: | Line 220: | ||
* 010000000000000B (bluetooth) | * 010000000000000B (bluetooth) | ||
* 0100000000000012 (bsdsockets) | * 0100000000000012 (bsdsockets) | ||
* 0100000000000046 (eth) [15.0.0+] | |||
* 010000000000000F (nifm) | * 010000000000000F (nifm) | ||
* 0100000000000018 (ldn) | * 0100000000000018 (ldn) | ||
Line 232: | Line 244: | ||
* 0100000000000035 (grc) [10.0.0-11.0.1] | * 0100000000000035 (grc) [10.0.0-11.0.1] | ||
* 010000000000003E (olsc) | * 010000000000003E (olsc) | ||
* 0100000000000050 (ngc) [16.0.0+] | |||
* 0100000000000041 (ngct) | * 0100000000000041 (ngct) | ||
* 010000000000000E (friends) [skipped in maintenance mode] | * 010000000000000E (friends) [skipped in maintenance mode] | ||
Line 245: | Line 258: | ||
= boot2.Minimum = | = boot2.Minimum = | ||
This is used for recovery mode on | This is used for recovery mode on development systems on 4.1.0+. | ||
Just like [[#boot2.prodBoot|boot2.prodBoot]], it opens the [[Process_Manager_services#pm:shell|pm:shell]] service and prior to 10.0.0 launches the following titles in order: | Just like [[#boot2.prodBoot|boot2.prodBoot]], it opens the [[Process_Manager_services#pm:shell|pm:shell]] service and prior to 10.0.0 launches the following titles in order: | ||
Line 278: | Line 291: | ||
* 0100000000000017 (cs) [12.0.0+] | * 0100000000000017 (cs) [12.0.0+] | ||
If the "boot!use_htc_gen2" setting is set to "true", htc and dmnt.gen2 are used, otherwise tma and dmnt are used (Note: | If the "boot!use_htc_gen2" setting is set to "true", htc and dmnt.gen2 are used, otherwise tma and dmnt are used (Note: dmnt and dmnt.gen2 are not currently present in recovery mode). | ||
After launching all titles, it'll check the "boot!boot_devmenuapp_installer" setting and attempt to launch 01000000000020f0 (devmenuapp_installer) if it's set to true. | After launching all titles, it'll check the "boot!boot_devmenuapp_installer" setting and attempt to launch 01000000000020f0 (devmenuapp_installer) if it's set to true. | ||
Line 342: | Line 355: | ||
= boot2.Manu1st = | = boot2.Manu1st = | ||
As of version [[2.1.0|2.1.0]], just like [[#boot2.prodBoot|boot2.prodBoot]], it opens the [[Process_Manager_services#pm:shell|pm:shell]] service and launches the following titles in order: | |||
* 0100000000000021 (psc) | * 0100000000000021 (psc) | ||
* 0100000000000009 (settings) | * 0100000000000009 (settings) | ||
Line 348: | Line 361: | ||
* 010000000000001D (pcie) | * 010000000000001D (pcie) | ||
* 010000000000000A (bus) | * 010000000000000A (bus) | ||
* 0100000000000007 (tma) | |||
* 010000000000001A (pcv) | * 010000000000001A (pcv) | ||
At this point it checks if the device is being booted in maintenance mode, if it is it opens the [[Process_Manager_services#pm:bm|pm:bm]] service and calls [[Process_Manager_services#pm:bm|SetMaintenanceBoot]] then attempts to to launch titles in the same order that [[#boot2.ManuBoot|boot2.ManuBoot]] does in maintenance mode. | |||
Then it attempts to launch the following titles in the following order: | |||
* 010000000000001F (ns) | * 010000000000001F (ns) | ||
* 0100000000000015 (lm) | * 0100000000000015 (lm) | ||
* 0100000000000034 (fatal) | * 0100000000000034 (fatal) | ||
* 010000000000B14A (manu) | |||
After launching these processes, it exits. | After launching these processes, it exits. |