This is part of Win16 API which allow to create versions of program from one source code to run under OS/2 and Win16. Under OS/2 program can be running under Win-OS/2 if program is Windows NE executable, and with help on Windows Libraries for OS/2, if it is OS/2 NE executable. Here is a WLO to OS/2 API mapping draft

Windows kernel for 8086 (KERNEL.EXE) doesn't uses DPMI or LDT for memory management. KERNEL.EXE for later versions of Windows emulates selectors functions via segments (like FAPI does), but not so good (mostly functions returns errors). KRNL286.EXE and KRNL386.EXE uses direct LDT manipulations. Kernels for WOW uses DPMI functions. For now, osFree tries to reuse only DPMI (in future it is possible to implement direct LDT manipulation, may be).

DGROUP, Local Heap and Atom Table

Note minimal checked windows version is 1.03.

Ordinal	Name	Description	Status	Version	ECMA-234
Real	Std	Enh
001	FatalExit	Display the current state of Windows and prompts for instructions on how to proceed	1.03	Yes
002	ExitKernel
003	GetVersion	Return the current version of Windows	1.03	Yes
004	LocalInit	Initialize local heap	Yes
005	LocalAlloc	Allocate wBytes bytes of memory from the local heap	1.03	Yes
006	LocalRealloc	Reallocate the local memory block	1.03	Yes
007	LocalFree	Free the local memory block	1.03	Yes
008	LocalLock	Lock the local memory block	1.03	Yes
009	LocalUnlock	Unlock the local memory block	1.03	Yes
010	LocalSize	Retrieve the current size, in bytes, of the local memory block	1.03	Yes
011	LocalHandle	Retrieve the handle associated with the specified pointer to a local memory object	Yes
012	LocalFlags	Return information about the specified local memory block	1.03	Yes
013	LocalCompact	Generate free bytes of memory by compacting, if necessary, the module's local heap	1.03	Yes
014	LocalNotify	Set a notification callback function for local heap events
015	GlocalAlloc	Allocate memory from the global heap	1.03	Yes
016	GlobalRealloc	Reallocate the global memory block	1.03	Yes
017	GlobalFree	Free the global memory block	1.03	Yes
018	GlobalLock	Retrieve the absolute memory address of the global memory block	1.03	Yes
019	GlobalUnlock	Unlock the global memory block	1.03	Yes
020	GlobalSize	Retrieve the current size, in bytes, of the global memory block	1.03	Yes
021	GlobalHandle	Retrieve handle for given address	Yes
022	GlobalFlags	Return information1 about the specified global memory block	1.03	Yes
023	LockSegment
024	UnlockSegment
025	GlobalCompact	Generate free bytes of global memory by compacting, if necessary, the system's global heap	1.03	Yes
026	GlobalFreeAll
027	GetModuleName
028	GlobalMasterHandle
029	Yield	halts the current task and starts any waiting task	1.03	Yes
030	WaitEvent
031	PostEvent
032	SetPriority
033	LockCurrentTask
034	SetTaskQueue
035	GetTaskQueue
036	GetCurrentTask	Return the handle of the currently executing task	1.03	Yes
037	GetCurrentPDB	Return current PDB
038	SetTaskSignalProc
039	SetTaskSwitchProc
040	SetTaskInterchange
041	EnableDOS
042	DisableDOS
043	IsScreenGrab
044	BuildPDB
045	LoadModule	Load module	Yes
046	FreeModule	Release module	Yes
047	GetModuleHandle	Retrieve the module handle of the specified module	1.03	Yes
048	GetModuleUsage	Return the reference count of a given module	1.03	Yes
049	GetModuleFileName	Retrieve the name of the executable file from which the specified module was loaded	1.03	Yes
050	GetProcAddress	Retrieve the memory address of the function whose name	1.03	Yes
051	MakeProcInstance	Bind the data segment of the module instance specified to the function pointed	1.03	Yes
052	FreeProcInstance	Frees the function specified from the data segment	1.03	Yes
053	CallProcInstance
054	GetInstanceData	Copy data from a previous instance of an application into the data area of the current instance	1.03	Yes
055	Catch	Catch the current execution environment and copy it the the buffer	1.03	Yes
056	Throw	Restore the execution environment to the values saved in the buffer	1.03	Yes
057	GetProfileInt	Retrieve the value of an integer key from the the Windows initialization file	1.03	Yes
058	GetProfileString	Copy a character string from the user profile into the buffer	1.03	Yes
059	WriteProfileString	Copy the character string into the Windows initialization file	1.03	Yes
060	FindeResource	Determine the location of a resource in the specified resource file	1.03	Yes
061	LoadResource	Load a resource from the executable file associated with the module	1.03	Yes
062	LockResource	Retrieve the absolute memory address of the loaded resource	1.03	Yes
063	FreeResource	Remove a loaded resource from memory by freeing the allocated memory occupied by that resource	1.03	Yes
064	AccessResource	Open the specified resource file and moves the file pointer to the beginning of the specified resource	1.03
065	SizeOfResource	Supply the size in bytes of the specified resource	1.03	Yes
066	AllocResource	Allocate uninitialized memory for the passed resource	1.03	Yes
067	SetResourceHandle	Set up a function to load resources	1.03	Yes
068	InitAtomTable	Initialize an atom hash table and set its size	1.03
069	FindAtom	Search the atom table for the character string	1.03
070	AddAtom	Add the character string to the atom table	1.03
071	DeleteAtom	Delete an atom	1.03
072	GetAtomName	Retrieve a copy of the character string associated with atom	1.03
073	GetAtomHandle
074	OpenFile	Create, open, reopen, or delete a file	1.03	Yes
075	OpenPathname
076	DeletePathname
077	AnsiNext	Move to the next character in a string	1.03	Yes
078	AnsiPrev	Move to the previous character in a string	1.03	Yes
079	AnsiUpper	Convert a string or a character to upper case	1.03	Yes
080	AnsiLower	Convert the given string to lower case	1.03	Yes
081	_lclose	Close the file described by the file handle	Yes
082	_lread	Read a specified number of bytes from a file into memory	Yes
083	_lcreat	Create and open a file, described by FileName, for reading and/or writing	Yes
084	_llseek	Move the current file position pointer of the file	Yes
085	_lopen	Open a file	Yes
086	_lwrite	Write a specified number of bytes of memory to a file	Yes
087	lstrcmp	Compare two strings	Yes
088	lstrcpy	Copy the contents from one string to another	Yes
089	lstrcat	Concatecate the contents of two strings	Yes
090	lstrlen	Determines the length of the string	Yes
091	InitTask
092	GetTempDrive	Return a letter specifying the optimal drive for a temporary file	1.03	Yes
093	GetCodeHandle	Return the handle of the code segment containing the function pointed	1.03
094	DefineHandleTable
095	LoadLibrary	Load the library module contained in the specified file and returns a handle to the loaded module	1.03	Yes
096	FreeLibrary	Free memory occuped by library when module reference count equal to zero	1.03	Yes
097	GetTempFilename	Create a temporary filename	1.03	Yes
098	GetLastDiskChange
099	GetLpErrMode
100	ValidateCodeSegments
101	NoHookDosCall	Call DOS INT 21H directly
102	Dos3Call
103	NetbiosCall
104	GetCodeInto
105	GetExeVersion
106	SetSwapAreaSize
107	SetErrorMode	Yes
108	SwitchStackTo
109	SwitchStackBack
110	PatchCodeHandle
111	GlobalWire
112	GlobalUnwire
113	__AHSHIFT
114	__AHINCR
115	OutputDebugString	Yes
116	InitLib
117	OldYield
118	GetTaskQueueDS
119	GetTaskQueueES
120	UndefDynLink
121	LocalShrink	Yes
122	IsTaskLocked
123	KbdRst
124	EnableKernel
125	DisableKernel
126	MemoryFreed
127	GetPrivateProfileInt	Yes
128	GetPrivateProfileString	Yes
129	WritePrivatePRofileString	Yes
130	FileCdr
131	GetDOSEnvironment
132	GetWinFlags	Yes
133	GetExePtr
134	GetWindowsDirectory	Yes
135	GetSystemDirectory	Yes
136	GetDriveType	Yes
137	FatalAppExit	Yes
138	GetHeapSpaces
139	DoSignal
140	SetSigHandler
141	InitTask1
142	GetProfileSectionNames
143	GetPrivateProfileSectionNames
144	CreateDirectory
145	RemoveDirectory
146	DeleteFile
147	SetLastError
148	GetLastError
149	GetVersionEx
150	DirectedYield	Yes
151	WinOldApCall
152	GetNumTasks	Yes
153	???
154	GlobalNotify	Yes
155	GetTaskDS
156	LimitEMSPages
157	GetCurPID
158	IsWinOldApTask
159	GlobalHandleNoRip
160	EMSCopy
161	LocalCountFree
162	LocalHeapSize
163	GlobalLRUOldest	Yes
164	GlobalLRUNewest	Yes
165	A20Proc
166	WinExec	Yes
167	GetExpWinVer
168	DirectResAlloc
169	GEtFreeSpace	Yes
170	AllocCSToDSAlisa
171	AllocDSToCSAlias
172	AllocAlias
173	__ROMBIOS	BIOS selector
174	__A000H	Selector of A000:0000
175	AllocSelector
176	FreeSelector
177	PrestoChangoSelector
178	__WINFLAGS
179	__D000H	Selector of D000:0000
180	LongPtrAdd
181	__B000H	Selector of B000:0000
182	__B800H	Selector of B800:0000
183	__0000H	Selector of 0000:0000
184	GlobalDOSAlloc	Allocate memory blocks in the first megabyte address space
185	GlobalDOSFree	Free memory blocks in the first megabyte address space
186	GetSelectorBase	Get selector base address
187	SetSelectorBase	Sel selector base address
188	GetSelectorLimit	Get selector memory limit
189	SetSelectorLimit	Set selector memory limit
190	__E000H	Selector of E000:0000
191	GlobalPageLock
192	GlobalPageUnlock
193	__0040H	Selector of 0040:0000
194	__F000H	Selector of F000:0000
195	__C000H	Selector of C000:0000
196	SelectorAccessRights
197	GlobalFix	Yes
198	GlobalUnfix	Yes
199	SetHandleCount	Yes
200	ValidateFreeSpaces
201	ReplaceInst
202	RegisterPtrace
203	DebugBreak
204	SwapRecording
205	CVWBreak
206	AllocSelectorArray
207	IsDBCSLeadByte	Yes
310	LocalHandleDelta	Set the number of handle table entries to be allocated when the local heap manager runs out of handle table	1.03
320	IsTask	Yes
323	IsROMModule
324	LogError
325	LogParamError
326	IsROMFile
334	IsBadReadPtr	Yes
335	IsBadWritePtr	Yes
336	IsBadCodePtr	Yes
337	IsBadStringPtr	Yes
347	IsBadHugeWritePtr	Yes
348	hmemcpy
349	_hread
350	_hwrite
353	lstrcpyn	Yes
354	GetAppCompatFlags
355	GetWinDebugInfo
356	SetWinDebugInfo

