102 Patches: Detours to the Rescue
C reference for DttR maintainers and modders.
Loading...
Searching...
No Matches
com_directdraw7.c File Reference
#include "graphics_com_private.h"
#include "graphics_private.h"
#include <dttr_log.h>
#include <stdlib.h>
#include <string.h>

Go to the source code of this file.

Functions

static DTTR_Graphics_COM_Direct3D7ddraw7_get_direct3d ()
static HRESULT ddraw7_queryinterface (DTTR_Graphics_COM_DirectDraw7 *self, void *riid, void **ppv)
static HRESULT ddraw7_createclipper (DTTR_Graphics_COM_DirectDraw7 *self, DWORD f, void **clip, void *outer)
static HRESULT ddraw7_createpalette (DTTR_Graphics_COM_DirectDraw7 *self, DWORD f, void *colors, void **pal, void *outer)
static HRESULT ddraw7_createsurface (DTTR_Graphics_COM_DirectDraw7 *self, void *desc, void **surf, void *outer)
 DTTR_COM_STUB_SET (ddraw7_duplicatesurface, void *, NULL, DTTR_Graphics_COM_DirectDraw7 *self, void *src) DTTR_COM_NOOP_HRESULT(ddraw7_enumdisplaymodes
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_COM_NOOP_HRESULT (ddraw7_enumsurfaces, DTTR_Graphics_COM_DirectDraw7 *self, DWORD f, void *desc, void *ctx, void *cb) DTTR_COM_NOOP_HRESULT(ddraw7_getcaps
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 void void *helCaps DTTR_COM_NOOP_HRESULT (ddraw7_getdisplaymode, DTTR_Graphics_COM_DirectDraw7 *self, void *desc) static HRESULT ddraw7_getfourcccodes(DTTR_Graphics_COM_DirectDraw7 *self
 DTTR_COM_STUB_SET (ddraw7_getmonitorfrequency, DWORD, 60, DTTR_Graphics_COM_DirectDraw7 *self) DTTR_COM_STUB_SET(ddraw7_getverticalblankstatus
DTTR_Graphics_COM_DirectDraw7 *self DTTR_COM_NOOP_HRESULT (ddraw7_setcooperativelevel, DTTR_Graphics_COM_DirectDraw7 *self, HWND hwnd, DWORD flags) static HRESULT ddraw7_setdisplaymode(DTTR_Graphics_COM_DirectDraw7 *self
 dttr_graphics_set_logical_resolution ((int) w,(int) h)
 DTTR_COM_NOOP_HRESULT (ddraw7_waitforverticalblank, DTTR_Graphics_COM_DirectDraw7 *self, DWORD f, HANDLE evt) static HRESULT ddraw7_getavailablevidmem(DTTR_Graphics_COM_DirectDraw7 *self
 DTTR_COM_STUB_SET (ddraw7_getsurfacefromdc, void *, NULL, DTTR_Graphics_COM_DirectDraw7 *self, HDC dc) static HRESULT ddraw7_getdeviceidentifier(DTTR_Graphics_COM_DirectDraw7 *self
 DTTR_COM_NOOP_HRESULT (ddraw7_startmodetest, DTTR_Graphics_COM_DirectDraw7 *self, void *modes, DWORD n, DWORD f) DTTR_COM_NOOP_HRESULT(ddraw7_evaluatemode
DTTR_Graphics_COM_DirectDraw7dttr_graphics_com_create_directdraw7 ()

Variables

static DTTR_Graphics_COM_Direct3D7ddraw7_d3d7
DTTR_Graphics_COM_DirectDraw7self
DTTR_Graphics_COM_DirectDraw7 DWORD f
DTTR_Graphics_COM_DirectDraw7 DWORD voiddesc
DTTR_Graphics_COM_DirectDraw7 DWORD void voidctx
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 voiddrvCaps
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 void void *helCaps DWORDnum
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 void void *helCaps DWORD DWORDcodes
 DWORD
DTTR_Graphics_COM_DirectDraw7 *self DWORD w
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD h
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD DWORD bpp
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD DWORD DWORD hz
return S_OK
voidcaps
void DWORDtot
void DWORD DWORDfree
voidid
DTTR_Graphics_COM_DirectDraw7 DWORD DWORD *static timeout DTTR_Graphics_COM_DirectDraw7_VT vtbl

Function Documentation

◆ ddraw7_createclipper()

HRESULT ddraw7_createclipper ( DTTR_Graphics_COM_DirectDraw7 * self,
DWORD f,
void ** clip,
void * outer )
static

Definition at line 40 of file com_directdraw7.c.

References ddraw7_createclipper(), DWORD, f, NULL, S_OK, and self.

Referenced by ddraw7_createclipper().

◆ ddraw7_createpalette()

HRESULT ddraw7_createpalette ( DTTR_Graphics_COM_DirectDraw7 * self,
DWORD f,
void * colors,
void ** pal,
void * outer )
static

Definition at line 53 of file com_directdraw7.c.

References DWORD, f, NULL, S_OK, and self.

◆ ddraw7_createsurface()

◆ ddraw7_get_direct3d()

DTTR_Graphics_COM_Direct3D7 * ddraw7_get_direct3d ( )
static

Definition at line 12 of file com_directdraw7.c.

References ddraw7_d3d7, and dttr_graphics_com_create_direct3d7().

Referenced by ddraw7_queryinterface().

◆ ddraw7_queryinterface()

HRESULT ddraw7_queryinterface ( DTTR_Graphics_COM_DirectDraw7 * self,
void * riid,
void ** ppv )
static

Definition at line 20 of file com_directdraw7.c.

References ddraw7_get_direct3d(), S_OK, and self.

◆ DTTR_COM_NOOP_HRESULT() [1/5]

DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_COM_NOOP_HRESULT ( ddraw7_enumsurfaces ,
DTTR_Graphics_COM_DirectDraw7 * self,
DWORD f,
void * desc,
void * ctx,
void * cb )

References cb, ctx, desc, DTTR_COM_NOOP_HRESULT, DWORD, f, and self.

◆ DTTR_COM_NOOP_HRESULT() [2/5]

DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 void void *helCaps DTTR_COM_NOOP_HRESULT ( ddraw7_getdisplaymode ,
DTTR_Graphics_COM_DirectDraw7 * self,
void * desc )

References desc, DTTR_COM_NOOP_HRESULT, and self.

◆ DTTR_COM_NOOP_HRESULT() [3/5]

DTTR_Graphics_COM_DirectDraw7 *self DTTR_COM_NOOP_HRESULT ( ddraw7_setcooperativelevel ,
DTTR_Graphics_COM_DirectDraw7 * self,
HWND hwnd,
DWORD flags )

References DTTR_COM_NOOP_HRESULT, DWORD, flags, and self.

◆ DTTR_COM_NOOP_HRESULT() [4/5]

DTTR_COM_NOOP_HRESULT ( ddraw7_startmodetest ,
DTTR_Graphics_COM_DirectDraw7 * self,
void * modes,
DWORD n,
DWORD f )

References DWORD, f, n, and self.

◆ DTTR_COM_NOOP_HRESULT() [5/5]

DTTR_COM_NOOP_HRESULT ( ddraw7_waitforverticalblank ,
DTTR_Graphics_COM_DirectDraw7 * self,
DWORD f,
HANDLE evt )

References DWORD, f, and self.

◆ DTTR_COM_STUB_SET() [1/3]

DTTR_COM_STUB_SET ( ddraw7_duplicatesurface ,
void * ,
NULL ,
DTTR_Graphics_COM_DirectDraw7 * self,
void * src )

References NULL, self, and src.

◆ DTTR_COM_STUB_SET() [2/3]

DTTR_COM_STUB_SET ( ddraw7_getmonitorfrequency ,
DWORD ,
60 ,
DTTR_Graphics_COM_DirectDraw7 * self )

References DTTR_COM_STUB_SET, DWORD, and self.

◆ DTTR_COM_STUB_SET() [3/3]

DTTR_COM_STUB_SET ( ddraw7_getsurfacefromdc ,
void * ,
NULL ,
DTTR_Graphics_COM_DirectDraw7 * self,
HDC dc )

References NULL, and self.

◆ dttr_graphics_com_create_directdraw7()

◆ dttr_graphics_set_logical_resolution()

dttr_graphics_set_logical_resolution ( (int) w,
(int) h )

References h, and w.

Referenced by ddraw7_createsurface().

Variable Documentation

◆ bpp

◆ caps

void* caps

Definition at line 269 of file com_directdraw7.c.

Referenced by ddraw7_createsurface(), and ddrawsurface7_getattachedsurface().

◆ codes

Initial value:
{
if (num) {
*num = 0;
}
return S_OK
return S_OK
DTTR_Graphics_COM_DirectDraw7 DWORD void void void *cb DTTR_Graphics_COM_DirectDraw7 void void *helCaps DWORD * num

Definition at line 190 of file com_directdraw7.c.

◆ ctx

◆ ddraw7_d3d7

DTTR_Graphics_COM_Direct3D7* ddraw7_d3d7
static

Definition at line 10 of file com_directdraw7.c.

Referenced by ddraw7_get_direct3d().

◆ desc

◆ drvCaps

◆ DWORD

DWORD

Definition at line 212 of file com_directdraw7.c.

◆ f

Initial value:
{
if (!self || w == 0 || h == 0) {
return DDERR_INVALIDPARAMS;
}
if (bpp == 0) {
bpp = 16;
}
if (hz == 0) {
hz = 60;
}
"SetDisplayMode request: %lux%lu %lu-bpp @ %luHz flags=0x%lx",
(unsigned long)w,
(unsigned long)h,
(unsigned long)bpp,
(unsigned long)hz,
(unsigned long)f
)
DTTR_Graphics_COM_Direct3DDevice7 * self
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD DWORD bpp
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD h
DTTR_Graphics_COM_DirectDraw7 DWORD f
DTTR_Graphics_COM_DirectDraw7 *self DWORD DWORD DWORD DWORD hz
DTTR_Graphics_COM_DirectDraw7 *self DWORD w
#define DTTR_LOG_DEBUG(...)
Definition dttr_log.h:28

Definition at line 157 of file com_directdraw7.c.

Referenced by d3d_device7_record_clear(), ddraw7_createclipper(), ddraw7_createpalette(), DTTR_COM_NOOP_HRESULT(), DTTR_COM_NOOP_HRESULT(), DTTR_COM_NOOP_HRESULT(), DTTR_COM_NOOP_HRESULT(), DTTR_COM_NOOP_HRESULT(), and if().

◆ free

◆ h

◆ hz

◆ id

void* id

Definition at line 298 of file com_directdraw7.c.

Referenced by chain_log().

◆ num

◆ S_OK

return S_OK

Definition at line 257 of file com_directdraw7.c.

◆ self

Definition at line 156 of file com_directdraw7.c.

◆ tot

void DWORD* tot

Definition at line 270 of file com_directdraw7.c.

◆ vtbl

Definition at line 323 of file com_directdraw7.c.

◆ w