Changes

147 bytes added ,  19:19, 21 May 2014
no edit summary
Line 5: Line 5:  
The 3DS' Boot procedure:
 
The 3DS' Boot procedure:
   −
* 0 Seconds - unit is powered on bootrom begins execution
+
* 0 Seconds - unit is powered on the ARM9 and ARM11 [[Memory_layout|bootroms]] begins execution
   −
* 2 Seconds - bootrom attempts to initialize the NAND. If the NAND is successfully initialized, the bootrom loads the firmware stored in the NAND [[FIRM]] partition which handles booting the rest of the system. The ARM11 kernel loaded from FIRM then launches the [[NCCH#CXI|CXI]] ARM11 system modules loaded from FIRM.(Note that the ARM11 kernel does not handle any encryption/RSA verification, this is handled by the [[FIRM|ARM9]]) If the NAND cannot be initialized, (i.e. the NAND chip is not connected/damaged etc) a blue error screen similar to the screen above appears.
+
* 2 Seconds - ARM9 bootrom attempts to initialize the NAND. If the NAND is successfully initialized, the ARM9 bootrom loads the [[FIRM|firmware]] stored in the NAND [[FIRM]] partition which handles booting the rest of the system(if verification for NAND firm0 fails, the ARM9 bootrom will attempt to use firm1 instead). The ARM11 kernel loaded from FIRM then launches the [[NCCH#CXI|CXI]] ARM11 system modules loaded from FIRM(Note that the ARM11 kernel does not handle any encryption/RSA verification, this is handled by the [[FIRM|ARM9]]). If the NAND cannot be initialized, (i.e. the NAND chip is not connected/damaged etc) a blue error screen similar to the screen above appears.
    
* 3 Seconds - all essential hardware is active. The [[Process_Manager_Services|PM]] module launches [[NS]], [[NS]] then launches [[ErrDisp]] and the [[Configuration Memory#ACTIVEMENUTID|current active menu]] via PM module. For retail units this menu is usually the [[Home Menu]]. NS will [[NS|auto-boot]] titles instead of launching ErrDisp/Home Menu, if auto-booting is needed. Note that PM module first launches the module dependencies when launching a process, prior to actually launching the process.
 
* 3 Seconds - all essential hardware is active. The [[Process_Manager_Services|PM]] module launches [[NS]], [[NS]] then launches [[ErrDisp]] and the [[Configuration Memory#ACTIVEMENUTID|current active menu]] via PM module. For retail units this menu is usually the [[Home Menu]]. NS will [[NS|auto-boot]] titles instead of launching ErrDisp/Home Menu, if auto-booting is needed. Note that PM module first launches the module dependencies when launching a process, prior to actually launching the process.