20.2.0: Difference between revisions

From Nintendo Switch Brew
Jump to navigation Jump to search
Line 92: Line 92:
** Called by L_5d2a8
** Called by L_5d2a8
* Updated L_70d90, prev ver @ L_70c34.
* Updated L_70d90, prev ver @ L_70c34.
=== [[SSL_services|ssl]] ===
* The only change was updating L_11ab20, prev ver @ L_11ab20.
** During the loop it would originally return 1 when the func call is successful. Now when that's successful, L_4cb20 is now called, with 1 being returned when ret==1.
** Otherwise, it continues the loop.


=== [[GRC_services|grc]] ===
=== [[GRC_services|grc]] ===

Revision as of 19:10, 16 July 2025

The Switch 20.2.0 system update was released on July 15, 2025 (UTC). This Switch update was released for the following regions: ALL.

Security flaws fixed: <fill this in manually later, see the updatedetails page from the ninupdates-report page(s) once available for now>.

Change-log

Official ALL change-log:

  • Fixed an issue where Parental Control settings were not transferred from Nintendo Switch to Nintendo Switch 2 in certain circumstances during a system transfer.
  • General system stability improvements to enhance the user's experience.

System Titles

  • The following titles were updated:
    • Sysmodules: wlan, ldn, account, ns, am, ssl, nim, npns, sdb, grc, migration, olsc.
    • SystemData (non-sysver): BrowserDll, 0100000000000859.
    • Applets: qlaunch, auth, error, netConnect, playerSelect, LibAppletWeb, LibAppletShop, overlayDisp, LibAppletOff, LibAppletLns, LibAppletAuth, "starter" application, splay.

NPDM changes (besides usual version-bump): none.

RomFs changes:

  • BrowserDll:
    • "/buildinfo/buildinfo.dat" updated
    • "/nro/netfront/": Various data updated.
  • SystemVersion: All files updated.
  • qlaunch applet:
    • "/icon/NaIcon_ShareFrom_ForDemo.jpg" removed
    • "/icon/NaIcon_ShareFrom_ForDemo.png" removed
    • "/icon/NaIcon_ShareTo_ForDemo.jpg" removed
    • "/icon/NaIcon_ShareTo_ForDemo.png" removed
    • "/message/": Various data updated.
  • auth applet: "/message/CNzh/auth.msbt.szs" updated, "/message/CNzh/common.msbt.szs" updated, "/message/TWzh/auth.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated
  • error applet: "/message/CNzh/common.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated
  • netConnect applet: "/message/CNzh/common.msbt.szs" updated, "/message/CNzh/netConnect.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated, "/message/TWzh/netConnect.msbt.szs" updated
  • playerSelect applet: "/icon/" added, "/message/CNzh/common.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated
  • LibAppletWeb/LibAppletShop/LibAppletOff/LibAppletLns/LibAppletAuth: All files updated.
  • overlayDisp applet: "/message/CNzh/common.msbt.szs" updated, "/message/CNzh/overlayDisp.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated, "/message/TWzh/overlayDisp.msbt.szs" updated
  • "starter" application:
    • "/message/": Various data updated.
  • splay applet: "/message/CNzh/common.msbt.szs" updated, "/message/TWzh/common.msbt.szs" updated

