(Switch 2) Compatibility Mode: Difference between revisions

Ootulp (talk | contribs)
Ootulp (talk | contribs)
 
(2 intermediate revisions by the same user not shown)
Line 7: Line 7:
These binaries are compiled with PAC enabled.
These binaries are compiled with PAC enabled.


= NPDM Adjustments =
* Game has access to SVC 0x80 even though it's not in the game NPDM.
* Game has CoreMask 0x3F (so access to core0-5) even though the game NPDM only has CoreMask 0x7.
* It's unknown if the service whitelist is updated for the game when running in Compatibility mode.


= Hooking =
= Hooking =
Line 49: Line 53:
|-
|-
| 4 || SerializeSavedataAccess || A global mutex is taken when a file starting with "savedata" is opened, and held until the file has been closed. Commit-action also takes the mutex, so the commit will not complete until the file has been closed.
| 4 || SerializeSavedataAccess || A global mutex is taken when a file starting with "savedata" is opened, and held until the file has been closed. Commit-action also takes the mutex, so the commit will not complete until the file has been closed.
|-
| 6 || PreventNegativeVibrationValue ||
|-
|-
| 10 || NeedsWaitingLaunchLogo ||
| 10 || NeedsWaitingLaunchLogo ||
Line 96: Line 102:
|-
|-
| nn::os::QueryMemoryInfo,nn::os::QueryMemoryInfoForDebug || Hides stolen Heap memory that it uses for itself... ||
| nn::os::QueryMemoryInfo,nn::os::QueryMemoryInfoForDebug || Hides stolen Heap memory that it uses for itself... ||
|-
| nn::hid::VibrationPlayer::SetCurrentPosition || If position is negative, drop the call. || MiscControlData bit6
|}
|}


Line 106: Line 114:
|-
|-
| nn::os::ConvertToTick || Uses conversion ratio 31250000 instead of 19200000.
| nn::os::ConvertToTick || Uses conversion ratio 31250000 instead of 19200000.
|-
| gl*, _gl*, egl* || OpenGL API translation for new GPU?
|-
| vk* || Vulkan API translation for new GPU?
|-
| NvOsFopen ||
|-
| NvOsGetTimeMS || Adjusted for new clock frequency.
|-
| nn::vi::* || Translation layer because vi:u was removed?
|}
|}