#pragma option w32c
#pragma option ws=32rtm.stb
#pragma option WFU

#define DSdWORD DSDWORD

#include "windef.hmm"

extern WINAPI "user32.dll"{
#define CharLower                      CharLowerA
#define CharLowerBuff                  CharLowerBuffA
#define CharNext                       CharNextA
#define CharPrev                       CharPrevA
#define CharToOem                      CharToOemA
#define CharToOemBuff                  CharToOemBuffA
#define CharUpper                      CharUpperA
#define CharUpperBuff                  CharUpperBuffA
#define IsCharAlpha                    IsCharAlphaA
#define IsCharAlphaNumeric             IsCharAlphaNumericA
#define IsCharLower                    IsCharLowerA
#define IsCharUpper                    IsCharUpperA
#define LoadString                     LoadStringA
#define MessageBox                     MessageBoxA
#define MessageBoxEx                   MessageBoxExA
#define OemToChar                      OemToCharA
#define OemToCharBuff                  OemToCharBuffA
  long  CharLower(dword);
  long  CharLowerBuff(dword,dword);
  long  CharNext(dword);
  long  CharPrev(dword,dword);
  long  CharToOem(dword,dword);
  long  CharToOemBuff(dword,dword,dword);
  long  CharUpper(dword);
  long  CharUpperBuff(dword,dword);
  long  EnumThreadWindows(dword,dword,dword);
  long  GetDesktopWindow();
  long  IsCharAlpha(dword);
  long  IsCharAlphaNumeric(dword);
  long  IsCharLower(dword);
  long  IsCharUpper(dword);
  long  LoadString(dword,dword,dword,dword);
  long  MessageBeep(dword);
  long  MessageBox(dword,dword,dword,dword);
  long  MessageBoxEx(dword,dword,dword,dword,dword);
  long  OemToChar(dword,dword);
  long  OemToCharBuff(dword,dword,dword);
}



