13.0.0: Difference between revisions
→System Titles: system stability intensifies in the kernel |
No edit summary |
||
| (5 intermediate revisions by 3 users not shown) | |||
| Line 81: | Line 81: | ||
* Various applet UI/gfx data was updated. | * Various applet UI/gfx data was updated. | ||
=== | === BootImagePackages === | ||
RomFs changes: all files updated. | |||
[[Package2|INI1]] changes: | |||
* BootImagePackageSafe: | |||
** 010000000000001A (PCV): SVC access: removed MapDeviceAddressSpace. | |||
** 010000000000000A (Bus): SVC access: removed MapDeviceAddressSpace. | |||
** 0100000000000021 (psc): SVC access: removed MapDeviceAddressSpace. | |||
* BootImagePackageExFatSafe: | |||
** 010000000000001A (PCV): SVC access: removed MapDeviceAddressSpace. | |||
** 010000000000000A (Bus): SVC access: removed MapDeviceAddressSpace. | |||
** 0100000000000021 (psc): SVC access: removed MapDeviceAddressSpace. | |||
====Kernel==== | ====Kernel==== | ||
* Compiler upgrade to LLVM 11.1. | * Compiler upgrade to LLVM 11.1. | ||
** Most notably, certain code now emits "ands" rather than "and; and; tst" + "bfxil" patterns are more commonly used. | ** Most notably, certain code now emits "ands" rather than "and; and; tst" + "bfxil" patterns are more commonly used. | ||
* C++ language upgrade to | * C++ language upgrade to C++17. | ||
** Slab heaps/object containers are now | ** Slab heaps/object containers are now constant initialized, no longer constructed during .init_array. | ||
* Initialize0 changes: | * Initialize0 changes: | ||
** KernelLdr now sends back the initial process binary address in state. | ** KernelLdr now sends back the initial process binary address in state. | ||
| Line 112: | Line 122: | ||
** These SVCs conceptually allow creating an object for mapping in certain physical address ranges at user-specified virtual addresses, without having to include the ranges in npdm/kip capabilities ahead of time. | ** These SVCs conceptually allow creating an object for mapping in certain physical address ranges at user-specified virtual addresses, without having to include the ranges in npdm/kip capabilities ahead of time. | ||
*** The only allowed id right now is 0, which corresponds to PCIE_A2 (physical address range 0x12000000-0x1FFFFFFF). | *** The only allowed id right now is 0, which corresponds to PCIE_A2 (physical address range 0x12000000-0x1FFFFFFF). | ||
* KLightLock::Lock now uses simplified logic; KLightLock::LockSlowPath now returns a bool for whether the lock was acquired. | |||
* KWritableEvent was deleted. | * KWritableEvent was deleted. | ||
** Class tokens for types after KWritableEvent have been adjusted downwards to compensate (see mesosphere for class token generation algorithm). | ** Class tokens for types after KWritableEvent have been adjusted downwards to compensate (see mesosphere for class token generation algorithm). | ||
| Line 211: | Line 222: | ||
** "Break() called. %016lx\n" and "Exception occurred. %016lx\n" are now "Break() called. " and "Exception occurred. ", respectively. | ** "Break() called. %016lx\n" and "Exception occurred. %016lx\n" are now "Break() called. " and "Exception occurred. ", respectively. | ||
* StoreDataCacheSharedForInit has slightly different (but equivalent) iteration logic. | * StoreDataCacheSharedForInit has slightly different (but equivalent) iteration logic. | ||
===[[Bluetooth_Driver_services|bluetooth]]=== | ===[[Bluetooth_Driver_services|bluetooth]]=== | ||
* New btdrv commands were added. | * New btdrv commands were added. | ||
* A number of funcs now clear stack buffers before sending it elsewhere. | * A number of funcs now [[Switch_System_Flaws|clear]] stack buffers before sending it elsewhere. | ||
* A new system-setting is now used during [[Bluetooth_Driver_services#EnableBluetooth|audio-enabling]]. | |||
* ... | * ... | ||