From c00ded9fbcabe22ae7f7a940f413dd5e4062279c Mon Sep 17 00:00:00 2001 From: gibbed Date: Tue, 12 May 2015 22:59:21 -0500 Subject: [PATCH] Fixed VdQueryVideoFlags. --- src/xenia/kernel/xboxkrnl_video.cc | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/xenia/kernel/xboxkrnl_video.cc b/src/xenia/kernel/xboxkrnl_video.cc index 8bdfcc0e3..66ebf5ec5 100644 --- a/src/xenia/kernel/xboxkrnl_video.cc +++ b/src/xenia/kernel/xboxkrnl_video.cc @@ -78,10 +78,20 @@ SHIM_CALL VdGetCurrentDisplayInformation_shim(PPCContext* ppc_state, SHIM_SET_MEM_32(ptr + 84, 1280); // display width } +void xeVdQueryVideoMode(X_VIDEO_MODE* video_mode); + SHIM_CALL VdQueryVideoFlags_shim(PPCContext* ppc_state, KernelState* state) { XELOGD("VdQueryVideoFlags()"); - SHIM_SET_RETURN_64(0x00000006); + X_VIDEO_MODE mode; + xeVdQueryVideoMode(&mode); + + uint32_t flags = 0; + flags |= mode.is_widescreen ? 1 : 0; + flags |= mode.display_width >= 1024 ? 2 : 0; + flags |= mode.display_width >= 1920 ? 4 : 0; + + SHIM_SET_RETURN_32(flags); } void xeVdQueryVideoMode(X_VIDEO_MODE* video_mode) {