Home / Docs / Windows 3.x Compatibility

This page replaces a stale design note. The previous version of this page was a point-in-time plan written before NE relocations and imports even worked. Years of work later, the interpreter runs a working copy of Microsoft Word 6 and a set of Windows 3.x games; this page now describes the current system, and its coverage tables are regenerated directly from the interpreter's source rather than hand-maintained (see “Coverage by module” below).

Win16 (Windows 3.x) compatibility layer

MayteraOS can run real, unmodified 16-bit Windows 3.x (“NE”) executables: a user-supplied copy of Microsoft Word 6.0, and a set of Windows Entertainment Pack games. This is not a userland Windows emulator process, and it is not a Win32/Win64 subsystem; it is an in-kernel interpreter: a clean-room 16-bit x86 CPU emulator with a protected-mode/LDT selector model, a from-scratch KERNEL/USER/GDI/MMSYSTEM API translation layer, an OLE2/COM runtime with software x87 support, and an NE (New Executable) loader. All third-party Windows 3.x software named on this page was supplied by the user for compatibility testing; MayteraOS does not include or distribute any third-party commercial software.

Architecture

Three source files carry the whole layer:

  • kernel/exec/x86_16.c: the 16-bit CPU emulator, covering real-mode and protected-mode execution, an LDT (Local Descriptor Table) selector/arena model backing every protected-mode segment, and a small software x87 FPU (the kernel itself builds with SSE/x87 disabled, so floating point used by a Win16 app is emulated in software, not delegated to hardware state the kernel never saves).
  • kernel/exec/ne.c: the NE loader, which parses the NE header, segment table, per-segment relocations, and the imported-name/entry tables, then loads all segments into the emulated address space and resolves imports to the API dispatcher below.
  • kernel/exec/win16api.c: the KERNEL/USER/GDI/MMSYSTEM/SHELL/OLESVR API surface (see the generated tables below), the window/message/DC plumbing that maps a Win16 HWND onto a real composited MayteraOS window, the WINE-style drive-letter filesystem shim (/WINDIR/DRIVE_C/...C:\...), and the WIN16PM.RUN boot autolauncher.

WIN16PM.RUN is a single-line boot config (/CONFIG/WIN16PM.RUN): an executable path plus an optional pm/realmode flag, read once at boot to launch one Win16 application automatically. It is not a Program Manager. Separately, the compositor's Start Menu (userland/apps/compositor/startmenu.c) can surface Win16 “program groups” as nested Start-menu folders if a simple pipe-delimited /WIN16GRP.CFG file exists (GROUP|name / ITEM|name|path records), and that reader is live in the current source, but nothing in the current interpreter parses a real PROGMAN.INI or generates WIN16GRP.CFG from a Windows 3.x SETUP run; there is no committed PROGMAN.INI parser in ne.c or win16api.c. Treat Win16 program-group surfacing as a config format the compositor can render, not an installer feature that populates it today.

Verified applications

“Verified” below means: booted on a MayteraOS VM, screenshotted or serial-traced, and (for the games) checked for byte-identical regression across later interpreter changes; FreeCell in particular has served as the standing regression gate for hundreds of interpreter passes. This list is a snapshot from the project's own engineering log (CHANGELOG.md), not a promise that every build behaves identically; re-verify after any interpreter change.

ApplicationStatusNotes
Microsoft Word 6.0 (WINWORD.EXE)Working editorRegisters all window classes, opens its 640×480 main editing window with real chrome, types text, scrolls, and paginates. Getting here required fixing an off-by-one in a synthetically-generated WM_CLOSE and a partial/garbage TEXTMETRIC structure. Known cosmetic gaps remain: blank toolbar icons and unrendered combobox text, which need a real disassembly of Word's own USER.EXE-adjacent drawing calls to fix properly, not another interpreter guess.
FreeCell (MSEP FREECELL.EXE)PlayableFull 8-column, 52-card deal; drag/click card moves to foundations; Game menu; clean exit. The project's standing regression gate: re-run after almost every interpreter change to prove no game regressed.
Golf (MSEP GOLF.EXE, solitaire)PlayableFull board (foundation + waste pile), deals and plays cards on click, Game/Options/Help menus open. Root cause of an earlier “clicks only hit the menu bar” bug was a wrong GDI ordinal mapping (ordinal 83 was routed to GetClipBox instead of GetPixel), which corrupted the app's own code segment and hung its message loop before mouse input was ever pumped; fixed by correcting the dispatch table.
Chip's Challenge (EP4 CHIPS.EXE)Fully playableComplete board (tiles, keys, chips), LEVEL/TIME/CHIPS-LEFT panel, player movement.
TetraVex (MSEP)PlayablePuzzle grid with numbered tiles renders and responds to input.
Tut's Tomb (MSEP, CARDS.DLL + software x87 + sound)PlayablePyramid tableau, foundations, status bar.
Tetris (MSEP)PlayableLive playfield, score panel, falling piece all render and update.
Fuji Golf (EP3 FUJIGOLF.EXE, a real golf-course game, not the solitaire above)PartialRenders its Mt. Fuji + course opening artwork and honours the MM_ANISOTROPIC/MM_ISOTROPIC window/viewport transform for course scaling; the “Start New Round” button fires and opens its Score Card dialog. Full swing/play was not brought to the same confirmed-playable state as FreeCell.
.SCR screensavers (SSSTARS.SCR, SSMYST.SCR)PartialWin16 NE .SCR screensavers run via the same interpreter (/s command-tail convention) and are wired into OS idle-launch. SSSTARS (monochrome) renders correctly; SSMYST renders with dim/blue-biased colours, a COLORREF handling gap. 32-bit PE (Windows 9x-era) .SCR files are out of scope; that needs the future Win32 subsystem.
JezzBall / Maxwell's Maniac (EP4, WEP4UTIL)Not playableWindow, menu, and children render, but the game logic self-starts paused and does not un-pause on click; the playfield stays black. Not an ordinal gap: a game-logic/offscreen-blit issue shared by both titles.
BlackJack (EP4 BLAKJAK.EXE)Not playableLoads CARDS.DLL and registers its window class, then exits early on a WinMain initialization failure.
Rodent, Go Figure, TicTactics (VBRUN100-based)Not playableVBRUN100.DLL loads and its LibEntry runs, then the app aborts inside the Visual Basic 1.0 / MS-C runtime startup with FatalAppExit (“C RUNTIME ERROR”) around instruction 485. This is a VB1.0 runtime gap, not specific to any one title; unresolved.
Microsoft Golf 2.0 launcher (GOLF2/msgolf.exe)Not applicableThe 16-bit msgolf.exe is only a Win32s launcher stub: it runs, checks the environment, and correctly pops a “requires Win32s 1.1 or later” message box before exiting. The actual game (GLFMOD20.EXE) is a PE/Win32s module, out of scope for this layer (see the future Win32 subsystem).