Not found in exports (check other module later): GlobalDiscard 1.03 LocalDiscard 1.03 LocalFreeze 1.03 LocalMelt 1.03 LockData 1.03 UnLockData 1.03 AddFontResource 1.03 RemoveFontResource 1.03

Group	Functions
Module Management	GetVersion GetModuleHandle GetModuleUsage GetModuleFileName GetProcAddress MakeProcInstance FreeProcInstance GetInstanceData Catch Throw GetCodeHandle LoadLibrary FreeLibrary
Global Memory Management	GlobalAlloc GlobalCompact GlobalDiscard GlobalFree GlobalLock GlobalReAlloc GlobalSize GlobalUnlock GlobalFlags
Local Memory Management	LocalInit LocalAlloc LocalCompact LocalDiscard LocalFree LocalLock LocalFreeze LocalMelt LocalReAlloc LocalSize LocalUnlock LocalHandleDelta LockData UnlockData LocalFlags
Task Scheduling	GetCurrentTask Yield SetPriority
Resource Management	AddFontResource RemoveFontResource LoadBitmap LoadCursor LoadIcon LoadMenu LoadString LoadAccelerators FindResource LoadResource AllocResource LockResource FreeResource AccessResource SizeofResource SetResourceHandler
String Manipulation	AnsiUpper AnsiLower AnsiNext AnsiPrev AnsiUpperBuff AnsiLowerBuff lstrcmp lstrcmpi IsCharAlpha IsCharAlphaNumeric IsCharUpper IsCharLower _wsprintf wvsprintf
Atom Management	InitAtomTable AddAtom DeleteAtom FindAtom GetAtomName GlobalAddAtom GlobalDeleteAtom GlobalFindAtom GlobalGetAtomName
Initialization Files	GetProfileInt GetProfileString WriteProfileString
Debugging	FatalExit
File Input/Output	_lopen _lcreat _llseek _lread _lwrite _lclose OpenFile GetTempFileName GetTempDrive
Registry	RegOpenKey RegCreateKey RegCloseKey RegDeleteKey RegSetValue RegQueryValue RegEnumKey
Window Management	CreateWindow CreateWindowEx DestroyWindow ShowWindow CloseWindow OpenIcon MoveWindow SetWindowPos BringWindowToTop GetWindow GetParent SetParent GetNextWindow GetTopWindow GetWindowRect GetClientRect AdjustWindowRect AdjustWindowRectEx EnableWindow IsWindowEnabled IsWindowVisible IsIconic IsZoomed IsWindow IsChild FindWindow EnumWindows EnumChildWindows EnumTaskWindows GetDesktopWindow GetDesktopHwnd WindowFromPoint ChildWindowFromPoint GetWindowText SetWindowText GetWindowTextLength GetClassName GetWindowLong SetWindowLong GetWindowWord SetWindowWord GetWindowTask GetWindowPlacement SetWindowPlacement ArrangeIconicWindows CascadeChildWindows TileChildWindows ShowOwnedPopups AnyPopup GetLastActivePopup SetActiveWindow GetActiveWindow SetFocus GetFocus SetCapture GetCapture ReleaseCapture SetSysModalWindow GetSysModalWindow LockWindowUpdate RedrawWindow UpdateWindow InvalidateRect InvalidateRgn ValidateRect ValidateRgn GetUpdateRect GetUpdateRgn ExcludeUpdateRgn BeginDeferWindowPos DeferWindowPos EndDeferWindowPos FlashWindow
Message Handling	GetMessage PeekMessage PostMessage PostAppMessage SendMessage ReplyMessage InSendMessage WaitMessage TranslateMessage DispatchMessage GetMessagePos GetMessageTime GetMessageExtraInfo PostQuitMessage RegisterWindowMessage SetMessageQueue GetQueueStatus GetInputState QuerySendMessage
Painting and Drawing	BeginPaint EndPaint GetDC GetDCEx GetWindowDC ReleaseDC DrawText GrayString TabbedTextOut GetTabbedTextExtent FillRect InvertRect FrameRect DrawFocusRect DrawIcon ScrollDC ScrollWindow ScrollWindowEx FillWindow PaintRect GetControlBrush
Menus	CreateMenu CreatePopupMenu DestroyMenu GetMenu SetMenu GetSystemMenu GetSubMenu AppendMenu InsertMenu ModifyMenu DeleteMenu RemoveMenu ChangeMenu CheckMenuItem EnableMenuItem HiliteMenuItem GetMenuState GetMenuString GetMenuItemCount GetMenuItemID DrawMenuBar TrackPopupMenu GetMenuCheckMarkDimensions SetMenuItemBitmaps IsMenu
Clipboard	OpenClipboard CloseClipboard EmptyClipboard GetClipboardOwner GetOpenClipboardWindow SetClipboardData GetClipboardData CountClipboardFormats EnumClipboardFormats RegisterClipboardFormat GetClipboardFormatName IsClipboardFormatAvailable GetPriorityClipboardFormat SetClipboardViewer GetClipboardViewer ChangeClipboardChain
Caret	CreateCaret DestroyCaret SetCaretPos GetCaretPos HideCaret ShowCaret SetCaretBlinkTime GetCaretBlinkTime
Cursor and Icon	SetCursor GetCursor SetCursorPos GetCursorPos ShowCursor ClipCursor GetClipCursor LoadCursor LoadIcon CreateCursor CreateIcon CopyCursor CopyIcon DestroyCursor DestroyIcon CreateCursorIconIndirect
Scroll Bars	SetScrollPos GetScrollPos SetScrollRange GetScrollRange ShowScrollBar EnableScrollBar CalcChildScroll
Dialog Boxes	DialogBox DialogBoxIndirect DialogBoxParam DialogBoxIndirectParam CreateDialog CreateDialogIndirect CreateDialogParam CreateDialogIndirectParam EndDialog GetDlgItem SetDlgItemText GetDlgItemText SetDlgItemInt GetDlgItemInt CheckDlgButton IsDlgButtonChecked CheckRadioButton SendDlgItemMessage GetNextDlgGroupItem GetNextDlgTabItem GetDlgCtrlID IsDialogMessage MapDialogRect GetDialogBaseUnits DefDlgProc DlgDirList DlgDirListComboBox DlgDirSelect DlgDirSelectEx DlgDirSelectComboBox DlgDirSelectComboBoxEx
Device Context Management	GetDC GetDCEx GetWindowDC ReleaseDC SaveDC RestoreDC CreateDC CreateCompatibleDC DeleteDC ResetDC
Coordinates and Transformations	SetMapMode GetMapMode SetWindowOrg GetWindowOrg SetWindowExt GetWindowExt SetViewportOrg GetViewportOrg SetViewportExt GetViewportExt OffsetWindowOrg OffsetViewportOrg ScaleWindowExt ScaleViewportExt DPtoLP LPtoDP
Drawing Functions	SetPixel GetPixel MoveTo LineTo Polyline Polygon PolyPolygon Rectangle RoundRect Ellipse Arc Chord Pie FloodFill ExtFloodFill DrawFocusRect PatBlt BitBlt StretchBlt StretchDIBits SetDIBits GetDIBits SetDIBitsToDevice
Regions	CreateRectRgn CreateRectRgnIndirect CreateRoundRectRgn CreateEllipticRgn CreateEllipticRgnIndirect CreatePolygonRgn CreatePolyPolygonRgn CombineRgn EqualRgn OffsetRgn FillRgn FrameRgn InvertRgn PaintRgn SelectClipRgn ExcludeClipRect IntersectClipRect OffsetClipRgn GetClipBox GetRgnBox PtInRegion RectInRegion SetRectRgn
Bitmaps	CreateBitmap CreateBitmapIndirect CreateCompatibleBitmap CreateDiscardableBitmap CreateDIBitmap CreateDIBPatternBrush SetBitmapBits GetBitmapBits SetBitmapDimension GetBitmapDimension
Brushes and Pens	CreateSolidBrush CreateHatchBrush CreatePatternBrush CreateBrushIndirect CreatePen CreatePenIndirect SetBrushOrg GetBrushOrg SelectObject GetObject DeleteObject GetStockObject UnrealizeObject
Fonts and Text	CreateFont CreateFontIndirect CreateScalableFontResource AddFontResource RemoveFontResource EnumFonts EnumFontFamilies GetTextMetrics GetTextExtent GetTextFace GetCharWidth GetCharABCWidths GetOutlineTextMetrics GetGlyphOutline GetKerningPairs SetTextColor GetTextColor SetBkColor GetBkColor SetBkMode GetBkMode SetTextAlign GetTextAlign SetTextCharacterExtra GetTextCharacterExtra SetTextJustification TextOut ExtTextOut TabbedTextOut GetTabbedTextExtent
Metafiles	CreateMetaFile CloseMetaFile DeleteMetaFile CopyMetaFile GetMetaFile GetMetaFileBits SetMetaFileBits PlayMetaFile PlayMetaFileRecord EnumMetaFile IsValidMetaFile
Printing	StartDoc EndDoc StartPage EndPage SetAbortProc AbortDoc QueryAbort OpenJob CloseJob DeleteJob WriteSpool StartSpoolPage EndSpoolPage SpoolFile
Palettes	CreatePalette SelectPalette RealizePalette GetPaletteEntries SetPaletteEntries ResizePalette AnimatePalette UpdateColors GetNearestPaletteIndex GetNearestColor SetSystemPaletteUse GetSystemPaletteUse GetSystemPaletteEntries
Device Capabilities	GetDeviceCaps GetRasterizerCaps GetEnvironment SetEnvironment GetAspectRatioFilter Escape CreateIC
Miscellaneous GDI	SetROP2 GetROP2 SetPolyFillMode GetPolyFillMode SetStretchBltMode GetStretchBltMode SetMapperFlags GetMapperFlags LineDDA MulDiv GetCurrentPosition GetBoundsRect SetBoundsRect FastWindowFrame
Timer	SetTimer KillTimer GetTickCount GetTimerResolution GetCurrentTime
Hooks	SetWindowsHook SetWindowsHookEx UnhookWindowsHook UnhookWindowsHookEx CallNextHookEx DefHookProc CallMsgFilter
Communications	OpenComm CloseComm ReadComm WriteComm SetCommState GetCommState GetCommError TransmitCommChar SetCommEventMask GetCommEventMask SetCommBreak ClearCommBreak UngetCommChar BuildCommDCB EscapeCommFunction FlushComm EnableCommNotification
Networking (WNet)	WNetErrorText WNetOpenJob WNetCloseJob WNetAbortJob WNetHoldJob WNetReleaseJob WNetCancelJob WNetSetJobCopies WNetWatchQueue WNetUnwatchQueue WNetLockQueueData WNetUnlockQueueData WNetGetConnection WNetGetCaps WNetDeviceMode WNetBrowseDialog WNetGetUser WNetAddConnection WNetCancelConnection WNetGetError WNetGetErrorText WNetEnable WNetDisable WNetRestoreConnection WNetWriteJob WNetConnectDialog WNetDisconnectDialog WNetConnectionDialog WNetViewQueueDialog WNetPropertyDialog WNetGetDirectoryType WNetDirectoryNotify WNetGetPropertyText
System Information	GetSystemMetrics GetSysColor SetSysColors SystemParametersInfo GetFreeSystemResources GetSystemDebugState GetDoubleClickTime SetDoubleClickTime SwapMouseButton GetKeyState GetAsyncKeyState GetKeyboardState SetKeyboardState mouse_event GetMouseEventProc EnableHardwareInput IsUserIdle LockInput MessageBeep WinHelp
Window Classes	RegisterClass RegisterClassEx UnregisterClass GetClassInfo GetClassInfoEx GetClassWord SetClassWord GetClassLong SetClassLong GetClassName
Window Properties	SetProp GetProp RemoveProp EnumProps
MDI Support	DefFrameProc DefMDIChildProc TranslateMDISysAccel
Drivers	OpenDriver CloseDriver SendDriverMessage GetDriverModuleHandle GetDriverInfo GetNextDriver DefDriverProc
Miscellaneous	InitApp ExitWindows ExitWindowsExec OLDEXITWINDOWS BEAR11 BEAR86 BEAR182 UserSeeUserDo OldSetDeskPattern SetRect SetRectEmpty CopyRect IsRectEmpty PtInRect OffsetRect InflateRect IntersectRect UnionRect EqualRect SubtractRect