- Added separate relro "segment" (introduced by [17.0.0+])
- Reordered sections to better reflect official layout
- Fixed handling of TLS segment alignment
- Replaced most usages of HidControllerID with HidNpadIdType
- HidControllerID still exists for now, and the following functions
keep accepting it for compatibility with most homebrew:
- hidIsControllerConnected
- hidKeysHeld/Down/Up
- hidJoystickRead
- hidSixAxisSensorValuesRead
- hidControllerIDTo/FromOfficial renamed to ToNpadIdType/FromNpadIdType
- Updated some comments that were left untouched during previous hid refactoring
- Partial internal refactor of hidGetNpadStates*
HidNpadStyleTag now includes more controllers.
Replaced hidGetControllerType with hidGetNpadStyleSet().
Improved _hidGetDeviceHandles(), more controllers are now supported.
- This is a (weak/overridable) function meant to be called when the
program encounters an unrecoverable error, but it's not fatal enough
to bring down the entire system with it.
- The default implementation uses svcBreak, passing the result code
in the user buffer.
- Replaced all usages of fatalThrow with diagAbortWithResult throughout
the entire library.
- Added nxlinkConnectToHost with separate flags for redirecting stdout/err
- Added nxlinkStdioForDebug, which only redirects stderr
- (nxlinkStdio now just calls nxlinkConnectToHost)
- consoleDebugInit now lives in a separate source code file
- The devoptab for debugDevice_CONSOLE is now loaded weakly, so that
normal console code isn't linked in by explicit means
- consoleInit no longer sets up stderr. If stderr to console is desired,
explicitly use consoleDebugInit(debugDevice_CONSOLE)
- This change makes it possible to use debugDevice_SVC without linking
in the entire console runtime, which in turn also enabled default
native window handling (and this can be undesirable)