Known limitations, stated plainly

  • The interpreter runs with full kernel privilege. A Win16 (or DOS) guest executes as a PRIV_KERNEL thread (proc/process.c:424), so it bypasses every perms_check() call site and capability bit that gates a normal userland process, and writes files directly via fat_write_file(). None of win16api.c, x86_16.c, or ne.c contain inline assembly or a privileged instruction, so nothing about the interpreter actually requires Ring 0; this is an assessed, currently-real security gap (tracked internally), not a hypothetical one, and there is no committed plan yet to move it to userland.
  • An unimplemented API call can desync the emulated stack. The 16-bit calling convention (Pascal: callee pops its own arguments) means the interpreter must know exactly how many argument bytes to discard on return. A call that lands on neither the implemented table nor the stub table is logged (MISS/UNIMPL) and can only pop the far-return frame, not the app's pushed arguments, leaving stray bytes on the 16-bit stack that corrupt the very next POP or RET the app executes. This has been a real, repeatedly-hit failure mode during bring-up; see “Ordinal discovery” below for how it is found and fixed per application.
  • Coverage is discovery-driven, not exhaustive. The tables below are exactly the ordinals and names the interpreter's tables recognize today. A new application will very likely need ordinals neither table has; that is expected, not a bug report waiting to happen, and the fix path is the same one used throughout this file's history (add a real handler, or at minimum a correctly-argbyte'd stub).
  • A stub is not an implementation. g_stub_table entries exist purely to keep the calling stack consistent; they return a fixed value and do nothing else. Any claim of “X APIs supported” that does not separate implemented from stubbed is overstating coverage, which is exactly why this page's tables keep the two counts apart.
  • This is Win16 only. There is no Win32 or Win64 support in this layer, and none is implied by anything above: 32-bit PE binaries (including Win32s modules referenced by some of the 16-bit launchers above) are out of scope here and belong to a separate, future PE subsystem.
Generated reference. Everything in this section (the coverage counts and the ordinal/API tables) is generated directly from the interpreter's own dispatch tables in kernel/exec/win16api.c by tools/docgen/gen_win16_reference.py, committed alongside this page. It cannot drift out of date the way hand-written coverage claims do: regenerate it from any commit and it reflects exactly what that commit's interpreter does. Generated 2026-08-07 15:57 UTC from commit 17b789f24a5b.

Coverage by module

ModuleImplementedordinal+nameordinal-onlyname-onlyStubbedTotal table entries
GDI11511500295410
KERNEL858401364449
KEYBOARD550005
LZEXPAND330003
MMSYSTEM330003
OLESVR990009
PRNDRV400404
SHELL191108019
USER18118100359540
WEP4UTIL101001
WEPUTIL101001
WIN87EM101001
WINMM210102
Total42941231410181447

Implemented = a real C handler in g_api_table runs and does the work. Stubbed = g_stub_table supplies the exact Pascal argbyte count so the caller's stack does not desync, and a canned return value, but no real behaviour happens. A stub that returns a plausible value is not an implemented API. Everything outside both tables is unimplemented and is discovered per-application at runtime; see “Ordinal discovery” below.

3 (module, ordinal) pair(s) appear in both tables. The real handler always wins at dispatch (find_handler() is checked before find_stub()), so these are stale, unreachable stub entries left behind after a real handler was added later: GDI.38, USER.61, USER.319.

Ordinal discovery

Coverage above is closed: it is exactly the two tables in kernel/exec/win16api.c. What an untested application needs is not closed, and this generator does not guess at it. The interpreter itself is the discovery tool: win16_api_dispatch() looks up every call an app makes against g_api_table then g_stub_table, in that order.

  • Found in g_api_table: real handler runs, logged ok (first occurrence only, to /WIN16LOG.TXT).
  • Found in g_stub_table only: stack is popped with the exact recorded argbytes and the canned retval is returned, logged ok as well (the trace line does not distinguish real from stubbed; the generated tables below do).
  • Found in neither: logged MISS on first occurrence, then UNIMPL <module>.<ordinal-or-name> (args unknown). Because the true argbyte count is unknown, the dispatcher can only pop the far-call return frame, not the caller's pushed arguments, and returns AX=0.

This is a real, previously-hit failure mode: an unimplemented import desyncs the emulated Pascal stack by exactly the number of bytes the app expected popped, corrupting whatever the next POP or RET reads. The fix pattern used throughout this file's history is always the same: find the correct argbyte count (from a WINE .spec file, or by reading the caller's own push sequence) and add either a real handler or, at minimum, a g_stub_table entry, so the stack stays consistent even before real behaviour is implemented.

Practical effect: run the target application, then read /WIN16LOG.TXT (or /BOOTLOG.TXT for boot-time/autolaunch traces) for MISS/UNIMPL lines naming exactly what that application needs next.

Implemented API table

Grouped by module, sorted by ordinal. “(by name)” means this entry is matched by the import's name string only, because the source Win3.1 DLL for this function has no fixed ordinal for it (or none is recorded here); an app importing it by ordinal instead would not match this row.

