5.0.0: Difference between revisions

No edit summary
 
(One intermediate revision by one other user not shown)
Line 32: Line 32:
** 0100000000000826 contains a 0x40-byte "/version" file, this is all-zero except for '0' at offset 0x20.
** 0100000000000826 contains a 0x40-byte "/version" file, this is all-zero except for '0' at offset 0x20.


The only 8XX titles with actual changes are (besides sysver-title, see below for FIRM):
The built codebins now have padding in .text after every function for 0x10-byte alignment (and other compiler changes).
 
The SDK included with titles (main-codebin) for NV changed/updated NVIDIA hw strings:
 
Previous version:
  00000000: 4e56 4944 4941 2054 6567 7261 204b 3100  NVIDIA Tegra K1.
  00000010: 4e56 4944 4941 2054 6567 7261 2058 31    NVIDIA Tegra X1
 
Current version:
  00000000: 4e56 4944 4941 2054 6567 7261 2f4e 696e  NVIDIA Tegra/Nin
  00000010: 7465 6e64 6f20 5377 6974 6368 004e 5649  tendo Switch.NVI
  00000020: 4449 4120 5465 6772 6120 5832 0047 5031  DIA Tegra X2.GP1
  00000030: 3042 0047 5031 3036 0047 5031 3036 2d41  0B.GP106.GP106-A
  00000040: 0047 6546 6f72 6365 2047 5458 2031 3036  .GeForce GTX 106
  00000050: 3020 3347 4200 4765 466f 7263 6520 4754  0 3GB.GeForce GT
  00000060: 5820 3130 3630 2036 4742 0047 6546 6f72  X 1060 6GB.GeFor
  00000070: 6365 2047 5458 2031 3035 3000 4765 466f  ce GTX 1050.GeFo
  00000080: 7263 6520 4754 5820 3130 3630 0047 6546  rce GTX 1060.GeF
  00000090: 6f72 6365 2047 5458 2031 3035 3020 5469  orce GTX 1050 Ti
  000000a0: 0047 5031 3036 474c 2d41 0051 7561 6472  .GP106GL-A.Quadr
  000000b0: 6f20 5032 3030 3000 4750 3130 362d 4200  o P2000.GP106-B.
  000000c0: 4750 3130 3647 4c2d 42                  GP106GL-B
 
