(Switch 2) Compatibility Mode: Difference between revisions
(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? | |||
|} | |} |