GDI: 115 implemented
OrdinalNameHandler
1SETBKCOLORg_setbkcolor
2SETBKMODEg_setbkmode
3SETMAPMODEg_setmapmode
4SETROP2g_setrop2
6SETPOLYFILLMODEg_setpolyfill
7SETSTRETCHBLTMODEg_setstretchmode
9SETTEXTCOLORg_settextcolor
11SETWINDOWORGg_setwindoworg
12SETWINDOWEXTg_setwindowext
13SETVIEWPORTORGg_setvieworg
14SETVIEWPORTEXTg_setviewext
15OFFSETWINDOWORGg_offsetwindoworg
16SCALEWINDOWEXTg_scalewindowext
17OFFSETVIEWPORTORGg_offsetvieworg
18SCALEVIEWPORTEXTg_scaleviewext
19LINETOg_lineto
20MOVETOg_moveto
21EXCLUDECLIPRECTg_excludecliprect
22INTERSECTCLIPRECTg_intersectcliprect
23ARCg_arc
24ELLIPSEg_ellipse
26PIEg_pie
27RECTANGLEg_rectangle
28ROUNDRECTg_roundrect
29PATBLTg_patblt
30SAVEDCg_savedc
31SETPIXELg_setpixel
33TEXTOUTg_textout
34BITBLTg_bitblt
35STRETCHBLTg_stretchblt
36POLYGONg_polygon
37POLYLINEg_polyline
38ESCAPEg_escape
39RESTOREDCg_restoredc
44SELECTCLIPRGNg_selectcliprgn
45SELECTOBJECTg_selectobject
48CREATEBITMAPg_createbitmap
49CREATEBITMAPINDIRECTg_createbitmapindirect
50CREATEBRUSHINDIRECTg_createbrushindirect
51CREATECOMPATIBLEBITMAPg_createcompatiblebitmap
52CREATECOMPATIBLEDCg_createcompatibledc
53CREATEDCg_createdc
54CREATEELLIPTICRGNg_createregion8
55CREATEELLIPTICRGNINDIRECTg_createregion4
56CREATEFONTg_createfont
57CREATEFONTINDIRECTg_createfontindirect
58CREATEHATCHBRUSHg_createhatchbrush
60CREATEPATTERNBRUSHg_createpatternbrush
61CREATEPENg_createpen
62CREATEPENINDIRECTg_createpenindirect
63CREATEPOLYGONRGNg_createpolygonrgn
64CREATERECTRGNg_createrectrgn
65CREATERECTRGNINDIRECTg_createrectrgnindirect
66CREATESOLIDBRUSHg_createsolidbrush
67DPTOLPg_dptolp
68DELETEDCg_deletedc
69DELETEOBJECTg_deleteobject
70ENUMFONTSg_enumfonts
75GETBKCOLORg_getbkcolor
76GETBKMODEg_getbkmode
77GETCLIPBOXg_getclipbox
78GETCURRENTPOSITIONg_getcurrentpos
80GETDEVICECAPSg_getdevicecaps
81GETMAPMODEg_getmapmode
82GETOBJECTg_getobject
83GETPIXELg_getpixel
84GETPOLYFILLMODEg_getpolyfill
85GETROP2g_getrop2
87GETSTOCKOBJECTg_getstockobject
88GETSTRETCHBLTMODEg_getstretchmode
90GETTEXTCOLORg_gettextcolor
91GETTEXTEXTENTg_gettextextent
92GETTEXTFACEg_gettextface
93GETTEXTMETRICSg_gettextmetrics
94GETVIEWPORTEXTg_getviewportext
95GETVIEWPORTORGg_getviewportorg
96GETWINDOWEXTg_getwindowext
97GETWINDOWORGg_getwindoworg
99LPTODPg_lptodp
100LINEDDAg_linedda
104RECTVISIBLEg_rectvisible
106SETBITMAPBITSg_setbitmapbits
128MULDIVg_muldiv
134GETRGNBOXg_getrgnbox
136REMOVEFONTRESOURCEg_removefontresource
153CREATEICg_createic
154GETNEARESTCOLORg_getnearestcolor
156CREATEDISCARDABLEBITMAPg_creatdiscardablebmp
193SETBOUNDSRECTg_setboundsrect
194GETBOUNDSRECTg_getboundsrect
345GETTEXTALIGNg_gettextalign_r
346SETTEXTALIGNg_settextalign
348CHORDg_pie
349SETMAPPERFLAGSg_setmapperflags
350GETCHARWIDTHg_getcharwidth
351EXTTEXTOUTg_exttextout
360CREATEPALETTEg_createpalette
400FASTWINDOWFRAMEg_fastwindowframe
439STRETCHDIBITSg_stretchdibits
442CREATEDIBITMAPg_createdibitmap
443SETDIBITSTODEVICEg_setdibitstodevice
444CREATEROUNDRECTRGNg_createroundrectrgn
445CREATEDIBPATTERNBRUSHg_createdibpatternbrush
450POLYPOLYGONg_polypolygon
470GETCURRENTPOSITIONEXg_getcurposex
471GETTEXTEXTENTPOINTg_gettextextentpoint
472GETVIEWPORTEXTEXg_getviewportextex
473GETVIEWPORTORGEXg_getviewportorgex
474GETWINDOWEXTEXg_getwindowextex
475GETWINDOWORGEXg_getwindoworgex
479SETVIEWPORTEXTEXg_setviewportextex
480SETVIEWPORTORGEXg_setviewportorgex
481SETWINDOWEXTEXg_setwindowextex
482SETWINDOWORGEXg_setwindoworgex
483MOVETOEXg_movetoex
KERNEL: 85 implemented
OrdinalNameHandler
(by name)GETCURRENTTASKk_getcurrenttask
1FATALEXITk_word1_ok
3GETVERSIONk_getversion
4LOCALINITk_localinit
5LOCALALLOCk_localalloc
6LOCALREALLOCk_localrealloc
7LOCALFREEk_localfree
8LOCALLOCKk_locallock
9LOCALUNLOCKk_localunlock
10LOCALSIZEk_localsize
13LOCALCOMPACTk_localcompact
15GLOBALALLOCk_globalalloc
16GLOBALREALLOCk_globalrealloc
17GLOBALFREEk_globalfree
18GLOBALLOCKk_globallock
19GLOBALUNLOCKk_globalunlock
20GLOBALSIZEk_globalsize
21GLOBALHANDLEk_globalhandle
23LOCKSEGMENTk_locksegment
24UNLOCKSEGMENTk_locksegment
25GLOBALCOMPACTk_globalcompact
29GLOBALMASTERHANDLEk_globalmasterhandle
30WAITEVENTk_waitevent
36GETCURRENTTASKk_getcurrenttask
37GETCURRENTPDBk_getcurrentpdb
47GETMODULEHANDLEk_getmodulehandle
48GETMODULEUSAGEk_getmoduleusage
49GETMODULEFILENAMEk_getmodulefilename
50GETPROCADDRESSk_getprocaddress
51MAKEPROCINSTANCEk_makeprocinstance
52FREEPROCINSTANCEk_freeprocinstance
55CATCHk_far1_zero
56THROWk_throw
57GETPROFILEINTk_getprofileint
58GETPROFILESTRINGk_getprofilestr
59WRITEPROFILESTRINGk_writeprofilestr
60FINDRESOURCEk_findresource
61LOADRESOURCEk_loadresource
62LOCKRESOURCEk_lockresource
63FREERESOURCEk_freeresource
64ACCESSRESOURCEk_accessresource
65SIZEOFRESOURCEk_sizeofresource
74OPENFILEk_openfile
81_LCLOSEk_lclose
82_LREADk_lread
83_LCREATk_lcreat
84_LLSEEKk_llseek
85_LOPENk_lopen
86_LWRITEk_lwrite
88LSTRCPYk_lstrcpy
89LSTRCATk_lstrcat
90LSTRLENk_lstrlen
91INITTASKk_inittask
94LSTRCMPk_lstrcmp
95LOADLIBRARYk_loadlibrary
96FREELIBRARYk_freelibrary
102DOS3CALLk_dos3call
107SETERRORMODEk_seterrormode
115OUTPUTDEBUGSTRINGk_outputdebugstr
127GETPRIVATEPROFILEINTk_getprivprofileint
128GETPRIVATEPROFILESTRINGk_getprivprofilestr
129WRITEPRIVATEPROFILESTRINGk_writeprivprofile
131GETDOSENVIRONMENTk_getdosenv
132GETWINFLAGSk_getwinflags
134GETWINDOWSDIRECTORYk_getwindir
135GETSYSTEMDIRECTORYk_getsysdir
136GETDRIVETYPEk_getdrivetype
137FATALAPPEXITk_fatalappexit
166WINEXECk_winexec
169GETFREESPACEk_getfreespace
170ALLOCCSTODSALIASk_alloc_alias
171ALLOCDSTOCSALIASk_alloc_alias
172ALLOCSELECTORk_alloc_alias
176FREESELECTORk_freeselector
177PRESTOCHANGOSELECTORk_prestochango
199SELECTORACCESSRIGHTSk_selectoraccessrights
334GETSELECTORLIMITk_getselectorlimit
335GETSELECTORBASEk_getselectorbase
336SETSELECTORBASEk_setselectorbase
337SETSELECTORLIMITk_setselectorlimit
346KERNEL346k_kernel346
347KERNEL347k_kernel347
348HMEMCPYk_hmemcpy
349_HREADk_hread
350_HWRITEk_kernel350
KEYBOARD: 5 implemented
OrdinalNameHandler
5ANSITOOEMkbd_xlate_copy
6OEMTOANSIkbd_xlate_copy
129VKKEYSCANkbd_vkkeyscan
131MAPVIRTUALKEYkbd_mapvirtualkey
133GETKEYNAMETEXTkbd_getkeynametext
LZEXPAND: 3 implemented
OrdinalNameHandler
1LZCOPYlz_copy
2LZOPENFILElz_openfile
6LZCLOSElz_close
MMSYSTEM: 3 implemented
OrdinalNameHandler
2SNDPLAYSOUNDmm_sndplaysound
3PLAYSOUNDmm_playsound
5MMSYSTEMGETVERSIONmm_getversion
OLESVR: 9 implemented
OrdinalNameHandler
2OLEREGISTERSERVERos_registerserver
3OLEREVOKESERVERos_revokeserver
4OLEBLOCKSERVERos_blockserver
5OLEUNBLOCKSERVERos_unblockserver
6OLEREGISTERSERVERDOCos_registerserverdoc
7OLEREVOKESERVERDOCos_revokeserverdoc
8OLERENAMESERVERDOCos_renameserverdoc
9OLEREVERTSERVERDOCos_revertserverdoc
10OLESAVEDSERVERDOCos_savedserverdoc
PRNDRV: 4 implemented
OrdinalNameHandler
(by name)DEVICECAPABILITIESprn_devcaps
(by name)DEVICEMODEprn_devicemode
(by name)EXTDEVICEMODEprn_extdevicemode
(by name)GENERICprn_generic
SHELL: 19 implemented
OrdinalNameHandler
(by name)DRAGACCEPTFILESsh_dragacceptfiles
(by name)DRAGFINISHsh_dragfinish
(by name)DRAGQUERYFILEsh_dragqueryfile
(by name)DRAGQUERYPOINTsh_dragquerypoint
(by name)EXTRACTICONsh_extracticon
(by name)FINDEXECUTABLEsh_findexecutable
(by name)SHELLABOUTsh_shellabout
(by name)SHELLEXECUTEsh_shellexecute
1REGOPENKEYsh_regopenkey
2REGCREATEKEYsh_regcreatekey
3REGCLOSEKEYsh_regclosekey
4REGDELETEKEYsh_regdeletekey
5REGSETVALUEsh_regsetvalue
6REGQUERYVALUEsh_regqueryvalue
7REGENUMKEYsh_regenumkey
9DRAGACCEPTFILESsh_dragacceptfiles
11DRAGQUERYFILEsh_dragqueryfile
12DRAGFINISHsh_dragfinish
13DRAGQUERYPOINTsh_dragquerypoint
USER: 181 implemented
OrdinalNameHandler
1MESSAGEBOXu_messagebox
2OLDEXITWINDOWSu_oldexitwindows
5INITAPPu_initapp
6POSTQUITMESSAGEu_postquit
10SETTIMERu_settimer
12KILLTIMERu_killtimer
13GETTICKCOUNTu_gettickcount
15GETCURRENTTIMEu_gettickcount
18SETCAPTUREu_setcapture
19RELEASECAPTUREu_releasecapture
22SETFOCUSu_word1
23GETFOCUSu_getfocus
28CLIENTTOSCREENu_clienttoscreen
29SCREENTOCLIENTu_screentoclient
31ISICONICu_isiconic
32GETWINDOWRECTu_getwindowrect
33GETCLIENTRECTu_getclientrect
34ENABLEWINDOWu_enablewindow
35ISWINDOWENABLEDu_iswindowenabled
36GETWINDOWTEXTu_getwindowtext
37SETWINDOWTEXTu_setwindowtext
39BEGINPAINTu_beginpaint
40ENDPAINTu_endpaint
41CREATEWINDOWu_createwindow
42SHOWWINDOWu_showwindow
46GETPARENTu_getparent
47ISWINDOWu_iswindow
49ISWINDOWVISIBLEu_iswindowvisible
50FINDWINDOWu_findwindow
53DESTROYWINDOWu_destroywindow
56MOVEWINDOWu_movewindow
57REGISTERCLASSu_registerclass
58GETCLASSNAMEu_getclassname
60GETACTIVEWINDOWu_getfocus
61SCROLLWINDOWu_scrollwindow
62SETSCROLLPOSu_setscrollpos
63GETSCROLLPOSu_getscrollpos
64SETSCROLLRANGEu_setscrollrange
65GETSCROLLRANGEu_getscrollrange
66GETDCu_getdc
67GETWINDOWDCu_getwindowdc
68RELEASEDCu_releasedc
69SETCURSORu_setcursor
70SETCURSORPOSu_setcursorpos
71SHOWCURSORu_showcursor
72SETRECTu_setrect
73SETRECTEMPTYu_setrectempty
74COPYRECTu_copyrect
75ISRECTEMPTYu_isrectempty
76PTINRECTu_ptinrect
77OFFSETRECTu_offsetrect
78INFLATERECTu_inflaterect
79INTERSECTRECTu_intersectrect
81FILLRECTu_fillrect
82INVERTRECTu_invertrect
83FRAMERECTu_framerect
84DRAWICONu_drawicon
85DRAWTEXTu_drawtext
87DIALOGBOXu_dialogbox
88ENDDIALOGu_enddialog
89CREATEDIALOGu_createdialog
90ISDIALOGMESSAGEu_isdialogmessage
91GETDLGITEMu_getdlgitem
92SETDLGITEMTEXTu_setdlgitemtext
93GETDLGITEMTEXTu_getdlgitemtext
94SETDLGITEMINTu_setdlgitemint
95GETDLGITEMINTu_getdlgitemint
96CHECKRADIOBUTTONu_checkradiobutton
97CHECKDLGBUTTONu_checkdlgbutton
98ISDLGBUTTONCHECKEDu_isdlgbuttonchecked
101SENDDLGITEMMESSAGEu_senddlgitemmessage
102ADJUSTWINDOWRECTu_adjustwindowrect
103MAPDIALOGRECTu_mapdialogrect
104MESSAGEBEEPu_messagebeep
106GETKEYSTATEu_getkeystate
107DEFWINDOWPROCu_defwindowproc
108GETMESSAGEu_getmessage
109PEEKMESSAGEu_peekmessage
110POSTMESSAGEu_postmessage
111SENDMESSAGEu_sendmessage
112WAITMESSAGEu_waitmessage
113TRANSLATEMESSAGEu_translatemessage
114DISPATCHMESSAGEu_dispatchmessage
115REPLYMESSAGEu_replymessage
116POSTAPPMESSAGEu_postappmessage
118REGISTERWINDOWMESSAGEu_registerwindowmessage
119GETMESSAGEPOSu_getmessagepos
120GETMESSAGETIMEu_getmessagetime
121SETWINDOWSHOOKu_setwindowshook
122CALLWINDOWPROCu_callwindowproc
124UPDATEWINDOWu_updatewindow
125INVALIDATERECTu_invalidaterect
127VALIDATERECTu_validaterect
131GETCLASSLONGu_getclasslong
133GETWINDOWWORDu_getwindowword
134SETWINDOWWORDu_setwindowword
135GETWINDOWLONGu_getwindowlong
136SETWINDOWLONGu_setwindowlong
145REGISTERCLIPBOARDFORMATu_registerclipboardformat
150LOADMENUu_loadmenu
151CREATEMENUu_createmenu
152DESTROYMENUu_destroymenu
153CHANGEMENUu_changemenu
154CHECKMENUITEMu_menuitem3
155ENABLEMENUITEMu_menuitem3
156GETSYSTEMMENUu_getsystemmenu
157GETMENUu_getmenu
158SETMENUu_setmenu
159GETSUBMENUu_getsubmenu
160DRAWMENUBARu_drawmenubar
161GETMENUSTRINGu_getmenustring
162HILITEMENUITEMu_hilitemenuitem
163CREATECARETu_createcaret
164DESTROYCARETu_destroycaret
165SETCARETPOSu_setcaretpos
166HIDECARETu_hidecaret
167SHOWCARETu_showcaret
168SETCARETBLINKTIMEu_setcaretblink
169GETCARETBLINKTIMEu_getcaretblink
171WINHELPu_winhelp
173LOADCURSORu_loadcursor
174LOADICONu_loadicon
175LOADBITMAPu_loadbitmap
176LOADSTRINGu_loadstring
177LOADACCELERATORSu_loadaccel
178TRANSLATEACCELERATORu_translateaccel
179GETSYSTEMMETRICSu_getsystemmetrics
180GETSYSCOLORu_getsyscolor
190GETSYSMODALWINDOWu_user190_word6
192INSENDMESSAGEu_insendmessage
218DIALOGBOXINDIRECTu_dialogboxindirect
219CREATEDIALOGINDIRECTu_dialogboxindirect
221SCROLLDCu_scrolldc
225ENUMTASKWINDOWSu_enumtaskwindows
232SETWINDOWPOSu_setwindowpos
239DIALOGBOXPARAMu_dialogboxparam
240DIALOGBOXINDIRECTPARAMu_dialogboxindirectparam
241CREATEDIALOGPARAMu_createdialogparam
242CREATEDIALOGINDIRECTPARAMu_dialogboxindirectparam
243GETDIALOGBASEUNITSu_getdialogbaseunits
249GETASYNCKEYSTATEu_getasynckeystate
250GETMENUSTATEu_getmenustate
262GETWINDOWu_getwindow
263GETMENUITEMCOUNTu_getmenuitemcount
264GETMENUITEMIDu_getmenuitemid
266SETMESSAGEQUEUEu_setmessagequeue
268GLOBALADDATOMu_globaladdatom
272ISZOOMEDu_iszoomed
277GETDLGCTRLIDu_getdlgctrlid
282SELECTPALETTEu_selectpalette
283REALIZEPALETTEu_realizepalette
284GETFREESYSTEMRESOURCESu_getfreesystemresources
286GETDESKTOPWINDOWu_getdesktopwindow
288GETMESSAGEEXTRAINFOu_getmessageextrainfo
308DEFDLGPROCu_defdlgproc
319SCROLLWINDOWEXu_scrollwindowex
334GETQUEUESTATUSu_getqueuestatus
335GETINPUTSTATEu_getinputstate
358ISMENUu_ismenu
403UNREGISTERCLASSu_unregisterclass
404GETCLASSINFOu_getclassinfo
410INSERTMENUu_insertmenu
411APPENDMENUu_appendmenu
412REMOVEMENUu_removemenu
413DELETEMENUu_deletemenu
414MODIFYMENUu_modifymenu
415CREATEPOPUPMENUu_createpopupmenu
416TRACKPOPUPMENUu_trackpopupmenu
420WSPRINTFu_wsprintf
421WVSPRINTFu_wvsprintf
431ANSIUPPERu_ansiupper
435ISCHARUPPERu_ischarupper
436ISCHARLOWERu_ischarlower
452CREATEWINDOWEXu_createwindowex
454ADJUSTWINDOWRECTEXu_adjustwindowrectex
457DESTROYICONu_destroyicon
471LSTRCMPIu_lstrcmpi
472ANSINEXTu_ansinext
473ANSIPREVu_ansiprev
512WNETGETCONNECTIONu_wnetgetconnection
513WNETGETCAPSu_wnetgetcaps
WEP4UTIL: 1 implemented
OrdinalNameHandler
2(ordinal-only import, no by-name alias registered)k_wep_ok
WEPUTIL: 1 implemented
OrdinalNameHandler
2(ordinal-only import, no by-name alias registered)k_wep_ok
WIN87EM: 1 implemented
OrdinalNameHandler
1(ordinal-only import, no by-name alias registered)k_win87em_init
WINMM: 2 implemented
OrdinalNameHandler
(by name)PLAYSOUNDAmm_playsound
2SNDPLAYSOUNDmm_sndplaysound