[[NPDM]] changes (besides usual version-bump):
* usb: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* htc.stub: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* boot2.ProdBoot: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* settings: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* Bus: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* bluetooth: Acid.Flags updated: 0x1 -> 0x9. Service server access: added bt. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* bcat: Acid.Flags updated: 0x1 -> 0x9. Service access: added dauth:0, srepo:a. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* friends: Acid.Flags updated: 0x1 -> 0x9. Service server access: added nd:app, nd:sys. Service access: added ndd, set. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* nifm: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* ptm: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* bsdsocket: Acid.Flags updated: 0x1 -> 0x9. KernelCap ThreadInfo: updated MinCoreNumber = 0x0 -> 0x3. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* hid: MainThreadStackSize updated: 0x2000 -> 0x3000. Acid.Flags updated: 0x1 -> 0x9. Service server access: added hidbus. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* audio: Acid.Flags updated: 0x1 -> 0x9. Service server access: removed audrec:a, audrec:d. Service access: added lm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LogManager.Prod: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* wlan: Acid.Flags updated: 0x1 -> 0x9. Service access: added psm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* ldn: Acid.Flags updated: 0x1 -> 0x9. Service server access: added ndd. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* nvservices: Acid.Flags updated: 0x1 -> 0xD. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: removed QueryPhysicalAddress.
* pcv: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* capmtp: Acid.Flags updated: 0x1 -> 0x9. Service access: removed lm. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* nvnflinger: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* pcie: Acid.Flags updated: 0x1 -> 0x9. Service access: added set:sys. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* account: Acid.Flags updated: 0x1 -> 0x9. Service server access: added dauth:0. Service access: added ovln:snd, spl:mig. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* ns: Acid.Flags updated: 0x1 -> 0x9. Service access: added erpt:c. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* nfc: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* psc: Acid.Flags updated: 0x1 -> 0x9. Service server access: added srepo:*. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* capsrv: MainThreadStackSize updated: 0x4000 -> 0x5000. Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x4000000000000000 (Debug (ignored on non-DebugMode, see [[SPL_services#GetConfig|here]])). Service server access: added caps:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* am: Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x0000000080000000 (DeviceDetection). Service server access: added tcap. Service access: added acc:u1, pdm:qry. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: added MapPhysicalMemoryUnsafe, UnmapPhysicalMemoryUnsafe.
* ssl: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* nim: Acid.Flags updated: 0x1 -> 0x9. Service server access: added nim:eca. Service access: added arp:r, dauth:0, srepo:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. SVC access: added MapTransferMemory, UnmapTransferMemory.
* lbl: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* btm: Acid.Flags updated: 0x1 -> 0x9. Service server access: added btm:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* erpt: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* vi: Acid.Flags updated: 0x1 -> 0xD. KernelCap KernelVersion: updated Version = 6.0 -> 9.0. KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0xA0. SVC access: added MapTransferMemory, UnmapTransferMemory.
* pctl: Acid.Flags updated: 0x1 -> 0x9. Service access: added dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* npns: Acid.Flags updated: 0x1 -> 0x9. Service access: added arp:r, dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* eupld: Acid.Flags updated: 0x1 -> 0x9. Service access: added bgtc:t, dauth:0. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* glue: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* eclct: Acid.Flags updated: 0x1 -> 0x9. Fac.FsAccessFlag updated: set bitmask 0x0000000000100000 (SystemData). Service access: added erpt:r, fsp-srv, omm, time:u. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* es: Acid.Flags updated: 0x5 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* fatal: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* grc: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* creport: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* ro: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* sdb: Acid.Flags updated: 0x1 -> 0x9. Fac.SaveDataOwnerInfo added 0100000000001009 (miiEdit) access 0x3 (RW). Service server access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* migration: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* jpegdec: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* safemode: Acid.Flags updated: 0x1 -> 0x9. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* qlaunch: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* auth: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* cabinet: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* controller: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* dataErase: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* error: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* netConnect: Acid.Flags updated: 0x1 -> 0x5. Service access: added ntc. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* playerSelect: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* swkbd: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* miiEdit: Acid.Flags updated: 0x1 -> 0x5. Service access: added miiimg. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LibAppletWeb: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LibAppletShop: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* overlayDisp: Acid.Flags updated: 0x1 -> 0x5. Service access: added erpt:c. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* photoViewer: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LibAppletOff: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LibAppletLns: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* LibAppletAuth: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* "starter" application: KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* myPage: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
* maintenance: Acid.Flags updated: 0x1 -> 0x5. KernelCap KernelVersion: updated Version = 6.0 -> 9.0.
 
RomFs changes:
* [[System_Version_Title|SystemVersion]]: All files updated.
* [[System_Settings|FirmwareDebugSettings]]: All files updated.
* 801 (Support Error Codes)
* 801 (Support Error Codes)
* 803 (web-applet "shareddata:/")
* 803 (web-applet "shareddata:/")
Line 55: Line 149:
* 823
* 823


The built codebins now have padding in .text after every function for 0x10-byte alignment (and other compiler changes).
=== BootImagePackages ===
 
RomFs changes:
The SDK included with titles (main-codebin) for NV changed/updated NVIDIA hw strings:
* "/a/" added, "/nx/bct" updated, "/nx/package1" updated, "/nx/package1.dec" updated, "/nx/package2" updated
 
Previous version:
  00000000: 4e56 4944 4941 2054 6567 7261 204b 3100  NVIDIA Tegra K1.
  00000010: 4e56 4944 4941 2054 6567 7261 2058 31    NVIDIA Tegra X1
 
Current version:
  00000000: 4e56 4944 4941 2054 6567 7261 2f4e 696e  NVIDIA Tegra/Nin
  00000010: 7465 6e64 6f20 5377 6974 6368 004e 5649  tendo Switch.NVI
  00000020: 4449 4120 5465 6772 6120 5832 0047 5031  DIA Tegra X2.GP1
  00000030: 3042 0047 5031 3036 0047 5031 3036 2d41  0B.GP106.GP106-A
  00000040: 0047 6546 6f72 6365 2047 5458 2031 3036  .GeForce GTX 106
  00000050: 3020 3347 4200 4765 466f 7263 6520 4754  0 3GB.GeForce GT
  00000060: 5820 3130 3630 2036 4742 0047 6546 6f72  X 1060 6GB.GeFor
  00000070: 6365 2047 5458 2031 3035 3000 4765 466f  ce GTX 1050.GeFo
  00000080: 7263 6520 4754 5820 3130 3630 0047 6546  rce GTX 1060.GeF
  00000090: 6f72 6365 2047 5458 2031 3035 3020 5469  orce GTX 1050 Ti
  000000a0: 0047 5031 3036 474c 2d41 0051 7561 6472  .GP106GL-A.Quadr
  000000b0: 6f20 5032 3030 3000 4750 3130 362d 4200  o P2000.GP106-B.
  000000c0: 4750 3130 3647 4c2d 42                  GP106GL-B


===FIRM===
[[Package2|INI1]] changes:
All FIRM titles were updated, and everything under RomFS was updated.
* BootImagePackage:
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress.
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo.
** 0100000000000004 (sm): SVC access: added GetSystemInfo.
* BootImagePackageSafe:
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress.
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo.
** 0100000000000004 (sm): SVC access: added GetSystemInfo.
* BootImagePackageExFat:
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress.
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo.
** 0100000000000004 (sm): SVC access: added GetSystemInfo.
* BootImagePackageExFatSafe:
** 0100000000000000 (FS): KernelCap HandleTableSize: updated HandleTableSize = 0x80 -> 0x100. SVC access: added GetSystemInfo, removed QueryPhysicalAddress.
** 0100000000000003 (ProcessMana): SVC access: added SetUnsafeLimit, GetSystemInfo.
** 0100000000000004 (sm): SVC access: added GetSystemInfo.


A new folder "a" was added, in addition to the existing "nx" folder, containing a separate "bct" and "package1". Both of these seem encrypted/meant for the new "Mariko" hardware that support was added for.
A new folder "a" was added, in addition to the existing "nx" folder, containing a separate "bct" and "package1". Both of these seem encrypted/meant for the new "Mariko" hardware that support was added for.