7.0.0: Difference between revisions
→FIRM Sysmodules: the more you know |
|||
(7 intermediate revisions by 2 users not shown) | |||
Line 14: | Line 14: | ||
All files under RomFS were updated. | All files under RomFS were updated. | ||
====Package1ldr==== | |||
Since [[6.2.0]], the following was changed (besides the usual constant changes for new fuse burnt, incremented version, etc): | |||
* A function that returns a hardware type now returns 0xF whenever it would previously have returned a non-zero value. | |||
** Code validating hardware type has been simplified accordingly. | |||
* The function validating the bootloader version by parsing the BCT no longer hardcodes the BCT address as 0x40000100, and instead adds a relative offset to a BCT address specified via argument. | |||
* The [[TSEC Firmware#SecureBoot|SecureBoot TSEC firmware]] was updated to prevent SMMU virtualization attacks. | |||
====NX_BOOTLOADER==== | ====NX_BOOTLOADER==== | ||
Line 38: | Line 43: | ||
====FIRM Sysmodules==== | ====FIRM Sysmodules==== | ||
All FIRM sysmodules were updated. Specific diffs for a few sysmodules are below: | All FIRM sysmodules were updated. The only FIRM sysmodules with IPC changes were [[Filesystem_services|FS]], [[Process_Manager_services|pm]], and [[NCM_services|NCM]]. Specific diffs for a few sysmodules are below: | ||
=====[[Process Manager services|PM]]===== | =====[[Process Manager services|PM]]===== | ||
Resource limit initialization was changed: | Resource limit initialization was changed: | ||
* PM now | * PM now dynamically calculates the number of extra threads available in the kernel's slab heap compared to the amount it is expecting. | ||
** A [[Process Manager services# | ** A [[Process Manager services#BoostApplicationThreadResourceLimit|new command]] was added to pm:shell to make these extra threads available to applications, on retail this doubles the number of threads creatable to 0xC0. | ||
=====[[Filesystem services|FS]]===== | |||
* Device Address Space initialization for nn::sdmmc is now handled differently. | |||
** Previously, the shared SDMMC device address space handle was attached to all devices during global init prior to service registration. | |||
** Now, the handle is attached to specific devices during their relevant DeviceAccessor::Initialize() call, which only happens when the relevant device is ready for access. | |||
* (Many other differences not yet reversed/noted here.) | |||
=====[[NCM services|NCM]]===== | |||
* The ExpHeap used for generic and fs allocations was reduced from 3 MB to 1 MB in size. | |||
==System Titles== | ==System Titles== | ||
Line 52: | Line 66: | ||
* CAction title: new directory "/table" was added. The new file "/table/431FA316E20941779452DD0EBFA05E0E/ApplicationId" contains string "0x01003a400c3da000" - "YouTube". | * CAction title: new directory "/table" was added. The new file "/table/431FA316E20941779452DD0EBFA05E0E/ApplicationId" contains string "0x01003a400c3da000" - "YouTube". | ||
* Web-applets were updated. "/whitelist/WhitelistEc.txt" in LibAppletShop was updated: <nowiki>"^https://([0-9A-Za-z\-]+\.)*eshop\.nintendo\.net($|/)" was changed to "^https://([0-9A-Za-z\-]+\.)*nintendo\.net(/|$)"</nowiki>. | * Web-applets were updated. "/whitelist/WhitelistEc.txt" in LibAppletShop was updated: <nowiki>"^https://([0-9A-Za-z\-]+\.)*eshop\.nintendo\.net($|/)" was changed to "^https://([0-9A-Za-z\-]+\.)*nintendo\.net(/|$)"</nowiki>. | ||
* ControllerFirmware: "/ukyosakyo_ep2_ota.bin" and | * ControllerFirmware: "/ukyosakyo_ep2_ota.bin" and FirmwareInfo.csv were updated (main firmware for JoyLeft/JoyRight). | ||
* Titles BrowserDll and AvatarImage were updated. | * Titles BrowserDll and AvatarImage were updated. | ||
* Both bad-word-list titles were updated. | * Both bad-word-list titles were updated. | ||
Line 70: | Line 84: | ||
* glue-sysmodule: now has access to service srepo:u. | * glue-sysmodule: now has access to service srepo:u. | ||
* Various applets now have access to service "banana" (which still doesn't exist on retail). | * Various applets now have access to service "banana" (which still doesn't exist on retail). | ||
=== [[USB_services|usb-sysmodule]] === | |||
* New services / commands were added. | |||
* The codebin now has .json data embedded in the codebin for [[USB_services#HidGamepad|HidGamepad]] USB-devices. | |||
=== [[Account_services|account-sysmodule]] === | |||
* Various .text changes. Besides those: | |||
* The "v4-<hexstr>" URLs were changed to "v5" URLs. | |||
* User-agent was changed to "libcurl (nnDauth; <hex>; SDK 7.3.0.0)". | |||
<fill this in (manually) later> | <fill this in (manually) later> |