Index: ddraw/glDirectDraw.cpp |
— | — | @@ -1471,8 +1471,8 @@ |
1472 | 1472 | if (ddCaps.dwSize < sizeof(DDCAPS_DX3)) TRACE_RET(HRESULT, 23, DDERR_INVALIDPARAMS);
|
1473 | 1473 | ddCaps.dwCaps = DDCAPS_BLT | DDCAPS_BLTCOLORFILL | DDCAPS_BLTDEPTHFILL | DDCAPS_BLTFOURCC |
|
1474 | 1474 | DDCAPS_BLTSTRETCH | DDCAPS_COLORKEY | DDCAPS_GDI | DDCAPS_PALETTE | DDCAPS_CANBLTSYSMEM |
|
1475 | | - DDCAPS_3D | DDCAPS_CANCLIP | DDCAPS_CANCLIPSTRETCHED | DDCAPS_READSCANLINE;/* |
|
1476 | | - DDCAPS_OVERLAY | DDCAPS_OVERLAYSTRETCH;*/
|
| 1475 | + DDCAPS_3D | DDCAPS_CANCLIP | DDCAPS_CANCLIPSTRETCHED | DDCAPS_READSCANLINE |
|
| 1476 | + DDCAPS_OVERLAY | DDCAPS_OVERLAYSTRETCH;
|
1477 | 1477 | ddCaps.dwCaps2 = DDCAPS2_CANRENDERWINDOWED | DDCAPS2_WIDESURFACES | DDCAPS2_NOPAGELOCKREQUIRED |
|
1478 | 1478 | DDCAPS2_FLIPINTERVAL | DDCAPS2_FLIPNOVSYNC | DDCAPS2_NONLOCALVIDMEM;
|
1479 | 1479 | ddCaps.dwFXCaps = DDFXCAPS_BLTSHRINKX | DDFXCAPS_BLTSHRINKY |
|
— | — | @@ -1485,10 +1485,10 @@ |
1486 | 1486 | DDSCAPS_FRONTBUFFER | DDSCAPS_OFFSCREENPLAIN | DDSCAPS_PALETTE |
|
1487 | 1487 | DDSCAPS_SYSTEMMEMORY | DDSCAPS_VIDEOMEMORY | DDSCAPS_3DDEVICE |
|
1488 | 1488 | DDSCAPS_NONLOCALVIDMEM | DDSCAPS_LOCALVIDMEM | DDSCAPS_TEXTURE |
|
1489 | | - DDSCAPS_MIPMAP;// | DDSCAPS_OVERLAY;
|
| 1489 | + DDSCAPS_MIPMAP | DDSCAPS_OVERLAY;
|
1490 | 1490 | ddCaps.ddsCaps.dwCaps2 = DDSCAPS2_MIPMAPSUBLEVEL;
|
1491 | | - //ddCaps.dwMinOverlayStretch = 1;
|
1492 | | - //ddCaps.dwMaxOverlayStretch = 2147483647;
|
| 1491 | + ddCaps.dwMinOverlayStretch = 1;
|
| 1492 | + ddCaps.dwMaxOverlayStretch = 2147483647;
|
1493 | 1493 | ddCaps.dwCKeyCaps = DDCKEYCAPS_SRCBLT | DDCKEYCAPS_DESTBLT;
|
1494 | 1494 | ddCaps.dwZBufferBitDepths = DDBD_16 | DDBD_24 | DDBD_32;
|
1495 | 1495 | ddCaps.dwNumFourCCCodes = GetNumFOURCC();
|
Index: ddraw/glRenderer.cpp |
— | — | @@ -2889,7 +2889,7 @@ |
2890 | 2890 | glRenderer__DeleteTexture(This,(glTexture*)This->inputs[0]);
|
2891 | 2891 | break;
|
2892 | 2892 | case OP_BLT:
|
2893 | | - glRenderer__Blt(This, (BltCommand*)This->inputs[0]);
|
| 2893 | + glRenderer__Blt(This, (BltCommand*)This->inputs[0], FALSE);
|
2894 | 2894 | break;
|
2895 | 2895 | case OP_DRAWSCREEN:
|
2896 | 2896 | glRenderer__DrawScreen(This,(glTexture*)This->inputs[0],(glTexture*)This->inputs[1],
|
— | — | @@ -3350,7 +3350,7 @@ |
3351 | 3351 | }
|
3352 | 3352 | }
|
3353 | 3353 |
|
3354 | | -void glRenderer__Blt(glRenderer *This, BltCommand *cmd)
|
| 3354 | +void glRenderer__Blt(glRenderer *This, BltCommand *cmd, BOOL backend)
|
3355 | 3355 | {
|
3356 | 3356 | int rotates = 0;
|
3357 | 3357 | BOOL usedest = FALSE;
|
— | — | @@ -3603,7 +3603,7 @@ |
3604 | 3604 | !(ddsd.ddsCaps.dwCaps & DDSCAPS_FLIP)))
|
3605 | 3605 | glRenderer__DrawScreen(This,cmd->dest,cmd->dest->palette,0,NULL,FALSE,TRUE,NULL,0);
|
3606 | 3606 | This->outputs[0] = DD_OK;
|
3607 | | - SetEvent(This->busy);
|
| 3607 | + if(!backend) SetEvent(This->busy);
|
3608 | 3608 | }
|
3609 | 3609 |
|
3610 | 3610 | void glRenderer__MakeTexture(glRenderer *This, glTexture *texture)
|
— | — | @@ -4174,7 +4174,7 @@ |
4175 | 4175 | bltcmd.dest = primary;
|
4176 | 4176 | bltcmd.destlevel = 0;
|
4177 | 4177 | bltcmd.destrect = This->overlays[i].destrect;
|
4178 | | - glRenderer__Blt(This, &bltcmd);
|
| 4178 | + glRenderer__Blt(This, &bltcmd, TRUE);
|
4179 | 4179 | }
|
4180 | 4180 | }
|
4181 | 4181 | }
|
Index: ddraw/glRenderer.h |
— | — | @@ -206,7 +206,7 @@ |
207 | 207 | void glRenderer__DeleteCommandBuffer(CommandBuffer *cmd);
|
208 | 208 | void glRenderer__UploadTexture(glRenderer *This, glTexture *texture, GLint level);
|
209 | 209 | void glRenderer__DownloadTexture(glRenderer *This, glTexture *texture, GLint level);
|
210 | | -void glRenderer__Blt(glRenderer *This, BltCommand *cmd);
|
| 210 | +void glRenderer__Blt(glRenderer *This, BltCommand *cmd, BOOL backend);
|
211 | 211 | void glRenderer__MakeTexture(glRenderer *This, glTexture *texture);
|
212 | 212 | void glRenderer__DrawScreen(glRenderer *This, glTexture *texture, glTexture *paltex, GLint vsync, glTexture *previous, BOOL setsync, BOOL settime, OVERLAY *overlays, int overlaycount);
|
213 | 213 | void glRenderer__DeleteTexture(glRenderer *This, glTexture *texture);
|