mirror of
https://github.com/par274/sharpemu.git
synced 2026-07-22 19:06:15 +08:00
Quake (PPSA01880, Kex Engine) crashes at startup because sceVideoOutIsOutputSupported (NID Nv8c-Kb+DUM) is unimplemented. The game calls it to check video output capabilities before initializing rendering. Add HLE export stub: returns 1 (supported) for SceVideoOutBusTypeMain, 0 otherwise. The emulator renders via Vulkan and supports any pixel format or aspect ratio on the main bus. NID verified via Ps5Nid.Compute SHA1 algorithm. Export name confirmed in scripts/ps5_names.txt.
This commit is contained in:
@@ -259,6 +259,22 @@ public static class VideoOutExports
|
||||
}
|
||||
}
|
||||
|
||||
[SysAbiExport(
|
||||
Nid = "Nv8c-Kb+DUM",
|
||||
ExportName = "sceVideoOutIsOutputSupported",
|
||||
Target = Generation.Gen4 | Generation.Gen5,
|
||||
LibraryName = "libSceVideoOut")]
|
||||
public static int VideoOutIsOutputSupported(CpuContext ctx)
|
||||
{
|
||||
var busType = unchecked((int)ctx[CpuRegister.Rdi]);
|
||||
_ = ctx[CpuRegister.Rsi]; // pixelFormat
|
||||
_ = ctx[CpuRegister.Rdx]; // aspectRatio
|
||||
|
||||
// The emulator supports any output configuration on the main bus.
|
||||
// Return 1 (supported) for SceVideoOutBusTypeMain, 0 otherwise.
|
||||
return busType == SceVideoOutBusTypeMain ? 1 : 0;
|
||||
}
|
||||
|
||||
[SysAbiExport(
|
||||
Nid = "uquVH4-Du78",
|
||||
ExportName = "sceVideoOutClose",
|
||||
|
||||
Reference in New Issue
Block a user