diff --git a/Firmware-20.md b/Firmware-20.md new file mode 100644 index 0000000..19a088d --- /dev/null +++ b/Firmware-20.md @@ -0,0 +1,322 @@ +# System Titles + +The following titles were updated: +Sysmodules: usb, htc.stub, boot2.ProdBoot, settings, Bus, bluetooth, bcat, friends, nifm, ptm, bsdsocket, hid, audio, LogManager.Prod, wlan, ldn, nvservices, pcv, capmtp, nvnflinger, pcie, account, ns, nfc, psc, capsrv, am, ssl, nim, btm, erpt, vi, pctl, npns, eupld, glue, eclct, es, fatal, creport, ro, sdb, grc, migration, jpegdec, safemode, olsc, ngct, jit, pgl, omm, eth, ngc. +SystemData (non-sysver): CertStore, ErrorMessage, MiiModel, BrowserDll, NgWord, SsidList, LocalNews, TimeZoneBinary, FontNintendoExtension, FontStandard, FontKorean, FontChineseTraditional, FontChineseSimple, FirmwareDebugSettings, BootImagePackage, BootImagePackageSafe, BootImagePackageExFat, FatalMessage, ControllerIcon, PlatformConfigIcosa, PlatformConfigCopper, PlatformConfigHoag, ControllerFirmware, NgWord2, BootImagePackageExFatSafe, PlatformConfigIcosaMariko, ContentActionTable, NgWordT, PlatformConfigAula, AulaDockFirmware, 0100000000000859, 010000000000085C. +Applets: qlaunch, auth, controller, dataErase, error, netConnect, playerSelect, LibAppletWeb, LibAppletShop, overlayDisp, photoViewer, LibAppletOff, LibAppletLns, LibAppletAuth, "starter" application, myPage, splay. +[NPDM](https://switchbrew.org/wiki/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, psc, ro, ... +The sysmodules which only have changes from updated SDK / logging-constants-update, are: + +bluetooth, bsdsocket, capmtp, nfc, jit, ... +RomFs changes: + +ErrorMessage: updated +BrowserDll: +"/buildinfo/buildinfo.dat" updated +"/lyt/": Various data updated. +"/nro/netfront/": Various data updated. +"/sound/cruiser.bfsar" updated +NgWord: "/version.dat" updated +[SystemVersion](https://switchbrew.org/wiki/System_Version_Title): All files updated. +LocalNews: "/image/LnMoonIntro/list.jpg" updated, "/image/LnMoonIntro/main.jpg" updated, "/message/CNzhT/" added +[FirmwareDebugSettings](https://switchbrew.org/wiki/System_Settings): All files updated. +ControllerIcon: "/lyt/ColorTable" updated +ControllerFirmware: "/FirmwareInfo.csv" updated, "/tera_fullkey_ota.bin" updated, "/tera_fullkey_ota_iap.bin" updated, "/tera_ota.bin" updated, "/tera_ota_iap.bin" updated +NgWord2: updated +RebootlessSystemUpdateVersion: All files updated. +qlaunch applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/qlaunch_action.bksnd" updated +"/sound/qlaunch.bfsar" updated +"/texture/LogoMoonCNzh.bntx" added +"/texture/LogoMoonEUde.bntx" updated +"/texture/LogoMoonEUen.bntx" removed +"/texture/LogoMoonEUes.bntx" removed +"/texture/LogoMoonEUfr.bntx" removed +"/texture/LogoMoonEUit.bntx" updated +"/texture/LogoMoonEUnl.bntx" updated +"/texture/LogoMoonEUpt.bntx" updated +"/texture/LogoMoonEUru.bntx" updated +"/texture/LogoMoonJPja.bntx" updated +"/texture/LogoMoonTWzh.bntx" added +"/texture/LogoMoonUSen.bntx" updated +"/texture/LogoMoonUSes.bntx" updated +"/texture/LogoMoonUSfr.bntx" updated +"/texture/LogoMoonUSpt.bntx" added +auth applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/auth_action.bksnd" updated +"/sound/auth.bfsar" updated +controller applet: +"/message/": Various data updated. +"/sound/controller_action.bksnd" updated +dataErase applet: +"/message/": Various data updated. +"/sound/dataErase_action.bksnd" updated +error applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/error_action.bksnd" updated +"/sound/error.bfsar" updated +"/texture/LogoMoonCNzh.bntx" added +"/texture/LogoMoonEUde.bntx" updated +"/texture/LogoMoonEUen.bntx" removed +"/texture/LogoMoonEUes.bntx" removed +"/texture/LogoMoonEUfr.bntx" removed +"/texture/LogoMoonEUit.bntx" updated +"/texture/LogoMoonEUnl.bntx" updated +"/texture/LogoMoonEUpt.bntx" updated +"/texture/LogoMoonEUru.bntx" updated +"/texture/LogoMoonJPja.bntx" updated +"/texture/LogoMoonTWzh.bntx" added +"/texture/LogoMoonUSen.bntx" updated +"/texture/LogoMoonUSes.bntx" updated +"/texture/LogoMoonUSfr.bntx" updated +"/texture/LogoMoonUSpt.bntx" added +netConnect applet: +"/message/": Various data updated. +"/sound/netConnect_action.bksnd" updated +playerSelect applet: +"/message/": Various data updated. +"/sound/playerSelect_action.bksnd" updated +"/sound/playerSelect.bfsar" updated +[LibAppletWeb/LibAppletShop/LibAppletOff/LibAppletLns/LibAppletAuth](https://switchbrew.org/wiki/Internet_Browser): All files updated. +overlayDisp applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/infoLHub.raw" updated +"/sound/infoPtcl.raw" updated +"/sound/infoTimerOver.raw" updated +"/sound/infoTimer.raw" updated +"/sound/overlayDisp_action.bksnd" updated +photoViewer applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/photoViewer_action.bksnd" updated +"starter" application: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/starter_action.bksnd" updated +myPage applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/myPage_action.bksnd" updated +"/sound/myPage.bfsar" updated +splay applet: +"/lyt/": Various data updated. +"/message/": Various data updated. +"/sound/splay_action.bksnd" updated +"/sound/splay.bfsar" updated + +# IPC Interface Changes + +Unknown Interface prev-version: 0x710008741C +Unknown Interface cur-version: 0x710008741C +Interface Changed: nn::hid::IHidDebugServer +Added: 214 - inbytes: 0x8, outbytes: 0x1D +Interface Changed: nn::hid::IHidSystemServer +Added: 1158 - inbytes: 0x1, outbytes: 0x0 +Added: 1159 - inbytes: 0x0, outbytes: 0x0 +Interface Changed: nn::wlan::detail::IWirelessCommunicationService +Changed: 120 - outbytes: 0x28 -> 0x2C (final state: inbytes: 0x0, outbytes: 0x2C) +Unknown Interface prev-version: 0x71000055E0 +Unknown Interface cur-version: 0x71000055E0 +Unknown Interface prev-version: 0x7100086504 [ID = 0x0919ff75] +Unknown Interface prev-version: 0x7100085DD4 [ID = 0x38f0bb3d] +Unknown Interface prev-version: 0x71000846F0 [ID = 0x107aa108] +Unknown Interface prev-version: 0x7100085B3C [ID = 0x3af03446] +Unknown Interface prev-version: 0x7100086228 [ID = 0x36f3a242] +Unknown Interface cur-version: 0x7100086504 [ID = 0x0919ff75] +Unknown Interface cur-version: 0x7100085DD4 [ID = 0x38f0bb3d] +Unknown Interface cur-version: 0x71000846F0 [ID = 0x107aa108] +Unknown Interface cur-version: 0x7100085B3C [ID = 0x3af03446] +Unknown Interface cur-version: 0x7100086228 [ID = 0x36f3a242] +Unknown Interface prev-version: 0x71001A4F60 [ID = 0x4e930893] +Unknown Interface prev-version: 0x7100264B34 [ID = 0x3af03446] +Unknown Interface prev-version: 0x7100264DCC [ID = 0x38f0bb3d] +Unknown Interface prev-version: 0x7100265220 [ID = 0x36f3a242] +Unknown Interface prev-version: 0x71002654FC [ID = 0x0919ff75] +Unknown Interface prev-version: 0x71001A495C [ID = 0x04dea048] +Unknown Interface prev-version: 0x71002636E8 [ID = 0x107aa108] +Unknown Interface cur-version: 0x7100266784 [ID = 0x3af03446] +Unknown Interface cur-version: 0x7100265338 [ID = 0x107aa108] +Unknown Interface cur-version: 0x71001A5D44 [ID = 0x04dea048] +Unknown Interface cur-version: 0x7100266A1C [ID = 0x38f0bb3d] +Unknown Interface cur-version: 0x710026714C [ID = 0x0919ff75] +Unknown Interface cur-version: 0x71001A6348 [ID = 0x4e930893] +Unknown Interface cur-version: 0x7100266E70 [ID = 0x36f3a242] +Interface Changed: nn::account::IAccountServiceForAdministrator +Changed: 292 - outinterfaces: ['0x7100264B34 [ID = 0x3af03446]'] -> ['0x7100266784 [ID = 0x3af03446]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100266784 [ID = 0x3af03446]']) +Changed: 293 - outinterfaces: ['0x7100264DCC [ID = 0x38f0bb3d]'] -> ['0x7100266A1C [ID = 0x38f0bb3d]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100266A1C [ID = 0x38f0bb3d]']) +Changed: 350 - outinterfaces: ['0x7100265220 [ID = 0x36f3a242]'] -> ['0x7100266E70 [ID = 0x36f3a242]'] (final state: inbytes: 0x1, outbytes: 0x0, outinterfaces: ['0x7100266E70 [ID = 0x36f3a242]']) +Changed: 352 - outinterfaces: ['0x71002654FC [ID = 0x0919ff75]'] -> ['0x710026714C [ID = 0x0919ff75]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x710026714C [ID = 0x0919ff75]']) +Interface Changed: nn::account::baas::IAdministrator +Changed: 181 - outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'] -> ['0x7100265338 [ID = 0x107aa108]'] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x7100265338 [ID = 0x107aa108]']) +Changed: 182 - outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'] -> ['0x7100265338 [ID = 0x107aa108]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100265338 [ID = 0x107aa108]']) +Interface Changed: nn::account::baas::IManagerForSystemService +Changed: 181 - outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'] -> ['0x7100265338 [ID = 0x107aa108]'] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x7100265338 [ID = 0x107aa108]']) +Changed: 182 - outinterfaces: ['0x71002636E8 [ID = 0x107aa108]'] -> ['0x7100265338 [ID = 0x107aa108]'] (final state: inbytes: 0x10, outbytes: 0x0, outinterfaces: ['0x7100265338 [ID = 0x107aa108]']) +Interface Changed: nn::ns::detail::IApplicationManagerInterface +Added: 933 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 +Added: 2183 - inbytes: 0x8, outbytes: 0x0 +Changed: 4026 - outinterfaces: ['0x71001A495C [ID = 0x04dea048]'] -> ['0x71001A5D44 [ID = 0x04dea048]'] (final state: inbytes: 0x8, outbytes: 0x0, outinterfaces: ['0x71001A5D44 [ID = 0x04dea048]']) +Changed: 4027 - outinterfaces: ['0x71001A4F60 [ID = 0x4e930893]'] -> ['0x71001A6348 [ID = 0x4e930893]'] (final state: inbytes: 0x8, outbytes: 0x0, outinterfaces: ['0x71001A6348 [ID = 0x4e930893]']) +Interface Changed: nn::ns::detail::IContentManagementInterface +Added: 58 - inbytes: 0x0, outbytes: 0x0 +Added: 71 - inbytes: 0x1, outbytes: 0x10 +Interface Changed: nn::ns::detail::IReadOnlyApplicationControlDataInterface +Added: 17 - buffers: [0x6], inbytes: 0x90, outbytes: 0x4 +Unknown Interface prev-version: 0x71000CE314 [ID = 0x359536d2] +Unknown Interface cur-version: 0x71000CE4B4 [ID = 0x359536d2] +Interface Changed: nn::am::service::IAllSystemAppletProxiesService +Changed: 460 - outinterfaces: ['0x71000CE314 [ID = 0x359536d2]'] -> ['0x71000CE4B4 [ID = 0x359536d2]'] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x71000CE4B4 [ID = 0x359536d2]']) +Interface Changed: nn::nim::detail::INetworkInstallManager +Added: 173 - buffer_entry_sizes: [0x10], buffers: [0x5], inbytes: 0x0, outbytes: 0x0 +Unknown Interface prev-version: 0x7100097948 [ID = 0xfe214da9] +Unknown Interface prev-version: 0x7100096B3C [ID = 0xdf171f31] +Unknown Interface cur-version: 0x7100097948 [ID = 0xfe214da9] +Unknown Interface cur-version: 0x7100096B3C [ID = 0xdf171f31] +Unknown Interface prev-version: 0x710005ECA0 [ID = 0xef2a5618] +Unknown Interface cur-version: 0x710005ECA0 [ID = 0xef2a5618] +Unknown Interface prev-version: 0x710014064C [ID = 0x29d8801c] +Unknown Interface prev-version: 0x7100140AD0 [ID = 0xeb5e4ee2] +Unknown Interface prev-version: 0x710013C47C [ID = 0x6e021695] +Unknown Interface prev-version: 0x7100141A58 [ID = 0x3c7c9db7] +Unknown Interface prev-version: 0x710013E13C [ID = 0x8cf617a1] +Unknown Interface cur-version: 0x710013C728 [ID = 0x6e021695] +Unknown Interface cur-version: 0x71001408F8 [ID = 0x29d8801c] +Unknown Interface cur-version: 0x7100141D04 [ID = 0x3c7c9db7] +Unknown Interface cur-version: 0x7100140D7C [ID = 0xeb5e4ee2] +Unknown Interface cur-version: 0x710013E3E8 [ID = 0x8cf617a1] +Interface Changed: nn::migration::user::IService +Changed: 2100 - outinterfaces: ['0x710013C47C [ID = 0x6e021695]'] -> ['0x710013C728 [ID = 0x6e021695]'] (final state: buffer_entry_sizes: [0x100], buffers: [0x19], inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x710013C728 [ID = 0x6e021695]']) +Changed: 2110 - outinterfaces: ['0x710013C47C [ID = 0x6e021695]'] -> ['0x710013C728 [ID = 0x6e021695]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x710013C728 [ID = 0x6e021695]']) +Changed: 2200 - outinterfaces: ['0x710013E13C [ID = 0x8cf617a1]'] -> ['0x710013E3E8 [ID = 0x8cf617a1]'] (final state: buffer_entry_sizes: [0x100], buffers: [0x19], inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x710013E3E8 [ID = 0x8cf617a1]']) +Changed: 2210 - outinterfaces: ['0x710013E13C [ID = 0x8cf617a1]'] -> ['0x710013E3E8 [ID = 0x8cf617a1]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x710013E3E8 [ID = 0x8cf617a1]']) +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: 2300 - outinterfaces: ['0x7100140AD0 [ID = 0xeb5e4ee2]'] -> ['0x7100140D7C [ID = 0xeb5e4ee2]'] (final state: inbytes: 0x18, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100140D7C [ID = 0xeb5e4ee2]']) +Changed: 2310 - outinterfaces: ['0x7100140AD0 [ID = 0xeb5e4ee2]'] -> ['0x7100140D7C [ID = 0xeb5e4ee2]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100140D7C [ID = 0xeb5e4ee2]']) +Changed: 2400 - outinterfaces: ['0x7100141A58 [ID = 0x3c7c9db7]'] -> ['0x7100141D04 [ID = 0x3c7c9db7]'] (final state: inbytes: 0x10, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100141D04 [ID = 0x3c7c9db7]']) +Changed: 2420 - outinterfaces: ['0x7100141A58 [ID = 0x3c7c9db7]'] -> ['0x7100141D04 [ID = 0x3c7c9db7]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100141D04 [ID = 0x3c7c9db7]']) +Unknown Interface prev-version: 0x7100133FE0 [ID = 0x17291af3] +Unknown Interface prev-version: 0x71001357F4 [ID = 0xa036ce80] +Unknown Interface cur-version: 0x710013A720 [ID = 0xa036ce80] +Unknown Interface cur-version: 0x7100138F0C [ID = 0x17291af3] +Interface Changed: nn::olsc::srv::IDaemonController +Changed: 13 - outinterfaces: ['0x71001357F4 [ID = 0xa036ce80]', None] -> ['0x710013A720 [ID = 0xa036ce80]', None] (final state: inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x710013A720 [ID = 0xa036ce80]', None]) +Interface Changed: nn::olsc::srv::IOlscServiceForSystemService +Changed: 1000 - outinterfaces: ['0x7100133FE0 [ID = 0x17291af3]'] -> ['0x7100138F0C [ID = 0x17291af3]'] (final state: buffer_entry_sizes: [0x10], buffers: [0x5], inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x7100138F0C [ID = 0x17291af3]']) +Interface Changed: nn::olsc::srv::IRemoteStorageController +Changed: 800 - outinterfaces: ['0x7100133FE0 [ID = 0x17291af3]'] -> ['0x7100138F0C [ID = 0x17291af3]'] (final state: buffer_entry_sizes: [0x8], buffers: [0x5], inbytes: 0x0, outbytes: 0x0, outinterfaces: ['0x7100138F0C [ID = 0x17291af3]']) +Interface Changed: nn::olsc::srv::ITransferTaskListController +Added: 26 - inbytes: 0x0, outbytes: 0x0, outinterfaces: ['nn::olsc::srv::IRemoteStorageController'] +Added: 27 - inbytes: 0x0, outbytes: 0x0, outinterfaces: ['nn::olsc::srv::IRemoteStorageController'] +Added: 28 - inbytes: 0x10, outbytes: 0x1 +Added: 29 - inbytes: 0x0, outbytes: 0x1 +Added: 30 - inbytes: 0x1, outbytes: 0x38 +Interface Changed: nn::omm::detail::IOperationModeManager +Added: 50 - inbytes: 0x0, outbytes: 0x8 + +# BootImagePackages + +RomFs changes: + +"/nx/package2" updated +[INI1](https://switchbrew.org/wiki/Package2) 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](https://switchbrew.org/wiki/BCAT_services) + +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. + +# [nifm](https://switchbrew.org/wiki/Network_Interface_services) + +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](https://switchbrew.org/wiki/WLAN_services) cmd was updated. + +# [audio](https://switchbrew.org/wiki/Audio_services) + +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](https://switchbrew.org/wiki/LDN_services) + +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](https://switchbrew.org/wiki/PSC_services) + +The only change was [updating](https://switchbrew.org/wiki/PSC_services) the cmd impl for srepo NotifyApplicationRightsInfo, with additional bits handled for the input u32. + +# [ro](https://switchbrew.org/wiki/RO_services) + +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](https://switchbrew.org/wiki/JIT_services) + +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](https://switchbrew.org/wiki/NRR)) was swapped. \ No newline at end of file