mirror of
https://github.com/isledecomp/isle.git
synced 2026-01-11 18:51:16 +00:00
Merge branch 'isledecomp:master' into mxpalette-header
This commit is contained in:
commit
95a8df1311
62
.github/workflows/build.yml
vendored
Normal file
62
.github/workflows/build.yml
vendored
Normal file
@ -0,0 +1,62 @@
|
||||
name: Build
|
||||
|
||||
on:
|
||||
push:
|
||||
branches: [ "master" ]
|
||||
pull_request:
|
||||
branches: [ "master" ]
|
||||
|
||||
jobs:
|
||||
build:
|
||||
runs-on: windows-latest
|
||||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- uses: actions/checkout@v3
|
||||
with:
|
||||
repository: 'itsmattkc/msvc420'
|
||||
path: msvc420
|
||||
|
||||
- name: Restore cached DX5 SDK
|
||||
id: cache-dx5
|
||||
uses: actions/cache/restore@v3
|
||||
with:
|
||||
path: dx5sdk
|
||||
key: dx5sdk
|
||||
|
||||
- name: Download DX5 SDK
|
||||
if: steps.cache-dx5.outputs.cache-hit != 'true'
|
||||
run: |
|
||||
cd dx5sdk
|
||||
C:\msys64\usr\bin\wget.exe https://archive.org/download/idx5sdk/idx5sdk.exe
|
||||
7z x .\idx5sdk.exe
|
||||
7z x .\DX5SDK.EXE
|
||||
cd cdrom
|
||||
|
||||
- name: Cache DX5 SDK
|
||||
if: steps.cache-dx5.outputs.cache-hit != 'true'
|
||||
id: save-dx5
|
||||
uses: actions/cache/save@v3
|
||||
with:
|
||||
path: dx5sdk
|
||||
key: dx5sdk
|
||||
|
||||
- name: Setup DX5 SDK
|
||||
run: |
|
||||
cd dx5sdk
|
||||
cd cdrom
|
||||
.\SETUP.EXE /s
|
||||
|
||||
- name: Build
|
||||
shell: cmd
|
||||
run: |
|
||||
call .\msvc420\bin\VCVARS32.BAT x86
|
||||
mkdir Release
|
||||
.\msvc420\bin\NMAKE.EXE /f isle.mak CFG="ISLE - Win32 Release"
|
||||
|
||||
- name: Upload Artifact
|
||||
uses: actions/upload-artifact@master
|
||||
with:
|
||||
name: Win32
|
||||
path: Release
|
||||
@ -3,8 +3,7 @@
|
||||
Isle *g_isle = 0;
|
||||
int g_closed = 0;
|
||||
|
||||
const char *WNDCLASS_NAME = "Lego Island MainNoM App";
|
||||
const char *WINDOW_TITLE = "LEGO®";
|
||||
const char *WINDOW_TITLE = "LEGO®";
|
||||
|
||||
unsigned char g_mousedown = 0;
|
||||
unsigned char g_mousemoved = 0;
|
||||
|
||||
@ -5,7 +5,7 @@ class Isle;
|
||||
|
||||
extern Isle *g_isle;
|
||||
extern int g_closed;
|
||||
extern const char *WNDCLASS_NAME;
|
||||
#define WNDCLASS_NAME "Lego Island MainNoM App"
|
||||
extern const char *WINDOW_TITLE;
|
||||
extern unsigned char g_mousedown;
|
||||
extern unsigned char g_mousemoved;
|
||||
|
||||
@ -119,15 +119,17 @@ BOOL readReg(LPCSTR name, LPSTR outValue, DWORD outSize)
|
||||
HKEY hKey;
|
||||
DWORD valueType;
|
||||
|
||||
BOOL out = FALSE;
|
||||
unsigned long size = outSize;
|
||||
if (RegOpenKeyExA(HKEY_LOCAL_MACHINE, "SOFTWARE\\Mindscape\\LEGO Island", 0, KEY_READ, &hKey) == ERROR_SUCCESS) {
|
||||
if (RegQueryValueExA(hKey, name, NULL, &valueType, (LPBYTE) outValue, &outSize) == ERROR_SUCCESS) {
|
||||
if (RegQueryValueExA(hKey, name, NULL, &valueType, (LPBYTE) outValue, &size) == ERROR_SUCCESS) {
|
||||
if (RegCloseKey(hKey) == ERROR_SUCCESS) {
|
||||
return TRUE;
|
||||
out = TRUE;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return FALSE;
|
||||
return out;
|
||||
}
|
||||
|
||||
int readRegBool(LPCSTR name, BOOL *out)
|
||||
@ -234,8 +236,8 @@ void Isle::setupVideoFlags(BOOL fullScreen, BOOL flipSurfaces, BOOL backBuffers,
|
||||
m_videoParam.flags().EnableBackBuffers(backBuffers);
|
||||
m_videoParam.flags().EnableUnknown1(param_6);
|
||||
m_videoParam.flags().SetUnknown3(param_7);
|
||||
m_videoParam.flags().EnableUnknown2();
|
||||
m_videoParam.flags().EnableWideViewAngle(wideViewAngle);
|
||||
m_videoParam.flags().EnableUnknown2();
|
||||
m_videoParam.SetDeviceName(deviceId);
|
||||
if (using8bit) {
|
||||
m_videoParam.flags().Set8Bit();
|
||||
@ -324,18 +326,18 @@ LRESULT WINAPI WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
|
||||
case WM_ENTERMENULOOP:
|
||||
return DefWindowProcA(hWnd,WM_ENTERMENULOOP,wParam,lParam);
|
||||
case WM_SYSCOMMAND:
|
||||
if (wParam == 0xf140) {
|
||||
if (wParam == SC_SCREENSAVE) {
|
||||
return 0;
|
||||
}
|
||||
if (wParam == 0xf060 && g_closed == 0) {
|
||||
if (wParam == SC_CLOSE && g_closed == 0) {
|
||||
if (g_isle) {
|
||||
if (g_rmDisabled) {
|
||||
ShowWindow(g_isle->m_windowHandle, SW_RESTORE);
|
||||
}
|
||||
PostMessageA(g_isle->m_windowHandle, 0x10, 0, 0);
|
||||
PostMessageA(g_isle->m_windowHandle, WM_CLOSE, 0, 0);
|
||||
return 0;
|
||||
}
|
||||
} else if (g_isle && g_isle->m_fullScreen && (wParam == 0xf010 || wParam == 0xf100)) {
|
||||
} else if (g_isle && g_isle->m_fullScreen && (wParam == SC_MOVE || wParam == SC_KEYMENU)) {
|
||||
return 0;
|
||||
}
|
||||
return DefWindowProcA(hWnd,WM_SYSCOMMAND,wParam,lParam);
|
||||
|
||||
@ -19,7 +19,7 @@ BOOL findExistingInstance(void)
|
||||
|
||||
BOOL startDirectSound(void)
|
||||
{
|
||||
LPDIRECTSOUND lpDS;
|
||||
LPDIRECTSOUND lpDS = 0;
|
||||
HRESULT ret = DirectSoundCreate(NULL, &lpDS, NULL);
|
||||
if (ret == DS_OK && lpDS != NULL) {
|
||||
lpDS->Release();
|
||||
|
||||
34
dx5sdk/cdrom/setup.iss
Normal file
34
dx5sdk/cdrom/setup.iss
Normal file
@ -0,0 +1,34 @@
|
||||
[InstallShield Silent]
|
||||
Version=v5.00.000
|
||||
File=Response File
|
||||
[DlgOrder]
|
||||
Dlg0=SdWelcome-0
|
||||
Count=7
|
||||
Dlg1=SdLicense-0
|
||||
Dlg2=SdSetupTypeEx-0
|
||||
Dlg3=SdAskDestPath-0
|
||||
Dlg4=SdSelectFolder-0
|
||||
Dlg5=SdStartCopy-0
|
||||
Dlg6=SdFinish-0
|
||||
[SdWelcome-0]
|
||||
Result=1
|
||||
[SdLicense-0]
|
||||
Result=1
|
||||
[SdSetupTypeEx-0]
|
||||
Result=Compact
|
||||
[SdAskDestPath-0]
|
||||
szDir=C:\dxsdk
|
||||
Result=1
|
||||
[SdSelectFolder-0]
|
||||
szFolder=Microsoft DirectX 5 SDK
|
||||
Result=1
|
||||
[SdStartCopy-0]
|
||||
Result=1
|
||||
[Application]
|
||||
Name=the Microsoft DirectX 5 SDK
|
||||
Version=5
|
||||
Company=Microsoft
|
||||
[SdFinish-0]
|
||||
Result=1
|
||||
bOpt1=0
|
||||
bOpt2=0
|
||||
Loading…
Reference in New Issue
Block a user