2023-04-27 22:19:39 -04:00
|
|
|
#ifndef ISLE_H
|
|
|
|
#define ISLE_H
|
|
|
|
|
2023-06-19 00:45:25 -04:00
|
|
|
#include <windows.h>
|
2023-04-27 22:19:39 -04:00
|
|
|
|
2023-05-05 05:54:17 -04:00
|
|
|
#include "mxresult.h"
|
|
|
|
#include "mxvideoparam.h"
|
2023-04-27 22:19:39 -04:00
|
|
|
|
|
|
|
class Isle
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
Isle();
|
|
|
|
~Isle();
|
|
|
|
|
2023-06-21 03:30:46 -04:00
|
|
|
void Close();
|
|
|
|
|
|
|
|
BOOL ReadReg(LPCSTR name, LPSTR outValue, DWORD outSize);
|
|
|
|
int ReadRegBool(LPCSTR name, BOOL *out);
|
|
|
|
int ReadRegInt(LPCSTR name, int *out);
|
2023-04-27 22:19:39 -04:00
|
|
|
|
2023-06-19 00:51:06 -04:00
|
|
|
MxResult SetupWindow(HINSTANCE hInstance);
|
2023-04-27 22:19:39 -04:00
|
|
|
|
2023-06-19 00:51:06 -04:00
|
|
|
void Tick(BOOL sleepIfNotNextFrame);
|
2023-04-27 22:19:39 -04:00
|
|
|
|
2023-06-19 00:51:06 -04:00
|
|
|
BOOL SetupLegoOmni();
|
|
|
|
void LoadConfig();
|
|
|
|
void SetupVideoFlags(BOOL fullScreen, BOOL flipSurfaces, BOOL backBuffers,
|
2023-04-27 22:19:39 -04:00
|
|
|
BOOL using8bit, BOOL m_using16bit, BOOL param_6, BOOL param_7,
|
|
|
|
BOOL wideViewAngle, char *deviceId);
|
|
|
|
|
2023-06-19 00:51:06 -04:00
|
|
|
void SetupCursor(WPARAM wParam);
|
2023-04-27 23:34:11 -04:00
|
|
|
|
2023-06-19 00:51:06 -04:00
|
|
|
// private:
|
2023-04-27 22:19:39 -04:00
|
|
|
|
|
|
|
// 0
|
|
|
|
LPSTR m_hdPath;
|
|
|
|
LPSTR m_cdPath;
|
|
|
|
LPSTR m_deviceId;
|
|
|
|
LPSTR m_savePath;
|
|
|
|
|
|
|
|
// 10
|
|
|
|
BOOL m_fullScreen;
|
|
|
|
BOOL m_flipSurfaces;
|
|
|
|
BOOL m_backBuffersInVram;
|
|
|
|
BOOL m_using8bit;
|
|
|
|
|
|
|
|
// 20
|
|
|
|
BOOL m_using16bit;
|
|
|
|
int m_unk24;
|
|
|
|
BOOL m_use3dSound;
|
|
|
|
BOOL m_useMusic;
|
|
|
|
|
|
|
|
// 30
|
|
|
|
BOOL m_useJoystick;
|
|
|
|
int m_joystickIndex;
|
|
|
|
BOOL m_wideViewAngle;
|
|
|
|
int m_islandQuality;
|
|
|
|
|
|
|
|
// 40
|
|
|
|
int m_islandTexture;
|
|
|
|
int m_gameStarted;
|
|
|
|
long m_frameDelta;
|
|
|
|
|
|
|
|
// 4c
|
|
|
|
MxVideoParam m_videoParam;
|
|
|
|
|
|
|
|
// 70
|
|
|
|
BOOL m_windowActive;
|
|
|
|
HWND m_windowHandle;
|
|
|
|
BOOL m_drawCursor;
|
2023-04-27 23:34:11 -04:00
|
|
|
HCURSOR m_cursorArrow;
|
2023-04-27 22:19:39 -04:00
|
|
|
|
|
|
|
// 80
|
2023-04-27 23:34:11 -04:00
|
|
|
HCURSOR m_cursorBusy;
|
|
|
|
HCURSOR m_cursorNo;
|
|
|
|
HCURSOR m_cursorCurrent;
|
2023-04-27 22:19:39 -04:00
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
#endif // ISLE_H
|