Files
Cyd 2b8ca921cb Initial full mirror of c:\VWE (source + assets + toolchain + outputs) via Git LFS
Complete disaster-recovery snapshot: engine/game source, game data assets,
VC6 toolchain + DX SDKs, build outputs, deployed game, and _UNUSED archive.
Large binaries in Git LFS; text preserved byte-for-byte (core.autocrlf=false,
no eol attributes). See RECOVERY.md for the one-clone rebuild procedure.
2026-06-24 21:28:16 -05:00

141 lines
3.7 KiB
C++

// autoconfig.cpp : Defines the class behaviors for the application.
//
#include "stdafx.h"
#include "autoconfig.h"
#include "autoconfigDlg.h"
#if !defined(STUFF_STUFF_HPP)
#include "Stuff\Stuff.hpp"
#endif
#include <GameOS\GameOS.hpp>
#include <MFCPlatform\MFCPlatform.hpp>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
/////////////////////////////////////////////////////////////////////////////
// CAutoconfigApp
BEGIN_MESSAGE_MAP(CAutoconfigApp, CWinApp)
//{{AFX_MSG_MAP(CAutoconfigApp)
// NOTE - the ClassWizard will add and remove mapping macros here.
// DO NOT EDIT what you see in these blocks of generated code!
//}}AFX_MSG
ON_COMMAND(ID_HELP, CWinApp::OnHelp)
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CAutoconfigApp construction
CAutoconfigApp::CAutoconfigApp()
{
// TODO: add construction code here,
// Place all significant initialization in InitInstance
}
/////////////////////////////////////////////////////////////////////////////
// The one and only CAutoconfigApp object
CAutoconfigApp theApp;
/////////////////////////////////////////////////////////////////////////////
// CAutoconfigApp initialization
BOOL CAutoconfigApp::InitInstance()
{
AfxEnableControlContainer();
// Standard initialization
// If you are not using these features and wish to reduce the size
// of your final executable, you should remove from the following
// the specific initialization routines you do not need.
#ifdef _AFXDLL
Enable3dControls(); // Call this when using MFC in a shared DLL
#else
Enable3dControlsStatic(); // Call this when linking to MFC statically
#endif
CString mutexstr;
mutexstr.LoadString(AFX_IDS_APP_TITLE);
HANDLE rst=CreateMutex(NULL,TRUE,mutexstr);
if(ERROR_ALREADY_EXISTS==GetLastError())
{
CString errmsg,title;
errmsg.LoadString(IDS_APPRUNNING);
title.LoadString(IDS_ERROR);
if (MessageBox(NULL,errmsg,title,MB_ICONQUESTION | MB_YESNO) == IDNO)
{
exit(1);
}
ReleaseMutex(rst);
CreateMutex(NULL,TRUE,mutexstr);
}
CAutoconfigDlg dlg;
m_pMainWnd = &dlg;
int nResponse = dlg.DoModal();
if (nResponse == IDOK)
{
// TODO: Place code here to handle when the dialog is
// dismissed with OK
}
else if (nResponse == IDCANCEL)
{
// TODO: Place code here to handle when the dialog is
// dismissed with Cancel
}
// Since the dialog has been closed, return FALSE so that we exit the
// application, rather than start the application's message pump.
return FALSE;
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void _stdcall InitializeGameEngine()
{
Stuff::InitializeClasses();
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void _stdcall TerminateGameEngine()
{
Stuff::TerminateClasses();
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
//
void __stdcall GetGameOSEnvironment(char* CommandLine)
{
//
//----------------------------------------------------------
// This is where to set GOS environment settings.
//----------------------------------------------------------
//
Environment.applicationName = "AutoConfig";
Environment.directoryPath = "\\Tools\\AutoConfig";
Environment.screenWidth = 640;
Environment.screenHeight = 480;
Environment.bitDepth = 16;
Environment.InitializeGameEngine = InitializeGameEngine;
Environment.TerminateGameEngine = TerminateGameEngine;
Environment.Renderer = 3; // use blade to avoid Voodoo problems
}