Match MxVideoManager::RealizePalette

This commit is contained in:
Christian Semmler 2023-07-18 12:47:46 -04:00
parent 9fa08b1017
commit 742972a59c
3 changed files with 37 additions and 5 deletions

31
LEGO1/mxunknown100dc768.h Normal file
View File

@ -0,0 +1,31 @@
#ifndef MXUNKNOWN100DC768_H
#define MXUNKNOWN100DC768_H
#include "mxcore.h"
#include "mxpalette.h"
#include "decomp.h"
// VTABLE 0x100dc768
class MxUnknown100dc768 : public MxCore
{
public:
MxUnknown100dc768();
virtual ~MxUnknown100dc768() override;
virtual undefined4 vtable14(undefined4, undefined4, undefined4, undefined4);
virtual undefined4 vtable18(undefined4);
virtual MxResult Reset();
virtual void vtable20(MxPalette *p_palette);
virtual void vtable24(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4);
virtual MxBool vtable28(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4);
virtual MxBool vtable2c(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, MxBool);
virtual MxBool vtable30(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, undefined4, MxBool);
virtual undefined4 vtable34(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4);
virtual void vtable38(undefined4, undefined4, undefined4, undefined4, undefined4, undefined4);
virtual undefined4 vtable3c(undefined4*);
virtual undefined4 vtable40(undefined4);
virtual undefined4 vtable44(undefined4, undefined4*, undefined4, undefined4);
};
#endif // MXUNKNOWN100DC768_H

View File

@ -25,7 +25,7 @@ int MxVideoManager::Init()
{
this->m_pDirectDraw = NULL;
this->m_unk54 = NULL;
this->m_unk58 = NULL;
this->m_100dc768 = NULL;
this->m_unk5c = 0;
this->m_videoParam.SetPalette(NULL);
this->m_unk60 = FALSE;
@ -45,10 +45,10 @@ MxLong MxVideoManager::RealizePalette(MxPalette *p_palette)
this->m_criticalSection.Enter();
if (p_palette && this->m_videoParam.GetPalette())
{
if (p_palette && this->m_videoParam.GetPalette()) {
p_palette->GetEntries(paletteEntries);
// TODO
this->m_videoParam.GetPalette()->SetEntries(paletteEntries);
this->m_100dc768->vtable20(this->m_videoParam.GetPalette());
}
this->m_criticalSection.Leave();

View File

@ -2,6 +2,7 @@
#define MXVIDEOMANAGER_H
#include "mxunknown100dc6b0.h"
#include "mxunknown100dc768.h"
#include "mxvideoparam.h"
// VTABLE 0x100dc810
@ -26,7 +27,7 @@ class MxVideoManager : public MxUnknown100dc6b0
MxVideoParam m_videoParam;
LPDIRECTDRAW m_pDirectDraw;
LPDIRECTDRAWSURFACE m_unk54;
void* m_unk58;
MxUnknown100dc768 *m_100dc768;
int m_unk5c;
MxBool m_unk60;
};