2.0.0: Difference between revisions

Move changes here
 
(One intermediate revision by one other user not shown)
Line 28: Line 28:
**To format, head to System Settings > System > Initialize > Format microSD Card
**To format, head to System Settings > System > Initialize > Format microSD Card


==Package1==
==System Titles==
* The encrypted binaries' order and calculation for next stage's entrypoint was changed.
* Every system module was updated.
** The [[creport]] system module (0100000000000036) was added.
* Every system applet was updated.
* Every 01000000000008XX title was updated except for:
** 0100000000000805(CHN/KOR dictionary), 0100000000000808("European, English and Japanese dictionaries"), 010000000000080A(Chara?), and 010000000000080C(EULA).
* The following 01000000000008XX titles were added:
** 0100000000000800(SSL trusted certs), 0100000000000807(Hotspot List), 010000000000081E(Dummy file), 010000000000081F(Icosa system config), 0100000000000820(Copper system config), 0100000000000821(Hoag system config)
* 010000000000081B ("exFAT FIRM") package2 is no longer "stubbed"/overwritten with garbage.
 
===FIRM===
====Package1====
The encrypted binaries' order and calculation for next stage's entrypoint was changed.


Old layout (before 2.0.0):
Old layout (before 2.0.0):
Line 49: Line 60:
  0x40013FE0 + 0x20 + 0x20 + NX bootloader blob's offset + Warmboot blob's size
  0x40013FE0 + 0x20 + 0x20 + NX bootloader blob's offset + Warmboot blob's size


* Some AES-ECB decryption related code was refactored.
Some AES-ECB decryption related code was refactored.
 
==System Titles==
* Every system module was updated.
** The [[creport]] system module (0100000000000036) was added.
* Every system applet was updated.
* Every 01000000000008XX title was updated except for:
** 0100000000000805(CHN/KOR dictionary), 0100000000000808("European, English and Japanese dictionaries"), 010000000000080A(Chara?), and 010000000000080C(EULA).
* The following 01000000000008XX titles were added:
** 0100000000000800(SSL trusted certs), 0100000000000807(Hotspot List), 010000000000081E(Dummy file), 010000000000081F(Icosa system config), 0100000000000820(Copper system config), 0100000000000821(Hoag system config)
* 010000000000081B ("exFAT FIRM") package2 is no longer "stubbed"/overwritten with garbage.


==Kernel==
==Kernel==
Line 104: Line 105:
* Kernel stacks are now allocated with a slabheap.
* Kernel stacks are now allocated with a slabheap.


* While 1.0.0 had two pools with size 0, now it uses all three. The last one size is calculated dynamically to fit all the built-in sysmodules, and it's now protected by the kernel carveout.
* KHeapArrange was changed. On 1.0.0 it held address/size for three pools ("base", "application", "system") and application/system were zero-sized/unused. Now it holds "pool management", "secure", "non-secure". Pool management and secure are now protected by the kernel carveout.
** Secure pool size is dynamically calculated as size of all kips (including stacks) + 24 MB (FS sysmodule heap) + 1 MB (spare pages for e.g. IPC buffer usage).
** If only one KIP is present, all memory goes to secure pool and non-secure pool does not exist.


{{NavboxVersions}}
{{NavboxVersions}}