20.1.0: Difference between revisions
Add ro diff |
|||
(17 intermediate revisions by the same user not shown) | |||
Line 21: | Line 21: | ||
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): | 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, jit, ... | * bcat, nifm, audio, ldn, account, psc, am, vi, pctl, es, ro, migration, ... | ||
The sysmodules which only have changes from updated SDK / logging-constants-update, are: | |||
* bluetooth, bsdsocket, capmtp, nfc, btm, glue, grc, creport, sdb, jit, safemode, ... | |||
RomFs changes: | RomFs changes: | ||
Line 136: | Line 139: | ||
* Unknown Interface prev-version: 0x71000055E0 | * Unknown Interface prev-version: 0x71000055E0 | ||
* Unknown Interface cur-version: 0x71000055E0 | * Unknown Interface cur-version: 0x71000055E0 | ||
* Interface Changed: nn::ns::detail::IApplicationManagerInterface | * Interface Changed: nn::ns::detail::IApplicationManagerInterface | ||
** Added: 933 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 | ** Added: 933 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 | ||
** Added: 2183 - inbytes: 0x8, outbytes: 0x0 | ** Added: 2183 - inbytes: 0x8, outbytes: 0x0 | ||
* Interface Changed: nn::ns::detail::IContentManagementInterface | * Interface Changed: nn::ns::detail::IContentManagementInterface | ||
** Added: 58 - inbytes: 0x0, outbytes: 0x0 | ** Added: 58 - inbytes: 0x0, outbytes: 0x0 | ||
Line 181: | Line 147: | ||
* Interface Changed: nn::ns::detail::IReadOnlyApplicationControlDataInterface | * Interface Changed: nn::ns::detail::IReadOnlyApplicationControlDataInterface | ||
** Added: 17 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 | ** Added: 17 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 | ||
* Interface Changed: nn::nim::detail::INetworkInstallManager | * Interface Changed: nn::nim::detail::INetworkInstallManager | ||
** Added: 173 - buffer_entry_sizes: [0x10], buffers: [0x5], inbytes: 0x0, outbytes: 0x0 | ** Added: 173 - buffer_entry_sizes: [0x10], buffers: [0x5], inbytes: 0x0, outbytes: 0x0 | ||
* Unknown Interface prev-version: 0x7100097948 [ID = 0xfe214da9] | * Unknown Interface prev-version: 0x7100097948 [ID = 0xfe214da9] | ||
* Unknown Interface cur-version: 0x7100097948 [ID = 0xfe214da9] | * Unknown Interface cur-version: 0x7100097948 [ID = 0xfe214da9] | ||
* Unknown Interface prev-version: 0x710005ECA0 [ID = 0xef2a5618] | * Unknown Interface prev-version: 0x710005ECA0 [ID = 0xef2a5618] | ||
* Unknown Interface cur-version: 0x710005ECA0 [ID = 0xef2a5618] | * Unknown Interface cur-version: 0x710005ECA0 [ID = 0xef2a5618] | ||
* Unknown Interface prev-version: 0x710014064C [ID = 0x29d8801c] | * Unknown Interface prev-version: 0x710014064C [ID = 0x29d8801c] | ||
* Unknown Interface cur-version: 0x71001408F8 [ID = 0x29d8801c] | * Unknown Interface cur-version: 0x71001408F8 [ID = 0x29d8801c] | ||
* Interface Changed: nn::migration::user::IService | * Interface Changed: nn::migration::user::IService | ||
** Changed: 2250 - outinterfaces: ['0x710014064C [ID = 0x29d8801c]'] -> ['0x71001408F8 [ID = 0x29d8801c]'] (final state: inbytes: 0x18, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x71001408F8 [ID = 0x29d8801c]']) | ** Changed: 2250 - outinterfaces: ['0x710014064C [ID = 0x29d8801c]'] -> ['0x71001408F8 [ID = 0x29d8801c]'] (final state: inbytes: 0x18, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x71001408F8 [ID = 0x29d8801c]']) | ||
** Changed: 2260 - outinterfaces: ['0x710014064C [ID = 0x29d8801c]'] -> ['0x71001408F8 [ID = 0x29d8801c]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x71001408F8 [ID = 0x29d8801c]']) | ** Changed: 2260 - outinterfaces: ['0x710014064C [ID = 0x29d8801c]'] -> ['0x71001408F8 [ID = 0x29d8801c]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x71001408F8 [ID = 0x29d8801c]']) | ||
* Interface Changed: nn::olsc::srv::ITransferTaskListController | * Interface Changed: nn::olsc::srv::ITransferTaskListController | ||
** Added: 26 - inbytes: 0x0, outbytes: 0x0, outinterfaces: ['nn::olsc::srv::IRemoteStorageController'] | ** Added: 26 - inbytes: 0x0, outbytes: 0x0, outinterfaces: ['nn::olsc::srv::IRemoteStorageController'] | ||
Line 248: | Line 182: | ||
* KInterruptController::SaveLocalState/RestoreLocalState now saves and restores spendsgir | * KInterruptController::SaveLocalState/RestoreLocalState now saves and restores spendsgir | ||
=== [[ | === [[BCAT_services|bcat]] === | ||
* Updated L_8bc30, prev ver @ L_8bc30. | |||
* The | ** 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. | |||
** The code "if ({any byte at inx1+0x8 size 0x6-bytes} != 0xFF) return L_76fe0(...);" from prev ver was removed. | |||
* 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]] === | === [[RO_services|ro]] === | ||
Line 256: | Line 252: | ||
** These are initialized for both JitPlugin and User servers to point to an array of size 1, containing only Platform 0 (NX). | ** 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. | * 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. | ||
=== [[Migration_services|migration]] === | |||
Besides SDK related changes: | |||
* Updated L_130a9c, prev ver @ L_13085c. | |||
** This is the async task func started by IDownloader cmd500. | |||
** Added code at 0x130b28 for calling L_1a6bf0. On fail, calls L_2e4 and L_30e24, then returns ret. | |||
* Updated L_131bf8, prev ver @ L_131984. | |||
** This is the actual task impl func, for the async task started by IDownloader cmd900. | |||
** Added code at 0x131c64 for calling L_1a6bf0. On fail, calls L_2e4 and L_30e24, then returns ret. | |||
* Updated L_146590, prev ver @ L_1462f0. | |||
** The code at 0x1465f4 now checks for inw0>0x1400ff, instead of inw0>0x100000. | |||
* New func L_1a6bf0, only called by the above. | |||
=== [[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== |