From a4cf8d9241b8dd94937408c9a1d20aacfb9dd2e3 Mon Sep 17 00:00:00 2001 From: Alistair Leslie-Hughes Date: Tue, 28 May 2019 14:37:25 +1000 Subject: [PATCH 2/2] dinput: Improved tracing of Semantic value. --- dlls/dinput/dinput_main.c | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c index cf050cb71ed..79ef9620de9 100644 --- a/dlls/dinput/dinput_main.c +++ b/dlls/dinput/dinput_main.c @@ -290,6 +290,20 @@ static void _dump_EnumDevices_dwFlags(DWORD dwFlags) TRACE("\n"); } +static const char *dump_semantic(DWORD semantic) +{ + if((semantic & 0xff000000) == 0xff000000) + return "Any AXIS"; + else if((semantic & 0x82000000) == 0x82000000) + return "Mouse"; + else if((semantic & 0x81000000) == 0x81000000) + return "Keybaord"; + else if((semantic & DIVIRTUAL_FLYING_HELICOPTER) == DIVIRTUAL_FLYING_HELICOPTER) + return "Helicopter"; + + return "Unknown"; +} + static void _dump_diactionformatA(LPDIACTIONFORMATA lpdiActionFormat) { unsigned int i; @@ -312,7 +326,7 @@ static void _dump_diactionformatA(LPDIACTIONFORMATA lpdiActionFormat) { TRACE("diaf.rgoAction[%u]:\n", i); TRACE("\tuAppData=0x%lx\n", lpdiActionFormat->rgoAction[i].uAppData); - TRACE("\tdwSemantic=0x%08x\n", lpdiActionFormat->rgoAction[i].dwSemantic); + TRACE("\tdwSemantic=0x%08x (%s)\n", lpdiActionFormat->rgoAction[i].dwSemantic, dump_semantic(lpdiActionFormat->rgoAction[i].dwSemantic)); TRACE("\tdwFlags=0x%x\n", lpdiActionFormat->rgoAction[i].dwFlags); TRACE("\tszActionName=%s\n", debugstr_a(lpdiActionFormat->rgoAction[i].u.lptszActionName)); TRACE("\tguidInstance=%s\n", debugstr_guid(&lpdiActionFormat->rgoAction[i].guidInstance)); -- 2.20.1