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