extern WINAPI "kernel32.dll"{
#define CopyFile                       CopyFileA
#define CreateDirectory                CreateDirectoryA
#define CreateFile                     CreateFileA
#define CreateFileMapping              CreateFileMappingA
#define CreateProcess                  CreateProcessA
#define DeleteFile                     DeleteFileA
#define FillConsoleOutputCharacter     FillConsoleOutputCharacterA
#define FindFirstFile                  FindFirstFileA
#define FindNextFile                   FindNextFileA
#define FindResource                   FindResourceA
#define FindResourceEx                 FindResourceExA
#define FormatMessage                  FormatMessageA
#define GetCommandLine                 GetCommandLineA
#define GetConsoleTitle                GetConsoleTitleA
#define GetCurrentDirectory            GetCurrentDirectoryA
#define GetDiskFreeSpace               GetDiskFreeSpaceA
#define GetDriveType                   GetDriveTypeA
#define GetEnvironmentStrings          GetEnvironmentStringsA
#define GetEnvironmentVariable         GetEnvironmentVariableA
#define GetFileAttributes              GetFileAttributesA
#define GetFullPathName                GetFullPathNameA
#define GetLogicalDriveStrings         GetLogicalDriveStringsA
#define GetModuleFileName              GetModuleFileNameA
#define GetModuleHandle                GetModuleHandleA
#define GetPrivateProfileInt           GetPrivateProfileIntA
#define GetPrivateProfileSection       GetPrivateProfileSectionA
#define GetPrivateProfileString        GetPrivateProfileStringA
#define GetProfileInt                  GetProfileIntA
#define GetProfileSection              GetProfileSectionA
#define GetProfileString               GetProfileStringA
#define GetStartupInfo                 GetStartupInfoA
#define GetSystemDirectory             GetSystemDirectoryA
#define GetVolumeInformation           GetVolumeInformationA
#define GetWindowsDirectory            GetWindowsDirectoryA
#define LoadLibrary                    LoadLibraryA
#define MoveFile                       MoveFileA
#define OutputDebugString              OutputDebugStringA
#define PeekConsoleInput               PeekConsoleInputA
#define ReadConsole                    ReadConsoleA
#define ReadConsoleInput               ReadConsoleInputA
#define ReadConsoleOutput              ReadConsoleOutputA
#define ReadConsoleOutputCharacter     ReadConsoleOutputCharacterA
#define RemoveDirectory                RemoveDirectoryA
#define ScrollConsoleScreenBuffer      ScrollConsoleScreenBufferA
#define SetConsoleTitle                SetConsoleTitleA
#define SetCurrentDirectory            SetCurrentDirectoryA
#define SetEnvironmentVariable         SetEnvironmentVariableA
#define SetFileAttributes              SetFileAttributesA
#define WriteConsole                   WriteConsoleA
#define WriteConsoleInput              WriteConsoleInputA
#define WriteConsoleOutput             WriteConsoleOutputA
#define WriteConsoleOutputCharacter    WriteConsoleOutputCharacterA
#define WritePrivateProfileSection     WritePrivateProfileSectionA
#define WritePrivateProfileString      WritePrivateProfileStringA
#define WriteProfileSection            WriteProfileSectionA
#define WriteProfileString             WriteProfileStringA
#define lclose                         _lclose
#define lcreat                         _lcreat
#define llseek                         _llseek
#define lopen                          _lopen
#define lread                          _lread
#define lwrite                         _lwrite
#define lstrcat                        lstrcatA
#define lstrcmp                        lstrcmpA
#define lstrcmpi                       lstrcmpiA
#define lstrcpy                        lstrcpyA
#define lstrlen                        lstrlenA
//Borland32
//DoMessageBoxA
//GlobalCompact
//GlobalFix
//GlobalUnWire
//GlobalUnfix
//GlobalWire
//        LoadStringA_K
//RtlUnwind
//SetMouseUnits_
//ShowConsoleCursor
//UnlockResource
//intl_cmp
//intl_cmpi
//intl_isalpha
//intl_isalphanum
//intl_isupper
//intl_lower
//intl_upper
//#define lstrcpyn                       lstrcpynA
//  long  lstrcpyn(dword,dword,dword);
  long  AllocConsole();
  long  Beep(dword,dword);
  long  CloseHandle(dword);
  long  CompareFileTime(dword,dword);
  long  ContinueDebugEvent(dword,dword,dword);
  long  CopyFile(dword,dword,dword);
  long  CreateConsoleScreenBuffer(dword,dword,dword,dword,dword);
  long  CreateDirectory(dword,dword);
  long  CreateFile(dword,dword,dword,dword,dword,dword,dword);
  long  CreateFileMapping(dword,dword,dword,dword,dword,dword);
  long  CreatePipe(dword,dword,dword,dword);
  long  CreateProcess(dword,dword,dword,dword,dword,dword,dword,dword,dword,dword);
  long  CreateThread(dword,dword,dword,dword,dword,dword);
  void  DebugBreak();
  void  DeleteCriticalSection(dword);
  long  DeleteFile(dword);
  long  DeviceIoControl(dword,dword,dword,dword,dword,dword,dword,dword);
  long  DosDateTimeToFileTime(dword,dword,dword);
  long  DuplicateHandle(dword,dword,dword,dword,dword,dword,dword);
  void  EnterCriticalSection(dword);
  void  ExitProcess(dword);
  long  FileTimeToDosDateTime(dword,dword,dword);
  long  FileTimeToLocalFileTime(dword,dword);
  long  FileTimeToSystemTime(dword,dword);
  long  FillConsoleOutputAttribute(dword,dword,dword,dword,dword);
  long  FillConsoleOutputCharacter(dword,dword,dword,dword,dword);
  long  FindClose(dword);
  long  FindFirstFile(dword,dword);
  long  FindNextFile(dword,dword);
  long  FindResource(dword,dword,dword);
  long  FindResourceEx(dword,dword,dword,dword);
  long  FlushConsoleInputBuffer(dword);
  long  FlushFileBuffers(dword);
  long  FormatMessage(dword,dword,dword,dword,dword,dword,dword);
  long  FreeConsole();
  long  FreeLibrary(dword);
  long  FreeResource(dword);
  long  GetACP();
  long  GetCommandLine();
  long  GetConsoleCP();
  long  GetConsoleCursorInfo(dword,dword);
  long  GetConsoleMode(dword,dword);
  long  GetConsoleOutputCP();
  long  GetConsoleScreenBufferInfo(dword,dword);
  long  GetConsoleTitle(dword,dword);
  long  GetCurrentDirectory(dword,dword);
  long  GetCurrentProcess();
  long  GetCurrentProcessId();
  long  GetCurrentThread();
  long  GetCurrentThreadId();
  long  GetDiskFreeSpace(dword,dword,dword,dword,dword);
  long  GetDriveType(dword);
  long  GetEnvironmentStrings();//+++
  long  GetEnvironmentVariable(dword,dword,dword);
  long  GetExitCodeProcess(dword,dword);
  long  GetExitCodeThread(dword,dword);
  long  GetFileAttributes(dword);
  long  GetFileInformationByHandle(dword,dword);
  long  GetFileSize(dword,dword);
  long  GetFileTime(dword,dword,dword,dword);
  long  GetFileType(dword);
  long  GetFullPathName(dword,dword,dword,dword);
  dword GetLargestConsoleWindowSize(dword);
  long  GetLastError();
  void  GetLocalTime(dword);
  long  GetLogicalDriveStrings(dword,dword);
  long  GetLogicalDrives();
  long  GetModuleFileName(dword,dword,dword);
  long  GetModuleHandle(dword);
  long  GetNumberOfConsoleInputEvents(dword,dword);
  long  GetNumberOfConsoleMouseButtons(dword);
  long  GetOEMCP();
  long  GetPrivateProfileInt(dword,dword,dword,dword);
  long  GetPrivateProfileSection(dword,dword,dword,dword);
  long  GetPrivateProfileString(dword,dword,dword,dword,dword,dword);
  long  GetProcAddress(dword,dword);
  long  GetProcessHeap();
  long  GetProfileInt(dword,dword,dword);
  long  GetProfileSection(dword,dword,dword);
  long  GetProfileString(dword,dword,dword,dword,dword);
  void  GetStartupInfo(dword);
  long  GetStdHandle(dword);
  long  GetSystemDirectory(dword,dword);
  void  GetSystemInfo(dword);
  void  GetSystemTime(dword);
  long  GetThreadContext(dword,dword);
  long  GetThreadPriority(dword);
  long  GetThreadSelectorEntry(dword,dword,dword);
  long  GetTickCount();
  long  GetTimeZoneInformation(dword);
  long  GetVersion();
  long  GetVolumeInformation(dword,dword,dword,dword,dword,dword,dword,dword);
  long  GetWindowsDirectory(dword,dword);
  long  GlobalAlloc(dword,dword);
  dword GlobalFlags(dword);
  long  GlobalFree(dword);
  dword GlobalHandle(dword);
  dword GlobalLock(dword);
  void  GlobalMemoryStatus(dword);
  dword GlobalReAlloc(dword,dword,dword);
  dword GlobalSize(dword);
  dword GlobalUnlock(dword);
  long  HeapAlloc(dword,dword,dword);
  long  HeapCreate(dword,dword,dword);
  long  HeapDestroy(dword);
  long  HeapFree(dword,dword,dword);
  long  HeapReAlloc(dword,dword,dword,dword);
  long  HeapSize(dword,dword,dword);
  void  InitializeCriticalSection(dword);
  void  LeaveCriticalSection(dword);
  long  LoadLibrary(dword);
  long  LoadModule(dword,dword);
  long  LoadResource(dword,dword);
  long  LocalAlloc(dword,dword);
  long  LocalCompact(dword);
  long  LocalFileTimeToFileTime(dword,dword);
  long  LocalFlags(dword);
  long  LocalFree(dword);
  long  LocalHandle(dword);
  long  LocalLock(dword);
  long  LocalReAlloc(dword,dword,dword);
  long  LocalShrink(dword,dword);
  long  LocalSize(dword);
  long  LocalUnlock(dword);
  long  LockFile(dword,dword,dword,dword,dword);
  long  LockResource(dword);
  long  MapViewOfFile(dword,dword,dword,dword,dword);
  long  MoveFile(dword,dword);
  long  MultiByteToWideChar(dword,dword,dword,dword,dword,dword);
  long  OpenFile(dword,dword,dword);
  void  OutputDebugString(dword);
  dword PeekConsoleInput(dword,dword,dword,dword);
  void  RaiseException(dword,dword,dword,dword);
  long  ReadConsole(dword,dword,dword,dword,dword);
  dword ReadConsoleInput(dword,dword,dword,dword);
  long  ReadConsoleOutput(dword,dword,dword,dword,dword);
  long  ReadConsoleOutputAttribute(dword,dword,dword,dword,dword);
  long  ReadConsoleOutputCharacter(dword,dword,dword,dword,dword);
  long  ReadFile(dword,dword,dword,dword,dword);
  long  ReadProcessMemory(dword,dword,dword,dword,dword);
  long  RemoveDirectory(dword);
  long  ResumeThread(dword);
  long  ScrollConsoleScreenBuffer(dword,dword,dword,dword,dword);
  long  SetConsoleCP(dword);
  long  SetConsoleCtrlHandler(dword,dword);
  long  SetConsoleCursorInfo(dword,dword);
  long  SetConsoleCursorPosition(dword,dword);
  long  SetConsoleMode(dword,dword);
  long  SetConsoleOutputCP(dword);
  long  SetConsoleScreenBufferSize(dword,dword);
  long  SetConsoleTextAttribute(dword,dword);
  long  SetConsoleTitle(dword);
  long  SetConsoleWindowInfo(dword,dword,dword);
  long  SetCurrentDirectory(dword);
  long  SetEndOfFile(dword);
  long  SetEnvironmentVariable(dword,dword);
  long  SetFileAttributes(dword,dword);
  long  SetFilePointer(dword,dword,dword,dword);
  long  SetFileTime(dword,dword,dword,dword);
  long  SetHandleCount(dword);
  void  SetLastError(dword);
  long  SetLocalTime(dword);
  long  SetStdHandle(dword,dword);
  long  SetSystemTime(dword);
  long  SetThreadContext(dword,dword);
  long  SetThreadPriority(dword,dword);
  long  SetTimeZoneInformation(dword);
  long  SetUnhandledExceptionFilter(dword);
  long  SizeofResource(dword,dword);
  void  Sleep(dword);
  long  SuspendThread(dword);
  long  SystemTimeToFileTime(dword,dword);
  long  TerminateProcess(dword,dword);
  long  TlsAlloc();
  long  TlsFree(dword);
  long  TlsGetValue(dword);
  long  TlsSetValue(dword,dword);
  long  UnhandledExceptionFilter(dword);
  long  UnlockFile(dword,dword,dword,dword,dword);
  long  UnmapViewOfFile(dword);
  long  VirtualAlloc(dword,dword,dword,dword);
  long  VirtualFree(dword,dword,dword);
  long  VirtualProtect(dword,dword,dword,dword);
  long  VirtualQuery(dword,dword,dword);
  dword WaitForDebugEvent(dword,dword);
  long  WaitForMultipleObjects(dword,dword,dword,dword);
  long  WaitForSingleObject(dword,dword);
  long  WideCharToMultiByte(dword,dword,dword,dword,dword,dword,dword,dword);
  long  WriteConsole(dword,dword,dword,dword,dword);
  long  WriteConsoleInput(dword,dword,dword,dword);
  long  WriteConsoleOutput(dword,dword,dword,dword,dword);
  long  WriteConsoleOutputAttribute(dword,dword,dword,dword,dword);
  long  WriteConsoleOutputCharacter(dword,dword,dword,dword,dword);
  long  WriteFile(dword,dword,dword,dword,dword);
  long  WritePrivateProfileSection(dword,dword,dword);
  long  WritePrivateProfileString(dword,dword,dword,dword);
  long  WriteProcessMemory(dword,dword,dword,dword,dword);
  long  WriteProfileSection(dword,dword);
  long  WriteProfileString(dword,dword,dword);
  long  _lclose(dword);
  long  _lcreat(dword,dword);
  long  _llseek(dword,dword,dword);
  long  _lopen(dword,dword);
  long  _lread(dword,dword,dword);
  long  _lwrite(dword,dword,dword);
  long  lstrcat(dword,dword);
  long  lstrcmp(dword,dword);
  long  lstrcmpi(dword,dword);
  long  lstrcpy(dword,dword);
  long  lstrlen(dword);
}

#include "32user32.hmm"

#include "mystart.hmm"
