Global constructors using `.section .ctors' are bogus for NetBSD's
[wine] / if1632 / kernel.spec
1 name    kernel
2 type    win16
3 file    krnl386.exe
4
5 # 1-207 are the basic functions, those are (with minor variations)
6 # present in win31, win95 and nt351
7
8 1   stub FatalExit
9 2   stub ExitKernel
10 3   pascal GetVersion() GetVersion16
11 4   pascal16 LocalInit(word word word) LocalInit
12 5   pascal16 LocalAlloc(word word) LocalAlloc16
13 6   pascal16 LocalReAlloc(word word word) LocalReAlloc16
14 7   pascal16 LocalFree(word) LocalFree16
15 8   pascal LocalLock(word) LocalLock16
16 9   pascal16 LocalUnlock(word) LocalUnlock16
17 10  pascal16 LocalSize(word) LocalSize16
18 11  pascal16 LocalHandle(word) LocalHandle16
19 12  pascal16 LocalFlags(word) LocalFlags16
20 13  pascal16 LocalCompact(word) LocalCompact16
21 14  pascal LocalNotify(long) LocalNotify
22 15  pascal16 GlobalAlloc(word long) GlobalAlloc16
23 16  pascal16 GlobalReAlloc(word long word) GlobalReAlloc16
24 17  pascal16 GlobalFree(word) GlobalFree16
25 18  pascal GlobalLock(word) WIN16_GlobalLock16
26 19  pascal16 GlobalUnlock(word) GlobalUnlock16
27 20  pascal GlobalSize(word) GlobalSize16
28 21  pascal GlobalHandle(word) GlobalHandle16
29 22  pascal16 GlobalFlags(word) GlobalFlags16
30 23  pascal16 LockSegment(word) LockSegment16
31 24  pascal16 UnlockSegment(word) UnlockSegment16
32 25  pascal GlobalCompact(long) GlobalCompact16
33 26  pascal16 GlobalFreeAll(word) GlobalFreeAll
34 27  pascal16 GetModuleName(word ptr word) GetModuleName
35 28  stub GlobalMasterHandle
36 29  pascal16 Yield() Yield16
37 30  pascal16 WaitEvent(word) WaitEvent
38 31  pascal16 PostEvent(word) PostEvent
39 32  pascal16 SetPriority(word s_word) SetPriority
40 33  pascal16 LockCurrentTask(word) LockCurrentTask
41 34  pascal16 SetTaskQueue(word word) SetTaskQueue
42 35  pascal16 GetTaskQueue(word) GetTaskQueue
43 36  pascal   GetCurrentTask() WIN16_GetCurrentTask
44 37  pascal GetCurrentPDB() GetCurrentPDB
45 38  pascal   SetTaskSignalProc(word segptr) THUNK_SetTaskSignalProc
46 41  return EnableDos 0 0
47 42  return DisableDos 0 0
48 45  pascal16 LoadModule(str ptr) LoadModule16
49 46  pascal16 FreeModule(word) FreeModule16
50 47  pascal   GetModuleHandle(segstr) WIN16_GetModuleHandle
51 48  pascal16 GetModuleUsage(word) GetModuleUsage
52 49  pascal16 GetModuleFileName(word ptr s_word) GetModuleFileName16
53 50  pascal GetProcAddress(word segstr) GetProcAddress16
54 51  pascal MakeProcInstance(segptr word) MakeProcInstance16
55 52  pascal16 FreeProcInstance(segptr) FreeProcInstance16
56 53  stub CallProcInstance
57 54  pascal16 GetInstanceData(word word word) GetInstanceData
58 55  register Catch(segptr) Catch 
59 56  register Throw(segptr word) Throw
60 57  pascal16 GetProfileInt(str str s_word) GetProfileInt16
61 58  pascal16 GetProfileString(str str str ptr word) GetProfileString16
62 59  pascal16 WriteProfileString(str str str) WriteProfileString16
63 60  pascal16 FindResource(word segstr segstr) FindResource16
64 61  pascal16 LoadResource(word word) LoadResource16
65 62  pascal LockResource(word) WIN16_LockResource16
66 63  pascal16 FreeResource(word) FreeResource16
67 64  pascal16 AccessResource(word word) AccessResource16
68 65  pascal SizeofResource(word word) SizeofResource16
69 66  pascal16 AllocResource(word word long) AllocResource
70 67  pascal SetResourceHandler(word segstr segptr) SetResourceHandler
71 68  pascal16 InitAtomTable(word) InitAtomTable16
72 69  pascal16 FindAtom(segstr) FindAtom16
73 70  pascal16 AddAtom(segstr) AddAtom16
74 71  pascal16 DeleteAtom(word) DeleteAtom16
75 72  pascal16 GetAtomName(word ptr word) GetAtomName16
76 73  pascal16 GetAtomHandle(word) GetAtomHandle
77 74  pascal16 OpenFile(str ptr word) OpenFile16
78 75  stub OpenPathName
79 76  stub DeletePathName
80 # Reserved*: old Win 2.x functions now moved to USER (Win 3.0+)
81 77  pascal Reserved1(segptr) AnsiNext16
82 78  pascal Reserved2(segptr segptr) AnsiPrev16
83 79  pascal Reserved3(segstr) AnsiUpper16
84 80  pascal Reserved4(segstr) AnsiLower16
85 81  pascal16 _lclose(word) _lclose16
86 82  pascal16 _lread(word segptr word) WIN16_lread
87 83  pascal16 _lcreat(str word) _lcreat16
88 84  pascal   _llseek(word long word) _llseek16
89 85  pascal16 _lopen(str word) _lopen16
90 86  pascal16 _lwrite(word ptr word) _lwrite16
91 87  pascal16 Reserved5(str str) lstrcmp16
92 88  pascal   lstrcpy(segptr str) lstrcpy16
93 89  pascal   lstrcat(segstr str) lstrcat16
94 90  pascal16 lstrlen(str) lstrlen16
95 91  register InitTask() InitTask
96 92  pascal   GetTempDrive(word) WIN16_GetTempDrive
97 93  pascal16 GetCodeHandle(segptr) GetCodeHandle
98 94  pascal16 DefineHandleTable(word) DefineHandleTable16
99 95  pascal16 LoadLibrary(str) LoadLibrary16
100 96  pascal16 FreeLibrary(word) FreeLibrary16
101 97  pascal16 GetTempFileName(word str word ptr) GetTempFileName16
102 98  return GetLastDiskChange 0 0
103 99  stub GetLPErrMode
104 100 return ValidateCodeSegments 0 0
105 101 stub NoHookDosCall
106 102 register DOS3Call() DOS3Call
107 103 register NetBIOSCall() NetBIOSCall
108 104 pascal16 GetCodeInfo(segptr ptr) GetCodeInfo
109 105 pascal16 GetExeVersion() GetExeVersion
110 106 pascal SetSwapAreaSize(word) SetSwapAreaSize16
111 107 pascal16 SetErrorMode(word) SetErrorMode16
112 108 pascal16 SwitchStackTo(word word word) SwitchStackTo
113 109 register SwitchStackBack() SwitchStackBack
114 110 pascal   PatchCodeHandle(word) PatchCodeHandle
115 111 pascal   GlobalWire(word) GlobalWire16
116 112 pascal16 GlobalUnWire(word) GlobalUnWire16
117 113 equate __AHSHIFT 3
118 114 equate __AHINCR 8
119 115 pascal16 OutputDebugString(str) OutputDebugString16
120 116 stub InitLib
121 117 pascal16 OldYield() OldYield
122 118 register GetTaskQueueDS() GetTaskQueueDS
123 119 register GetTaskQueueES() GetTaskQueueES
124 120 stub UndefDynLink
125 121 pascal16 LocalShrink(word word) LocalShrink16
126 122 pascal16 IsTaskLocked() IsTaskLocked
127 123 return KbdRst 0 0
128 124 return EnableKernel 0 0
129 125 return DisableKernel 0 0
130 126 stub MemoryFreed
131 127 pascal16 GetPrivateProfileInt(str str s_word str) GetPrivateProfileInt16
132 128 pascal16 GetPrivateProfileString(str str str ptr word str)
133              GetPrivateProfileString16
134 129 pascal16 WritePrivateProfileString(str str str str)
135              WritePrivateProfileString16
136 130 pascal FileCDR(ptr) FileCDR
137 131 pascal GetDOSEnvironment() GetDOSEnvironment
138 132 pascal GetWinFlags() GetWinFlags
139 133 register GetExePtr(word) WIN16_GetExePtr
140 134 pascal16 GetWindowsDirectory(ptr word) GetWindowsDirectory16
141 135 pascal16 GetSystemDirectory(ptr word) GetSystemDirectory16
142 136 pascal16 GetDriveType(word) GetDriveType16
143 137 pascal16 FatalAppExit(word str) FatalAppExit16
144 138 pascal GetHeapSpaces(word) GetHeapSpaces
145 139 stub DoSignal
146 140 pascal16 SetSigHandler(segptr ptr ptr word word) SetSigHandler
147 141 stub InitTask1
148 142 pascal16 GetProfileSectionNames(ptr word) GetProfileSectionNames16
149 143 pascal16 GetPrivateProfileSectionNames(ptr word str) GetPrivateProfileSectionNames16
150 144 pascal16 CreateDirectory(ptr ptr) CreateDirectory16
151 145 pascal16 RemoveDirectory(ptr) RemoveDirectory16
152 146 pascal16 DeleteFile(ptr) DeleteFile16
153 147 pascal16 SetLastError(long) SetLastError
154 148 pascal   GetLastError() GetLastError
155 149 pascal16 GetVersionEx(ptr) GetVersionEx16
156 150 pascal16 DirectedYield(word) DirectedYield
157 151 stub WinOldApCall
158 152 pascal16 GetNumTasks() GetNumTasks
159 154 pascal16 GlobalNotify(segptr) GlobalNotify
160 155 pascal16 GetTaskDS() GetTaskDS
161 156 return LimitEMSPages 4 0
162 157 return GetCurPID 4 0
163 158 return IsWinOldApTask 2 0
164 159 pascal GlobalHandleNoRIP(word) GlobalHandleNoRIP
165 160 stub EMSCopy
166 161 pascal16 LocalCountFree() LocalCountFree
167 162 pascal16 LocalHeapSize() LocalHeapSize
168 163 pascal16 GlobalLRUOldest(word) GlobalLRUOldest
169 164 pascal16 GlobalLRUNewest(word) GlobalLRUNewest
170 165 return A20Proc 2 0
171 166 pascal16 WinExec(str word) WinExec16
172 167 pascal16 GetExpWinVer(word) GetExpWinVer
173 168 pascal16 DirectResAlloc(word word word) DirectResAlloc
174 169 pascal GetFreeSpace(word) GetFreeSpace16
175 170 pascal16 AllocCStoDSAlias(word) AllocCStoDSAlias
176 171 pascal16 AllocDStoCSAlias(word) AllocDStoCSAlias
177 172 pascal16 AllocAlias(word) AllocCStoDSAlias
178 173 equate __ROMBIOS 0
179 174 equate __A000H 0
180 175 pascal16 AllocSelector(word) AllocSelector
181 176 pascal16 FreeSelector(word) FreeSelector
182 177 pascal16 PrestoChangoSelector(word word) PrestoChangoSelector
183 178 equate __WINFLAGS 0x413
184 179 equate __D000H 0
185 180 pascal16 LongPtrAdd(long long) LongPtrAdd
186 181 equate __B000H 0
187 182 equate __B800H 0
188 183 equate __0000H 0
189 184 pascal GlobalDOSAlloc(long) GlobalDOSAlloc
190 185 pascal16 GlobalDOSFree(word) GlobalDOSFree
191 186 pascal GetSelectorBase(word) WIN16_GetSelectorBase
192 187 pascal16 SetSelectorBase(word long) WIN16_SetSelectorBase
193 188 pascal GetSelectorLimit(word) GetSelectorLimit
194 189 pascal16 SetSelectorLimit(word long) SetSelectorLimit
195 190 equate __E000H 0
196 191 pascal16 GlobalPageLock(word) GlobalPageLock
197 192 pascal16 GlobalPageUnlock(word) GlobalPageUnlock
198 193 equate __0040H 0
199 194 equate __F000H 0
200 195 equate __C000H 0
201 196 pascal16 SelectorAccessRights(word word word) SelectorAccessRights
202 197 pascal16 GlobalFix(word) GlobalFix16
203 198 pascal16 GlobalUnfix(word) GlobalUnfix16
204 199 pascal16 SetHandleCount(word) SetHandleCount16
205 200 return ValidateFreeSpaces 0 0
206 201 stub ReplaceInst
207 202 stub RegisterPtrace
208 203 register DebugBreak() DebugBreak
209 204 stub SwapRecording
210 205 stub CVWBreak
211 206 pascal16 AllocSelectorArray(word) AllocSelectorArray
212 207 pascal16 IsDBCSLeadByte(word) IsDBCSLeadByte16
213
214
215 # 208-237 are Win95 extensions; a few of those are also present in WinNT
216
217 208 pascal K208(word long long long) Local32Init
218 209 pascal K209(long long word long) Local32Alloc
219 210 pascal K210(long long word long long) Local32ReAlloc
220 211 pascal K211(long long word) Local32Free
221 213 pascal K213(long long word word) Local32Translate
222 214 pascal K214(long long word) Local32Size
223 215 pascal K215(long word) Local32ValidHandle  # Win95 only -- CONFLICT!
224 #215 stub WOWShouldWeSayWin95                  # WinNT only -- CONFLICT!
225 216 pascal RegEnumKey(long long ptr long) RegEnumKey16                    # Both 95/NT
226 217 pascal RegOpenKey(long str ptr) RegOpenKey16                          # Both 95/NT
227 218 pascal RegCreateKey(long str ptr) RegCreateKey16
228 219 pascal RegDeleteKey(long str) RegDeleteKey16
229 220 pascal RegCloseKey(long) RegCloseKey                                  # Both 95/NT
230 221 pascal RegSetValue(long str long ptr long) RegSetValue16
231 222 pascal RegDeleteValue(long str) RegDeleteValue16
232 223 pascal RegEnumValue(long long ptr ptr ptr ptr ptr ptr) RegEnumValue16 # Both 95/NT
233 224 pascal RegQueryValue(long str ptr ptr) RegQueryValue16
234 225 pascal RegQueryValueEx(long str ptr ptr ptr ptr) RegQueryValueEx16
235 226 pascal RegSetValueEx(long str long long ptr long) RegSetValueEx16
236 227 pascal RegFlushKey(long) RegFlushKey
237 228 pascal16 K228(word) GetExePtr
238 229 pascal16 K229(long) Local32GetSegment
239 230 pascal GlobalSmartPageLock(word) GlobalPageLock #?
240 231 stub GlobalSmartPageUnlock
241 232 stub RegLoadKey
242 233 stub RegUnloadKey
243 234 stub RegSaveKey
244 235 stub InvalidateNlsCache
245 236 stub GetProductName
246 237 return K237 0 0
247
248
249 # 262-274 are WinNT extensions; those are not present in Win95
250
251 262 stub WOWWaitForMsgAndEvent
252 263 stub WOWMsgBox
253 273 stub K273
254 274 stub GetShortPathName
255
256
257 # 310-356 are again shared between all versions
258
259 310 pascal16 LocalHandleDelta(word) LocalHandleDelta
260 311 pascal GetSetKernelDOSProc(ptr) GetSetKernelDOSProc
261 314 stub DebugDefineSegment
262 315 pascal16 WriteOutProfiles() WriteOutProfiles
263 316 pascal GetFreeMemInfo() GetFreeMemInfo
264 318 stub FatalExitHook
265 319 stub FlushCachedFileHandle
266 320 pascal16 IsTask(word) IsTask
267 323 return IsRomModule 2 0
268 324 pascal16 LogError(word ptr) LogError
269 325 pascal16 LogParamError(word ptr ptr) LogParamError
270 326 return IsRomFile 2 0
271 327 register K327() HandleParamError
272 328 stub _DebugOutput
273 329 pascal16 K329(str word) DebugFillBuffer
274 332 long THHOOK(0 0 0 0 0 0 0 0)
275 334 pascal16 IsBadReadPtr(segptr word) IsBadReadPtr16
276 335 pascal16 IsBadWritePtr(segptr word) IsBadWritePtr16
277 336 pascal16 IsBadCodePtr(segptr) IsBadCodePtr16
278 337 pascal16 IsBadStringPtr(segptr word) IsBadStringPtr16
279 338 pascal16 HasGPHandler(segptr) HasGPHandler
280 339 pascal16 DiagQuery() DiagQuery
281 340 pascal16 DiagOutput(str) DiagOutput
282 341 pascal ToolHelpHook(ptr) ToolHelpHook
283 342 word __GP(0 0 0 0)
284 343 stub RegisterWinOldApHook
285 344 stub GetWinOldApHooks
286 345 pascal16 IsSharedSelector(word) IsSharedSelector
287 346 pascal16 IsBadHugeReadPtr(segptr long) IsBadHugeReadPtr16
288 347 pascal16 IsBadHugeWritePtr(segptr long) IsBadHugeWritePtr16
289 348 pascal16 hmemcpy(ptr ptr long) hmemcpy
290 349 pascal   _hread(word segptr long) WIN16_hread
291 350 pascal   _hwrite(word ptr long) _hwrite16
292 351 stub BUNNY_351
293 352 pascal   lstrcatn(segstr str word) lstrcatn16
294 353 pascal   lstrcpyn(segptr str word) lstrcpyn16
295 354 pascal   GetAppCompatFlags(word) GetAppCompatFlags16
296 355 pascal16 GetWinDebugInfo(ptr word) GetWinDebugInfo
297 356 pascal16 SetWinDebugInfo(ptr) SetWinDebugInfo
298
299
300 # 357-365 are present in Win95 only
301 # Note that from here on most of the Win95-only functions are exported 
302 # ordinal-only; the names given here are mostly guesses :-)
303
304 357 pascal MapSL(segptr) MapSL
305 358 pascal MapLS(long) MapLS
306 359 pascal UnMapLS(segptr) UnMapLS
307 360 pascal16 OpenFileEx(str ptr word) OpenFile16
308 361 return PIGLET_361 0 0
309 362 stub ThunkTerminateProcess
310 365 register GlobalChangeLockCount(word word) GlobalChangeLockCount
311
312
313 # 403-404 are common to all versions
314
315 403 pascal16 FarSetOwner(word word) FarSetOwner
316 404 pascal16 FarGetOwner(word) FarGetOwner
317
318
319 # 406-494 are present only in Win95
320
321 406 stub WritePrivateProfileStruct
322 407 stub GetPrivateProfileStruct
323 408 stub KERNEL_408
324 409 stub KERNEL_409
325 410 stub CreateProcessFromWinExec
326 411 pascal   GetCurrentDirectory(long ptr) GetCurrentDirectory16
327 412 pascal16 SetCurrentDirectory(ptr) SetCurrentDirectory16
328 413 pascal16 FindFirstFile(ptr ptr) FindFirstFile16
329 414 pascal16 FindNextFile(word ptr) FindNextFile16
330 415 pascal16 FindClose(word) FindClose16
331 416 stub WritePrivateProfileSection
332 417 stub WriteProfileSection
333 418 stub GetPrivateProfileSection
334 419 stub GetProfileSection
335 420 pascal   GetFileAttributes(ptr) GetFileAttributes16
336 421 pascal16 SetFileAttributes(ptr long) SetFileAttributes16
337 422 pascal16 GetDiskFreeSpace(ptr ptr ptr ptr ptr) GetDiskFreeSpace16 
338 423 stub LogApiThk
339 431 pascal16 IsPeFormat(str word) IsPeFormat
340 432 stub FileTimeToLocalFileTime
341 434 stub UnicodeToAnsi
342 435 stub GetTaskFlags
343 436 stub _ConfirmSysLevel
344 437 stub _CheckNotSysLevel
345 438 stub _CreateSysLevel
346 439 stub _EnterSysLevel
347 440 stub _LeaveSysLevel
348 441 pascal CreateThread16(ptr long segptr segptr long ptr) THUNK_CreateThread16
349 442 pascal VWin32_EventCreate() VWin32_EventCreate
350 443 pascal VWin32_EventDestroy(long) VWin32_EventDestroy
351 444 pascal16 Local32Info(ptr word) Local32Info
352 445 pascal16 Local32First(ptr word) Local32First
353 446 pascal16 Local32Next(ptr) Local32Next
354 447 return KERNEL_447 0 0
355 448 stub KERNEL_448
356 449 pascal GetpWin16Lock() GetpWin16Lock16
357 450 pascal VWin32_EventWait(long) VWin32_EventWait
358 451 pascal VWin32_EventSet(long) VWin32_EventSet
359 452 pascal LoadLibrary32(str) LoadLibrary32A
360 453 pascal GetProcAddress32(long str) WIN16_GetProcAddress32
361 454 equate __FLATCS 0   # initialized by BUILTIN_Init()
362 455 equate __FLATDS 0   # initialized by BUILTIN_Init()
363 456 pascal DefResourceHandler(word word word) NE_DefResourceHandler
364 457 pascal CreateW32Event(long long) WIN16_CreateEvent
365 458 pascal SetW32Event(long) SetEvent
366 459 pascal ResetW32Event(long) ResetEvent
367 460 pascal WaitForSingleObject(long long) WIN16_WaitForSingleObject
368 461 pascal WaitForMultipleObjects(long ptr long long) WIN16_WaitForMultipleObjects
369 462 pascal GetCurrentThreadId() GetCurrentThreadId
370 463 pascal SetThreadQueue(long word) SetThreadQueue
371 464 pascal GetThreadQueue(long) GetThreadQueue
372 465 stub NukeProcess
373 466 stub ExitProcess
374 467 stub WOACreateConsole
375 468 stub WOASpawnConApp
376 469 stub WOAGimmeTitle
377 470 stub WOADestroyConsole
378 471 pascal GetCurrentProcessId() GetCurrentProcessId
379 472 register MapHInstLS() WIN16_MapHInstLS
380 473 register MapHInstSL() WIN16_MapHInstSL
381 474 pascal CloseW32Handle(long) CloseHandle
382 475 register GetTEBSelectorFS() GetTEBSelectorFS
383 476 pascal ConvertToGlobalHandle(long) ConvertToGlobalHandle
384 477 stub WOAFullScreen
385 478 stub WOATerminateProcess
386 479 pascal KERNEL_479(long) VWin32_EventSet  # ???
387 480 pascal16 _EnterWin16Lock() SYSLEVEL_EnterWin16Lock
388 481 pascal16 _LeaveWin16Lock() SYSLEVEL_LeaveWin16Lock
389 482 pascal LoadSystemLibrary32(str) LoadLibrary32A   # FIXME!
390 483 stub MapProcessHandle
391 484 pascal SetProcessDWORD(long s_word long) SetProcessDword
392 485 pascal GetProcessDWORD(long s_word) GetProcessDword
393 486 pascal FreeLibrary32(long) FreeLibrary32
394 487 pascal GetModuleFileName32(long str word) GetModuleFileName32A
395 488 pascal GetModuleHandle32(str) GetModuleHandle32A
396 489 stub KERNEL_489  # VWin32_BoostWithDecay
397 490 pascal16 KERNEL_490(word) KERNEL_490
398 491 pascal RegisterServiceProcess(long long) RegisterServiceProcess
399 492 stub WOAAbort
400 493 stub UTInit
401 494 stub KERNEL_494
402
403
404 # 500-544 are WinNT extensions; some are also available in Win95
405
406 500 pascal WOW16Call(word word word) WOW16Call
407 501 stub KDDBGOUT                                               # Both NT/95 (?)
408 502 stub WOWGETNEXTVDMCOMMAND
409 503 stub WOWREGISTERSHELLWINDOWHANDLE
410 504 stub WOWLOADMODULE
411 505 stub WOWQUERYPERFORMANCECOUNTER
412 506 stub WOWCURSORICONOP
413 507 stub WOWFAILEDEXEC
414 508 stub WOWCLOSECOMPORT
415 509 stub WOWKILLREMOTETASK
416 511 stub WOWKILLREMOTETASK
417 512 stub WOWQUERYDEBUG
418 513 pascal   LoadLibraryEx32W(ptr long long) LoadLibraryEx32W16 # Both NT/95
419 514 pascal16 FreeLibrary32W(long) FreeLibrary32                 # Both NT/95
420 515 pascal   GetProcAddress32W(long str) GetProcAddress32       # Both NT/95
421 516 pascal   GetVDMPointer32W(segptr long) GetVDMPointer32W     # Both NT/95
422 517 pascal   CallProc32W() WIN16_CallProc32W                    # Both NT/95
423 518 pascal   CallProcEx32W() WIN16_CallProcEx32W                # Both NT/95
424 519 stub EXITKERNELTHUNK
425 # the __MOD_ variables are WORD datareferences, the current values are invented.
426 520 equate __MOD_KERNEL 4200
427 521 equate __MOD_DKERNEL 4201
428 522 equate __MOD_USER 4203
429 523 equate __MOD_DUSER 4204
430 524 equate __MOD_GDI 4205
431 525 equate __MOD_DGDI 4206
432 526 equate __MOD_KEYBOARD 4207
433 527 equate __MOD_SOUND 4208
434 528 equate __MOD_SHELL 4209
435 529 equate __MOD_WINSOCK 4210
436 530 equate __MOD_TOOLHELP 4211
437 531 equate __MOD_MMEDIA 4212
438 532 equate __MOD_COMMDLG 4213
439 541 stub WOWSETEXITONLASTAPP
440 544 stub WOWSETCOMPATHANDLE
441
442
443 # 531-568 are Win95-only extensions.
444 # NOTE: Ordinals 531,532,541 clash with the WinNT extensions given above! Argh!
445
446 #531 stub ConvertClipboardHandleLS
447 #532 stub ConvertClipboardHandleSL
448 533 stub ConvertDDEHandleLS
449 534 stub ConvertDDEHandleSL
450 535 pascal VWin32_BoostThreadGroup(long long) VWin32_BoostThreadGroup
451 536 pascal VWin32_BoostThreadStatic(long long) VWin32_BoostThreadStatic
452 537 stub KERNEL_537
453 538 stub ThunkTheTemplateHandle
454 540 stub KERNEL_540
455 #541 stub KERNEL_541
456 542 stub KERNEL_542
457 543 stub KERNEL_543
458 560 pascal SetThunkletCallbackGlue(long segptr) SetThunkletCallbackGlue
459 561 pascal AllocLSThunkletCallback(segptr long) AllocLSThunkletCallback
460 562 pascal AllocSLThunkletCallback(long long) AllocSLThunkletCallback
461 563 pascal FindLSThunkletCallback(segptr long) FindLSThunkletCallback
462 564 pascal FindSLThunkletCallback(long long) FindSLThunkletCallback
463 566 stub KERNEL_566  # (thunklet) FIXME!!!
464 567 pascal AllocLSThunkletCallbackEx(segptr long word) AllocLSThunkletCallbackEx
465 568 pascal AllocSLThunkletCallbackEx(long long word) AllocSLThunkletCallbackEx
466
467
468 # 600-653 are Win95 only
469
470 600 stub AllocCodeAlias
471 601 stub FreeCodeAlias
472 602 register GetDummyModuleHandleDS() GetDummyModuleHandleDS
473 603 stub KERNEL_603  # OutputDebugString (?)
474 604 register CBClientGlueSL() CBClientGlueSL
475 605 pascal AllocSLThunkletCallback(long long) AllocSLThunkletCallback
476 606 pascal AllocLSThunkletCallback(segptr long) AllocLSThunkletCallback
477 607 pascal AllocLSThunkletSysthunk(segptr long long) AllocLSThunkletSysthunk
478 608 pascal AllocSLThunkletSysthunk(long segptr long) AllocSLThunkletSysthunk
479 609 pascal FindLSThunkletCallback(segptr long) FindLSThunkletCallback
480 610 pascal FindSLThunkletCallback(long long) FindSLThunkletCallback
481 611 return FreeThunklet 8 0
482 612 pascal16 IsSLThunklet(ptr) IsSLThunklet
483 613 stub HugeMapLS
484 614 stub HugeUnMapLS
485 615 pascal16 ConvertDialog32To16(long long long) ConvertDialog32To16
486 616 pascal16 ConvertMenu32To16(long long long) ConvertMenu32To16
487 617 pascal16 GetMenu32Size(ptr) GetMenu32Size
488 618 pascal16 GetDialog32Size(ptr) GetDialog32Size
489 619 pascal16 RegisterCBClient(word ptr long) RegisterCBClient
490 620 register CBClientThunkSL() CBClientThunkSL
491 621 stub KERNEL_621  # (cbclient)
492 622 pascal16 UnRegisterCBClient(word ptr long) UnRegisterCBClient
493 623 pascal16 InitCBClient(long) InitCBClient
494 624 pascal SetFastQueue(long long) SetFastQueue
495 625 pascal GetFastQueue() GetFastQueue
496 626 stub SmashEnvironment
497 627 stub IsBadFlatReadWritePtr
498 630 register C16ThkSL() C16ThkSL
499 631 register C16ThkSL01() C16ThkSL01
500 651 pascal ThunkConnect16(str str word long ptr str word) ThunkConnect16
501 652 stub IsThreadId
502 653 stub OkWithKernelToChangeUsers
503
504
505 # 700-704 are Win95 only
506
507 700 pascal SSInit() SSInit
508 701 stub SSOnBigStack
509 702 stub SSCall
510 703 stub CallProc32WFix
511 704 stub SSConfirmSmallStack
512
513
514 # Win95 krnl386.exe also exports ordinals 802-864,
515 # however, those seem to be only callback stubs that are
516 # never called directly by other modules ...
517