mirror of
https://github.com/isledecomp/isle.git
synced 2025-10-23 08:24:16 +00:00
lego1: Add MxDisplaySurface class members and some functions (#95)
* Add MxDisplaySurface class members and some functions * Add size assert * style
This commit is contained in:

committed by
GitHub

parent
ff13dc691c
commit
932baa2a87
136
LEGO1/mxdisplaysurface.cpp
Normal file
136
LEGO1/mxdisplaysurface.cpp
Normal file
@@ -0,0 +1,136 @@
|
||||
#include "mxdisplaysurface.h"
|
||||
|
||||
DECOMP_SIZE_ASSERT(MxDisplaySurface, 0xac);
|
||||
|
||||
// OFFSET: LEGO1 0x100ba500
|
||||
MxDisplaySurface::MxDisplaySurface()
|
||||
{
|
||||
this->Reset();
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100ba5a0
|
||||
MxDisplaySurface::~MxDisplaySurface()
|
||||
{
|
||||
this->Clear();
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100ba610
|
||||
void MxDisplaySurface::Reset()
|
||||
{
|
||||
this->m_ddSurface1 = NULL;
|
||||
this->m_ddSurface2 = NULL;
|
||||
this->m_ddClipper = NULL;
|
||||
this->m_16bitPal = NULL;
|
||||
this->m_initialized = FALSE;
|
||||
memset(&this->m_surfaceDesc, 0, sizeof(this->m_surfaceDesc));
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100ba790
|
||||
MxResult MxDisplaySurface::Init(MxVideoParam &p_videoParam, LPDIRECTDRAWSURFACE p_ddSurface1, LPDIRECTDRAWSURFACE p_ddSurface2, LPDIRECTDRAWCLIPPER p_ddClipper)
|
||||
{
|
||||
MxResult result = SUCCESS;
|
||||
|
||||
this->m_videoParam = p_videoParam;
|
||||
this->m_ddSurface1 = p_ddSurface1;
|
||||
this->m_ddSurface2 = p_ddSurface2;
|
||||
this->m_ddClipper = p_ddClipper;
|
||||
this->m_initialized = FALSE;
|
||||
|
||||
memset(&this->m_surfaceDesc, 0, sizeof(this->m_surfaceDesc));
|
||||
this->m_surfaceDesc.dwSize = sizeof(this->m_surfaceDesc);
|
||||
|
||||
if (this->m_ddSurface2->GetSurfaceDesc(&this->m_surfaceDesc))
|
||||
result = FAILURE;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100ba7f0 STUB
|
||||
MxResult MxDisplaySurface::Create(MxVideoParam *p_videoParam)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100baa90
|
||||
void MxDisplaySurface::Clear()
|
||||
{
|
||||
if (this->m_initialized) {
|
||||
if (this->m_ddSurface2)
|
||||
this->m_ddSurface2->Release();
|
||||
|
||||
if (this->m_ddSurface1)
|
||||
this->m_ddSurface1->Release();
|
||||
|
||||
if (this->m_ddClipper)
|
||||
this->m_ddClipper->Release();
|
||||
}
|
||||
|
||||
if (this->m_16bitPal)
|
||||
delete this->m_16bitPal;
|
||||
|
||||
this->Reset();
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100baae0 STUB
|
||||
void MxDisplaySurface::SetPalette(MxPalette *p_palette)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bc200 STUB
|
||||
void MxDisplaySurface::vtable24(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bacc0 STUB
|
||||
MxBool MxDisplaySurface::vtable28(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bc630 STUB
|
||||
MxBool MxDisplaySurface::vtable2c(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, MxBool)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bb1d0 STUB
|
||||
MxBool MxDisplaySurface::vtable30(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, MxBool)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bb850 STUB
|
||||
undefined4 MxDisplaySurface::vtable34(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bba50 STUB
|
||||
void MxDisplaySurface::Display(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4)
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bbc10
|
||||
void MxDisplaySurface::GetDC(HDC *p_hdc)
|
||||
{
|
||||
if (this->m_ddSurface2 && !this->m_ddSurface2->GetDC(p_hdc))
|
||||
return;
|
||||
|
||||
*p_hdc = NULL;
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bbc40
|
||||
void MxDisplaySurface::ReleaseDC(HDC p_hdc)
|
||||
{
|
||||
if (this->m_ddSurface2 && p_hdc)
|
||||
this->m_ddSurface2->ReleaseDC(p_hdc);
|
||||
}
|
||||
|
||||
// OFFSET: LEGO1 0x100bbc60 STUB
|
||||
undefined4 MxDisplaySurface::vtable44(undefined4, undefined4*, undefined4, undefined4)
|
||||
{
|
||||
return 0;
|
||||
}
|
Reference in New Issue
Block a user