/**************************************************************************** * * SciTech OS Portability Manager Library * * ======================================================================== * * The contents of this file are subject to the SciTech MGL Public * License Version 1.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at http://www.scitechsoft.com/mgl-license.txt * * Software distributed under the License is distributed on an * "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or * implied. See the License for the specific language governing * rights and limitations under the License. * * The Original Code is Copyright (C) 1991-1998 SciTech Software, Inc. * * The Initial Developer of the Original Code is SciTech Software, Inc. * All Rights Reserved. * * ======================================================================== * * Language: ANSI C * Environment: Win32 * * Description: Include file to include all OS specific header files. * ****************************************************************************/ #define WIN32_LEAN_AND_MEAN #define STRICT #include #include #include #define NONAMELESSUNION #include "pm/ddraw.h" /* Macros to save and restore the default control word. Windows 9x has * some bugs in it such that calls to load any DLL's which load 16-bit * DLL's cause the floating point control word to get trashed. We fix * this by saving and restoring the control word across problematic * calls. */ #if defined(__INTEL__) #define GET_DEFAULT_CW() \ { \ if (_PM_cw_default == 0) \ _PM_cw_default = _control87(0,0); \ } #define RESET_DEFAULT_CW() \ _control87(_PM_cw_default,0xFFFFFFFF) #else #define GET_DEFAULT_CW() #define RESET_DEFAULT_CW() #endif /* Custom window messages */ #define WM_DO_SUSPEND_APP WM_USER #define WM_PM_LEAVE_FULLSCREEN 0 #define WM_PM_RESTORE_FULLSCREEN 1 /* Macro for disabling AutoPlay on a use system */ #define AUTOPLAY_DRIVE_CDROM 0x20 /*--------------------------- Global Variables ----------------------------*/ #ifdef __INTEL__ extern uint _PM_cw_default; /* Default FPU control word */ #endif extern int _PM_deskX,_PM_deskY; /* Desktop dimensions */ extern HWND _PM_hwndConsole; /* Window handle for console */ /*-------------------------- Internal Functions ---------------------------*/ void _EVT_pumpMessages(void);