improve debug logs

This commit is contained in:
FunkyFr3sh 2022-09-30 14:16:30 +02:00
parent 72c06e7524
commit a3469be07a
4 changed files with 97 additions and 2 deletions

View file

@ -13,6 +13,9 @@ void dbg_draw_frame_info_start();
void dbg_draw_frame_info_end();
int dbg_printf(const char* fmt, ...);
void dbg_init();
void dbg_dump_scl_flags(DWORD flags);
void dbg_dump_edm_flags(DWORD flags);
void dbg_dump_dds_flip_flags(DWORD flags);
void dbg_dump_dds_blt_flags(DWORD flags);
void dbg_dump_dds_blt_fx_flags(DWORD flags);
void dbg_dump_dds_caps(DWORD caps);

View file

@ -23,6 +23,8 @@ HRESULT dd_EnumDisplayModes(
LPVOID lpContext,
LPDDENUMMODESCALLBACK lpEnumModesCallback)
{
dbg_dump_edm_flags(dwFlags);
DWORD i = 0;
DDSURFACEDESC2 s;
@ -821,7 +823,7 @@ HRESULT dd_SetDisplayMode(DWORD dwWidth, DWORD dwHeight, DWORD dwBPP, DWORD dwFl
HRESULT dd_SetCooperativeLevel(HWND hwnd, DWORD dwFlags)
{
PIXELFORMATDESCRIPTOR pfd;
dbg_dump_scl_flags(dwFlags);
if (hwnd == NULL)
{
@ -843,9 +845,10 @@ HRESULT dd_SetCooperativeLevel(HWND hwnd, DWORD dwFlags)
{
g_ddraw->render.hdc = GetDC(g_ddraw->hwnd);
PIXELFORMATDESCRIPTOR pfd;
memset(&pfd, 0, sizeof(PIXELFORMATDESCRIPTOR));
pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR);
pfd.nVersion = 1;
pfd.dwFlags =
PFD_DRAW_TO_WINDOW | PFD_DOUBLEBUFFER | (g_ddraw->renderer == ogl_render_main ? PFD_SUPPORT_OPENGL : 0);

View file

@ -699,6 +699,8 @@ HRESULT dds_EnumAttachedSurfaces(
HRESULT dds_Flip(IDirectDrawSurfaceImpl* This, IDirectDrawSurfaceImpl* lpDDSurfaceTargetOverride, DWORD dwFlags)
{
dbg_dump_dds_flip_flags(dwFlags);
if (This->backbuffer)
{
EnterCriticalSection(&g_ddraw->cs);

View file

@ -218,6 +218,93 @@ void dbg_draw_frame_info_end()
g_dbg_frame_time = dbg_counter_stop();
}
void dbg_dump_scl_flags(DWORD flags)
{
#ifdef _DEBUG_X
if (flags & DDSCL_FULLSCREEN) {
TRACE(" DDSCL_FULLSCREEN\n");
}
if (flags & DDSCL_ALLOWREBOOT) {
TRACE(" DDSCL_ALLOWREBOOT\n");
}
if (flags & DDSCL_NOWINDOWCHANGES) {
TRACE(" DDSCL_NOWINDOWCHANGES\n");
}
if (flags & DDSCL_NORMAL) {
TRACE(" DDSCL_NORMAL\n");
}
if (flags & DDSCL_EXCLUSIVE) {
TRACE(" DDSCL_EXCLUSIVE\n");
}
if (flags & DDSCL_ALLOWMODEX) {
TRACE(" DDSCL_ALLOWMODEX\n");
}
if (flags & DDSCL_SETFOCUSWINDOW) {
TRACE(" DDSCL_SETFOCUSWINDOW\n");
}
if (flags & DDSCL_SETDEVICEWINDOW) {
TRACE(" DDSCL_SETDEVICEWINDOW\n");
}
if (flags & DDSCL_CREATEDEVICEWINDOW) {
TRACE(" DDSCL_CREATEDEVICEWINDOW\n");
}
if (flags & DDSCL_MULTITHREADED) {
TRACE(" DDSCL_MULTITHREADED\n");
}
if (flags & DDSCL_FPUSETUP) {
TRACE(" DDSCL_FPUSETUP\n");
}
if (flags & DDSCL_FPUPRESERVE) {
TRACE(" DDSCL_FPUPRESERVE\n");
}
#endif
}
void dbg_dump_edm_flags(DWORD flags)
{
#ifdef _DEBUG_X
if (flags & DDEDM_REFRESHRATES) {
TRACE(" DDEDM_REFRESHRATES\n");
}
if (flags & DDEDM_STANDARDVGAMODES) {
TRACE(" DDEDM_STANDARDVGAMODES\n");
}
#endif
}
void dbg_dump_dds_flip_flags(DWORD flags)
{
#ifdef _DEBUG_X
if (flags & DDFLIP_WAIT) {
TRACE(" DDFLIP_WAIT\n");
}
if (flags & DDFLIP_EVEN) {
TRACE(" DDFLIP_EVEN\n");
}
if (flags & DDFLIP_ODD) {
TRACE(" DDFLIP_ODD\n");
}
if (flags & DDFLIP_NOVSYNC) {
TRACE(" DDFLIP_NOVSYNC\n");
}
if (flags & DDFLIP_INTERVAL2) {
TRACE(" DDFLIP_INTERVAL2\n");
}
if (flags & DDFLIP_INTERVAL3) {
TRACE(" DDFLIP_INTERVAL3\n");
}
if (flags & DDFLIP_INTERVAL4) {
TRACE(" DDFLIP_INTERVAL4\n");
}
if (flags & DDFLIP_STEREO) {
TRACE(" DDFLIP_STEREO\n");
}
if (flags & DDFLIP_DONOTWAIT) {
TRACE(" DDFLIP_DONOTWAIT\n");
}
#endif
}
void dbg_dump_dds_blt_flags(DWORD flags)
{
#ifdef _DEBUG_X