- #ifndef WIN95_POLYFILL_TYPES_H 
- #define WIN95_POLYFILL_TYPES_H 
-   
- #include <stddef.h> 
- #include <stdint.h> 
-   
- typedef void* HANDLE_; 
-   
- #ifndef _WIN32 // Pierre-Marie Baty -- include guard 
-   
- #define GENERIC_READ 0x80000000 
- #define OPEN_EXISTING 3 
- //#define FILE_ATTRIBUTE_NORMAL 0x80 // Pierre-Marie Baty -- avoid multiple definitions 
- #define INVALID_HANDLE_VALUE ((HANDLE_*)-1) 
- #define INVALID_FILE_ATTRIBUTES -1 
-   
- #define FILE_ATTRIBUTE_READONLY 0x01 
- #define FILE_ATTRIBUTE_NORMAL 0x80 
-   
- #define HWND_BROADCAST ((void*)0xffff) 
-   
- #define _CRT_ASSERT 2 
-   
- #define WM_QUIT 0x0012 
-   
- #define MB_ICONERROR 0x00000010 
-   
- #endif // !_WIN32 
-   
- #define _CRT_ASSERT 2 // Pierre-Marie Baty -- missing one 
-   
- typedef struct _MEMORYSTATUS_ { 
-     uint32_t dwLength; 
-     uint32_t dwMemoryLoad; 
-     size_t dwTotalPhys; 
-     size_t dwAvailPhys; 
-     size_t dwTotalPageFile; 
-     size_t dwAvailPageFile; 
-     size_t dwTotalVirtual; 
-     size_t dwAvailVirtual; 
- } MEMORYSTATUS_; 
-   
- typedef struct tagPOINT_ { 
-     long x; 
-     long y; 
- } POINT_; 
-   
- #pragma pack(push, 1) 
- typedef struct tagPALETTEENTRY_ { 
-     uint8_t peRed; 
-     uint8_t peGreen; 
-     uint8_t peBlue; 
-     uint8_t peFlags; 
- } PALETTEENTRY_; 
- #pragma pack(pop) 
-   
- typedef struct _WIN32_FIND_DATA_ { 
-     // uint32_t dwFileAttributes; 
-     // FILETIME ftCreationTime; 
-     // FILETIME ftLastAccessTime; 
-     // FILETIME ftLastWriteTime; 
-     // uint32_t nFileSizeHigh; 
-     // uint32_t nFileSizeLow; 
-     // uint32_t dwReserved0; 
-     // uint32_t dwReserved1; 
-     char cFileName[1024]; 
-     // char cAlternateFileName[14]; 
- } WIN32_FIND_DATAA_; 
-   
- typedef struct tagMSG_ { 
-     void* hwnd; 
-     unsigned int message; 
-     int wParam; 
-     long lParam; 
-     uint32_t time; 
-     POINT_ pt; 
-     uint32_t lPrivate; 
- } MSG_; 
-   
- #endif 
-