20.1.0: Difference between revisions
No edit summary |
No edit summary |
||
(16 intermediate revisions by 2 users not shown) | |||
Line 19: | Line 19: | ||
[[NPDM]] changes (besides usual version-bump): none. | [[NPDM]] changes (besides usual version-bump): none. | ||
Sysmodules were rebuilt with latest SDK, unless noted otherwise the only .text changes are from sdkver-update / logging-constants-update. The sysmodules with actual changes are (besides ones with IPC changes): | |||
* bcat, nifm, audio, ldn, account, psc, am, vi, ro, ... | |||
The sysmodules which only have changes from updated SDK / logging-constants-update, are: | |||
* bluetooth, bsdsocket, capmtp, nfc, btm, jit, ... | |||
RomFs changes: | RomFs changes: | ||
Line 233: | Line 239: | ||
RomFs changes: | RomFs changes: | ||
* "/nx/package2" updated | * "/nx/package2" updated | ||
[[Package2|INI1]] changes: | |||
* BootImagePackage/BootImagePackageExFat: | |||
** All FIRM Sysmodules were just re-built, resulting in updated GNU build-id. The *only* changes besides this are: | |||
*** Loader: Anti-downgrade list is updated. | |||
*** FS: UpdateResult's logging constants/hashes were updated. | |||
==== Kernel ==== | |||
* cpu::DoCoreInterruptBarrier now uses a KLightLock instead of a KSpinLock. | |||
* Sleep entry now waits 1920 ticks after synchronizing cores and before saving the interrupt manager | |||
* KInterruptController::SaveLocalState/RestoreLocalState now saves and restores spendsgir | |||
=== [[BCAT_services|bcat]] === | |||
* Updated L_8bc30, prev ver @ L_8bc30. | |||
** Prior to the last "if (inx1)" check, this now calls L_93164, with the required init before that if needed. | |||
* Updated L_92fe4, prev ver @ L_92f84. | |||
** This now returns 1 for success, 0 for failure (previously there was no retval). | |||
* Updated L_93164, prev ver @ L_930dc. | |||
** When inx1 doesn't match any of the state fields, it now skips to calling a func and returning. Previously when the input was invalid, it would use -1 as an arrayindex. | |||
* Updated L_9b640, prev ver @ L_9b5c0. | |||
** Code was moved around, etc. | |||
* Updated L_9bc40, prev ver @ L_9bbc0. | |||
** Minor changes? | |||
* Updated L_a3d00, prev ver @ L_a3c70. | |||
** When handling value 0x12C87A, w2 is now set to 0xE10 (3600) instead of 0x12C (300). | |||
* Updated L_f1d90, prev ver @ L_f1d00. | |||
** This is error-handling/conversion related. | |||
=== [[Network_Interface_services|nifm]] === | |||
* Updated L_83c80, prev ver @ L_83c80. | |||
** Code was added starting at 0x84b64. | |||
* Updated L_a11d8, prev ver @ L_a10d8. | |||
** Error handling was updated. | |||
* Updated L_a176c, prev ver @ L_a1640. | |||
** An additional state field is now cleared. | |||
** Error handling was updated. | |||
* Updated L_a1b20, prev ver @ L_a1978. | |||
** An additional state field is now cleared. | |||
* Updated L_a1c34, prev ver @ L_a1a1c. | |||
** An additional state field is now cleared. | |||
** Error handling was updated. | |||
* Updated L_c0aa0, prev ver @ L_c0820. | |||
** The call to nn::os::WaitSystemEvent was replaced with a call to nn::os::TimedWaitSystemEvent, with L_c0e70 being called if that returns false. | |||
* The IPC func for the updated [[WLAN_services|wlan]] cmd was updated. | |||
=== [[Audio_services|audio]] === | |||
Besides SDK (?) related changes: | |||
* Updated L_26190, prev ver @ L_26130. | |||
* Updated (changes seem to be minor (?)): | |||
** L_268c0 prev ver @ L_26840 | |||
** L_26970 prev ver @ L_268d4 | |||
** L_26b38 prev ver @ L_26a6c | |||
** L_27230 prev ver @ L_27130 | |||
** L_27618 prev ver @ L_274f8 | |||
** L_277a4 prev ver @ L_27654 | |||
=== [[LDN_services|ldn]] === | |||
Besides SDK related changes: | |||
* Updated L_57000, prev ver @ L_56ffc. | |||
* Updated L_767f0, prev ver @ L_76690. | |||
* Updated L_7e880, prev ver @ L_7e770. | |||
** The call to nn::os::WaitSystemEvent was replaced with a call to nn::os::TimedWaitSystemEvent, with L_7ec60 being called if that returns false. | |||
* Updated L_969f0, prev ver @ L_968d0. | |||
** The func for "nn.lp2p.SendThread" branches to this func. | |||
* The following had error handling updated: | |||
** L_9beb4 prev ver @ L_9bd74 | |||
** L_9c614 prev ver @ L_9c4b4 | |||
** L_9c820 prev ver @ L_9c69c | |||
=== [[PSC_services|psc]] === | |||
The only change was [[PSC_services|updating]] the cmd impl for srepo NotifyApplicationRightsInfo, with additional bits handled for the input u32. | |||
=== [[Display_services|vi]] === | |||
All updated functionality is related to updating [[Display_services|caps:sc RequestTakingScreenShotEx1]]. | |||
=== [[RO_services|ro]] === | |||
* RoServer object now has two new fields, "m_SupportedPlatforms", "m_NumSupportedPlatforms". | |||
** These are initialized for both JitPlugin and User servers to point to an array of size 1, containing only Platform 0 (NX). | |||
* During NRR validation, the NRR platform byte (NRR + 0x6) is now checked to be contained within the server's supported platforms array before header is copied onto stack, if it is not then error 0xC16 is returned. | |||
=== [[JIT_services|jit]] === | |||
The only updated func was L_177b0 (this is the SDK func called by nn::ro::RegisterModuleInfo): | |||
* The order of the validation after magicnum-check ([[NRR]]) was swapped. | |||
==See Also== | ==See Also== |