5.0.0: Difference between revisions
we kaslr now (courtesy qlutoo) |
No edit summary |
||
| (41 intermediate revisions by 8 users not shown) | |||
| Line 5: | Line 5: | ||
==Change-log== | ==Change-log== | ||
[http://en-americas-support.nintendo.com/app/answers/detail/a_id/22525/p/897 Official] ALL change-log: | [http://en-americas-support.nintendo.com/app/answers/detail/a_id/22525/p/897 Official] ALL change-log: | ||
* Added the following system functionality | *Added the following system functionality | ||
* Facebook and Twitter friends that also use Nintendo Switch can now be added through Friend Suggestions | :* Facebook and Twitter friends that also use Nintendo Switch can now be added through Friend Suggestions | ||
* Friend suggestions are based on the Facebook and Twitter accounts you have linked to your Nintendo Account | ::* Friend suggestions are based on the Facebook and Twitter accounts you ''have linked to your Nintendo Account'' | ||
* To view your friend suggestions, from the top left of the HOME Menu head to your User Page > Friend Suggestions | ::* To view your friend suggestions, from the top left of the HOME Menu head to your User Page > Friend Suggestions | ||
* You must be 13 or older to use this feature | ::* You must be 13 or older to use this feature | ||
* Select from 24 new ARMS and the Kirby series icons for your user | :* Select from 24 new ARMS and the Kirby series icons for your user | ||
* To edit your user icon, head to your My Page on the top left of the Home Menu > Profile | ::* To edit your user icon, head to your My Page on the top left of the Home Menu > Profile | ||
* Digital software purchases made from a PC or smart device will start downloading sooner than previously, even if the Nintendo Switch console is in Sleep Mode | :* Digital software purchases made from a PC or smart device will start downloading sooner than previously, even if the Nintendo Switch console is in Sleep Mode | ||
* Filter News to view only unread news or news from specific channels | :* Filter News to view only unread news or news from specific channels | ||
* To keep the Parental Controls PIN private, the default method for PIN entry has been changed to entering using the Control Stick and buttons instead of the on-screen number pad | :* To keep the Parental Controls PIN private, the default method for PIN entry has been changed to entering using the Control Stick and buttons instead of the on-screen number pad | ||
* When prompted to enter you Parental Controls PIN, press and hold the + Button to change between input methods | ::* When prompted to enter you Parental Controls PIN, press and hold the + Button to change between input methods | ||
* Captured videos in the Album will be restricted by Parental Controls depending on the Restricted Software setting and Software Rating Organization | :* Captured videos in the Album will be restricted by Parental Controls depending on the Restricted Software setting and Software Rating Organization | ||
* Using the Nintendo Switch Parental Controls app, add specific software titles to your whitelist to exclude them from the console’s Parental Controls Restricted Software setting | :* ''Using the Nintendo Switch Parental Controls app'', add specific software titles to your whitelist to exclude them from the console’s Parental Controls Restricted Software setting | ||
* Play-Time Limit restrictions will still apply even when the software title has been whitelisted. | ::* Play-Time Limit restrictions will still apply even when the software title has been whitelisted. | ||
* Receive notification when pre-purchased software is ready to play | :* Receive notification when pre-purchased software is ready to play | ||
* Nintendo Switch Pro Controller grip colors will now display in the Controllers menu | :* Nintendo Switch Pro Controller grip colors will now display in the Controllers menu | ||
* General system stability improvements to enhance the user's experience, including: | * General system stability improvements to enhance the user's experience, including: | ||
* Resolved an issue that caused Play Activity to display incorrectly in the Profile section of your User Page | :* Resolved an issue that caused Play Activity to display incorrectly in the Profile section of your User Page | ||
==System Titles== | ==System Titles== | ||
All 01000000000010XX titles and most 01000000000008XX titles were updated. Some 8XX titles were just rebuilt with the new NCA crypto without actual RomFS-content changes. | |||
* 0100000000000824(Mariko Config), 0100000000000825, 0100000000000826 were added. | * 0100000000000824(Mariko Config), 0100000000000825, 0100000000000826 were added. | ||
** 0100000000000824 provides configuration for the new "T214" SoC. | ** 0100000000000824 provides configuration for the new "T214" SoC. | ||
** 0100000000000825 contains an empty "/blacklist.dat" file. | |||
** 0100000000000826 contains a 0x40-byte "/version" file, this is all-zero except for '0' at offset 0x20. | |||
The built codebins now have padding in .text after every function for 0x10-byte alignment (and other compiler changes). | |||
The SDK included with titles (main-codebin) for NV changed/updated NVIDIA hw strings: | |||
Previous version: | |||
00000000: 4e56 4944 4941 2054 6567 7261 204b 3100 NVIDIA Tegra K1. | |||
00000010: 4e56 4944 4941 2054 6567 7261 2058 31 NVIDIA Tegra X1 | |||
==Secure Monitor== | Current version: | ||
00000000: 4e56 4944 4941 2054 6567 7261 2f4e 696e NVIDIA Tegra/Nin | |||
00000010: 7465 6e64 6f20 5377 6974 6368 004e 5649 tendo Switch.NVI | |||
00000020: 4449 4120 5465 6772 6120 5832 0047 5031 DIA Tegra X2.GP1 | |||
00000030: 3042 0047 5031 3036 0047 5031 3036 2d41 0B.GP106.GP106-A | |||
00000040: 0047 6546 6f72 6365 2047 5458 2031 3036 .GeForce GTX 106 | |||
00000050: 3020 3347 4200 4765 466f 7263 6520 4754 0 3GB.GeForce GT | |||
00000060: 5820 3130 3630 2036 4742 0047 6546 6f72 X 1060 6GB.GeFor | |||
00000070: 6365 2047 5458 2031 3035 3000 4765 466f ce GTX 1050.GeFo | |||
00000080: 7263 6520 4754 5820 3130 3630 0047 6546 rce GTX 1060.GeF | |||
00000090: 6f72 6365 2047 5458 2031 3035 3020 5469 orce GTX 1050 Ti | |||
000000a0: 0047 5031 3036 474c 2d41 0051 7561 6472 .GP106GL-A.Quadr | |||
000000b0: 6f20 5032 3030 3000 4750 3130 362d 4200 o P2000.GP106-B. | |||
000000c0: 4750 3130 3647 4c2d 42 GP106GL-B | |||
[[NPDM]] changes (besides usual version-bump): | |||
* usb: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* htc.stub: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* boot2.ProdBoot: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* settings: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* Bus: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* bluetooth: Acid.Flags updated: 0x1 -> 0x9. Service server access: added bt. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* bcat: Acid.Flags updated: 0x1 -> 0x9. Service access: added dauth:0, srepo:a. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* friends: Acid.Flags updated: 0x1 -> 0x9. Service server access: added nd:app, nd:sys. Service access: added ndd, set. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* nifm: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* ptm: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* bsdsocket: Acid.Flags updated: 0x1 -> 0x9. KernelCap ThreadInfo: updated MinCoreNumber = 0x0 -> 0x3. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* hid: MainThreadStackSize updated: 0x2000 -> 0x3000. Acid.Flags updated: 0x1 -> 0x9. Service server access: added hidbus. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* audio: Acid.Flags updated: 0x1 -> 0x9. Service server access: removed audrec:a, audrec:d. Service access: added lm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LogManager.Prod: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* wlan: Acid.Flags updated: 0x1 -> 0x9. Service access: added psm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* ldn: Acid.Flags updated: 0x1 -> 0x9. Service server access: added ndd. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* nvservices: Acid.Flags updated: 0x1 -> 0xD. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: removed QueryPhysicalAddress. | |||
* pcv: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* capmtp: Acid.Flags updated: 0x1 -> 0x9. Service access: removed lm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* nvnflinger: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* pcie: Acid.Flags updated: 0x1 -> 0x9. Service access: added set:sys. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* account: Acid.Flags updated: 0x1 -> 0x9. Service server access: added dauth:0. Service access: added ovln:snd, spl:mig. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* ns: Acid.Flags updated: 0x1 -> 0x9. Service access: added erpt:c. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* nfc: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* psc: Acid.Flags updated: 0x1 -> 0x9. Service server access: added srepo:*. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* capsrv: MainThreadStackSize updated: 0x4000 -> 0x5000. Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x4000000000000000 (Debug (ignored on non-DebugMode, see [[SPL_services#GetConfig|here]])). Service server access: added caps:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* am: Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x0000000080000000 (DeviceDetection). Service server access: added tcap. Service access: added acc:u1, pdm:qry. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: added MapPhysicalMemoryUnsafe, UnmapPhysicalMemoryUnsafe. | |||
* ssl: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* nim: Acid.Flags updated: 0x1 -> 0x9. Service server access: added nim:eca. Service access: added arp:r, dauth:0, srepo:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: added MapTransferMemory, UnmapTransferMemory. | |||
* lbl: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* btm: Acid.Flags updated: 0x1 -> 0x9. Service server access: added btm:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* erpt: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* vi: Acid.Flags updated: 0x1 -> 0xD. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0xA0. SVC access: added MapTransferMemory, UnmapTransferMemory. | |||
* pctl: Acid.Flags updated: 0x1 -> 0x9. Service access: added dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* npns: Acid.Flags updated: 0x1 -> 0x9. Service access: added arp:r, dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* eupld: Acid.Flags updated: 0x1 -> 0x9. Service access: added bgtc:t, dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* glue: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* eclct: Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x0000000000100000 (SystemData). Service access: added erpt:r, fsp-srv, omm, time:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* es: Acid.Flags updated: 0x5 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* fatal: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* grc: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* creport: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* ro: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* sdb: Acid.Flags updated: 0x1 -> 0x9. Fac.SaveDataOwnerInfo added 0100000000001009 (miiEdit) access 0x3 (RW). Service server access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* migration: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* jpegdec: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* safemode: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* qlaunch: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* auth: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* cabinet: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* controller: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* dataErase: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* error: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* netConnect: Acid.Flags updated: 0x1 -> 0x5. Service access: added ntc. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* playerSelect: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* swkbd: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* miiEdit: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LibAppletWeb: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LibAppletShop: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* overlayDisp: Acid.Flags updated: 0x1 -> 0x5. Service access: added erpt:c. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* photoViewer: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LibAppletOff: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LibAppletLns: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* LibAppletAuth: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* "starter" application: KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* myPage: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
* maintenance: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. | |||
RomFs changes: | |||
* [[System_Version_Title|SystemVersion]]: All files updated. | |||
* [[System_Settings|FirmwareDebugSettings]]: All files updated. | |||
* 801 (Support Error Codes) | |||
* 803 (web-applet "shareddata:/") | |||
* 804 (HTML resources for "Intellectual Property Notices" / "Health & Safety Information") | |||
** "/legallines.htdocs/index.html" was updated with a Twitter mention, and a license section for "Software License for The Fraunhofer FDK AAC Codec Library for Android" was added. | |||
** "/safe.htdocs/html/EU{XX}/index.html" was updated. | |||
* 806 (Bad words) | |||
* 807 ([[Hotspot List]]) | |||
** This was updated with more hotspots (these networks use encryption): "nintendoappdebug1", "Nintendo App Debug2", "Nintendo App Debug3", and "NCL-NZSERVICE1-5GHZ". | |||
* 80A (Chara) | |||
* 80B (Offline news) | |||
* 80E (Geo Zoneinfo) | |||
* 810-814 (All fonts) | |||
* 818 (System-config) | |||
* 81E (Controller gfx/icon data + dummy file) | |||
** "/lyt/ColorTable" and "/lyt/footer/controllerIcon.bntx" were updated. The "01-00" image showing handheld-mode with detached joy-cons was replaced with a blank image. | |||
* 81F (Icosa system config) | |||
* 820 (Copper system config) | |||
* 821 (Hoag system config) | |||
* 822 (Firmware binaries for peripherals) | |||
** The following was updated: "FirmwareInfo.csv", "tera_ota.bin", "tera_ota_iap.bin", and "ukyosakyo_ep2_ota.bin". | |||
* 823 | |||
=== BootImagePackages === | |||
RomFs changes: | |||
* "/a/" added, "/nx/bct" updated, "/nx/package1" updated, "/nx/package1.dec" updated, "/nx/package2" updated | |||
[[Package2|INI1]] changes: | |||
* BootImagePackage: | |||
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress. | |||
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo. | |||
** 0100000000000004 (sm): SVC access: added GetSystemInfo. | |||
* BootImagePackageSafe: | |||
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress. | |||
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo. | |||
** 0100000000000004 (sm): SVC access: added GetSystemInfo. | |||
* BootImagePackageExFat: | |||
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress. | |||
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo. | |||
** 0100000000000004 (sm): SVC access: added GetSystemInfo. | |||
* BootImagePackageExFatSafe: | |||
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress. | |||
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo. | |||
** 0100000000000004 (sm): SVC access: added GetSystemInfo. | |||
A new folder "a" was added, in addition to the existing "nx" folder, containing a separate "bct" and "package1". Both of these seem encrypted/meant for the new "Mariko" hardware that support was added for. | |||
====Secure Monitor==== | |||
The [[Memory_layout|Memory layout]] was changed significantly: | The [[Memory_layout|Memory layout]] was changed significantly: | ||
* .text, .rodata, and .data are now separate sections, instead of being mapped RWX. | * .text, .rodata, and .data are now separate sections, mapped with correct permissions (RX, RO, RW, respectively), instead of being mapped RWX. | ||
* Physical layout in TZRAM changed significantly, with pk2ldr being in low TZRAM instead of high TZRAM. | * Physical layout in TZRAM changed significantly, with pk2ldr being in low TZRAM instead of high TZRAM, etc. | ||
In addition, there were changes to the SMC interface: | In addition, there were changes to the [[SMC]] interface: | ||
* smcLoadSecureExpModKey no longer | * smcGenerateSpecificAesKey was updated to support generating previous 4.x+ device key(s). | ||
* smcLoadRsaOaepKey | * smcLoadSecureExpModKey/smcLoadRsaOaepKey/smcDecryptRsaPrivateKey no longer exist. | ||
* smcLoadRsaOaepKey was replaced with smcEncryptRsaPrivateKeyForImport. | |||
* smcDecryptRsaPrivateKey was replaced with smcDecryptOrImportRsaPrivateKey. | |||
** All keys which were previously imported with specific keys now first call smcEncryptRsaPrivateKeyForImport with the appopriate enum member to get a sealed copy of the RSA key, then smcDecryptOrImportRsaPrivateKey to import/unseal the key when needed. | |||
* smcGetConfig was extended with two new config items: | * smcGetConfig was extended with two new config items: | ||
* | ** GetConfig(16), which seems to check whether the Switch is running on a Tegra 210: | ||
return (FUSE_RESERVED_ODM4 & 0x800) && FUSE_RESERVED_ODM0 == 0x8E61ECAE && FUSE_RESERVED_ODM1 == 0xF2BA3BB2 ? (FUSE_RESERVED_ODM2 & 0x1F) : 0 | return (FUSE_RESERVED_ODM4 & 0x800) && FUSE_RESERVED_ODM0 == 0x8E61ECAE && FUSE_RESERVED_ODM1 == 0xF2BA3BB2 ? (FUSE_RESERVED_ODM2 & 0x1F) : 0 | ||
* Getconfig(17) | ** Getconfig(17), which returns the Package2 hash if booting from recovery mode. | ||
<fill in the rest later> | <fill in the rest later> | ||
==Kernel== | ====Kernel==== | ||
* Kernel Address Space Layout Randomization was added. | * Kernel Address Space Layout Randomization was added. | ||
** Instead of using a hardcoded address for per-CPU region, they now use x18 to point to the per-CPU region. | |||
* When using most [[SMC]]s, IRQs are now disabled first then restored to original state afterwards. x18 is also reinitialized right after most SMCs (see above). | |||
* 5 new syscalls. | |||
** Syscalls 0x48+0x49 (svcAllocateUserHeapMemory+svcFreeUserHeapMemory) are used by [[AM_services|AM]]-sysmodule. | |||
*** This is used to allocate Application pool. | |||
** Syscall 0x4A (svcSetUserHeapMemoryAllocationMax) is used by [[Process_Manager_services|PM]]-sysmodule. | |||
*** This allows PM to set a limit on the number of bytes AM can allocate from Application pool. | |||
** Syscall 0x6F (svcGetMemoryInfo) is used by FS, SM, and PM. | |||
** Syscall 0x2E (svcGetNextThreadInfo) was added, but it only works on dev units. | |||
*** Allows fetching how many bytes free/occupied by the different pools. | |||
** svcControlCodeMemory was [[SVC#svcControlCodeMemory|updated]]. | |||
* NPDM irq_id's are no longer checked to be < 0x100, instead max-value is loaded from per-cpu state. | |||
* The order slabheaps are laid out in memory is now randomized. | |||
* There are now 4 memory pool partitions. | |||
** This fixes sysmodule takeover with GMMU hax. | |||
===[[Internet Browser]]=== | |||
OSS/WebKit was updated. | |||
In the [[NPDM]], besides the RSA region the only changes were the kernel-release-version descriptor + {new ACID flag is set}. | |||
In the "shareddata:/" title, the NROs are now compressed: "{name}.nro.lz4" instead of "{name}.nro". | |||
===[[qlaunch]]=== | |||
RomFS changes: | |||
* "/common/shader/VarietyOceanShader_Nx.arc.szs" updated | |||
* "/lyt/common.szs" updated | |||
* "/lyt/DummyGameA.szs" and "/lyt/DummyGame.szs" were removed. | |||
* "/lyt/Entrance.szs" updated | |||
* "/lyt/Eula.szs" added | |||
* "/lyt/Flaunch.szs" updated | |||
* "/lyt/Gift.szs" updated | |||
* "/lyt/Interrupt.szs" updated | |||
* "/lyt/Migration.szs" updated | |||
* "/lyt/Notification.szs" updated | |||
* "/lyt/Option.szs" | |||
* "/lyt/ResidentMenu.szs" | |||
* "/lyt/Set.szs" | |||
* "/message/" Everything under here was updated. | |||
* "/message/Ocean.msbp.szs" added | |||
* "/sound/qlaunch_action.bksnd" and "/sound/qlaunch.bfsar" were updated. | |||
* "/texture" Directory was added, which contains images for Nintendo Switch Parental Controls: | |||
** "IcoPctl.bntx" | |||
** "LogoMoon{region/language-text}.bntx", for every region/language. | |||
===System Config=== | |||
New fields were added to [[Settings_services#System_Config|System Config]]. | |||
==[[NPDM]]== | |||
New flags bit2/bit3 were added to the flags at ACID+0xC. | |||
==Keys== | ==Keys== | ||
| Line 61: | Line 251: | ||
System update report(s): | System update report(s): | ||
* [https://yls8.mtheall.com/ninupdates/reports.php?date=03-12-18_08-05-11&sys=hac] | * [https://yls8.mtheall.com/ninupdates/reports.php?date=03-12-18_08-05-11&sys=hac] | ||
{{NavboxVersions}} | |||
[[Category:System versions]] | |||