Stubbed ordinal table

These ordinals are recognized (the loader will not desync the caller's stack) but return a fixed value with no real behaviour. argbytes is the exact number of bytes the Pascal calling convention pops off the 16-bit stack; retval is 0 (a “no object”/handle-shaped failure) or 1 (a BOOL success) per the source's own convention.

GDI: 295 stubbed
OrdinalName (from source comment)argbytesretval
5SetRelAbs41
8SetTextCharacterExtra41
10SetTextJustification61
25FloodFill101
32OffsetClipRgn61
38Escape140
40FillRgn61
41FrameRgn101
42InvertRgn41
43PaintRgn41
46BITMAPBITS01
47CombineRgn81
71EnumObjects120
72EqualRgn41
73ExcludeVisRect101
74GetBitmapBits100
79GetDCOrg20
86GetRelAbs20
89GetTextCharacterExtra20
98IntersectVisRect101
101OffsetRgn61
102OffsetVisRgn61
103PtVisible61
105SelectVisRgn40
117SetDCOrg60
118InternalCreateDC01
119AddFontResource41
120GetContinuingTextExtent00
121Death21
122Resurrection141
123PlayMetaFile41
124GetMetaFile40
125CreateMetaFile40
126CloseMetaFile21
127DeleteMetaFile21
129SaveVisRgn20
130RestoreVisRgn21
131InquireVisRgn20
132SetEnvironment101
133GetEnvironment100
137GSV01
138DPXlate01
139SetWinViewExt01
140ScaleExt01
141WordSet01
142RectStuff01
143OffsetOrg01
144LockDC01
145UnlockDC01
146LockUnlock01
147GDI_FarFrame01
148SetBrushOrg60
149GetBrushOrg20
150UnrealizeObject21
151CopyMetaFile60
152GDIInitApp01
155QueryAbort40
157CompatibleBitmap01
158EnumCallback00
159GetMetaFileBits20
160SetMetaFileBits21
161PtInRegion61
162GetBitmapDimension20
163SetBitmapDimension60
164PixToLine01
169IsDCDirty01
170SetDCStatus01
171LVBUNION01
172SetRectRgn101
173GetClipRgn20
174BLOAT01
175EnumMetaFile120
176PlayMetaFileRecord121
177RCOS01
178RSIN01
179GetDCState20
180SetDCState41
181RectInRegionOld61
182REQUESTSEM01
183CLEARSEM01
184STUFFVISIBLE01
185STUFFINREGION01
186DELETEABOVELINEFONTS01
188GetTextExtentEx00
190SetDCHook101
191GetDCHook60
192SetHookFlags41
195SelectBitmap00
196SetMetaFileBitsBetter21
201DMBITBLT01
202DMCOLORINFO01
206dmEnumDFonts01
207DMENUMOBJ01
208DMOUTPUT01
209DMPIXEL01
210dmRealizeObject01
211DMSTRBLT01
212DMSCANLR01
213BRUTE01
214DMEXTTEXTOUT01
215DMGETCHARWIDTH01
216DMSTRETCHBLT01
217DMDIBBITS01
218DMSTRETCHDIBITS01
219DMSETDIBTODEV01
220DMTRANSPOSE01
230CreatePQ20
231MinPQ21
232ExtractPQ20
233InsertPQ61
234SizePQ41
235DeletePQ21
240OpenJob100
241WriteSpool81
242WriteDialog81
243CloseJob21
244DeleteJob41
245GetSpoolJob60
246StartSpoolPage21
247EndSpoolPage21
248QueryJob00
250Copy100
253DeleteSpoolPage01
254SpoolFile01
267StartDocPrintEra01
268StartPagePrinter01
269WritePrinter01
270EndPagePrinter01
271AbortPrinter01
272EndDocPrinter01
274ClosePrinter01
280GetRealDriverInfo00
281DrvSetPrinterData200
282DrvGetPrinterData240
299ENGINEGETCHARWIDTHEX01
300EngineEnumerateFont120
301EngineDeleteFont41
302EngineRealizeFont120
303EngineGetCharWidth121
304EngineSetFontContext61
305EngineGetGlyphBMP221
306EngineMakeFontDir100
307GetCharABCWidths100
308GetOutlineTextMetrics80
309GetGlyphOutline220
310CreateScalableFontResource140
311GetFontData180
312ConvertOutLineFontFile01
313GetRasterizerCaps60
314EngineExtTextOut01
315EngineRealizeFontExt160
316EngineGetCharWidthStr01
317EngineGetGlyphBmpExt01
330EnumFontFamilies140
332GetKerningPairs80
347MFDRAWTEXT01
352GetPhysicalFontHandle00
353GetAspectRatioFilter00
354ShrinkGDIHeap01
355FTrapping001
361GDISelectPalette61
362GDIRealizePalette21
363GetPaletteEntries100
364SetPaletteEntries101
365RealizeDefaultPalette20
366UpdateColors21
367AnimatePalette101
368ResizePalette41
370GetNearestPaletteIndex60
372ExtFloodFill121
373SetSystemPaletteUse41
374GetSystemPaletteUse20
375GetSystemPaletteEntries100
376ResetDC61
377StartDoc61
378EndDoc21
379StartPage21
380EndPage21
381SetAbortProc61
382AbortDoc21
401GDIMOVEBITMAP01
402GDIGETBITSGLOBAL01
403GdiInit241
404GetTTGlyphIndexMap00
405FinalGdiInit21
406CREATEREALBITMAPINDIRECT01
407CreateUserBitmap120
408CREATEREALBITMAP01
409CreateUserDiscardableBitmap60
410IsValidMetaFile21
411GetCurLogFont20
412IsDCCurrentPalette21
440SetDIBits181
441GetDIBits180
449DEVICECOLORMATCH01
451CreatePolyPolygonRgn120
452GdiSeeGdiDo80
460GDITASKTERMINATION01
461SetObjectOwner41
462IsGDIObject21
463MakeObjectPrivate40
464FIXUPBOGUSPUBLISHERMETAFILE01
465RectVisible61
466RectInRegion61
467UNICODETOANSI01
468GetBitmapDimensionEx60
469GetBrushOrgEx60
476OffsetViewportOrgEx101
477OffsetWindowOrgEx101
478SetBitmapDimensionEx101
484ScaleViewportExtEx141
485ScaleWindowExtEx141
486GetAspectRatioFilterEx60
489CreateDIBSection200
490CloseEnhMetafile01
491CopyEnhMetafile00
492CreateEnhMetafile00
493DeleteEnhMetafile01
495GDIComment01
496GetEnhMetafile00
497GetEnhMetafileBits00
498GetEnhMetafileDescription00
499GetEnhMetafileHeader00
501GetEnhMetafilePaletteEntries00
502PolyBezier81
503PolyBezierTo81
504PlayEnhMetafileRecord01
505SetEnhMetafileBits01
506SetMetaRgn01
508ExtSelectClipRgn61
511AbortPath21
512BeginPath21
513CloseFigure21
514EndPath21
515FillPath21
516FlattenPath21
517GetPath120
518PathToRegion21
519SelectClipPath40
520StrokeAndFillPath21
521StrokePath21
522WidenPath21
523ExtCreatePen01
524GetArcDirection20
525SetArcDirection41
526GetMiterLimit00
527SetMiterLimit01
528GDIParametersInfo01
529CreateHalftonePalette20
530RawTextOut01
531RawExtTextOut01
532RawGetTextExtent81
536BiDiLayout01
538BiDiCreateTabString01
540BiDiGlyphOut01
543BiDiGetStringExtent01
555BiDiDeleteString01
556BiDiSetDefaults01
558BiDiGetDefaults01
560BiDiShape01
561BiDiFontComplement01
564BiDiSetKashida01
565BiDiKExtTextOut01
566BiDiShapeEx01
569BiDiCreateStringEx01
571GetTextExtentRtoL00
572GetHDCCharSet00
573BiDiLayoutEx01
602SetDIBColorTable101
603GetDIBColorTable100
604SetSolidBrush61
605SysDeleteObject21
606SetMagicColors81
607GetRegionData100
608ExtCreateRegion01
609GdiFreeResources41
610GdiSignalProc32141
611GetRandomRgn00
612GetTextCharset20
613EnumFontFamiliesEx180
614AddLpkToGDI01
615GetCharacterPlacement00
616GetFontLanguageInfo20
650BuildInverseTableDIB01
701GDITHKCONNECTIONDATALS01
702FT_GDIFTHKTHKCONNECTIONDATA01
703FDTHKCONNECTIONDATASL01
704ICMTHKCONNECTIONDATASL01
820ICMCreateTransform01
821ICMDeleteTransform01
822ICMTranslateRGB01
823ICMTranslateRGBs01
824ICMCheckColorsInGamut01
1000SetLayout61
1001GetLayout00
KERNEL: 364 stubbed
OrdinalName (from source comment)argbytesretval
2ExitKernel01
11LocalHandle21
12LocalFlags21
14LocalNotify40
22GlobalFlags21
26GlobalFreeAll21
27GetModuleName80
28GlobalMasterHandle00
31PostEvent21
32SetPriority41
33LockCurrentTask21
34SetTaskQueue41
35GetTaskQueue20
38SetTaskSignalProc60
39SetTaskSwitchProc01
40SetTaskInterchange01
41EnableDos01
42DisableDos01
43IsScreenGrab01
44BuildPDB01
45LoadModule80
46FreeModule21
53CallProcInstance01
54GetInstanceData60
66AllocResource80
67SetResourceHandler100
68InitAtomTable21
69FindAtom40
70AddAtom41
71DeleteAtom21
72GetAtomName80
73GetAtomHandle20
75OpenPathName00
76DeletePathName01
77Reserved140
78Reserved280
79Reserved340
80Reserved440
87Reserved581
92GetTempDrive20
93GetCodeHandle40
97GetTempFileName120
98GetLastDiskChange00
99GetLPErrMode00
100ValidateCodeSegments01
101NoHookDosCall01
103NetBIOSCall00
104GetCodeInfo80
105GetExeVersion00
106SetSwapAreaSize20
108SwitchStackTo61
109SwitchStackBack00
110PatchCodeHandle20
111GlobalWire20
112GlobalUnWire21
116InitLib01
117OldYield01
118GetTaskQueueDS00
119GetTaskQueueES00
120UndefDynLink01
121LocalShrink41
122IsTaskLocked01
123KbdRst01
124EnableKernel01
125DisableKernel01
126MemoryFreed01
130FileCDR40
133GetExePtr20
138GetHeapSpaces20
139DoSignal01
140SetSigHandler161
141InitTask101
142GetProfileSectionNames60
143GetPrivateProfileSectionNames100
144CreateDirectory80
145RemoveDirectory41
146DeleteFile41
147SetLastError41
148GetLastError00
149GetVersionEx40
150DirectedYield21
151WinOldApCall01
152GetNumTasks00
154GlobalNotify41
155GetTaskDS00
156LimitEMSPages40
157GetCurPID40
158IsWinOldApTask21
159GlobalHandleNoRIP20
160EMSCopy01
161LocalCountFree01
162LocalHeapSize01
163GlobalLRUOldest21
164GlobalLRUNewest21
165A20Proc21
167GetExpWinVer20
168DirectResAlloc61
175AllocSelector20
180LongPtrAdd81
184GlobalDOSAlloc40
185GlobalDOSFree21
186GetSelectorBase20
187SetSelectorBase61
188GetSelectorLimit20
189SetSelectorLimit61
191GlobalPageLock21
192GlobalPageUnlock21
196SelectorAccessRights60
197GlobalFix21
198GlobalUnfix21
200ValidateFreeSpaces01
201ReplaceInst01
202RegisterPtrace01
203DebugBreak00
204SwapRecording01
205CVWBreak01
206AllocSelectorArray20
207IsDBCSLeadByte21
208K208140
209K209140
210K210180
211K211100
213K213120
214K214100
215K21560
216RegEnumKey160
217RegOpenKey120
218RegCreateKey120
219RegDeleteKey80
220RegCloseKey40
221RegSetValue200
222RegDeleteValue80
223RegEnumValue320
224RegQueryValue160
225RegQueryValueEx240
226RegSetValueEx240
227RegFlushKey40
228K22821
229K22941
230GlobalSmartPageLock20
231GlobalSmartPageUnlock20
232RegLoadKey01
233RegUnloadKey01
234RegSaveKey01
235InvalidateNlsCache01
236GetProductName00
237K23701
262WOWWaitForMsgAndEvent01
263WOWMsgBox01
273K27301
274GetShortPathName100
310LocalHandleDelta21
311GetSetKernelDOSProc40
314DebugDefineSegment01
315WriteOutProfiles01
316GetFreeMemInfo00
318FatalExitHook01
319FlushCachedFileHandle01
320IsTask21
323IsRomModule21
324LogError61
325LogParamError101
326IsRomFile21
327K32700
328_DebugOutput61
329K32961
338HasGPHandler41
339DiagQuery01
340DiagOutput41
341ToolHelpHook40
343RegisterWinOldApHook01
344GetWinOldApHooks00
345IsSharedSelector21
351BUNNY_35101
352lstrcatn100
353lstrcpyn100
354GetAppCompatFlags20
355GetWinDebugInfo60
356SetWinDebugInfo41
357MapSL40
358MapLS40
359UnMapLS40
360OpenFileEx100
361PIGLET_36101
362ThunkTerminateProcess01
365GlobalChangeLockCount40
403FarSetOwner41
404FarGetOwner21
406WritePrivateProfileStruct181
407GetPrivateProfileStruct180
408KERNEL_40801
409KERNEL_40901
410CreateProcessFromWinExec00
411GetCurrentDirectory80
412SetCurrentDirectory41
413FindFirstFile80
414FindNextFile60
415FindClose20
416WritePrivateProfileSection121
417WriteProfileSection81
418GetPrivateProfileSection140
419GetProfileSection100
420GetFileAttributes40
421SetFileAttributes81
422GetDiskFreeSpace200
423LogApiThk41
431IsPeFormat61
432FileTimeToLocalFileTime01
434UnicodeToAnsi101
435GetTaskFlags00
436_ConfirmSysLevel41
437_CheckNotSysLevel41
438_CreateSysLevel81
439_EnterSysLevel41
440_LeaveSysLevel41
441CreateThread16240
442VWin32_EventCreate00
443VWin32_EventDestroy40
444Local32Info61
445Local32First61
446Local32Next41
447WIN32_OldYield01
448KERNEL_44801
449GetpWin16Lock00
450VWin32_EventWait40
451VWin32_EventSet40
452LoadLibrary3240
453GetProcAddress3280
456DefResourceHandler60
457CreateW32Event80
458SetW32Event40
459ResetW32Event40
460WaitForSingleObject80
461WaitForMultipleObjects160
462GetCurrentThreadId00
463SetThreadQueue60
464GetThreadQueue40
465NukeProcess01
466ExitProcess21
467WOACreateConsole01
468WOASpawnConApp01
469WOAGimmeTitle01
470WOADestroyConsole01
471GetCurrentProcessId00
472MapHInstLS00
473MapHInstSL00
474CloseW32Handle40
475GetTEBSelectorFS00
476ConvertToGlobalHandle40
477WOAFullScreen01
478WOATerminateProcess01
479KERNEL_47940
480_EnterWin16Lock01
481_LeaveWin16Lock01
482LoadSystemLibrary3240
483MapProcessHandle40
484SetProcessDword100
485GetProcessDword60
486FreeLibrary3240
487GetModuleFileName32100
488GetModuleHandle3240
489KERNEL_48901
490KERNEL_49021
491RegisterServiceProcess80
492WOAAbort01
493UTInit161
494KERNEL_49401
495WaitForMultipleObjectsEx200
500WOW16Call60
501KDDBGOUT01
502WOWGETNEXTVDMCOMMAND01
503WOWREGISTERSHELLWINDOWHANDLE01
504WOWLOADMODULE01
505WOWQUERYPERFORMANCECOUNTER01
506WOWCURSORICONOP01
507WOWFAILEDEXEC01
508WOWCLOSECOMPORT01
511WOWKILLREMOTETASK01
512WOWQUERYDEBUG01
513LoadLibraryEx32W120
514FreeLibrary32W40
515GetProcAddress32W80
516GetVDMPointer32W60
517CallProc32W120
518_CallProcEx32W120
519EXITKERNELTHUNK01
533ConvertDDEHandleLS01
534ConvertDDEHandleSL01
535VWin32_BoostThreadGroup80
536VWin32_BoostThreadStatic80
537KERNEL_53701
538ThunkTheTemplateHandle01
540KERNEL_54001
541WOWSETEXITONLASTAPP01
542KERNEL_54201
543KERNEL_54301
544WOWSETCOMPATHANDLE01
560SetThunkletCallbackGlue80
561AllocLSThunkletCallback80
562AllocSLThunkletCallback80
563FindLSThunkletCallback80
564FindSLThunkletCallback80
566KERNEL_56601
567AllocLSThunkletCallbackEx100
568AllocSLThunkletCallbackEx100
600AllocCodeAlias00
601FreeCodeAlias01
602GetDummyModuleHandleDS00
603KERNEL_60301
604CBClientGlueSL00
605AllocSLThunkletCallback_dup80
606AllocLSThunkletCallback_dup80
607AllocLSThunkletSysthunk120
608AllocSLThunkletSysthunk120
609FindLSThunkletCallback_dup80
610FindSLThunkletCallback_dup80
611FreeThunklet81
612IsSLThunklet41
613HugeMapLS01
614HugeUnMapLS01
615ConvertDialog32To16121
616ConvertMenu32To16121
617GetMenu32Size40
618GetDialog32Size40
619RegisterCBClient101
620CBClientThunkSL00
621CBClientThunkSLEx00
622UnRegisterCBClient101
623InitCBClient41
624SetFastQueue80
625GetFastQueue00
626SmashEnvironment01
627IsBadFlatReadWritePtr101
630C16ThkSL00
631C16ThkSL0100
651ThunkConnect16240
652IsThreadId01
653OkWithKernelToChangeUsers01
666UTGlue16160
667EntryAddrProc40
668MyAlloc60
669DllEntryPoint161
700SSInit00
701SSOnBigStack01
702SSCall01
703CallProc32WFix01
704SSConfirmSmallStack00
901__wine_vxd_vmm00
905__wine_vxd_timer00
909__wine_vxd_reboot00
910__wine_vxd_vdd00
912__wine_vxd_vmd00
914__wine_vxd_comm00
923__wine_vxd_shell00
933__wine_vxd_pagefile00
938__wine_vxd_apm00
939__wine_vxd_vxdloader00
945__wine_vxd_win32s00
951__wine_vxd_configmg00
955__wine_vxd_enable00
1990__wine_vxd_timerapi00
2000__wine_call_int_handler20
2001__wine_snoop_entry00
2002__wine_snoop_return00
USER: 359 stubbed
OrdinalName (from source comment)argbytesretval
3EnableOEMLayer01
4DisableOEMLayer01
7ExitWindows61
11SetSystemTimer101
14GetTimerResolution00
16ClipCursor41
17GetCursorPos40
20SetDoubleClickTime21
21GetDoubleClickTime00
24RemoveProp61
25GetProp60
26SetProp81
27EnumProps60
30WindowFromPoint41
38GetWindowTextLength20
43CloseWindow21
44OpenIcon20
45BringWindowToTop21
48IsChild41
51BEAR5101
52AnyPopup01
54EnumWindows80
55EnumChildWindows100
59SetActiveWindow21
61ScrollWindow141
80UnionRect121
86IconSize00
99DlgDirSelect81
100DlgDirList121
105FlashWindow41
117WindowFromDC21
123CallMsgFilter61
126InvalidateRgn61
128ValidateRgn41
129GetClassWord40
130SetClassWord61
132SetClassLong80
137OpenClipboard20
138CloseClipboard01
139EmptyClipboard01
140GetClipboardOwner00
141SetClipboardData41
142GetClipboardData20
143CountClipboardFormats01
144EnumClipboardFormats20
146GetClipboardFormatName80
147SetClipboardViewer21
148GetClipboardViewer00
149ChangeClipboardChain41
170ArrangeIconicWindows21
172SwitchToThisWindow41
181SetSysColors101
182KillSystemTimer41
183GetCaretPos40
184QuerySendMessage00
185GrayString221
186SwapMouseButton21
187EndMenu01
188SetSysModalWindow21
189GetSysModalWindow00
191ChildWindowFromPoint61
193IsClipboardFormatAvailable21
194DlgDirSelectComboBox81
195DlgDirListComboBox121
196TabbedTextOut200
197GetTabbedTextExtent140
198CascadeChildWindows41
199TileChildWindows41
200OpenComm80
201SetCommState41
202GetCommState60
203GetCommError60
204ReadComm81
205WriteComm81
206TransmitCommChar41
207CloseComm21
208SetCommEventMask40
209GetCommEventMask40
210SetCommBreak21
211ClearCommBreak21
212UngetCommChar41
213BuildCommDCB81
214EscapeCommFunction40
215FlushComm41
216UserSeeUserDo80
217LookupMenuHandle41
220LoadMenuIndirect40
222GetKeyboardState40
223SetKeyboardState41
224GetWindowTask20
226LockInput01
227GetNextDlgGroupItem60
228GetNextDlgTabItem60
229GetTopWindow20
230GetNextWindow40
231GetSystemDebugState00
233SetParent41
234UnhookWindowsHook61
235DefHookProc120
236GetCapture00
237GetUpdateRgn60
238ExcludeUpdateRgn41
244EqualRect81
245EnableCommNotification81
246ExitWindowsExec81
247GetCursor00
248GetOpenClipboardWindow00
251SendDriverMessage120
252OpenDriver120
253CloseDriver100
254GetDriverModuleHandle20
255DefDriverProc160
256GetDriverInfo60
257GetNextDriver60
258MapWindowPoints101
259BeginDeferWindowPos21
260DeferWindowPos161
261EndDeferWindowPos21
265ShowOwnedPopups41
267ShowScrollBar61
269GlobalDeleteAtom21
270GlobalFindAtom41
271GlobalGetAtomName81
273ControlPanelInfo81
274GetNextQueueWindow00
275RepaintScreen01
276LockMyTask01
278GetDesktopHwnd00
279OldSetDeskPattern01
280SetSystemMenu41
281GetSysColorBrush20
285SetDeskWallpaper41
287GetLastActivePopup20
289keybd_event00
290RedrawWindow101
291SetWindowsHookEx100
292UnhookWindowsHookEx41
293CallNextHookEx120
294LockWindowUpdate21
299mouse_event00
300UnloadInstalledDrivers01
301EDITWNDPROC01
302STATICWNDPROC01
303BUTTONWNDPROC01
304SBWNDPROC01
305DESKTOPWNDPROC01
306MENUWNDPROC01
307LBOXCTLWNDPROC01
309GetClipCursor40
314SignalProc101
319ScrollWindowEx221
320SysErrorBox01
321SetEventHook40
322WinOldAppHackOMatic01
323GetMessage200
324FillWindow81
325PaintRect121
326GetControlBrush60
331EnableHardwareInput21
332UserYield01
333IsUserIdle01
336LoadCursorIconHandler60
337GetMouseEventProc00
338ECGETDS01
343GetFilePortName00
344COMBOBOXCTLWNDPROC01
345BEAR34501
356LoadDIBCursorHandler60
357LoadDIBIconHandler60
359GetDCEx80
362DCHook121
364LookupIconIdFromDirectoryEx121
368CopyIcon40
369CopyCursor40
370GetWindowPlacement60
371SetWindowPlacement61
372GetInternalIconHeader00
373SubtractRect121
374DllEntryPoint161
375DrawTextEx01
376SetMessageExtraInfo01
378SetPropEx01
379GetPropEx00
380RemovePropEx01
382SetWindowContextHelpID01
383GetWindowContextHelpID00
384SetMenuContextHelpId41
385GetMenuContextHelpId20
389LoadImage140
390CopyImage100
391SignalProc32141
394DrawIconEx181
395GetIconInfo60
397RegisterClassEx41
398GetClassInfoEx100
399ChildWindowFromPointEx81
400FinalUserInit01
402GetPriorityClipboardFormat60
406CreateCursor180
407CreateIcon180
408CreateCursorIconIndirect140
409InitThreadInput41
417GetMenuCheckMarkDimensions00
418SetMenuItemBitmaps101
422DlgDirSelectEx101
423DlgDirSelectComboBoxEx101
427FindWindowEx120
428TileWindows01
429CascadeWindows01
430lstrcmp81
432AnsiLower40
433IsCharAlpha21
434IsCharAlphaNumeric21
437AnsiUpperBuff61
438AnsiLowerBuff61
441InsertMenuItem101
443GetMenuItemInfo00
445DefFrameProc120
446SetMenuItemInfo01
447DefMDIChildProc100
448DrawAnimatedRects121
449DrawState241
450CreateIconFromResourceEx200
451TranslateMDISysAccel61
455GetIconID60
456LoadIconHandler40
458DestroyCursor21
459DumpIcon160
460GetInternalWindowPos100
461SetInternalWindowPos121
462CalcChildScroll41
463ScrollChildren101
464DragObject120
465DragDetect61
466DrawFocusRect61
470StringFunc01
475SetScrollInfo101
476GetScrollInfo80
477GetKeyboardLayoutName40
478LoadKeyboardLayout00
479MenuItemFromPoint01
480GetUserLocalObjType00
482EnableScrollBar61
483SystemParametersInfo101
489USER_48901
490USER_49001
492USER_49201
496USER_49601
498BEAR49801
499WNetErrorText81
500FARCALLNETDRIVER01
501WNetOpenJob141
502WNetCloseJob101
503WNetAbortJob61
504WNetHoldJob61
505WNetReleaseJob61
506WNetCancelJob61
507WNetSetJobCopies81
508WNetWatchQueue121
509WNetUnwatchQueue41
510WNetLockQueueData121
511WNetUnlockQueueData41
514WNetDeviceMode21
515WNetBrowseDialog81
516WNetGetUser81
517WNetAddConnection121
518WNetCancelConnection61
519WNetGetError41
520WNetGetErrorText101
521WNetEnable01
522WNetDisable01
523WNetRestoreConnection61
524WNetWriteJob101
525WNetConnectDialog41
526WNetDisconnectDialog41
527WNetConnectionDialog41
528WNetViewQueueDialog61
529WNetPropertyDialog121
530WNetGetDirectoryType81
531WNetDirectoryNotify81
532WNetGetPropertyText161
533WNetInitialize01
534WNetLogon01
535WOWWORDBREAKPROC01
537MOUSEEVENT01
538KEYBDEVENT01
595OLDEXITWINDOWS01
600GetShellWindow00
601DoHotkeyStuff01
602SetCheckCursorTimer01
604BroadcastSystemMessage01
605HackTaskMonitor01
606FormatMessage221
608GetForegroundWindow00
609SetForegroundWindow21
610DestroyIcon3241
620ChangeDisplaySettings80
621EnumDisplaySettings120
640MsgWaitForMultipleObjects200
650ActivateKeyboardLayout01
651GetKeyboardLayout00
652GetKeyboardLayoutList00
654UnloadKeyboardLayout01
655PostPostedMessages01
656DrawFrameControl101
657DrawCaptionTemp181
658DispatchInput01
659DrawEdge101
660DrawCaption101
661SetSysColorsTemp01
662DrawMenubarTemp01
663GetMenuDefaultItem00
664SetMenuDefaultItem01
665GetMenuItemRect100
666CheckMenuRadioItem101
667TrackPopupMenuEx01
668SetWindowRgn61
669GetWindowRgn00
800CHOOSEFONT_CALLBACK1601
801FINDREPLACE_CALLBACK1601
802OPENFILENAME_CALLBACK1601
803PRINTDLG_CALLBACK1601
804CHOOSECOLOR_CALLBACK1601
819PeekMessage32141
820GetMessage32120
821TranslateMessage3261
822DispatchMessage3260
823CallMsgFilter3281
825PostMessage3201
826PostThreadMessage3201
827MessageBoxIndirect41
851MsgThkConnectionDataLS01
853FT_USRFTHKTHKCONNECTIONDATA01
854FT__USRF2THKTHKCONNECTIONDATA01
855Usr32ThkConnectionDataSL01
890InstallIMT01
891UninstallIMT01
902LoadSystemLanguageString120
905ChangeDialogTemplate01
906GetNumLanguages00
907GetLanguageName100
909SetWindowTextEx81
910BiDiMessageBoxEx01
911SetDlgItemTextEx101
912ChangeKeyboardLanguage40
913GetCodePageSystemFont40
914QueryCodePage100
915GetAppCodePage20
916CreateDialogIndirectParamML260
918DialogBoxIndirectParamML241
919LoadLanguageString120
920SetAppCodePage80
922GetBaseCodePage00
923FindLanguageResource120
924ChangeKeyboardCodePage40
930MessageBoxEx141
1000SetProcessDefaultLayout41
1001GetProcessDefaultLayout40
1010__wine_call_wndproc140