diff --git a/src/platform/win/OpenLara.rc b/src/platform/win/OpenLara.rc new file mode 100644 index 0000000..9f444cf Binary files /dev/null and b/src/platform/win/OpenLara.rc differ diff --git a/src/platform/win/OpenLara.vcxproj b/src/platform/win/OpenLara.vcxproj index 0be254e..c76a9aa 100644 --- a/src/platform/win/OpenLara.vcxproj +++ b/src/platform/win/OpenLara.vcxproj @@ -28,7 +28,7 @@ Application true - v140_xp + v141_xp NotSet @@ -40,14 +40,14 @@ Application false - v140_xp + v141_xp true NotSet Application false - v140_xp + v141_xp true NotSet @@ -145,7 +145,7 @@ true - Console + Windows true true true @@ -237,6 +237,12 @@ + + + + + + diff --git a/src/platform/win/OpenLara.vcxproj.filters b/src/platform/win/OpenLara.vcxproj.filters index 2b14242..eaac777 100644 --- a/src/platform/win/OpenLara.vcxproj.filters +++ b/src/platform/win/OpenLara.vcxproj.filters @@ -89,4 +89,10 @@ {80edb27c-40cf-4f7a-a854-88eeba24a5fb} + + + + + + \ No newline at end of file diff --git a/src/platform/win/OpenLara.vcxproj.user b/src/platform/win/OpenLara.vcxproj.user index 29c03db..96911a8 100644 --- a/src/platform/win/OpenLara.vcxproj.user +++ b/src/platform/win/OpenLara.vcxproj.user @@ -1,18 +1,18 @@  - ..\..\..\bin - WindowsLocalDebugger - GYM.PHD - - - C:\Projects\OpenLara\bin\ - WindowsLocalDebugger - - - C:\Projects\OpenLara\bin\TR3_PC + ..\..\..\bin\TR1_PSX WindowsLocalDebugger + + ..\..\..\bin\TR1_PSX + WindowsLocalDebugger + + + ..\..\..\bin\TR1_PSX + WindowsLocalDebugger + PSXDATA/GYM.PSX + \ No newline at end of file diff --git a/src/platform/win/icon.ico b/src/platform/win/icon.ico new file mode 100644 index 0000000..7a5aed3 Binary files /dev/null and b/src/platform/win/icon.ico differ diff --git a/src/platform/win/main.cpp b/src/platform/win/main.cpp index 54a5476..18e9a84 100644 --- a/src/platform/win/main.cpp +++ b/src/platform/win/main.cpp @@ -731,10 +731,12 @@ int main(int argc, char** argv) { _CrtSetReportFile(_CRT_WARN, _CRTDBG_FILE_STDOUT); _CrtMemCheckpoint(&_msBegin); //#elif PROFILE -#else +#elif PROFILE int main(int argc, char** argv) { -//#else -//int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { +#else +int CALLBACK WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) { + int argc = lpCmdLine ? 2 : 1; + char *argv[] = { "", lpCmdLine }; #endif cacheDir[0] = saveDir[0] = contentDir[0] = 0; @@ -746,7 +748,23 @@ int main(int argc, char** argv) { RECT r = { 0, 0, 1280, 720 }; AdjustWindowRect(&r, WS_OVERLAPPEDWINDOW, false); - hWnd = CreateWindow("static", "OpenLara", WS_OVERLAPPEDWINDOW, 0, 0, r.right - r.left, r.bottom - r.top, 0, 0, 0, 0); +#ifndef _DEBUG + { + int ox = (GetSystemMetrics(SM_CXSCREEN) - (r.right - r.left)) / 2; + int oy = (GetSystemMetrics(SM_CYSCREEN) - (r.bottom - r.top)) / 2; + r.left += ox; + r.top += oy; + r.right += ox; + r.bottom += oy; + } +#else + r.right += r.left; + r.bottom += r.top; + r.left = r.top = 0; +#endif + + hWnd = CreateWindow("static", "OpenLara", WS_OVERLAPPEDWINDOW, r.left, r.top, r.right - r.left, r.bottom - r.top, 0, 0, 0, 0); + SendMessage(hWnd, WM_SETICON, 1, (LPARAM)LoadIcon(GetModuleHandle(NULL), "MAINICON")); ContextCreate();