From e32bf1032f31d64438acd12cd7c93d8e24e6b293 Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Tue, 20 Mar 2018 19:13:08 +0100 Subject: [PATCH] fix for vhack with boxing/maintas --- src/render.c | 9 ++++++--- src/render_soft.c | 25 +++++++++++++++++++------ 2 files changed, 25 insertions(+), 9 deletions(-) diff --git a/src/render.c b/src/render.c index 5e193f7..6130fae 100644 --- a/src/render.c +++ b/src/render.c @@ -93,7 +93,8 @@ DWORD WINAPI render_main(void) glMapBufferARB = (PFNGLMAPBUFFERARBPROC)wglGetProcAddress("glMapBufferARB"); glUnmapBufferARB = (PFNGLUNMAPBUFFERARBPROC)wglGetProcAddress("glUnmapBufferARB"); - if(glGenBuffersARB && glBindBufferARB && glBufferDataARB && glMapBufferARB && glUnmapBufferARB && glDeleteBuffersARB) + if(glGenBuffersARB && glBindBufferARB && glBufferDataARB && + glMapBufferARB && glUnmapBufferARB && glDeleteBuffersARB) { pboSupported = TRUE; } @@ -224,7 +225,8 @@ DWORD WINAPI render_main(void) { for(j=0; jwidth; j++) { - ptr[i*ddraw->width+j] = ddraw->primary->palette->data_bgr[((unsigned char *)ddraw->primary->surface)[i*ddraw->primary->lPitch + j*ddraw->primary->lXPitch]]; + ptr[i*ddraw->width+j] = + ddraw->primary->palette->data_bgr[((unsigned char *)ddraw->primary->surface)[i*ddraw->primary->lPitch + j*ddraw->primary->lXPitch]]; } } @@ -239,7 +241,8 @@ DWORD WINAPI render_main(void) { for(j=0; jwidth; j++) { - tex[i*ddraw->width+j] = ddraw->primary->palette->data_bgr[((unsigned char *)ddraw->primary->surface)[i*ddraw->primary->lPitch + j*ddraw->primary->lXPitch]]; + tex[i*ddraw->width+j] = + ddraw->primary->palette->data_bgr[((unsigned char *)ddraw->primary->surface)[i*ddraw->primary->lPitch + j*ddraw->primary->lXPitch]]; } } } diff --git a/src/render_soft.c b/src/render_soft.c index 553e55b..6130889 100644 --- a/src/render_soft.c +++ b/src/render_soft.c @@ -103,13 +103,20 @@ DWORD WINAPI render_soft_main(void) ddraw->primary->palette->data_rgb = &bmi->bmiColors[0]; } - if ((ddraw->render.width != ddraw->width || ddraw->render.height != ddraw->height) && !(ddraw->vhack && detect_cutscene()) ) + if ((ddraw->render.width != ddraw->width || ddraw->render.height != ddraw->height) && + !(ddraw->vhack && detect_cutscene()) ) { - StretchDIBits(ddraw->render.hDC, ddraw->render.viewport.x, ddraw->render.viewport.y, ddraw->render.viewport.width, ddraw->render.viewport.height, 0, 0, ddraw->width, ddraw->height, ddraw->primary->surface, bmi, DIB_RGB_COLORS, SRCCOPY); + StretchDIBits( + ddraw->render.hDC, ddraw->render.viewport.x, ddraw->render.viewport.y, + ddraw->render.viewport.width, ddraw->render.viewport.height, + 0, 0, ddraw->width, ddraw->height, ddraw->primary->surface, + bmi, DIB_RGB_COLORS, SRCCOPY); } else if (!(ddraw->vhack && detect_cutscene())) { - SetDIBitsToDevice(ddraw->render.hDC, 0, 0, ddraw->width, ddraw->height, 0, 0, 0, ddraw->height, ddraw->primary->surface, bmi, DIB_RGB_COLORS); + SetDIBitsToDevice( + ddraw->render.hDC, 0, 0, ddraw->width, ddraw->height, 0, 0, 0, + ddraw->height, ddraw->primary->surface, bmi, DIB_RGB_COLORS); } } @@ -120,9 +127,14 @@ DWORD WINAPI render_soft_main(void) ddraw->primary->palette->data_rgb = &bmi->bmiColors[0]; } - StretchDIBits(ddraw->render.hDC, 0, 0, ddraw->render.width, ddraw->render.height, 0, ddraw->height-400, CUTSCENE_WIDTH, CUTSCENE_HEIGHT, ddraw->primary->surface, bmi, DIB_RGB_COLORS, SRCCOPY); + StretchDIBits( + ddraw->render.hDC, ddraw->render.viewport.x, ddraw->render.viewport.y, + ddraw->render.viewport.width, ddraw->render.viewport.height, + 0, ddraw->height-400, CUTSCENE_WIDTH, CUTSCENE_HEIGHT, ddraw->primary->surface, + bmi, DIB_RGB_COLORS, SRCCOPY); - if (ddraw->primary->palette && (ddraw->cursorclip.width != CUTSCENE_WIDTH || ddraw->cursorclip.height != CUTSCENE_HEIGHT)) + if (ddraw->primary->palette && + (ddraw->cursorclip.width != CUTSCENE_WIDTH || ddraw->cursorclip.height != CUTSCENE_HEIGHT)) { ddraw->cursorclip.width = CUTSCENE_WIDTH; ddraw->cursorclip.height = CUTSCENE_HEIGHT; @@ -130,7 +142,8 @@ DWORD WINAPI render_soft_main(void) ddraw->cursor.y = CUTSCENE_HEIGHT / 2; } } - else if(ddraw->primary && ddraw->primary->palette && (ddraw->cursorclip.width != ddraw->width || ddraw->cursorclip.height != ddraw->height)) + else if(ddraw->primary && ddraw->primary->palette && + (ddraw->cursorclip.width != ddraw->width || ddraw->cursorclip.height != ddraw->height)) { ddraw->cursorclip.width = ddraw->width; ddraw->cursorclip.height = ddraw->height;