IPC Interface Changes

  • Interface Changed: nn::am::service::IApplicationFunctions
    • Added: 330 - inbytes: 0x0, outbytes: 0x1
  • Unknown Interface prev-version: 0x7100097948 [ID = 0xfe214da9]
  • Unknown Interface cur-version: 0x7100097948 [ID = 0xfe214da9]
  • Interface Changed: nn::grcsrv::IContinuousRecorder
    • Changed: 5 - inbytes: 0x4 -> 0x20 (final state: inbytes: 0x20, outbytes: 0x0)
  • Unknown Interface prev-version: 0x710005ECA0 [ID = 0xef2a5618]
  • Unknown Interface cur-version: 0x710005EC90 [ID = 0xef2a5618]
  • Interface Changed: nn::pdm::detail::INotifyService
    • Changed: 100 - outinterfaces: ['0x710005ECA0 [ID = 0xef2a5618]'] -> ['0x710005EC90 [ID = 0xef2a5618]'] (final state: inbytes: 0x20, outbytes: 0x0, outinterfaces: ['0x710005EC90 [ID = 0xef2a5618]'])
    • Changed: 101 - outinterfaces: ['0x710005ECA0 [ID = 0xef2a5618]'] -> ['0x710005EC90 [ID = 0xef2a5618]'] (final state: inbytes: 0x20, outbytes: 0x0, outinterfaces: ['0x710005EC90 [ID = 0xef2a5618]'])
  • Unknown Interface prev-version: 0x7100140A48 [ID = 0x29d8801c]
  • Unknown Interface cur-version: 0x7100140F78 [ID = 0x29d8801c]
  • Interface Changed: nn::migration::user::IService
    • Changed: 2250 - outinterfaces: ['0x7100140A48 [ID = 0x29d8801c]'] -> ['0x7100140F78 [ID = 0x29d8801c]'] (final state: inbytes: 0x18, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100140F78 [ID = 0x29d8801c]'])
    • Changed: 2260 - outinterfaces: ['0x7100140A48 [ID = 0x29d8801c]'] -> ['0x7100140F78 [ID = 0x29d8801c]'] (final state: inbytes: 0x4, inhandles: [1], outbytes: 0x0, outinterfaces: ['0x7100140F78 [ID = 0x29d8801c]'])
  • Interface Changed: nn::olsc::srv::IOlscServiceForSystemService
    • Added: 914 - inbytes: 0x10, outbytes: 0x8
  • Interface Changed: nn::olsc::srv::IRemoteStorageController
    • Added: 28 - inbytes: 0x8, outbytes: 0x10
    • Added: 901 - inbytes: 0x8, outbytes: 0x0

ldn

  • Updated L_2c670, prev ver @ L_2c670.
    • This is the func which initializes the service objects.
    • More fields are cleared/initialized, etc.
    • InitializePortImpl for ldn:m had max_sessions changed from 5 to 6.
  • Updated L_2cdec, prev ver @ L_2cdcc. Updated L_2d0bc, prev ver @ L_2d074.
    • These now support using two additional entry slots.
  • Updated L_2d520, prev ver @ L_2d4ac.
    • At the end two additional decref vfunc calls are done with two objects, if needed.

am

Besides the new IPC cmd / IPC changes from updated SDK:

  • Updated L_47300, prev ver @ L_47300.
    • State init was updated.
  • Updated L_5bd90, prev ver @ L_5bd60.
  • Updated L_5d2a8, prev ver @ L_5d258.
  • Updated L_645f0, prev ver @ L_64510.
    • L_6fdf0 is now called with an additional param, w2=0x1.
  • Updated L_6fdf0, prev ver @ L_6fd00.
    • The new inw2 param is now passed to L_138040 w2 (additional input param for hid:sys RegisterAppletResourceUserId).
    • As of 20.2.0 hid:sys (on NX at least) doesn't currently handle this new param.
  • Updated L_704d4, prev ver @ L_703d4.
    • At the end before writing the u32 0x0 to output, this now runs the same check as immediately before the prior func call (Abort when a state field is set).
  • Updated L_70600, prev ver @ L_70500. Updated L_70bc0, prev ver @ L_70aa4.
    • The output from L_704d4 is now copied to inx0+0x30.
  • Updated L_70af0, prev ver @ L_709e0.
  • New func L_70d30.
    • Called by L_5d2a8
  • Updated L_70d90, prev ver @ L_70c34.

ssl

  • The only change was updating L_11ab20, prev ver @ L_11ab20.
    • During the loop it would originally return 1 when the func call is successful. Now when that's successful, L_4cb20 is now called, with 1 being returned when ret==1.
    • Otherwise, it continues the loop.

grc

The only changes are IPC related (on NX the only changed func was the IPC handler for the updated interface).

See Also

System update report(s):


Nintendo Switch System Versions
1.0.0
2.0.02.1.02.2.02.3.0
3.0.03.0.13.0.2
4.0.04.0.14.1.0
5.0.05.0.15.0.25.1.0
6.0.06.0.16.1.06.2.0
7.0.07.0.1
8.0.08.0.18.1.08.1.1
9.0.09.0.19.1.09.2.0
10.0.010.0.110.0.210.0.310.0.410.1.010.1.110.2.0
11.0.011.0.1
12.0.012.0.112.0.212.0.312.1.0
13.0.013.1.013.2.013.2.1
14.0.014.1.014.1.114.1.2
15.0.015.0.1
16.0.016.0.116.0.216.0.316.1.0
17.0.017.0.1
18.0.018.0.118.1.0
19.0.019.0.1
20.0.020.0.120.1.020.1.120.1.520.2.0