Windows NT 4.0 source code leak
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

19738 lines
399 KiB

page ,132
;Thunk Compiler Version 2.06 Jul 18 1994 14:16:10
;File Compiled Mon Jul 18 14:18:44 1994
;Command Line: .\thunkcom\thunk -y -z -NA THUNK32 -NC THUNK16 doscalls.i
TITLE $doscalls.asm
.386p
IFDEF GEN16
IFDEF GEN32
%out command line error: you can't specify both -DGEN16 and -DGEN32
.err
ENDIF
OPTION SEGMENT:USE16
.model LARGE,PASCAL
externDef DOSEXITSTUB:far16
externDef LDRLIBIRETURN:far16
externDef DOSEXITPROCESSSTUB:far16
externDef DOSRETURN:far16
externDef DOSEXIT:far16
externDef DOSCWAIT:far16
externDef DOSBEEP:far16
externDef DOSPHYSICALDISK:far16
externDef DOSGETCP:far16
externDef DOSSETCP:far16
externDef DOSSETPROCCP:far16
externDef DOSGETCTRYINFO:far16
externDef DOSGETDBCSEV:far16
externDef DOSCASEMAP:far16
externDef DOSGETCOLLATE:far16
externDef DOSSLEEP:far16
externDef DOSDEVCONFIG:far16
externDef DOSGETDATETIME:far16
externDef DOSSETDATETIME:far16
externDef DOSEXECPGM:far16
externDef DOSENTERCRITSEC:far16
externDef DOSEXITCRITSEC:far16
externDef DOSKILLPROCESS:far16
externDef DOSSETPRTY:far16
externDef DOSRESUMETHREAD:far16
externDef DOSSUSPENDTHREAD:far16
externDef DOSMAKEPIPE:far16
externDef DOSCREATEQUEUE:far16
externDef DOSOPENQUEUE:far16
externDef DOSCLOSEQUEUE:far16
externDef DOSPEEKQUEUE:far16
externDef DOSREADQUEUE:far16
externDef DOSPURGEQUEUE:far16
externDef DOSQUERYQUEUE:far16
externDef DOSWRITEQUEUE:far16
externDef DOSCALLNMPIPE:far16
externDef DOSCONNECTNMPIPE:far16
externDef DOSDISCONNECTNMPIPE:far16
externDef DOSMAKENMPIPE:far16
externDef DOSPEEKNMPIPE:far16
externDef DOSQNMPHANDSTATE:far16
externDef DOSQNMPIPEINFO:far16
externDef DOSQNMPIPESEMSTATE:far16
externDef DOSSETNMPHANDSTATE:far16
externDef DOSSETNMPIPESEM:far16
externDef DOSTRANSACTNMPIPE:far16
externDef DOSWAITNMPIPE:far16
externDef DOSBUFRESET:far16
externDef DOSCHDIR:far16
externDef DOSCHGFILEPTR:far16
externDef DOSCLOSE:far16
externDef DOSCOPY:far16
externDef DOSICOPY:far16
externDef DOSDELETE:far16
externDef DOSDEVIOCTL:far16
externDef DOSDUPHANDLE:far16
externDef DOSEDITNAME:far16
externDef DOSFILEIO:far16
externDef DOSFINDCLOSE:far16
externDef DOSFSATTACH:far16
externDef DOSFSCTL:far16
externDef DOSMOVE:far16
externDef DOSNEWSIZE:far16
externDef DOSQCURDIR:far16
externDef DOSQCURDISK:far16
externDef DOSQFHANDSTATE:far16
externDef DOSSETFHANDSTATE:far16
externDef DOSQFSATTACH:far16
externDef DOSQFSINFO:far16
externDef DOSQHANDTYPE:far16
externDef DOSQVERIFY:far16
externDef DOSRMDIR:far16
externDef DOSSEARCHPATH:far16
externDef DOSSELECTDISK:far16
externDef DOSSETFSINFO:far16
externDef DOSSETMAXFH:far16
externDef DOSSETVERIFY:far16
externDef DOSERRCLASS:far16
externDef DOSERROR:far16
externDef DOSLOADMODULE:far16
externDef DOSFREEMODULE:far16
externDef DOSGETMODHANDLE:far16
externDef DOSGETMODNAME:far16
externDef DOSGETRESOURCE:far16
externDef DOSGETRESOURCE2:far16
externDef DOSFREERESOURCE:far16
externDef DOSQAPPTYPE:far16
externDef DOSSHUTDOWN:far16
externDef DOSCREATETHREAD:far16
externDef DOSEXITLIST:far16
externDef DOSGETINFOSEG:far16
externDef DOSOPEN:far16
externDef DOSOPEN2:far16
externDef DOSREAD:far16
externDef DOSWRITE:far16
externDef DOSFINDFIRST:far16
externDef DOSFINDFIRST2:far16
externDef DOSENUMATTRIBUTE:far16
externDef DOSQFILEMODE:far16
externDef DOSQFILEINFO:far16
externDef DOSALLOCSEG:far16
externDef DOSFREESEG:far16
externDef DOSGETSEG:far16
externDef DOSGIVESEG:far16
externDef DOSREALLOCSEG:far16
externDef DOSSIZESEG:far16
externDef DOSALLOCHUGE:far16
externDef DOSREALLOCHUGE:far16
externDef DOSGETHUGESHIFT:far16
externDef DOSALLOCSHRSEG:far16
externDef DOSLOCKSEG:far16
externDef DOSUNLOCKSEG:far16
externDef DOSGETSHRSEG:far16
externDef DOSMEMAVAIL:far16
externDef DOSCREATECSALIAS:far16
externDef DOSSEMCLEAR:far16
externDef DOSSEMSET:far16
externDef DOSSEMWAIT:far16
externDef DOSSEMSETWAIT:far16
externDef DOSSEMREQUEST:far16
externDef DOSCREATESEM:far16
externDef DOSOPENSEM:far16
externDef DOSCLOSESEM:far16
externDef DOSMUXSEMWAIT:far16
externDef DOSFSRAMSEMREQUEST:far16
externDef DOSFSRAMSEMCLEAR:far16
externDef DOSTIMERASYNC:far16
externDef DOSTIMERSTART:far16
externDef DOSTIMERSTOP:far16
externDef DOSGETPROCADDR:far16
externDef DOSQUERYPROCTYPE:far16
externDef DOSQUERYRESOURCESIZE:far16
externDef DOSSETSIGHANDLER:far16
externDef DOSFLAGPROCESS:far16
externDef DOSHOLDSIGNAL:far16
externDef DOSSENDSIGNAL:far16
externDef DOSSETVEC:far16
externDef DOSGETENV:far16
externDef DOSGETVERSION:far16
externDef DOSGETMACHINEMODE:far16
externDef DOSFINDNEXT:far16
externDef DOSGETPID:far16
externDef DOSGETPPID:far16
externDef DOSMKDIR:far16
externDef DOSMKDIR2:far16
externDef DOSSETFILEMODE:far16
externDef DOSSETFILEINFO:far16
externDef DOSTRUEGETMESSAGE:far16
externDef DOSSCANENV:far16
externDef DOSPTRACE:far16
externDef DOSINSMESSAGE:far16
externDef DOSPUTMESSAGE:far16
externDef DOSSUBSET:far16
externDef DOSSUBALLOC:far16
externDef DOSSUBFREE:far16
externDef DOSSTARTSESSION:far16
externDef DOSSTOPSESSION:far16
externDef DOSSETSESSION:far16
externDef DOSSELECTSESSION:far16
externDef DOSSMSETTITLE:far16
externDef DOSSMPMPRESENT:far16
externDef WINSETTITLEANDICON:far16
externDef DOSGETPRTY:far16
externDef DOSQSYSINFO:far16
externDef DOSDEVIOCTL2:far16
externDef DOSICANONICALIZE:far16
externDef DOSREADASYNC:far16
externDef DOSWRITEASYNC:far16
externDef DOSFINDNOTIFYCLOSE:far16
externDef DOSFINDNOTIFYFIRST:far16
externDef DOSFINDNOTIFYNEXT:far16
externDef DOSFILELOCKS:far16
externDef DOSQPATHINFO:far16
externDef DOSSETPATHINFO:far16
externDef DOSPORTACCESS:far16
externDef DOSCLIACCESS:far16
externDef WINQUERYPROFILESTRING:far16
externDef WINQUERYPROFILESIZE:far16
externDef WINQUERYPROFILEDATA:far16
externDef WINQUERYPROFILEINT:far16
externDef WINWRITEPROFILEDATA:far16
externDef WINWRITEPROFILESTRING:far16
externDef WINCREATEHEAP:far16
externDef WINDESTROYHEAP:far16
externDef WINALLOCMEM:far16
externDef WINFREEMEM:far16
externDef WINGETLASTERROR:far16
externDef VIOSCROLLUP:far16
externDef VIOGETCURPOS:far16
externDef VIOSETCURPOS:far16
externDef VIOWRTTTY:far16
externDef VIOGETMODE:far16
externDef VIOREADCELLSTR:far16
externDef VIOSCROLLLF:far16
externDef VIOREADCHARSTR:far16
externDef VIOWRTCHARSTRATT:far16
externDef VIOWRTCELLSTR:far16
externDef VIOWRTCHARSTR:far16
externDef VIOWRTNCELL:far16
externDef VIOWRTNATTR:far16
externDef VIOWRTNCHAR:far16
externDef VIOSCROLLDN:far16
externDef VIOSCROLLRT:far16
externDef VIOGETANSI:far16
externDef VIOSETANSI:far16
externDef VIOGETCONFIG:far16
externDef VIOGETCP:far16
externDef VIOSETCP:far16
externDef VIOGETCURTYPE:far16
externDef VIOSETCURTYPE:far16
externDef VIOSETMODE:far16
externDef VIODEREGISTER:far16
externDef VIOREGISTER:far16
externDef VIOPOPUP:far16
externDef VIOENDPOPUP:far16
externDef VIOGETBUF:far16
externDef VIOSHOWBUF:far16
externDef VIOGETFONT:far16
externDef VIOSETFONT:far16
externDef VIOGETSTATE:far16
externDef VIOSETSTATE:far16
externDef VIOGETPHYSBUF:far16
externDef VIOMODEUNDO:far16
externDef VIOMODEWAIT:far16
externDef VIOSAVREDRAWWAIT:far16
externDef VIOSAVREDRAWUNDO:far16
externDef VIOSCRLOCK:far16
externDef VIOSCRUNLOCK:far16
externDef VIOPRTSC:far16
externDef VIOPRTSCTOGGLE:far16
externDef KBDFLUSHBUFFER:far16
externDef KBDGETSTATUS:far16
externDef KBDSETSTATUS:far16
externDef KBDPEEK:far16
externDef KBDCHARIN:far16
externDef KBDSTRINGIN:far16
externDef KBDGETFOCUS:far16
externDef KBDFREEFOCUS:far16
externDef KBDCLOSE:far16
externDef KBDOPEN:far16
externDef KBDDEREGISTER:far16
externDef KBDREGISTER:far16
externDef KBDGETCP:far16
externDef KBDSETCP:far16
externDef KBDSETCUSTXT:far16
externDef KBDXLATE:far16
externDef KBDGETHWID:far16
externDef KBDSETFGND:far16
externDef KBDSYNCH:far16
externDef KBDSHELLINIT:far16
externDef MOUCLOSE:far16
externDef MOUDEREGISTER:far16
externDef MOUDRAWPTR:far16
externDef MOUFLUSHQUE:far16
externDef MOUGETDEVSTATUS:far16
externDef MOUGETEVENTMASK:far16
externDef MOUGETNUMBUTTONS:far16
externDef MOUGETNUMMICKEYS:far16
externDef MOUGETNUMQUEEL:far16
externDef MOUGETPTRPOS:far16
externDef MOUGETPTRSHAPE:far16
externDef MOUGETSCALEFACT:far16
externDef MOUOPEN:far16
externDef MOUREADEVENTQUE:far16
externDef MOUREGISTER:far16
externDef MOUREMOVEPTR:far16
externDef MOUSETDEVSTATUS:far16
externDef MOUSETEVENTMASK:far16
externDef MOUSETPTRPOS:far16
externDef MOUSETPTRSHAPE:far16
externDef MOUSETSCALEFACT:far16
externDef MOUSYNCH:far16
externDef DOSMONOPEN:far16
externDef DOSMONCLOSE:far16
externDef DOSMONREAD:far16
externDef DOSMONREG:far16
externDef DOSMONWRITE:far16
externDef NETGETDCNAME:far16
externDef NETHANDLEGETINFO:far16
externDef NETSERVERDISKENUM:far16
externDef NETSERVERENUM2:far16
externDef NETSERVERGETINFO:far16
externDef NETSERVICECONTROL:far16
externDef NETSERVICEENUM:far16
externDef NETSERVICEGETINFO:far16
externDef NETSERVICEINSTALL:far16
externDef NETSHAREENUM:far16
externDef NETSHAREGETINFO:far16
externDef NETUSEADD:far16
externDef NETUSEDEL:far16
externDef NETUSEENUM:far16
externDef NETUSEGETINFO:far16
externDef NETUSERENUM:far16
externDef NETWKSTAGETINFO:far16
externDef NETACCESSADD:far16
externDef NETACCESSSETINFO:far16
externDef NETACCESSGETINFO:far16
externDef NETACCESSDEL:far16
externDef NETSHAREADD:far16
externDef NETSHAREDEL:far16
externDef NETUSERGETINFO:far16
externDef NETMESSAGEBUFFERSEND:far16
externDef NETBIOS:far16
externDef NETBIOSCLOSE:far16
externDef NETBIOSENUM:far16
externDef NETBIOSGETINFO:far16
externDef NETBIOSOPEN:far16
externDef NETBIOSSUBMIT:far16
externDef DOSMAKEMAILSLOT:far16
externDef DOSDELETEMAILSLOT:far16
externDef DOSMAILSLOTINFO:far16
externDef DOSPEEKMAILSLOT:far16
externDef DOSREADMAILSLOT:far16
externDef DOSWRITEMAILSLOT:far16
externDef DOSIREMOTEAPI:far16
externDef NETIWKSTAGETUSERINFO:far16
externDef NETIUSERPASSWORDSET:far16
externDef DOSIENCRYPTSES:far16
externDef DOS32LOADMODULE:far16
externDef DOS32GETPROCADDR:far16
externDef DOS32DISPATCH:far16
externDef DOS32FREEMODULE:far16
externDef FARPTR2FLATPTR:far16
externDef FLATPTR2FARPTR:far16
externDef _EntryFlat@0:far32
.code THUNK16
;===========================================================================
; This is the table of 16-bit entry points.
; It must be at the beginning of its segment.
; The entries are each 4 bytes apart, and the effect of the
; call instruction is to push the offset (+4) into the flat
; thunk table, used after the jump to 32-bit-land.
DOSEXITSTUB label far16
nop
call EntryCommon16
LDRLIBIRETURN label far16
nop
call EntryCommon16
DOSEXITPROCESSSTUB label far16
nop
call EntryCommon16
DOSRETURN label far16
nop
call EntryCommon16
DOSEXIT label far16
nop
call EntryCommon16
DOSCWAIT label far16
nop
call EntryCommon16
DOSBEEP label far16
nop
call EntryCommon16
DOSPHYSICALDISK label far16
nop
call EntryCommon16
DOSGETCP label far16
nop
call EntryCommon16
DOSSETCP label far16
nop
call EntryCommon16
DOSSETPROCCP label far16
nop
call EntryCommon16
DOSGETCTRYINFO label far16
nop
call EntryCommon16
DOSGETDBCSEV label far16
nop
call EntryCommon16
DOSCASEMAP label far16
nop
call EntryCommon16
DOSGETCOLLATE label far16
nop
call EntryCommon16
DOSSLEEP label far16
nop
call EntryCommon16
DOSDEVCONFIG label far16
nop
call EntryCommon16
DOSGETDATETIME label far16
nop
call EntryCommon16
DOSSETDATETIME label far16
nop
call EntryCommon16
DOSEXECPGM label far16
nop
call EntryCommon16
DOSENTERCRITSEC label far16
nop
call EntryCommon16
DOSEXITCRITSEC label far16
nop
call EntryCommon16
DOSKILLPROCESS label far16
nop
call EntryCommon16
DOSSETPRTY label far16
nop
call EntryCommon16
DOSRESUMETHREAD label far16
nop
call EntryCommon16
DOSSUSPENDTHREAD label far16
nop
call EntryCommon16
DOSMAKEPIPE label far16
nop
call EntryCommon16
DOSCREATEQUEUE label far16
nop
call EntryCommon16
DOSOPENQUEUE label far16
nop
call EntryCommon16
DOSCLOSEQUEUE label far16
nop
call EntryCommon16
DOSPEEKQUEUE label far16
nop
call EntryCommon16
DOSREADQUEUE label far16
nop
call EntryCommon16
DOSPURGEQUEUE label far16
nop
call EntryCommon16
DOSQUERYQUEUE label far16
nop
call EntryCommon16
DOSWRITEQUEUE label far16
nop
call EntryCommon16
DOSCALLNMPIPE label far16
nop
call EntryCommon16
DOSCONNECTNMPIPE label far16
nop
call EntryCommon16
DOSDISCONNECTNMPIPE label far16
nop
call EntryCommon16
DOSMAKENMPIPE label far16
nop
call EntryCommon16
DOSPEEKNMPIPE label far16
nop
call EntryCommon16
DOSQNMPHANDSTATE label far16
nop
call EntryCommon16
DOSQNMPIPEINFO label far16
nop
call EntryCommon16
DOSQNMPIPESEMSTATE label far16
nop
call EntryCommon16
DOSSETNMPHANDSTATE label far16
nop
call EntryCommon16
DOSSETNMPIPESEM label far16
nop
call EntryCommon16
DOSTRANSACTNMPIPE label far16
nop
call EntryCommon16
DOSWAITNMPIPE label far16
nop
call EntryCommon16
DOSBUFRESET label far16
nop
call EntryCommon16
DOSCHDIR label far16
nop
call EntryCommon16
DOSCHGFILEPTR label far16
nop
call EntryCommon16
DOSCLOSE label far16
nop
call EntryCommon16
DOSCOPY label far16
nop
call EntryCommon16
DOSICOPY label far16
nop
call EntryCommon16
DOSDELETE label far16
nop
call EntryCommon16
DOSDEVIOCTL label far16
nop
call EntryCommon16
DOSDUPHANDLE label far16
nop
call EntryCommon16
DOSEDITNAME label far16
nop
call EntryCommon16
DOSFILEIO label far16
nop
call EntryCommon16
DOSFINDCLOSE label far16
nop
call EntryCommon16
DOSFSATTACH label far16
nop
call EntryCommon16
DOSFSCTL label far16
nop
call EntryCommon16
DOSMOVE label far16
nop
call EntryCommon16
DOSNEWSIZE label far16
nop
call EntryCommon16
DOSQCURDIR label far16
nop
call EntryCommon16
DOSQCURDISK label far16
nop
call EntryCommon16
DOSQFHANDSTATE label far16
nop
call EntryCommon16
DOSSETFHANDSTATE label far16
nop
call EntryCommon16
DOSQFSATTACH label far16
nop
call EntryCommon16
DOSQFSINFO label far16
nop
call EntryCommon16
DOSQHANDTYPE label far16
nop
call EntryCommon16
DOSQVERIFY label far16
nop
call EntryCommon16
DOSRMDIR label far16
nop
call EntryCommon16
DOSSEARCHPATH label far16
nop
call EntryCommon16
DOSSELECTDISK label far16
nop
call EntryCommon16
DOSSETFSINFO label far16
nop
call EntryCommon16
DOSSETMAXFH label far16
nop
call EntryCommon16
DOSSETVERIFY label far16
nop
call EntryCommon16
DOSERRCLASS label far16
nop
call EntryCommon16
DOSERROR label far16
nop
call EntryCommon16
DOSLOADMODULE label far16
nop
call EntryCommon16
DOSFREEMODULE label far16
nop
call EntryCommon16
DOSGETMODHANDLE label far16
nop
call EntryCommon16
DOSGETMODNAME label far16
nop
call EntryCommon16
DOSGETRESOURCE label far16
nop
call EntryCommon16
DOSGETRESOURCE2 label far16
nop
call EntryCommon16
DOSFREERESOURCE label far16
nop
call EntryCommon16
DOSQAPPTYPE label far16
nop
call EntryCommon16
DOSSHUTDOWN label far16
nop
call EntryCommon16
DOSCREATETHREAD label far16
nop
call EntryCommon16
DOSEXITLIST label far16
nop
call EntryCommon16
DOSGETINFOSEG label far16
nop
call EntryCommon16
DOSOPEN label far16
nop
call EntryCommon16
DOSOPEN2 label far16
nop
call EntryCommon16
DOSREAD label far16
nop
call EntryCommon16
DOSWRITE label far16
nop
call EntryCommon16
DOSFINDFIRST label far16
nop
call EntryCommon16
DOSFINDFIRST2 label far16
nop
call EntryCommon16
DOSENUMATTRIBUTE label far16
nop
call EntryCommon16
DOSQFILEMODE label far16
nop
call EntryCommon16
DOSQFILEINFO label far16
nop
call EntryCommon16
DOSALLOCSEG label far16
nop
call EntryCommon16
DOSFREESEG label far16
nop
call EntryCommon16
DOSGETSEG label far16
nop
call EntryCommon16
DOSGIVESEG label far16
nop
call EntryCommon16
DOSREALLOCSEG label far16
nop
call EntryCommon16
DOSSIZESEG label far16
nop
call EntryCommon16
DOSALLOCHUGE label far16
nop
call EntryCommon16
DOSREALLOCHUGE label far16
nop
call EntryCommon16
DOSGETHUGESHIFT label far16
nop
call EntryCommon16
DOSALLOCSHRSEG label far16
nop
call EntryCommon16
DOSLOCKSEG label far16
nop
call EntryCommon16
DOSUNLOCKSEG label far16
nop
call EntryCommon16
DOSGETSHRSEG label far16
nop
call EntryCommon16
DOSMEMAVAIL label far16
nop
call EntryCommon16
DOSCREATECSALIAS label far16
nop
call EntryCommon16
DOSSEMCLEAR label far16
nop
call EntryCommon16
DOSSEMSET label far16
nop
call EntryCommon16
DOSSEMWAIT label far16
nop
call EntryCommon16
DOSSEMSETWAIT label far16
nop
call EntryCommon16
DOSSEMREQUEST label far16
nop
call EntryCommon16
DOSCREATESEM label far16
nop
call EntryCommon16
DOSOPENSEM label far16
nop
call EntryCommon16
DOSCLOSESEM label far16
nop
call EntryCommon16
DOSMUXSEMWAIT label far16
nop
call EntryCommon16
DOSFSRAMSEMREQUEST label far16
nop
call EntryCommon16
DOSFSRAMSEMCLEAR label far16
nop
call EntryCommon16
DOSTIMERASYNC label far16
nop
call EntryCommon16
DOSTIMERSTART label far16
nop
call EntryCommon16
DOSTIMERSTOP label far16
nop
call EntryCommon16
DOSGETPROCADDR label far16
nop
call EntryCommon16
DOSQUERYPROCTYPE label far16
nop
call EntryCommon16
DOSQUERYRESOURCESIZE label far16
nop
call EntryCommon16
DOSSETSIGHANDLER label far16
nop
call EntryCommon16
DOSFLAGPROCESS label far16
nop
call EntryCommon16
DOSHOLDSIGNAL label far16
nop
call EntryCommon16
DOSSENDSIGNAL label far16
nop
call EntryCommon16
DOSSETVEC label far16
nop
call EntryCommon16
DOSGETENV label far16
nop
call EntryCommon16
DOSGETVERSION label far16
nop
call EntryCommon16
DOSGETMACHINEMODE label far16
nop
call EntryCommon16
DOSFINDNEXT label far16
nop
call EntryCommon16
DOSGETPID label far16
nop
call EntryCommon16
DOSGETPPID label far16
nop
call EntryCommon16
DOSMKDIR label far16
nop
call EntryCommon16
DOSMKDIR2 label far16
nop
call EntryCommon16
DOSSETFILEMODE label far16
nop
call EntryCommon16
DOSSETFILEINFO label far16
nop
call EntryCommon16
DOSTRUEGETMESSAGE label far16
nop
call EntryCommon16
DOSSCANENV label far16
nop
call EntryCommon16
DOSPTRACE label far16
nop
call EntryCommon16
DOSINSMESSAGE label far16
nop
call EntryCommon16
DOSPUTMESSAGE label far16
nop
call EntryCommon16
DOSSUBSET label far16
nop
call EntryCommon16
DOSSUBALLOC label far16
nop
call EntryCommon16
DOSSUBFREE label far16
nop
call EntryCommon16
DOSSTARTSESSION label far16
nop
call EntryCommon16
DOSSTOPSESSION label far16
nop
call EntryCommon16
DOSSETSESSION label far16
nop
call EntryCommon16
DOSSELECTSESSION label far16
nop
call EntryCommon16
DOSSMSETTITLE label far16
nop
call EntryCommon16
DOSSMPMPRESENT label far16
nop
call EntryCommon16
WINSETTITLEANDICON label far16
nop
call EntryCommon16
DOSGETPRTY label far16
nop
call EntryCommon16
DOSQSYSINFO label far16
nop
call EntryCommon16
DOSDEVIOCTL2 label far16
nop
call EntryCommon16
DOSICANONICALIZE label far16
nop
call EntryCommon16
DOSREADASYNC label far16
nop
call EntryCommon16
DOSWRITEASYNC label far16
nop
call EntryCommon16
DOSFINDNOTIFYCLOSE label far16
nop
call EntryCommon16
DOSFINDNOTIFYFIRST label far16
nop
call EntryCommon16
DOSFINDNOTIFYNEXT label far16
nop
call EntryCommon16
DOSFILELOCKS label far16
nop
call EntryCommon16
DOSQPATHINFO label far16
nop
call EntryCommon16
DOSSETPATHINFO label far16
nop
call EntryCommon16
DOSPORTACCESS label far16
nop
call EntryCommon16
DOSCLIACCESS label far16
nop
call EntryCommon16
WINQUERYPROFILESTRING label far16
nop
call EntryCommon16
WINQUERYPROFILESIZE label far16
nop
call EntryCommon16
WINQUERYPROFILEDATA label far16
nop
call EntryCommon16
WINQUERYPROFILEINT label far16
nop
call EntryCommon16
WINWRITEPROFILEDATA label far16
nop
call EntryCommon16
WINWRITEPROFILESTRING label far16
nop
call EntryCommon16
WINCREATEHEAP label far16
nop
call EntryCommon16
WINDESTROYHEAP label far16
nop
call EntryCommon16
WINALLOCMEM label far16
nop
call EntryCommon16
WINFREEMEM label far16
nop
call EntryCommon16
WINGETLASTERROR label far16
nop
call EntryCommon16
VIOSCROLLUP label far16
nop
call EntryCommon16
VIOGETCURPOS label far16
nop
call EntryCommon16
VIOSETCURPOS label far16
nop
call EntryCommon16
VIOWRTTTY label far16
nop
call EntryCommon16
VIOGETMODE label far16
nop
call EntryCommon16
VIOREADCELLSTR label far16
nop
call EntryCommon16
VIOSCROLLLF label far16
nop
call EntryCommon16
VIOREADCHARSTR label far16
nop
call EntryCommon16
VIOWRTCHARSTRATT label far16
nop
call EntryCommon16
VIOWRTCELLSTR label far16
nop
call EntryCommon16
VIOWRTCHARSTR label far16
nop
call EntryCommon16
VIOWRTNCELL label far16
nop
call EntryCommon16
VIOWRTNATTR label far16
nop
call EntryCommon16
VIOWRTNCHAR label far16
nop
call EntryCommon16
VIOSCROLLDN label far16
nop
call EntryCommon16
VIOSCROLLRT label far16
nop
call EntryCommon16
VIOGETANSI label far16
nop
call EntryCommon16
VIOSETANSI label far16
nop
call EntryCommon16
VIOGETCONFIG label far16
nop
call EntryCommon16
VIOGETCP label far16
nop
call EntryCommon16
VIOSETCP label far16
nop
call EntryCommon16
VIOGETCURTYPE label far16
nop
call EntryCommon16
VIOSETCURTYPE label far16
nop
call EntryCommon16
VIOSETMODE label far16
nop
call EntryCommon16
VIODEREGISTER label far16
nop
call EntryCommon16
VIOREGISTER label far16
nop
call EntryCommon16
VIOPOPUP label far16
nop
call EntryCommon16
VIOENDPOPUP label far16
nop
call EntryCommon16
VIOGETBUF label far16
nop
call EntryCommon16
VIOSHOWBUF label far16
nop
call EntryCommon16
VIOGETFONT label far16
nop
call EntryCommon16
VIOSETFONT label far16
nop
call EntryCommon16
VIOGETSTATE label far16
nop
call EntryCommon16
VIOSETSTATE label far16
nop
call EntryCommon16
VIOGETPHYSBUF label far16
nop
call EntryCommon16
VIOMODEUNDO label far16
nop
call EntryCommon16
VIOMODEWAIT label far16
nop
call EntryCommon16
VIOSAVREDRAWWAIT label far16
nop
call EntryCommon16
VIOSAVREDRAWUNDO label far16
nop
call EntryCommon16
VIOSCRLOCK label far16
nop
call EntryCommon16
VIOSCRUNLOCK label far16
nop
call EntryCommon16
VIOPRTSC label far16
nop
call EntryCommon16
VIOPRTSCTOGGLE label far16
nop
call EntryCommon16
KBDFLUSHBUFFER label far16
nop
call EntryCommon16
KBDGETSTATUS label far16
nop
call EntryCommon16
KBDSETSTATUS label far16
nop
call EntryCommon16
KBDPEEK label far16
nop
call EntryCommon16
KBDCHARIN label far16
nop
call EntryCommon16
KBDSTRINGIN label far16
nop
call EntryCommon16
KBDGETFOCUS label far16
nop
call EntryCommon16
KBDFREEFOCUS label far16
nop
call EntryCommon16
KBDCLOSE label far16
nop
call EntryCommon16
KBDOPEN label far16
nop
call EntryCommon16
KBDDEREGISTER label far16
nop
call EntryCommon16
KBDREGISTER label far16
nop
call EntryCommon16
KBDGETCP label far16
nop
call EntryCommon16
KBDSETCP label far16
nop
call EntryCommon16
KBDSETCUSTXT label far16
nop
call EntryCommon16
KBDXLATE label far16
nop
call EntryCommon16
KBDGETHWID label far16
nop
call EntryCommon16
KBDSETFGND label far16
nop
call EntryCommon16
KBDSYNCH label far16
nop
call EntryCommon16
KBDSHELLINIT label far16
nop
call EntryCommon16
MOUCLOSE label far16
nop
call EntryCommon16
MOUDEREGISTER label far16
nop
call EntryCommon16
MOUDRAWPTR label far16
nop
call EntryCommon16
MOUFLUSHQUE label far16
nop
call EntryCommon16
MOUGETDEVSTATUS label far16
nop
call EntryCommon16
MOUGETEVENTMASK label far16
nop
call EntryCommon16
MOUGETNUMBUTTONS label far16
nop
call EntryCommon16
MOUGETNUMMICKEYS label far16
nop
call EntryCommon16
MOUGETNUMQUEEL label far16
nop
call EntryCommon16
MOUGETPTRPOS label far16
nop
call EntryCommon16
MOUGETPTRSHAPE label far16
nop
call EntryCommon16
MOUGETSCALEFACT label far16
nop
call EntryCommon16
MOUOPEN label far16
nop
call EntryCommon16
MOUREADEVENTQUE label far16
nop
call EntryCommon16
MOUREGISTER label far16
nop
call EntryCommon16
MOUREMOVEPTR label far16
nop
call EntryCommon16
MOUSETDEVSTATUS label far16
nop
call EntryCommon16
MOUSETEVENTMASK label far16
nop
call EntryCommon16
MOUSETPTRPOS label far16
nop
call EntryCommon16
MOUSETPTRSHAPE label far16
nop
call EntryCommon16
MOUSETSCALEFACT label far16
nop
call EntryCommon16
MOUSYNCH label far16
nop
call EntryCommon16
DOSMONOPEN label far16
nop
call EntryCommon16
DOSMONCLOSE label far16
nop
call EntryCommon16
DOSMONREAD label far16
nop
call EntryCommon16
DOSMONREG label far16
nop
call EntryCommon16
DOSMONWRITE label far16
nop
call EntryCommon16
NETGETDCNAME label far16
nop
call EntryCommon16
NETHANDLEGETINFO label far16
nop
call EntryCommon16
NETSERVERDISKENUM label far16
nop
call EntryCommon16
NETSERVERENUM2 label far16
nop
call EntryCommon16
NETSERVERGETINFO label far16
nop
call EntryCommon16
NETSERVICECONTROL label far16
nop
call EntryCommon16
NETSERVICEENUM label far16
nop
call EntryCommon16
NETSERVICEGETINFO label far16
nop
call EntryCommon16
NETSERVICEINSTALL label far16
nop
call EntryCommon16
NETSHAREENUM label far16
nop
call EntryCommon16
NETSHAREGETINFO label far16
nop
call EntryCommon16
NETUSEADD label far16
nop
call EntryCommon16
NETUSEDEL label far16
nop
call EntryCommon16
NETUSEENUM label far16
nop
call EntryCommon16
NETUSEGETINFO label far16
nop
call EntryCommon16
NETUSERENUM label far16
nop
call EntryCommon16
NETWKSTAGETINFO label far16
nop
call EntryCommon16
NETACCESSADD label far16
nop
call EntryCommon16
NETACCESSSETINFO label far16
nop
call EntryCommon16
NETACCESSGETINFO label far16
nop
call EntryCommon16
NETACCESSDEL label far16
nop
call EntryCommon16
NETSHAREADD label far16
nop
call EntryCommon16
NETSHAREDEL label far16
nop
call EntryCommon16
NETUSERGETINFO label far16
nop
call EntryCommon16
NETMESSAGEBUFFERSEND label far16
nop
call EntryCommon16
NETBIOS label far16
nop
call EntryCommon16
NETBIOSCLOSE label far16
nop
call EntryCommon16
NETBIOSENUM label far16
nop
call EntryCommon16
NETBIOSGETINFO label far16
nop
call EntryCommon16
NETBIOSOPEN label far16
nop
call EntryCommon16
NETBIOSSUBMIT label far16
nop
call EntryCommon16
DOSMAKEMAILSLOT label far16
nop
call EntryCommon16
DOSDELETEMAILSLOT label far16
nop
call EntryCommon16
DOSMAILSLOTINFO label far16
nop
call EntryCommon16
DOSPEEKMAILSLOT label far16
nop
call EntryCommon16
DOSREADMAILSLOT label far16
nop
call EntryCommon16
DOSWRITEMAILSLOT label far16
nop
call EntryCommon16
DOSIREMOTEAPI label far16
nop
call EntryCommon16
NETIWKSTAGETUSERINFO label far16
nop
call EntryCommon16
NETIUSERPASSWORDSET label far16
nop
call EntryCommon16
DOSIENCRYPTSES label far16
nop
call EntryCommon16
DOS32LOADMODULE label far16
nop
call EntryCommon16
DOS32GETPROCADDR label far16
nop
call EntryCommon16
DOS32DISPATCH label far16
nop
call EntryCommon16
DOS32FREEMODULE label far16
nop
call EntryCommon16
FARPTR2FLATPTR label far16
nop
call EntryCommon16
FLATPTR2FARPTR label far16
nop
call EntryCommon16
; These are two global variables exported by doscalls
public DOSHUGEINCR
DOSHUGEINCR equ 8
public DOSHUGESHIFT
DOSHUGESHIFT equ 3
;===========================================================================
; This is the common setup code for 16=>32 thunks. It:
; 1. retrieves the 32-bit jump table offset from the stack
; 2. saves registers
; 3. saves ss:sp
; 4. jumps to 32-bit code
;
; Entry: flat jump table offset (+4) is on top of stack
; AX contains the DLL init routine ret value for the
; LDRLIBIRETURN entry, VOID otherwise.
;
; Exit: (eax[15-0]) == flat jump table offset (+4)
; (eax[31-16]) == return value of DLL init routine for LDRLIBIRETURN
; (ebx) == new esp
EntryCommon16:
shl eax,16 ; 16 MSB of eax contain the DLL init ret value
pop ax ; 16 LSB of eax contain the offset in jump table
push ds ; save ds
push es ; save es
push di
push si
push cx
push bx
push dx
push bp
mov bx,sp ; save current ss:sp
push ss
push bx
; compute flat esp
; NOTE - we implement FARPTRTOFLAT by arith
mov bx,ss
shr bx,3
add bx,3800H
shl ebx,16
mov bx,sp ; (ebx) == FLAT esp
;force a long, far jump into 32 bit thunks, where EntryFlat resides
;jmp 1b:063023D80h
db 066h, 0eah, 0ddh, 01fh, 090h, 090h, 01bh, 00h
ELSE ; GEN32
extrn _DosExitStub@0:PROC
extrn _LDRLibiReturn@0:PROC
extrn _DosExitProcessStub@0:PROC
extrn _DosReturn@8:PROC
extrn _DosExit@8:PROC
extrn _Dos16WaitChild@20:PROC
extrn _DosBeep@8:PROC
extrn _DosPhysicalDisk@20:PROC
extrn _DosGetCp@12:PROC
extrn _DosSetCp@8:PROC
extrn _DosSetProcCp@8:PROC
extrn _DosGetCtryInfo@16:PROC
extrn _DosGetDBCSEv@12:PROC
extrn _DosCaseMap@12:PROC
extrn _DosGetCollate@16:PROC
extrn _DosSleep@4:PROC
extrn _DosDevConfig@8:PROC
extrn _DosGetDateTime@4:PROC
extrn _DosSetDateTime@4:PROC
extrn _Dos16ExecPgm@28:PROC
extrn _DosEnterCritSec@0:PROC
extrn _DosExitCritSec@0:PROC
extrn _DosKillProcess@8:PROC
extrn _DosSetPriority@16:PROC
extrn _DosResumeThread@4:PROC
extrn _DosSuspendThread@4:PROC
extrn _Dos16CreatePipe@12:PROC
extrn _Dos16CreateQueue@12:PROC
extrn _Dos16OpenQueue@12:PROC
extrn _DosCloseQueue@4:PROC
extrn _Dos16PeekQueue@32:PROC
extrn _Dos16ReadQueue@32:PROC
extrn _DosPurgeQueue@4:PROC
extrn _Dos16QueryQueue@8:PROC
extrn _DosWriteQueue@20:PROC
extrn _Dos16CallNPipe@28:PROC
extrn _DosConnectNPipe@4:PROC
extrn _DosDisConnectNPipe@4:PROC
extrn _Dos16CreateNPipe@28:PROC
extrn _Dos16PeekNPipe@24:PROC
extrn _Dos16QueryNPHState@8:PROC
extrn _DosQueryNPipeInfo@16:PROC
extrn _DosQueryNPipeSemState@12:PROC
extrn _DosSetNPHState@8:PROC
extrn _DosSetNPipeSem@12:PROC
extrn _Dos16TransactNPipe@24:PROC
extrn _DosWaitNPipe@8:PROC
extrn _DosResetBuffer@4:PROC
extrn _DosSetCurrentDir@4:PROC
extrn _DosSetFilePtr@16:PROC
extrn _DosClose@4:PROC
extrn _DosCopy@12:PROC
extrn _DosICopy@12:PROC
extrn _DosDelete@4:PROC
extrn _DosDevIOCtl@20:PROC
extrn _Dos16DupHandle@8:PROC
extrn _DosEditName@20:PROC
extrn _DosFileIO@16:PROC
extrn _DosFindClose@4:PROC
extrn _DosFSAttach@20:PROC
extrn _Dos16FSCtl@40:PROC
extrn _DosMove@8:PROC
extrn _DosSetFileSize@8:PROC
extrn _Dos16QueryCurrentDir@12:PROC
extrn _Dos16QueryCurrentDisk@8:PROC
extrn _Dos16QueryFHState@8:PROC
extrn _DosSetFHState@8:PROC
extrn _Dos16QFSAttach@24:PROC
extrn _DosQueryFSInfo@16:PROC
extrn _Dos16QueryHType@12:PROC
extrn _Dos16QueryVerify@4:PROC
extrn _DosDeleteDir@4:PROC
extrn _DosSearchPath@20:PROC
extrn _DosSetDefaultDisk@4:PROC
extrn _DosSetFSInfo@16:PROC
extrn _DosSetMaxFH@4:PROC
extrn _DosSetVerify@4:PROC
extrn _Dos16ErrClass@16:PROC
extrn _DosError@4:PROC
extrn _DosLoadModuleNE@16:PROC
extrn _DosFreeModuleNE@4:PROC
extrn _DosQueryModuleHandleNE@8:PROC
extrn _DosQueryModuleNameNE@12:PROC
extrn _DosGetResourceNE@16:PROC
extrn _DosGetResource2NE@16:PROC
extrn _DosFreeResourceNE@4:PROC
extrn _DosQueryAppTypeNE@8:PROC
extrn _DosShutdown@4:PROC
extrn _Dos16CreateThread@12:PROC
extrn _Dos16ExitList@8:PROC
extrn _DosGetInfoSeg@8:PROC
extrn _Dos16Open@32:PROC
extrn _Dos16Open2@36:PROC
extrn _Dos16Read@16:PROC
extrn _Dos16Write@16:PROC
extrn _Dos16FindFirst@28:PROC
extrn _Dos16FindFirst2@32:PROC
extrn _Dos16EnumAttribute@32:PROC
extrn _DosQFileMode@12:PROC
extrn _DosQFileInfo@16:PROC
extrn _DosAllocSeg@12:PROC
extrn _DosFreeSeg@4:PROC
extrn _DosGetSeg@4:PROC
extrn _DosGiveSeg@12:PROC
extrn _DosReallocSeg@8:PROC
extrn _DosSizeSeg@8:PROC
extrn _DosAllocHuge@20:PROC
extrn _DosReallocHuge@12:PROC
extrn _DosGetHugeShift@4:PROC
extrn _DosAllocShrSeg@12:PROC
extrn _DosLockSeg@4:PROC
extrn _DosUnlockSeg@4:PROC
extrn _DosGetShrSeg@8:PROC
extrn _DosMemAvail@4:PROC
extrn _DosCreateCSAlias@8:PROC
extrn _DosSemClear@4:PROC
extrn _DosSemSet@4:PROC
extrn _DosSemWait@8:PROC
extrn _DosSemSetWait@8:PROC
extrn _DosSemRequest@8:PROC
extrn _DosCreateSem@12:PROC
extrn _DosOpenSem@8:PROC
extrn _DosCloseSem@4:PROC
extrn _DosMuxSemWait@12:PROC
extrn _DosFSRamSemRequest@8:PROC
extrn _DosFSRamSemClear@4:PROC
extrn _DosAsyncTimer@12:PROC
extrn _DosStartTimer@12:PROC
extrn _DosStopTimer@4:PROC
extrn _DosGetProcAddrNE@12:PROC
extrn _DosQueryProcType@16:PROC
extrn _DosQueryResourceSize@16:PROC
extrn _DosSetSigHandler@20:PROC
extrn DosFlagProcess16@16:PROC
extrn DosHoldSignal16@4:PROC
extrn DosSendSignal16@8:PROC
extrn _DosSetVec@12:PROC
extrn _DosGetEnv@8:PROC
extrn _DosGetVersion@4:PROC
extrn _DosGetMachineMode@4:PROC
extrn _Dos16FindNext@16:PROC
extrn _DosGetPID@4:PROC
extrn _DosGetPPID@8:PROC
extrn _Dos16MkDir@8:PROC
extrn _Dos16MkDir2@12:PROC
extrn _DosSetFileMode@12:PROC
extrn _Dos16SetFileInfo@16:PROC
extrn _DosTrueGetMessage@32:PROC
extrn _DosScanEnvNE@8:PROC
extrn _DosPTrace@4:PROC
extrn _DosInsMessage@28:PROC
extrn _DosPutMessage@12:PROC
extrn _Dos16SubSet@12:PROC
extrn _Dos16SubAlloc@12:PROC
extrn _Dos16SubFree@12:PROC
extrn _Dos16StartSession@12:PROC
extrn _DosStopSession@12:PROC
extrn _DosSetSession@8:PROC
extrn _DosSelectSession@8:PROC
extrn _DosSMSetTitle@4:PROC
extrn _DosSMPMPresent@4:PROC
extrn _WinSetTitleAndIcon@8:PROC
extrn _DosGetPriority@12:PROC
extrn _DosQSysInfo@12:PROC
extrn _DosDevIOCtl2@28:PROC
extrn _DosICanonicalize@20:PROC
extrn _DosReadAsync@24:PROC
extrn _DosWriteAsync@24:PROC
extrn _DosFindNotifyClose@0:PROC
extrn _DosFindNotifyFirst@0:PROC
extrn _DosFindNotifyNext@0:PROC
extrn _DosFileLocks@12:PROC
extrn _Dos16QPathInfo@20:PROC
extrn _Dos16SetPathInfo@24:PROC
extrn _DosPortAccess@16:PROC
extrn _DosCLIAccess@0:PROC
extrn _WinQueryProfileString@20:PROC
extrn _WinQueryProfileSize@12:PROC
extrn _WinQueryProfileData@16:PROC
extrn _WinQueryProfileInt@12:PROC
extrn _WinWriteProfileData@16:PROC
extrn _WinWriteProfileString@12:PROC
extrn _WinCreateHeap@24:PROC
extrn _WinDestroyHeap@4:PROC
extrn _WinAllocMem@8:PROC
extrn _WinFreeMem@12:PROC
extrn _WinGetLastError@4:PROC
extrn _VioScrollUp@28:PROC
extrn _VioGetCurPos@12:PROC
extrn _VioSetCurPos@12:PROC
extrn _VioWrtTTY@12:PROC
extrn _VioGetMode@8:PROC
extrn _VioReadCellStr@20:PROC
extrn _VioScrollLf@28:PROC
extrn _VioReadCharStr@20:PROC
extrn _VioWrtCharStrAtt@24:PROC
extrn _VioWrtCellStr@20:PROC
extrn _VioWrtCharStr@20:PROC
extrn _VioWrtNCell@20:PROC
extrn _VioWrtNAttr@20:PROC
extrn _VioWrtNChar@20:PROC
extrn _VioScrollDn@28:PROC
extrn _VioScrollRt@28:PROC
extrn _VioGetAnsi@8:PROC
extrn _VioSetAnsi@8:PROC
extrn _VioGetConfig@12:PROC
extrn _VioGetCp@12:PROC
extrn _VioSetCp@12:PROC
extrn _VioGetCurType@8:PROC
extrn _VioSetCurType@8:PROC
extrn _VioSetMode@8:PROC
extrn _VioDeRegister@0:PROC
extrn _VioRegister@16:PROC
extrn _VioPopUp@8:PROC
extrn _VioEndPopUp@4:PROC
extrn _VioGetBuf@12:PROC
extrn _VioShowBuf@12:PROC
extrn _VioGetFont@8:PROC
extrn _VioSetFont@8:PROC
extrn _VioGetState@8:PROC
extrn _VioSetState@8:PROC
extrn _VioGetPhysBuf@8:PROC
extrn _VioModeUndo@12:PROC
extrn _VioModeWait@12:PROC
extrn _VioSavRedrawWait@12:PROC
extrn _VioSavRedrawUndo@12:PROC
extrn _VioScrLock@12:PROC
extrn _VioScrUnLock@4:PROC
extrn _VioPrtSc@4:PROC
extrn _VioPrtScToggle@4:PROC
extrn _KbdFlushBuffer@4:PROC
extrn _KbdGetStatus@8:PROC
extrn _KbdSetStatus@8:PROC
extrn _KbdPeek@8:PROC
extrn _KbdCharIn@12:PROC
extrn _KbdStringIn@16:PROC
extrn _KbdGetFocus@8:PROC
extrn _KbdFreeFocus@4:PROC
extrn _KbdClose@4:PROC
extrn _KbdOpen@4:PROC
extrn _KbdDeRegister@0:PROC
extrn _KbdRegister@12:PROC
extrn _KbdGetCp@12:PROC
extrn _KbdSetCp@12:PROC
extrn _KbdSetCustXt@8:PROC
extrn _KbdXlate@8:PROC
extrn _KbdGetHWID@8:PROC
extrn _KbdSetFgnd@4:PROC
extrn _KbdSynch@4:PROC
extrn _KbdShellInit@0:PROC
extrn _MouClose@4:PROC
extrn _MouDeRegister@0:PROC
extrn _MouDrawPtr@4:PROC
extrn _MouFlushQue@4:PROC
extrn _MouGetDevStatus@8:PROC
extrn _MouGetEventMask@8:PROC
extrn _MouGetNumButtons@8:PROC
extrn _MouGetNumMickeys@8:PROC
extrn _MouGetNumQueEl@8:PROC
extrn _MouGetPtrPos@8:PROC
extrn _MouGetPtrShape@12:PROC
extrn _MouGetScaleFact@8:PROC
extrn _MouOpen@8:PROC
extrn _MouReadEventQue@12:PROC
extrn _MouRegister@12:PROC
extrn _MouRemovePtr@8:PROC
extrn _MouSetDevStatus@8:PROC
extrn _MouSetEventMask@8:PROC
extrn _MouSetPtrPos@8:PROC
extrn _MouSetPtrShape@12:PROC
extrn _MouSetScaleFact@8:PROC
extrn _MouSynch@4:PROC
extrn _DosMonOpen@8:PROC
extrn _DosMonClose@4:PROC
extrn _DosMonRead@16:PROC
extrn _DosMonReg@20:PROC
extrn _DosMonWrite@12:PROC
extrn _Net16GetDCName@16:PROC
extrn _Net16HandleGetInfo@20:PROC
extrn _Net16ServerDiskEnum@24:PROC
extrn _Net16ServerEnum2@32:PROC
extrn _Net16ServerGetInfo@20:PROC
extrn _Net16ServiceControl@24:PROC
extrn _Net16ServiceEnum@24:PROC
extrn _Net16ServiceGetInfo@24:PROC
extrn _Net16ServiceInstall@20:PROC
extrn _Net16ShareEnum@24:PROC
extrn _Net16ShareGetInfo@24:PROC
extrn _Net16UseAdd@16:PROC
extrn _Net16UseDel@12:PROC
extrn _Net16UseEnum@24:PROC
extrn _Net16UseGetInfo@24:PROC
extrn _Net16UserEnum@24:PROC
extrn _Net16WkstaGetInfo@20:PROC
extrn _Net16AccessAdd@16:PROC
extrn _Net16AccessSetInfo@24:PROC
extrn _Net16AccessGetInfo@24:PROC
extrn _Net16AccessDel@8:PROC
extrn _Net16ShareAdd@16:PROC
extrn _Net16ShareDel@12:PROC
extrn _Net16UserGetInfo@24:PROC
extrn _Net16MessageBufferSend@16:PROC
extrn _Net16bios@4:PROC
extrn _Net16BiosClose@4:PROC
extrn _Net16BiosEnum@24:PROC
extrn _Net16BiosGetInfo@24:PROC
extrn _Net16BiosOpen@16:PROC
extrn _Net16BiosSubmit@12:PROC
extrn _Dos16MakeMailslot@16:PROC
extrn _Dos16DeleteMailslot@4:PROC
extrn _Dos16MailslotInfo@24:PROC
extrn _Dos16PeekMailslot@20:PROC
extrn _Dos16ReadMailslot@24:PROC
extrn _Dos16WriteMailslot@24:PROC
extrn _DosIRemoteApi@24:PROC
extrn _NetIWkstaGetUserInfo@20:PROC
extrn _NetIUserPasswordSet@16:PROC
extrn _DosIEncryptSES@12:PROC
extrn _Dos32LoadModule@8:PROC
extrn _Dos32GetProcAddr@12:PROC
extrn _Dos32Dispatch@12:PROC
extrn _Dos32FreeModule@4:PROC
extrn _FarPtr2FlatPtr@8:PROC
extrn _FlatPtr2FarPtr@8:PROC
extrn _GetSaved32Esp@0:PROC
extrn _Save16Esp@0:PROC
extrn _Od216ApiPrint@4:PROC
_TEXT SEGMENT DWORD USE32 PUBLIC 'CODE'
ASSUME CS:FLAT, DS:FLAT, ES:FLAT, SS:NOTHING, FS:NOTHING, GS:NOTHING
;===========================================================================
; This is the common flat entry point for 16=>32 thunks. It:
; 1. makes ds, es, ss FLAT
; 2. saves esp in ebx
; 3. dword-aligns the stack
; 4. jumps to the API-specific thunk code indicated in ax
;
; Entry: (ax) == flat jump table offset (+4)
; (ebx) == flat esp
public _EntryFlat@0
extrn _Od2Saved16Stack:DWORD
extrn _MoveInfoSegintoTeb:PROC
extrn _RestoreTeb:PROC
_EntryFlat@0 proc
mov dx,023H
mov ds,dx ; FLAT ds
mov es,dx ; FLAT es
push eax
call _RestoreTeb
; 16bit stack must be saved to allow proper signal handler execution
call _Save16Esp@0
or al,al
jz EntryFlat1
mov _Od2Saved16Stack,ebx ; Save 16-bit stack
EntryFlat1:
call _GetSaved32Esp@0
pop ecx ; restore the thunk index/LDRLIBIRETURN ret value
and eax,0fffffffcH ; dword-align the 32bit stack pointer
mov dx,23H
push dx ; flat SS
push eax ; flat ESP
lss esp,[ebx-6] ; switch to 32bit stack
push ecx
and ecx,0ffffH ; clear hi word
push ecx
call _Od216ApiPrint@4
pop ecx
mov eax,ecx
shr eax,16 ; (eax) contains the LDRLIBIRETURN ret value
and ecx,0ffffH
mov ebp,esp ; Compiler assumes this for ebp elimination
jmp dword ptr FlatTable[ecx-4] ; select specific thunk
_EntryFlat@0 endp
;===========================================================================
; Common routines to restore the stack and registers
; and return to 16-bit code. There is one for each
; size of 16-bit parameter list in this script.
public _ExitFlatAreaBegin@0
_ExitFlatAreaBegin@0:
ExitFlat_0:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_0
mov es,ax
jmp ESFixed_0
FixES_0:
xor ax,ax
mov es,ax
ESFixed_0:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_0
mov ds,ax
jmp DSFixed_0
FixDS_0:
xor ax,ax
mov ds,ax
DSFixed_0:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 0 ; 16-bit parameters
ExitFlat_2:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_2
mov es,ax
jmp ESFixed_2
FixES_2:
xor ax,ax
mov es,ax
ESFixed_2:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_2
mov ds,ax
jmp DSFixed_2
FixDS_2:
xor ax,ax
mov ds,ax
DSFixed_2:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 2 ; 16-bit parameters
ExitFlat_4:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_4
mov es,ax
jmp ESFixed_4
FixES_4:
xor ax,ax
mov es,ax
ESFixed_4:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_4
mov ds,ax
jmp DSFixed_4
FixDS_4:
xor ax,ax
mov ds,ax
DSFixed_4:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 4 ; 16-bit parameters
ExitFlat_6:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_6
mov es,ax
jmp ESFixed_6
FixES_6:
xor ax,ax
mov es,ax
ESFixed_6:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_6
mov ds,ax
jmp DSFixed_6
FixDS_6:
xor ax,ax
mov ds,ax
DSFixed_6:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 6 ; 16-bit parameters
ExitFlat_8:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_8
mov es,ax
jmp ESFixed_8
FixES_8:
xor ax,ax
mov es,ax
ESFixed_8:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_8
mov ds,ax
jmp DSFixed_8
FixDS_8:
xor ax,ax
mov ds,ax
DSFixed_8:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 8 ; 16-bit parameters
ExitFlat_10:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_10
mov es,ax
jmp ESFixed_10
FixES_10:
xor ax,ax
mov es,ax
ESFixed_10:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_10
mov ds,ax
jmp DSFixed_10
FixDS_10:
xor ax,ax
mov ds,ax
DSFixed_10:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 10 ; 16-bit parameters
ExitFlat_12:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_12
mov es,ax
jmp ESFixed_12
FixES_12:
xor ax,ax
mov es,ax
ESFixed_12:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_12
mov ds,ax
jmp DSFixed_12
FixDS_12:
xor ax,ax
mov ds,ax
DSFixed_12:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 12 ; 16-bit parameters
ExitFlat_14:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_14
mov es,ax
jmp ESFixed_14
FixES_14:
xor ax,ax
mov es,ax
ESFixed_14:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_14
mov ds,ax
jmp DSFixed_14
FixDS_14:
xor ax,ax
mov ds,ax
DSFixed_14:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 14 ; 16-bit parameters
ExitFlat_16:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_16
mov es,ax
jmp ESFixed_16
FixES_16:
xor ax,ax
mov es,ax
ESFixed_16:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_16
mov ds,ax
jmp DSFixed_16
FixDS_16:
xor ax,ax
mov ds,ax
DSFixed_16:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 16 ; 16-bit parameters
ExitFlat_18:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_18
mov es,ax
jmp ESFixed_18
FixES_18:
xor ax,ax
mov es,ax
ESFixed_18:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_18
mov ds,ax
jmp DSFixed_18
FixDS_18:
xor ax,ax
mov ds,ax
DSFixed_18:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 18 ; 16-bit parameters
ExitFlat_20:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_20
mov es,ax
jmp ESFixed_20
FixES_20:
xor ax,ax
mov es,ax
ESFixed_20:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_20
mov ds,ax
jmp DSFixed_20
FixDS_20:
xor ax,ax
mov ds,ax
DSFixed_20:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 20 ; 16-bit parameters
ExitFlat_22:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_22
mov es,ax
jmp ESFixed_22
FixES_22:
xor ax,ax
mov es,ax
ESFixed_22:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_22
mov ds,ax
jmp DSFixed_22
FixDS_22:
xor ax,ax
mov ds,ax
DSFixed_22:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 22 ; 16-bit parameters
ExitFlat_24:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_24
mov es,ax
jmp ESFixed_24
FixES_24:
xor ax,ax
mov es,ax
ESFixed_24:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_24
mov ds,ax
jmp DSFixed_24
FixDS_24:
xor ax,ax
mov ds,ax
DSFixed_24:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 24 ; 16-bit parameters
ExitFlat_26:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_26
mov es,ax
jmp ESFixed_26
FixES_26:
xor ax,ax
mov es,ax
ESFixed_26:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_26
mov ds,ax
jmp DSFixed_26
FixDS_26:
xor ax,ax
mov ds,ax
DSFixed_26:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 26 ; 16-bit parameters
ExitFlat_28:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_28
mov es,ax
jmp ESFixed_28
FixES_28:
xor ax,ax
mov es,ax
ESFixed_28:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_28
mov ds,ax
jmp DSFixed_28
FixDS_28:
xor ax,ax
mov ds,ax
DSFixed_28:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 28 ; 16-bit parameters
ExitFlat_30:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_30
mov es,ax
jmp ESFixed_30
FixES_30:
xor ax,ax
mov es,ax
ESFixed_30:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_30
mov ds,ax
jmp DSFixed_30
FixDS_30:
xor ax,ax
mov ds,ax
DSFixed_30:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 30 ; 16-bit parameters
ExitFlat_32:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_32
mov es,ax
jmp ESFixed_32
FixES_32:
xor ax,ax
mov es,ax
ESFixed_32:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_32
mov ds,ax
jmp DSFixed_32
FixDS_32:
xor ax,ax
mov ds,ax
DSFixed_32:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 32 ; 16-bit parameters
ExitFlat_34:
call _MoveInfoSegintoTeb
mov cx,word ptr [ebx+16] ; ES
shl ecx,16
mov dx,word ptr [ebx+18] ; DS
shl edx,16
lss sp,[ebx] ; restore 16-bit ss:sp
pop bp
pop dx
pop bx
pop cx
pop si
pop di
;
; Performance HIT BUGBUG
;
push eax
mov eax,ecx
shr eax,16 ; ES
verr ax ; see if the value is still valid!
jnz FixES_34
mov es,ax
jmp ESFixed_34
FixES_34:
xor ax,ax
mov es,ax
ESFixed_34:
mov eax,edx
shr eax,16 ; DS
verr ax ; see if the value is still valid!
jnz FixDS_34
mov ds,ax
jmp DSFixed_34
FixDS_34:
xor ax,ax
mov ds,ax
DSFixed_34:
;
;Now restore ax & di, and clean the stack
pop eax
add sp,4 ; es/ds are 2 byte each on the stack
db 66h, 0cah ; 16-bit retf
dw 34 ; 16-bit parameters
public _ExitFlatAreaEnd@0
_ExitFlatAreaEnd@0:
;===========================================================================
; This is a jump table to API-specific flat thunk code.
; Each entry is a dword.
FlatTable label near
dd offset _TEXT:T__DosExitStub
dd offset _TEXT:T__LDRLibiReturn
dd offset _TEXT:T__DosExitProcessStub
dd offset _TEXT:T__DosReturn
dd offset _TEXT:T__DosExit
dd offset _TEXT:T__Dos16WaitChild
dd offset _TEXT:T__DosBeep
dd offset _TEXT:T__DosPhysicalDisk
dd offset _TEXT:T__DosGetCp
dd offset _TEXT:T__DosSetCp
dd offset _TEXT:T__DosSetProcCp
dd offset _TEXT:T__DosGetCtryInfo
dd offset _TEXT:T__DosGetDBCSEv
dd offset _TEXT:T__DosCaseMap
dd offset _TEXT:T__DosGetCollate
dd offset _TEXT:T__DosSleep
dd offset _TEXT:T__DosDevConfig
dd offset _TEXT:T__DosGetDateTime
dd offset _TEXT:T__DosSetDateTime
dd offset _TEXT:T__Dos16ExecPgm
dd offset _TEXT:T__DosEnterCritSec
dd offset _TEXT:T__DosExitCritSec
dd offset _TEXT:T__DosKillProcess
dd offset _TEXT:T__DosSetPriority
dd offset _TEXT:T__DosResumeThread
dd offset _TEXT:T__DosSuspendThread
dd offset _TEXT:T__Dos16CreatePipe
dd offset _TEXT:T__Dos16CreateQueue
dd offset _TEXT:T__Dos16OpenQueue
dd offset _TEXT:T__DosCloseQueue
dd offset _TEXT:T__Dos16PeekQueue
dd offset _TEXT:T__Dos16ReadQueue
dd offset _TEXT:T__DosPurgeQueue
dd offset _TEXT:T__Dos16QueryQueue
dd offset _TEXT:T__DosWriteQueue
dd offset _TEXT:T__Dos16CallNPipe
dd offset _TEXT:T__DosConnectNPipe
dd offset _TEXT:T__DosDisConnectNPipe
dd offset _TEXT:T__Dos16CreateNPipe
dd offset _TEXT:T__Dos16PeekNPipe
dd offset _TEXT:T__Dos16QueryNPHState
dd offset _TEXT:T__DosQueryNPipeInfo
dd offset _TEXT:T__DosQueryNPipeSemState
dd offset _TEXT:T__DosSetNPHState
dd offset _TEXT:T__DosSetNPipeSem
dd offset _TEXT:T__Dos16TransactNPipe
dd offset _TEXT:T__DosWaitNPipe
dd offset _TEXT:T__DosResetBuffer
dd offset _TEXT:T__DosSetCurrentDir
dd offset _TEXT:T__DosSetFilePtr
dd offset _TEXT:T__DosClose
dd offset _TEXT:T__DosCopy
dd offset _TEXT:T__DosICopy
dd offset _TEXT:T__DosDelete
dd offset _TEXT:T__DosDevIOCtl
dd offset _TEXT:T__Dos16DupHandle
dd offset _TEXT:T__DosEditName
dd offset _TEXT:T__DosFileIO
dd offset _TEXT:T__DosFindClose
dd offset _TEXT:T__DosFSAttach
dd offset _TEXT:T__Dos16FSCtl
dd offset _TEXT:T__DosMove
dd offset _TEXT:T__DosSetFileSize
dd offset _TEXT:T__Dos16QueryCurrentDir
dd offset _TEXT:T__Dos16QueryCurrentDisk
dd offset _TEXT:T__Dos16QueryFHState
dd offset _TEXT:T__DosSetFHState
dd offset _TEXT:T__Dos16QFSAttach
dd offset _TEXT:T__DosQueryFSInfo
dd offset _TEXT:T__Dos16QueryHType
dd offset _TEXT:T__Dos16QueryVerify
dd offset _TEXT:T__DosDeleteDir
dd offset _TEXT:T__DosSearchPath
dd offset _TEXT:T__DosSetDefaultDisk
dd offset _TEXT:T__DosSetFSInfo
dd offset _TEXT:T__DosSetMaxFH
dd offset _TEXT:T__DosSetVerify
dd offset _TEXT:T__Dos16ErrClass
dd offset _TEXT:T__DosError
dd offset _TEXT:T__DosLoadModuleNE
dd offset _TEXT:T__DosFreeModuleNE
dd offset _TEXT:T__DosQueryModuleHandleNE
dd offset _TEXT:T__DosQueryModuleNameNE
dd offset _TEXT:T__DosGetResourceNE
dd offset _TEXT:T__DosGetResource2NE
dd offset _TEXT:T__DosFreeResourceNE
dd offset _TEXT:T__DosQueryAppTypeNE
dd offset _TEXT:T__DosShutdown
dd offset _TEXT:T__Dos16CreateThread
dd offset _TEXT:T__Dos16ExitList
dd offset _TEXT:T__DosGetInfoSeg
dd offset _TEXT:T__Dos16Open
dd offset _TEXT:T__Dos16Open2
dd offset _TEXT:T__Dos16Read
dd offset _TEXT:T__Dos16Write
dd offset _TEXT:T__Dos16FindFirst
dd offset _TEXT:T__Dos16FindFirst2
dd offset _TEXT:T__Dos16EnumAttribute
dd offset _TEXT:T__DosQFileMode
dd offset _TEXT:T__DosQFileInfo
dd offset _TEXT:T__DosAllocSeg
dd offset _TEXT:T__DosFreeSeg
dd offset _TEXT:T__DosGetSeg
dd offset _TEXT:T__DosGiveSeg
dd offset _TEXT:T__DosReallocSeg
dd offset _TEXT:T__DosSizeSeg
dd offset _TEXT:T__DosAllocHuge
dd offset _TEXT:T__DosReallocHuge
dd offset _TEXT:T__DosGetHugeShift
dd offset _TEXT:T__DosAllocShrSeg
dd offset _TEXT:T__DosLockSeg
dd offset _TEXT:T__DosUnlockSeg
dd offset _TEXT:T__DosGetShrSeg
dd offset _TEXT:T__DosMemAvail
dd offset _TEXT:T__DosCreateCSAlias
dd offset _TEXT:T__DosSemClear
dd offset _TEXT:T__DosSemSet
dd offset _TEXT:T__DosSemWait
dd offset _TEXT:T__DosSemSetWait
dd offset _TEXT:T__DosSemRequest
dd offset _TEXT:T__DosCreateSem
dd offset _TEXT:T__DosOpenSem
dd offset _TEXT:T__DosCloseSem
dd offset _TEXT:T__DosMuxSemWait
dd offset _TEXT:T__DosFSRamSemRequest
dd offset _TEXT:T__DosFSRamSemClear
dd offset _TEXT:T__DosAsyncTimer
dd offset _TEXT:T__DosStartTimer
dd offset _TEXT:T__DosStopTimer
dd offset _TEXT:T__DosGetProcAddrNE
dd offset _TEXT:T__DosQueryProcType
dd offset _TEXT:T__DosQueryResourceSize
dd offset _TEXT:T__DosSetSigHandler
dd offset _TEXT:T_DosFlagProcess16
dd offset _TEXT:T_DosHoldSignal16
dd offset _TEXT:T_DosSendSignal16
dd offset _TEXT:T__DosSetVec
dd offset _TEXT:T__DosGetEnv
dd offset _TEXT:T__DosGetVersion
dd offset _TEXT:T__DosGetMachineMode
dd offset _TEXT:T__Dos16FindNext
dd offset _TEXT:T__DosGetPID
dd offset _TEXT:T__DosGetPPID
dd offset _TEXT:T__Dos16MkDir
dd offset _TEXT:T__Dos16MkDir2
dd offset _TEXT:T__DosSetFileMode
dd offset _TEXT:T__Dos16SetFileInfo
dd offset _TEXT:T__DosTrueGetMessage
dd offset _TEXT:T__DosScanEnvNE
dd offset _TEXT:T__DosPTrace
dd offset _TEXT:T__DosInsMessage
dd offset _TEXT:T__DosPutMessage
dd offset _TEXT:T__Dos16SubSet
dd offset _TEXT:T__Dos16SubAlloc
dd offset _TEXT:T__Dos16SubFree
dd offset _TEXT:T__Dos16StartSession
dd offset _TEXT:T__DosStopSession
dd offset _TEXT:T__DosSetSession
dd offset _TEXT:T__DosSelectSession
dd offset _TEXT:T__DosSMSetTitle
dd offset _TEXT:T__DosSMPMPresent
dd offset _TEXT:T__WinSetTitleAndIcon
dd offset _TEXT:T__DosGetPriority
dd offset _TEXT:T__DosQSysInfo
dd offset _TEXT:T__DosDevIOCtl2
dd offset _TEXT:T__DosICanonicalize
dd offset _TEXT:T__DosReadAsync
dd offset _TEXT:T__DosWriteAsync
dd offset _TEXT:T__DosFindNotifyClose
dd offset _TEXT:T__DosFindNotifyFirst
dd offset _TEXT:T__DosFindNotifyNext
dd offset _TEXT:T__DosFileLocks
dd offset _TEXT:T__Dos16QPathInfo
dd offset _TEXT:T__Dos16SetPathInfo
dd offset _TEXT:T__DosPortAccess
dd offset _TEXT:T__DosCLIAccess
dd offset _TEXT:T__WinQueryProfileString
dd offset _TEXT:T__WinQueryProfileSize
dd offset _TEXT:T__WinQueryProfileData
dd offset _TEXT:T__WinQueryProfileInt
dd offset _TEXT:T__WinWriteProfileData
dd offset _TEXT:T__WinWriteProfileString
dd offset _TEXT:T__WinCreateHeap
dd offset _TEXT:T__WinDestroyHeap
dd offset _TEXT:T__WinAllocMem
dd offset _TEXT:T__WinFreeMem
dd offset _TEXT:T__WinGetLastError
dd offset _TEXT:T__VioScrollUp
dd offset _TEXT:T__VioGetCurPos
dd offset _TEXT:T__VioSetCurPos
dd offset _TEXT:T__VioWrtTTY
dd offset _TEXT:T__VioGetMode
dd offset _TEXT:T__VioReadCellStr
dd offset _TEXT:T__VioScrollLf
dd offset _TEXT:T__VioReadCharStr
dd offset _TEXT:T__VioWrtCharStrAtt
dd offset _TEXT:T__VioWrtCellStr
dd offset _TEXT:T__VioWrtCharStr
dd offset _TEXT:T__VioWrtNCell
dd offset _TEXT:T__VioWrtNAttr
dd offset _TEXT:T__VioWrtNChar
dd offset _TEXT:T__VioScrollDn
dd offset _TEXT:T__VioScrollRt
dd offset _TEXT:T__VioGetAnsi
dd offset _TEXT:T__VioSetAnsi
dd offset _TEXT:T__VioGetConfig
dd offset _TEXT:T__VioGetCp
dd offset _TEXT:T__VioSetCp
dd offset _TEXT:T__VioGetCurType
dd offset _TEXT:T__VioSetCurType
dd offset _TEXT:T__VioSetMode
dd offset _TEXT:T__VioDeRegister
dd offset _TEXT:T__VioRegister
dd offset _TEXT:T__VioPopUp
dd offset _TEXT:T__VioEndPopUp
dd offset _TEXT:T__VioGetBuf
dd offset _TEXT:T__VioShowBuf
dd offset _TEXT:T__VioGetFont
dd offset _TEXT:T__VioSetFont
dd offset _TEXT:T__VioGetState
dd offset _TEXT:T__VioSetState
dd offset _TEXT:T__VioGetPhysBuf
dd offset _TEXT:T__VioModeUndo
dd offset _TEXT:T__VioModeWait
dd offset _TEXT:T__VioSavRedrawWait
dd offset _TEXT:T__VioSavRedrawUndo
dd offset _TEXT:T__VioScrLock
dd offset _TEXT:T__VioScrUnLock
dd offset _TEXT:T__VioPrtSc
dd offset _TEXT:T__VioPrtScToggle
dd offset _TEXT:T__KbdFlushBuffer
dd offset _TEXT:T__KbdGetStatus
dd offset _TEXT:T__KbdSetStatus
dd offset _TEXT:T__KbdPeek
dd offset _TEXT:T__KbdCharIn
dd offset _TEXT:T__KbdStringIn
dd offset _TEXT:T__KbdGetFocus
dd offset _TEXT:T__KbdFreeFocus
dd offset _TEXT:T__KbdClose
dd offset _TEXT:T__KbdOpen
dd offset _TEXT:T__KbdDeRegister
dd offset _TEXT:T__KbdRegister
dd offset _TEXT:T__KbdGetCp
dd offset _TEXT:T__KbdSetCp
dd offset _TEXT:T__KbdSetCustXt
dd offset _TEXT:T__KbdXlate
dd offset _TEXT:T__KbdGetHWID
dd offset _TEXT:T__KbdSetFgnd
dd offset _TEXT:T__KbdSynch
dd offset _TEXT:T__KbdShellInit
dd offset _TEXT:T__MouClose
dd offset _TEXT:T__MouDeRegister
dd offset _TEXT:T__MouDrawPtr
dd offset _TEXT:T__MouFlushQue
dd offset _TEXT:T__MouGetDevStatus
dd offset _TEXT:T__MouGetEventMask
dd offset _TEXT:T__MouGetNumButtons
dd offset _TEXT:T__MouGetNumMickeys
dd offset _TEXT:T__MouGetNumQueEl
dd offset _TEXT:T__MouGetPtrPos
dd offset _TEXT:T__MouGetPtrShape
dd offset _TEXT:T__MouGetScaleFact
dd offset _TEXT:T__MouOpen
dd offset _TEXT:T__MouReadEventQue
dd offset _TEXT:T__MouRegister
dd offset _TEXT:T__MouRemovePtr
dd offset _TEXT:T__MouSetDevStatus
dd offset _TEXT:T__MouSetEventMask
dd offset _TEXT:T__MouSetPtrPos
dd offset _TEXT:T__MouSetPtrShape
dd offset _TEXT:T__MouSetScaleFact
dd offset _TEXT:T__MouSynch
dd offset _TEXT:T__DosMonOpen
dd offset _TEXT:T__DosMonClose
dd offset _TEXT:T__DosMonRead
dd offset _TEXT:T__DosMonReg
dd offset _TEXT:T__DosMonWrite
dd offset _TEXT:T__Net16GetDCName
dd offset _TEXT:T__Net16HandleGetInfo
dd offset _TEXT:T__Net16ServerDiskEnum
dd offset _TEXT:T__Net16ServerEnum2
dd offset _TEXT:T__Net16ServerGetInfo
dd offset _TEXT:T__Net16ServiceControl
dd offset _TEXT:T__Net16ServiceEnum
dd offset _TEXT:T__Net16ServiceGetInfo
dd offset _TEXT:T__Net16ServiceInstall
dd offset _TEXT:T__Net16ShareEnum
dd offset _TEXT:T__Net16ShareGetInfo
dd offset _TEXT:T__Net16UseAdd
dd offset _TEXT:T__Net16UseDel
dd offset _TEXT:T__Net16UseEnum
dd offset _TEXT:T__Net16UseGetInfo
dd offset _TEXT:T__Net16UserEnum
dd offset _TEXT:T__Net16WkstaGetInfo
dd offset _TEXT:T__Net16AccessAdd
dd offset _TEXT:T__Net16AccessSetInfo
dd offset _TEXT:T__Net16AccessGetInfo
dd offset _TEXT:T__Net16AccessDel
dd offset _TEXT:T__Net16ShareAdd
dd offset _TEXT:T__Net16ShareDel
dd offset _TEXT:T__Net16UserGetInfo
dd offset _TEXT:T__Net16MessageBufferSend
dd offset _TEXT:T__Net16bios
dd offset _TEXT:T__Net16BiosClose
dd offset _TEXT:T__Net16BiosEnum
dd offset _TEXT:T__Net16BiosGetInfo
dd offset _TEXT:T__Net16BiosOpen
dd offset _TEXT:T__Net16BiosSubmit
dd offset _TEXT:T__Dos16MakeMailslot
dd offset _TEXT:T__Dos16DeleteMailslot
dd offset _TEXT:T__Dos16MailslotInfo
dd offset _TEXT:T__Dos16PeekMailslot
dd offset _TEXT:T__Dos16ReadMailslot
dd offset _TEXT:T__Dos16WriteMailslot
dd offset _TEXT:T__DosIRemoteApi
dd offset _TEXT:T__NetIWkstaGetUserInfo
dd offset _TEXT:T__NetIUserPasswordSet
dd offset _TEXT:T__DosIEncryptSES
dd offset _TEXT:T__Dos32LoadModule
dd offset _TEXT:T__Dos32GetProcAddr
dd offset _TEXT:T__Dos32Dispatch
dd offset _TEXT:T__Dos32FreeModule
dd offset _TEXT:T__FarPtr2FlatPtr
dd offset _TEXT:T__FlatPtr2FarPtr
;---- SelToFlat Macro ----
; On Entry: eax==Sel:Off
; On Exit: eax==Flat Offset
SelToFlat macro
push ecx
xor ecx,ecx
mov cx,ax ; ecx<-offset in segment
shr eax,3
xor ax,ax ; eax now contains segment base
add eax,ecx ; eax <- flat offset
add eax,38000000H
pop ecx
endm
;===========================================================================
T__DosExitStub label near
;-------------------------------------
; create new call frame and make the call
call _DosExitStub@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__LDRLibiReturn label near
;-------------------------------------
; create new call frame and make the call
call _LDRLibiReturn@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosExitProcessStub label near
;-------------------------------------
; create new call frame and make the call
call _DosExitProcessStub@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosReturn label near
; ebx+26 param1
; ebx+24 param2
;-------------------------------------
; create new call frame and make the call
; param2 from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; param1 from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosReturn@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosExit label near
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosExit@8 ; call 32-bit version
; return code void --> void
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Dos16WaitChild label near
; ebx+36
; ebx+34
; ebx+30 prescResults
; ebx+26 ppidProcess
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 prescResults
push eax ; ptr param #2 ppidProcess
;-------------------------------------
; *** BEGIN parameter packing
; prescResults
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L0 ; skip if null
SelToFlat
mov [esp+4],eax
L0:
; ppidProcess
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L1 ; skip if null
SelToFlat
mov [esp+0],eax
L1:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; ppidProcess from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; prescResults from: void
push dword ptr [esp+12] ; to: void
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _Dos16WaitChild@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosBeep label near
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosBeep@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosPhysicalDisk label near
; ebx+36
; ebx+32 pbOutBuf
; ebx+30 cbOutBuf
; ebx+26 pbParamBuf
; ebx+24 cbParamBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbOutBuf
push eax ; ptr param #2 pbParamBuf
;-------------------------------------
; *** BEGIN parameter packing
; pbOutBuf
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L2 ; skip if null
SelToFlat
mov [esp+4],eax
L2:
; pbParamBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L3 ; skip if null
SelToFlat
mov [esp+0],eax
L3:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbParamBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbParamBuf from: char
push dword ptr [esp+4] ; to: char
; cbOutBuf from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; pbOutBuf from: char
push dword ptr [esp+16] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosPhysicalDisk@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosGetCp label near
; ebx+32 cbBuf
; ebx+28 pBuf
; ebx+24 pcbCodePgLst
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pBuf
push eax ; ptr param #2 pcbCodePgLst
;-------------------------------------
; *** BEGIN parameter packing
; pBuf
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L4 ; skip if null
SelToFlat
mov [esp+4],eax
L4:
; pcbCodePgLst
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L5 ; skip if null
SelToFlat
mov [esp+0],eax
L5:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbCodePgLst from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pBuf from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosGetCp@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosSetCp label near
; ebx+26 usCodePage
; ebx+24 ulReserved
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usCodePage from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosSetCp@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSetProcCp label near
; ebx+26 usCodePage
; ebx+24 ulReserved
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usCodePage from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosSetProcCp@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosGetCtryInfo label near
; ebx+36 cbBuf
; ebx+32 pctryc
; ebx+28 pctryi
; ebx+24 pcbCtryInfo
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pctryc
push eax ; ptr param #2 pctryi
push eax ; ptr param #3 pcbCtryInfo
;-------------------------------------
; *** BEGIN parameter packing
; pctryc
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L6 ; skip if null
SelToFlat
mov [esp+8],eax
L6:
; pctryi
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L7 ; skip if null
SelToFlat
mov [esp+4],eax
L7:
; pcbCtryInfo
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L8 ; skip if null
SelToFlat
mov [esp+0],eax
L8:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbCtryInfo from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pctryi from: void
push dword ptr [esp+8] ; to: void
; pctryc from: void
push dword ptr [esp+16] ; to: void
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosGetCtryInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosGetDBCSEv label near
; ebx+32 cbBuf
; ebx+28 pcrtyc
; ebx+24 pchBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pcrtyc
push eax ; ptr param #2 pchBuf
;-------------------------------------
; *** BEGIN parameter packing
; pcrtyc
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L9 ; skip if null
SelToFlat
mov [esp+4],eax
L9:
; pchBuf
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L10 ; skip if null
SelToFlat
mov [esp+0],eax
L10:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pchBuf from: char
push dword ptr [esp+0] ; to: char
; pcrtyc from: void
push dword ptr [esp+8] ; to: void
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosGetDBCSEv@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosCaseMap label near
; ebx+32 usLen
; ebx+28 pctryc
; ebx+24 pchStr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pctryc
push eax ; ptr param #2 pchStr
;-------------------------------------
; *** BEGIN parameter packing
; pctryc
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L11 ; skip if null
SelToFlat
mov [esp+4],eax
L11:
; pchStr
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L12 ; skip if null
SelToFlat
mov [esp+0],eax
L12:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pchStr from: char
push dword ptr [esp+0] ; to: char
; pctryc from: void
push dword ptr [esp+8] ; to: void
; usLen from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosCaseMap@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosGetCollate label near
; ebx+36 cbBuf
; ebx+32 pctryc
; ebx+28 pchBuf
; ebx+24 pcbTable
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pctryc
push eax ; ptr param #2 pchBuf
push eax ; ptr param #3 pcbTable
;-------------------------------------
; *** BEGIN parameter packing
; pctryc
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L13 ; skip if null
SelToFlat
mov [esp+8],eax
L13:
; pchBuf
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L14 ; skip if null
SelToFlat
mov [esp+4],eax
L14:
; pcbTable
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L15 ; skip if null
SelToFlat
mov [esp+0],eax
L15:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTable from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pchBuf from: char
push dword ptr [esp+8] ; to: char
; pctryc from: void
push dword ptr [esp+16] ; to: void
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosGetCollate@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosSleep label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
call _DosSleep@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosDevConfig label near
; ebx+28 DevInfo
; ebx+26 item
; ebx+24 reserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 DevInfo
;-------------------------------------
; *** BEGIN parameter packing
; DevInfo
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L16 ; skip if null
SelToFlat
mov [esp+0],eax
L16:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; item from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; DevInfo from: void
push dword ptr [esp+4] ; to: void
call _DosDevConfig@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosGetDateTime label near
; ebx+24 pDT
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pDT
;-------------------------------------
; *** BEGIN parameter packing
; pDT
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L17 ; skip if null
SelToFlat
mov [esp+0],eax
L17:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pDT from: void
push dword ptr [esp+0] ; to: void
call _DosGetDateTime@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSetDateTime label near
; ebx+24 pDT
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pDT
;-------------------------------------
; *** BEGIN parameter packing
; pDT
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L18 ; skip if null
SelToFlat
mov [esp+0],eax
L18:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pDT from: void
push dword ptr [esp+0] ; to: void
call _DosSetDateTime@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Dos16ExecPgm label near
; ebx+44 pchFailName
; ebx+42 cbFailName
; ebx+40
; ebx+36
; ebx+32
; ebx+28 prescResults
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchFailName
push eax ; ptr param #2
push eax ; ptr param #3
push eax ; ptr param #4 prescResults
push eax ; ptr param #5
;-------------------------------------
; *** BEGIN parameter packing
; pchFailName
; pointer char --> char
mov eax,[ebx+44] ; base address
or eax,eax
jz L19 ; skip if null
SelToFlat
mov [esp+16],eax
L19:
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L20 ; skip if null
SelToFlat
mov [esp+12],eax
L20:
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L21 ; skip if null
SelToFlat
mov [esp+8],eax
L21:
; prescResults
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L22 ; skip if null
SelToFlat
mov [esp+4],eax
L22:
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L23 ; skip if null
SelToFlat
mov [esp+0],eax
L23:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
; prescResults from: void
push dword ptr [esp+8] ; to: void
; from: string
push dword ptr [esp+16] ; to: string
; from: string
push dword ptr [esp+24] ; to: string
; from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
; cbFailName from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
; pchFailName from: char
push dword ptr [esp+40] ; to: char
call _Dos16ExecPgm@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_24
;===========================================================================
T__DosEnterCritSec label near
;-------------------------------------
; create new call frame and make the call
call _DosEnterCritSec@0 ; call 32-bit version
; return code void --> void
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosExitCritSec label near
;-------------------------------------
; create new call frame and make the call
call _DosExitCritSec@0 ; call 32-bit version
; return code void --> void
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosKillProcess label near
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosKillProcess@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSetPriority label near
; ebx+30
; ebx+28
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: short
movsx eax,word ptr [ebx+26]
push eax ; to: long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosSetPriority@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosResumeThread label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosResumeThread@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosSuspendThread label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosSuspendThread@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16CreatePipe label near
; ebx+30 phfRead
; ebx+26 phfWrite
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 phfRead
push eax ; ptr param #2 phfWrite
;-------------------------------------
; *** BEGIN parameter packing
; phfRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L24 ; skip if null
SelToFlat
mov [esp+4],eax
L24:
; phfWrite
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L25 ; skip if null
SelToFlat
mov [esp+0],eax
L25:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; phfWrite from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; phfRead from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
call _Dos16CreatePipe@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16CreateQueue label near
; ebx+30 phqueue
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 phqueue
push eax ; ptr param #2
;-------------------------------------
; *** BEGIN parameter packing
; phqueue
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L26 ; skip if null
SelToFlat
mov [esp+4],eax
L26:
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L27 ; skip if null
SelToFlat
mov [esp+0],eax
L27:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; phqueue from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
call _Dos16CreateQueue@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16OpenQueue label near
; ebx+32 ppidOwner
; ebx+28 phqueue
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppidOwner
push eax ; ptr param #2 phqueue
push eax ; ptr param #3
;-------------------------------------
; *** BEGIN parameter packing
; ppidOwner
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L28 ; skip if null
SelToFlat
mov [esp+8],eax
L28:
; phqueue
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L29 ; skip if null
SelToFlat
mov [esp+4],eax
L29:
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L30 ; skip if null
SelToFlat
mov [esp+0],eax
L30:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
; phqueue from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; ppidOwner from: unsigned short
push dword ptr [esp+16] ; to: unsigned short
call _Dos16OpenQueue@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosCloseQueue label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosCloseQueue@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16PeekQueue label near
; ebx+50
; ebx+46 pulResult
; ebx+42 pusDataLength
; ebx+38 pulDataAddr
; ebx+34 pusElementCode
; ebx+32
; ebx+28 pbElemPrty
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pulResult
push eax ; ptr param #2 pusDataLength
push eax ; ptr param #3 pulDataAddr
push eax ; ptr param #4 pusElementCode
push eax ; ptr param #5 pbElemPrty
push eax ; ptr param #6
;-------------------------------------
; *** BEGIN parameter packing
; pulResult
; pointer void --> void
mov eax,[ebx+46] ; base address
or eax,eax
jz L31 ; skip if null
SelToFlat
mov [esp+20],eax
L31:
; pusDataLength
; pointer unsigned short --> unsigned short
mov eax,[ebx+42] ; base address
or eax,eax
jz L32 ; skip if null
SelToFlat
mov [esp+16],eax
L32:
; pulDataAddr
; pointer unsigned long --> unsigned long
mov eax,[ebx+38] ; base address
or eax,eax
jz L33 ; skip if null
SelToFlat
mov [esp+12],eax
L33:
; pusElementCode
; pointer unsigned short --> unsigned short
mov eax,[ebx+34] ; base address
or eax,eax
jz L34 ; skip if null
SelToFlat
mov [esp+8],eax
L34:
; pbElemPrty
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L35 ; skip if null
SelToFlat
mov [esp+4],eax
L35:
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L36 ; skip if null
SelToFlat
mov [esp+0],eax
L36:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: void
push dword ptr [esp+0] ; to: void
; pbElemPrty from: char
push dword ptr [esp+8] ; to: char
; from: unsigned char
movzx eax,byte ptr [ebx+32]
push eax ; to: unsigned long
; pusElementCode from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; pulDataAddr from: unsigned long
push dword ptr [esp+28] ; to: unsigned long
; pusDataLength from: unsigned short
push dword ptr [esp+36] ; to: unsigned short
; pulResult from: void
push dword ptr [esp+44] ; to: void
; from: unsigned short
movzx eax,word ptr [ebx+50]
push eax ; to: unsigned long
call _Dos16PeekQueue@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_28
;===========================================================================
T__Dos16ReadQueue label near
; ebx+48
; ebx+44 pulResult
; ebx+40 pusDataLength
; ebx+36 pulDataAddr
; ebx+34
; ebx+32
; ebx+28 pbElemPrty
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pulResult
push eax ; ptr param #2 pusDataLength
push eax ; ptr param #3 pulDataAddr
push eax ; ptr param #4 pbElemPrty
push eax ; ptr param #5
;-------------------------------------
; *** BEGIN parameter packing
; pulResult
; pointer void --> void
mov eax,[ebx+44] ; base address
or eax,eax
jz L37 ; skip if null
SelToFlat
mov [esp+16],eax
L37:
; pusDataLength
; pointer unsigned short --> unsigned short
mov eax,[ebx+40] ; base address
or eax,eax
jz L38 ; skip if null
SelToFlat
mov [esp+12],eax
L38:
; pulDataAddr
; pointer unsigned long --> unsigned long
mov eax,[ebx+36] ; base address
or eax,eax
jz L39 ; skip if null
SelToFlat
mov [esp+8],eax
L39:
; pbElemPrty
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L40 ; skip if null
SelToFlat
mov [esp+4],eax
L40:
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L41 ; skip if null
SelToFlat
mov [esp+0],eax
L41:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: void
push dword ptr [esp+0] ; to: void
; pbElemPrty from: char
push dword ptr [esp+8] ; to: char
; from: unsigned char
movzx eax,byte ptr [ebx+32]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pulDataAddr from: unsigned long
push dword ptr [esp+24] ; to: unsigned long
; pusDataLength from: unsigned short
push dword ptr [esp+32] ; to: unsigned short
; pulResult from: void
push dword ptr [esp+40] ; to: void
; from: unsigned short
movzx eax,word ptr [ebx+48]
push eax ; to: unsigned long
call _Dos16ReadQueue@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_26
;===========================================================================
T__DosPurgeQueue label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosPurgeQueue@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16QueryQueue label near
; ebx+28
; ebx+24 pusElemCount
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusElemCount
;-------------------------------------
; *** BEGIN parameter packing
; pusElemCount
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L42 ; skip if null
SelToFlat
mov [esp+0],eax
L42:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusElemCount from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16QueryQueue@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosWriteQueue label near
; ebx+34
; ebx+32
; ebx+30 cbBuf
; ebx+26 pbBuf
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pbBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L43 ; skip if null
SelToFlat
mov [esp+0],eax
L43:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned char
movzx eax,byte ptr [ebx+24]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+4] ; to: char
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _DosWriteQueue@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos16CallNPipe label near
; ebx+44
; ebx+40 pbInBuf
; ebx+38 cbInBuf
; ebx+34 pbOutBuf
; ebx+32 cbOutBuf
; ebx+28 pcbRead
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2 pbInBuf
push eax ; ptr param #3 pbOutBuf
push eax ; ptr param #4 pcbRead
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+44] ; base address
or eax,eax
jz L44 ; skip if null
SelToFlat
mov [esp+12],eax
L44:
; pbInBuf
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L45 ; skip if null
SelToFlat
mov [esp+8],eax
L45:
; pbOutBuf
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L46 ; skip if null
SelToFlat
mov [esp+4],eax
L46:
; pcbRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L47 ; skip if null
SelToFlat
mov [esp+0],eax
L47:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pcbRead from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; cbOutBuf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbOutBuf from: char
push dword ptr [esp+16] ; to: char
; cbInBuf from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
; pbInBuf from: char
push dword ptr [esp+28] ; to: char
; from: string
push dword ptr [esp+36] ; to: string
call _Dos16CallNPipe@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_24
;===========================================================================
T__DosConnectNPipe label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosConnectNPipe@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosDisConnectNPipe label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosDisConnectNPipe@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16CreateNPipe label near
; ebx+40
; ebx+36 pHandle
; ebx+34
; ebx+32
; ebx+30
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2 pHandle
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+40] ; base address
or eax,eax
jz L48 ; skip if null
SelToFlat
mov [esp+4],eax
L48:
; pHandle
; pointer unsigned short --> unsigned short
mov eax,[ebx+36] ; base address
or eax,eax
jz L49 ; skip if null
SelToFlat
mov [esp+0],eax
L49:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pHandle from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; from: string
push dword ptr [esp+28] ; to: string
call _Dos16CreateNPipe@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Dos16PeekNPipe label near
; ebx+42
; ebx+38 pbBuf
; ebx+36 cbBuf
; ebx+32 pcbRead
; ebx+28 pcbAvail
; ebx+24 pfsState
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuf
push eax ; ptr param #2 pcbRead
push eax ; ptr param #3 pcbAvail
push eax ; ptr param #4 pfsState
;-------------------------------------
; *** BEGIN parameter packing
; pbBuf
; pointer char --> char
mov eax,[ebx+38] ; base address
or eax,eax
jz L50 ; skip if null
SelToFlat
mov [esp+12],eax
L50:
; pcbRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L51 ; skip if null
SelToFlat
mov [esp+8],eax
L51:
; pcbAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L52 ; skip if null
SelToFlat
mov [esp+4],eax
L52:
; pfsState
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L53 ; skip if null
SelToFlat
mov [esp+0],eax
L53:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pfsState from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcbAvail from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pcbRead from: unsigned short
push dword ptr [esp+16] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+28] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
call _Dos16PeekNPipe@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Dos16QueryNPHState label near
; ebx+28
; ebx+24 pfsState
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfsState
;-------------------------------------
; *** BEGIN parameter packing
; pfsState
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L54 ; skip if null
SelToFlat
mov [esp+0],eax
L54:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pfsState from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16QueryNPHState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosQueryNPipeInfo label near
; ebx+32
; ebx+30
; ebx+26 pbBuf
; ebx+24 cbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pbBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L55 ; skip if null
SelToFlat
mov [esp+0],eax
L55:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+4] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosQueryNPipeInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosQueryNPipeSemState label near
; ebx+30
; ebx+26 pbBuf
; ebx+24 cbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L56 ; skip if null
SelToFlat
mov [esp+4],eax
L56:
; pbBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L57 ; skip if null
SelToFlat
mov [esp+0],eax
L57:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+4] ; to: char
; from: void
push dword ptr [esp+12] ; to: void
call _DosQueryNPipeSemState@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosSetNPHState label near
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosSetNPHState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSetNPipeSem label near
; ebx+30
; ebx+26
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
;-------------------------------------
; *** BEGIN parameter packing
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L58 ; skip if null
SelToFlat
mov [esp+0],eax
L58:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: void
push dword ptr [esp+4] ; to: void
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosSetNPipeSem@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16TransactNPipe label near
; ebx+40
; ebx+36 pbInBuf
; ebx+34 cbInBuf
; ebx+30 pbOutBuf
; ebx+28 cbOutBuf
; ebx+24 pcbRead
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbInBuf
push eax ; ptr param #2 pbOutBuf
push eax ; ptr param #3 pcbRead
;-------------------------------------
; *** BEGIN parameter packing
; pbInBuf
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L59 ; skip if null
SelToFlat
mov [esp+8],eax
L59:
; pbOutBuf
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L60 ; skip if null
SelToFlat
mov [esp+4],eax
L60:
; pcbRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L61 ; skip if null
SelToFlat
mov [esp+0],eax
L61:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbRead from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbOutBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbOutBuf from: char
push dword ptr [esp+12] ; to: char
; cbInBuf from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pbInBuf from: char
push dword ptr [esp+24] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
call _Dos16TransactNPipe@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__DosWaitNPipe label near
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L62 ; skip if null
SelToFlat
mov [esp+0],eax
L62:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; from: string
push dword ptr [esp+4] ; to: string
call _DosWaitNPipe@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosResetBuffer label near
; ebx+24 hand
;-------------------------------------
; create new call frame and make the call
; hand from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosResetBuffer@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosSetCurrentDir label near
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L63 ; skip if null
SelToFlat
mov [esp+0],eax
L63:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
call _DosSetCurrentDir@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosSetFilePtr label near
; ebx+34
; ebx+30
; ebx+28
; ebx+24 pulNewPtr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pulNewPtr
;-------------------------------------
; *** BEGIN parameter packing
; pulNewPtr
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L64 ; skip if null
SelToFlat
mov [esp+0],eax
L64:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pulNewPtr from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: long
push dword ptr [ebx+30] ; to long
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _DosSetFilePtr@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosClose label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosCopy label near
; ebx+34
; ebx+30
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L65 ; skip if null
SelToFlat
mov [esp+4],eax
L65:
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L66 ; skip if null
SelToFlat
mov [esp+0],eax
L66:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: string
push dword ptr [esp+4] ; to: string
; from: string
push dword ptr [esp+12] ; to: string
call _DosCopy@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosICopy label near
; ebx+34
; ebx+30
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L67 ; skip if null
SelToFlat
mov [esp+4],eax
L67:
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L68 ; skip if null
SelToFlat
mov [esp+0],eax
L68:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: string
push dword ptr [esp+4] ; to: string
; from: string
push dword ptr [esp+12] ; to: string
call _DosICopy@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosDelete label near
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L69 ; skip if null
SelToFlat
mov [esp+0],eax
L69:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
call _DosDelete@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosDevIOCtl label near
; ebx+34 pvData
; ebx+30 pvParms
; ebx+28 Function
; ebx+26 Category
; ebx+24 hDev
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pvData
push eax ; ptr param #2 pvParms
;-------------------------------------
; *** BEGIN parameter packing
; pvData
; pointer void --> void
mov eax,[ebx+34] ; base address
or eax,eax
jz L70 ; skip if null
SelToFlat
mov [esp+4],eax
L70:
; pvParms
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L71 ; skip if null
SelToFlat
mov [esp+0],eax
L71:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hDev from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Category from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Function from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pvParms from: void
push dword ptr [esp+12] ; to: void
; pvData from: void
push dword ptr [esp+20] ; to: void
call _DosDevIOCtl@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__Dos16DupHandle label near
; ebx+28
; ebx+24 phfNew
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 phfNew
;-------------------------------------
; *** BEGIN parameter packing
; phfNew
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L72 ; skip if null
SelToFlat
mov [esp+0],eax
L72:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phfNew from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16DupHandle@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosEditName label near
; ebx+38
; ebx+34
; ebx+30
; ebx+26 pszTargetBuf
; ebx+24 cbTargetBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
push eax ; ptr param #3 pszTargetBuf
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L73 ; skip if null
SelToFlat
mov [esp+8],eax
L73:
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L74 ; skip if null
SelToFlat
mov [esp+4],eax
L74:
; pszTargetBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L75 ; skip if null
SelToFlat
mov [esp+0],eax
L75:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbTargetBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pszTargetBuf from: char
push dword ptr [esp+4] ; to: char
; from: string
push dword ptr [esp+12] ; to: string
; from: string
push dword ptr [esp+20] ; to: string
; from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _DosEditName@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__DosFileIO label near
; ebx+34
; ebx+30 buf
; ebx+28 cbBuf
; ebx+24 usErr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 buf
push eax ; ptr param #2 usErr
;-------------------------------------
; *** BEGIN parameter packing
; buf
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L76 ; skip if null
SelToFlat
mov [esp+4],eax
L76:
; usErr
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L77 ; skip if null
SelToFlat
mov [esp+0],eax
L77:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; usErr from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; buf from: char
push dword ptr [esp+12] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _DosFileIO@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosFindClose label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosFindClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosFSAttach label near
; ebx+40
; ebx+36
; ebx+32 pbBuf
; ebx+30 cbBuf
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
push eax ; ptr param #3 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+40] ; base address
or eax,eax
jz L78 ; skip if null
SelToFlat
mov [esp+8],eax
L78:
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L79 ; skip if null
SelToFlat
mov [esp+4],eax
L79:
; pbBuf
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L80 ; skip if null
SelToFlat
mov [esp+0],eax
L80:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+8] ; to: char
; from: string
push dword ptr [esp+16] ; to: string
; from: string
push dword ptr [esp+24] ; to: string
call _DosFSAttach@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Dos16FSCtl label near
; ebx+54 pData
; ebx+52 cbData
; ebx+48 pcbData
; ebx+44 pParms
; ebx+42 cbParms
; ebx+38 pcbParms
; ebx+36
; ebx+32
; ebx+30 hfRoute
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pData
push eax ; ptr param #2 pcbData
push eax ; ptr param #3 pParms
push eax ; ptr param #4 pcbParms
push eax ; ptr param #5
;-------------------------------------
; *** BEGIN parameter packing
; pData
; pointer char --> char
mov eax,[ebx+54] ; base address
or eax,eax
jz L81 ; skip if null
SelToFlat
mov [esp+16],eax
L81:
; pcbData
; pointer unsigned short --> unsigned short
mov eax,[ebx+48] ; base address
or eax,eax
jz L82 ; skip if null
SelToFlat
mov [esp+12],eax
L82:
; pParms
; pointer char --> char
mov eax,[ebx+44] ; base address
or eax,eax
jz L83 ; skip if null
SelToFlat
mov [esp+8],eax
L83:
; pcbParms
; pointer unsigned short --> unsigned short
mov eax,[ebx+38] ; base address
or eax,eax
jz L84 ; skip if null
SelToFlat
mov [esp+4],eax
L84:
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L85 ; skip if null
SelToFlat
mov [esp+0],eax
L85:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; hfRoute from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: string
push dword ptr [esp+8] ; to: string
; from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; pcbParms from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; cbParms from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
; pParms from: char
push dword ptr [esp+32] ; to: char
; pcbData from: unsigned short
push dword ptr [esp+40] ; to: unsigned short
; cbData from: unsigned short
movzx eax,word ptr [ebx+52]
push eax ; to: unsigned long
; pData from: char
push dword ptr [esp+52] ; to: char
call _Dos16FSCtl@40 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_34
;===========================================================================
T__DosMove label near
; ebx+32
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L86 ; skip if null
SelToFlat
mov [esp+4],eax
L86:
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L87 ; skip if null
SelToFlat
mov [esp+0],eax
L87:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
; from: string
push dword ptr [esp+8] ; to: string
call _DosMove@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosSetFileSize label near
; ebx+28
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosSetFileSize@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__Dos16QueryCurrentDir label near
; ebx+32
; ebx+28 pszPathBuf
; ebx+24 pcbPathBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszPathBuf
push eax ; ptr param #2 pcbPathBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszPathBuf
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L88 ; skip if null
SelToFlat
mov [esp+4],eax
L88:
; pcbPathBuf
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L89 ; skip if null
SelToFlat
mov [esp+0],eax
L89:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbPathBuf from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pszPathBuf from: char
push dword ptr [esp+8] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _Dos16QueryCurrentDir@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16QueryCurrentDisk label near
; ebx+28 pusDriveNumber
; ebx+24 pulLogicalDrives
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusDriveNumber
push eax ; ptr param #2 pulLogicalDrives
;-------------------------------------
; *** BEGIN parameter packing
; pusDriveNumber
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L90 ; skip if null
SelToFlat
mov [esp+4],eax
L90:
; pulLogicalDrives
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L91 ; skip if null
SelToFlat
mov [esp+0],eax
L91:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pulLogicalDrives from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; pusDriveNumber from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
call _Dos16QueryCurrentDisk@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16QueryFHState label near
; ebx+28
; ebx+24 pfsStateFlags
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfsStateFlags
;-------------------------------------
; *** BEGIN parameter packing
; pfsStateFlags
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L92 ; skip if null
SelToFlat
mov [esp+0],eax
L92:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pfsStateFlags from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16QueryFHState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosSetFHState label near
; ebx+26 hf
; ebx+24 fsState
;-------------------------------------
; create new call frame and make the call
; fsState from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosSetFHState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Dos16QFSAttach label near
; ebx+40 pszDev
; ebx+38 usOrdinal
; ebx+36 usInfoLevel
; ebx+32 pFSAttBuf
; ebx+28 pcbAttBuf
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszDev
push eax ; ptr param #2 pFSAttBuf
push eax ; ptr param #3 pcbAttBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszDev
; pointer string --> string
mov eax,[ebx+40] ; base address
or eax,eax
jz L93 ; skip if null
SelToFlat
mov [esp+8],eax
L93:
; pFSAttBuf
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L94 ; skip if null
SelToFlat
mov [esp+4],eax
L94:
; pcbAttBuf
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L95 ; skip if null
SelToFlat
mov [esp+0],eax
L95:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pcbAttBuf from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; pFSAttBuf from: char
push dword ptr [esp+12] ; to: char
; usInfoLevel from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; usOrdinal from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
; pszDev from: string
push dword ptr [esp+28] ; to: string
call _Dos16QFSAttach@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__DosQueryFSInfo label near
; ebx+32
; ebx+30
; ebx+26 pbInfo
; ebx+24 cbInfo
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbInfo
;-------------------------------------
; *** BEGIN parameter packing
; pbInfo
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L96 ; skip if null
SelToFlat
mov [esp+0],eax
L96:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbInfo from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbInfo from: char
push dword ptr [esp+4] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosQueryFSInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16QueryHType label near
; ebx+32
; ebx+28 pusHandType
; ebx+24 pusDeviceAttr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusHandType
push eax ; ptr param #2 pusDeviceAttr
;-------------------------------------
; *** BEGIN parameter packing
; pusHandType
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L97 ; skip if null
SelToFlat
mov [esp+4],eax
L97:
; pusDeviceAttr
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L98 ; skip if null
SelToFlat
mov [esp+0],eax
L98:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusDeviceAttr from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pusHandType from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _Dos16QueryHType@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16QueryVerify label near
; ebx+24 fVerifyOn
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 fVerifyOn
;-------------------------------------
; *** BEGIN parameter packing
; fVerifyOn
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L99 ; skip if null
SelToFlat
mov [esp+0],eax
L99:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; fVerifyOn from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
call _Dos16QueryVerify@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosDeleteDir label near
; ebx+28
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L100 ; skip if null
SelToFlat
mov [esp+0],eax
L100:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: string
push dword ptr [esp+0] ; to: string
call _DosDeleteDir@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosSearchPath label near
; ebx+38
; ebx+34
; ebx+30
; ebx+26 pbBuf
; ebx+24 cbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2
push eax ; ptr param #3 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L101 ; skip if null
SelToFlat
mov [esp+8],eax
L101:
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L102 ; skip if null
SelToFlat
mov [esp+4],eax
L102:
; pbBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L103 ; skip if null
SelToFlat
mov [esp+0],eax
L103:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+4] ; to: char
; from: string
push dword ptr [esp+12] ; to: string
; from: string
push dword ptr [esp+20] ; to: string
; from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _DosSearchPath@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__DosSetDefaultDisk label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosSetDefaultDisk@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosSetFSInfo label near
; ebx+32
; ebx+30
; ebx+26 pbBuf
; ebx+24 cbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pbBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L104 ; skip if null
SelToFlat
mov [esp+0],eax
L104:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuf from: char
push dword ptr [esp+4] ; to: char
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosSetFSInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosSetMaxFH label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosSetMaxFH@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosSetVerify label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosSetVerify@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16ErrClass label near
; ebx+36
; ebx+32 pusClass
; ebx+28 pfsAction
; ebx+24 pusLocus
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusClass
push eax ; ptr param #2 pfsAction
push eax ; ptr param #3 pusLocus
;-------------------------------------
; *** BEGIN parameter packing
; pusClass
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L105 ; skip if null
SelToFlat
mov [esp+8],eax
L105:
; pfsAction
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L106 ; skip if null
SelToFlat
mov [esp+4],eax
L106:
; pusLocus
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L107 ; skip if null
SelToFlat
mov [esp+0],eax
L107:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusLocus from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pfsAction from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pusClass from: unsigned short
push dword ptr [esp+16] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _Dos16ErrClass@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosError label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosError@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosLoadModuleNE label near
; ebx+34 pszFailName
; ebx+32 cbFileName
; ebx+28
; ebx+24 phmod
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFailName
push eax ; ptr param #2
push eax ; ptr param #3 phmod
;-------------------------------------
; *** BEGIN parameter packing
; pszFailName
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L108 ; skip if null
SelToFlat
mov [esp+8],eax
L108:
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L109 ; skip if null
SelToFlat
mov [esp+4],eax
L109:
; phmod
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L110 ; skip if null
SelToFlat
mov [esp+0],eax
L110:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phmod from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: string
push dword ptr [esp+8] ; to: string
; cbFileName from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pszFailName from: char
push dword ptr [esp+20] ; to: char
call _DosLoadModuleNE@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosFreeModuleNE label near
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosFreeModuleNE@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosQueryModuleHandleNE label near
; ebx+28
; ebx+24 phMod
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2 phMod
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L111 ; skip if null
SelToFlat
mov [esp+4],eax
L111:
; phMod
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L112 ; skip if null
SelToFlat
mov [esp+0],eax
L112:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phMod from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: string
push dword ptr [esp+8] ; to: string
call _DosQueryModuleHandleNE@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosQueryModuleNameNE label near
; ebx+30
; ebx+28 cbBuf
; ebx+24 pchBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchBuf
;-------------------------------------
; *** BEGIN parameter packing
; pchBuf
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L113 ; skip if null
SelToFlat
mov [esp+0],eax
L113:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pchBuf from: char
push dword ptr [esp+0] ; to: char
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosQueryModuleNameNE@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosGetResourceNE label near
; ebx+32
; ebx+30
; ebx+28
; ebx+24 psel
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 psel
;-------------------------------------
; *** BEGIN parameter packing
; psel
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L114 ; skip if null
SelToFlat
mov [esp+0],eax
L114:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; psel from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosGetResourceNE@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosGetResource2NE label near
; ebx+32 hmod
; ebx+30 idType
; ebx+28 idName
; ebx+24 ppData
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppData
;-------------------------------------
; *** BEGIN parameter packing
; ppData
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L115 ; skip if null
SelToFlat
mov [esp+0],eax
L115:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppData from: void
push dword ptr [esp+0] ; to: void
; idName from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; idType from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; hmod from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosGetResource2NE@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosFreeResourceNE label near
; ebx+24 pData
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pData
;-------------------------------------
; *** BEGIN parameter packing
; pData
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L116 ; skip if null
SelToFlat
mov [esp+0],eax
L116:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pData from: void
push dword ptr [esp+0] ; to: void
call _DosFreeResourceNE@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosQueryAppTypeNE label near
; ebx+28
; ebx+24 pusType
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1
push eax ; ptr param #2 pusType
;-------------------------------------
; *** BEGIN parameter packing
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L117 ; skip if null
SelToFlat
mov [esp+4],eax
L117:
; pusType
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L118 ; skip if null
SelToFlat
mov [esp+0],eax
L118:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusType from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; from: string
push dword ptr [esp+8] ; to: string
call _DosQueryAppTypeNE@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosShutdown label near
; ebx+24 pSdPacket
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pSdPacket
;-------------------------------------
; *** BEGIN parameter packing
; pSdPacket
; pointer struct SDPACKET --> struct SDPACKET
mov eax,[ebx+24] ; base address
or eax,eax
jz L119 ; skip if null
; structures are identical
; structures have pointers
SelToFlat
mov [esp+0],eax
L119:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pSdPacket from: struct SDPACKET
push dword ptr [esp+0] ; to: struct SDPACKET
call _DosShutdown@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Dos16CreateThread label near
; ebx+32 pfnFun
; ebx+28 pTid
; ebx+24 pbStack
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfnFun
push eax ; ptr param #2 pTid
push eax ; ptr param #3 pbStack
;-------------------------------------
; *** BEGIN parameter packing
; pfnFun
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L120 ; skip if null
SelToFlat
mov [esp+8],eax
L120:
; pTid
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L121 ; skip if null
SelToFlat
mov [esp+4],eax
L121:
; pbStack
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L122 ; skip if null
SelToFlat
mov [esp+0],eax
L122:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pbStack from: char
push dword ptr [esp+0] ; to: char
; pTid from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pfnFun from: void
push dword ptr [esp+16] ; to: void
call _Dos16CreateThread@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos16ExitList label near
; ebx+28 fFnCode
; ebx+24 pfnFunction
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfnFunction
;-------------------------------------
; *** BEGIN parameter packing
; pfnFunction
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L123 ; skip if null
SelToFlat
mov [esp+0],eax
L123:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pfnFunction from: void
push dword ptr [esp+0] ; to: void
; fFnCode from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16ExitList@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosGetInfoSeg label near
; ebx+28 pselGlobal
; ebx+24 pselLocal
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pselGlobal
push eax ; ptr param #2 pselLocal
;-------------------------------------
; *** BEGIN parameter packing
; pselGlobal
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L124 ; skip if null
SelToFlat
mov [esp+4],eax
L124:
; pselLocal
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L125 ; skip if null
SelToFlat
mov [esp+0],eax
L125:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pselLocal from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pselGlobal from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
call _DosGetInfoSeg@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16Open label near
; ebx+46 pszFname
; ebx+42 phfOpen
; ebx+38 pusAction
; ebx+34 ulFSize
; ebx+32 usAttr
; ebx+30 fsOpenFlags
; ebx+28 fsOpenMode
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFname
push eax ; ptr param #2 phfOpen
push eax ; ptr param #3 pusAction
;-------------------------------------
; *** BEGIN parameter packing
; pszFname
; pointer string --> string
mov eax,[ebx+46] ; base address
or eax,eax
jz L126 ; skip if null
SelToFlat
mov [esp+8],eax
L126:
; phfOpen
; pointer unsigned short --> unsigned short
mov eax,[ebx+42] ; base address
or eax,eax
jz L127 ; skip if null
SelToFlat
mov [esp+4],eax
L127:
; pusAction
; pointer unsigned short --> unsigned short
mov eax,[ebx+38] ; base address
or eax,eax
jz L128 ; skip if null
SelToFlat
mov [esp+0],eax
L128:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; fsOpenMode from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; fsOpenFlags from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; usAttr from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; ulFSize from: unsigned long
push dword ptr [ebx+34] ; to unsigned long
; pusAction from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; phfOpen from: unsigned short
push dword ptr [esp+28] ; to: unsigned short
; pszFname from: string
push dword ptr [esp+36] ; to: string
call _Dos16Open@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_26
;===========================================================================
T__Dos16Open2 label near
; ebx+52 pszFileName
; ebx+48 phfOpen
; ebx+44 pusAction
; ebx+40 ulFSize
; ebx+38 usAttr
; ebx+36 usOpenFlags
; ebx+32 flOpenMode
; ebx+28 pEAOBuf
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFileName
push eax ; ptr param #2 phfOpen
push eax ; ptr param #3 pusAction
push eax ; ptr param #4 pEAOBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszFileName
; pointer string --> string
mov eax,[ebx+52] ; base address
or eax,eax
jz L129 ; skip if null
SelToFlat
mov [esp+12],eax
L129:
; phfOpen
; pointer unsigned short --> unsigned short
mov eax,[ebx+48] ; base address
or eax,eax
jz L130 ; skip if null
SelToFlat
mov [esp+8],eax
L130:
; pusAction
; pointer unsigned short --> unsigned short
mov eax,[ebx+44] ; base address
or eax,eax
jz L131 ; skip if null
SelToFlat
mov [esp+4],eax
L131:
; pEAOBuf
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L132 ; skip if null
SelToFlat
mov [esp+0],eax
L132:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pEAOBuf from: void
push dword ptr [esp+4] ; to: void
; flOpenMode from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
; usOpenFlags from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; usAttr from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
; ulFSize from: unsigned long
push dword ptr [ebx+40] ; to unsigned long
; pusAction from: unsigned short
push dword ptr [esp+28] ; to: unsigned short
; phfOpen from: unsigned short
push dword ptr [esp+36] ; to: unsigned short
; pszFileName from: string
push dword ptr [esp+44] ; to: string
call _Dos16Open2@36 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_32
;===========================================================================
T__Dos16Read label near
; ebx+34 hf
; ebx+30 pBuf
; ebx+28 cbBuf
; ebx+24 pcbBytesRead
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pBuf
push eax ; ptr param #2 pcbBytesRead
;-------------------------------------
; *** BEGIN parameter packing
; pBuf
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L133 ; skip if null
SelToFlat
mov [esp+4],eax
L133:
; pcbBytesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L134 ; skip if null
SelToFlat
mov [esp+0],eax
L134:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbBytesRead from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pBuf from: void
push dword ptr [esp+12] ; to: void
; hf from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _Dos16Read@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos16Write label near
; ebx+34 hf
; ebx+30 bBuf
; ebx+28 cbBuf
; ebx+24 pcbBytesWritten
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 bBuf
push eax ; ptr param #2 pcbBytesWritten
;-------------------------------------
; *** BEGIN parameter packing
; bBuf
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L135 ; skip if null
SelToFlat
mov [esp+4],eax
L135:
; pcbBytesWritten
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L136 ; skip if null
SelToFlat
mov [esp+0],eax
L136:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbBytesWritten from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; bBuf from: void
push dword ptr [esp+12] ; to: void
; hf from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _Dos16Write@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos16FindFirst label near
; ebx+44 pszFSpec
; ebx+40 phdir
; ebx+38 usAttr
; ebx+34 pffb
; ebx+32 cbBuf
; ebx+28 pcSearch
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFSpec
push eax ; ptr param #2 phdir
push eax ; ptr param #3 pffb
push eax ; ptr param #4 pcSearch
;-------------------------------------
; *** BEGIN parameter packing
; pszFSpec
; pointer string --> string
mov eax,[ebx+44] ; base address
or eax,eax
jz L137 ; skip if null
SelToFlat
mov [esp+12],eax
L137:
; phdir
; pointer unsigned short --> unsigned short
mov eax,[ebx+40] ; base address
or eax,eax
jz L138 ; skip if null
SelToFlat
mov [esp+8],eax
L138:
; pffb
; pointer void --> void
mov eax,[ebx+34] ; base address
or eax,eax
jz L139 ; skip if null
SelToFlat
mov [esp+4],eax
L139:
; pcSearch
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L140 ; skip if null
SelToFlat
mov [esp+0],eax
L140:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pcSearch from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pffb from: void
push dword ptr [esp+16] ; to: void
; usAttr from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
; phdir from: unsigned short
push dword ptr [esp+28] ; to: unsigned short
; pszFSpec from: string
push dword ptr [esp+36] ; to: string
call _Dos16FindFirst@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_24
;===========================================================================
T__Dos16FindFirst2 label near
; ebx+46 pszFSpec
; ebx+42 phdir
; ebx+40 usAttr
; ebx+36 pffb
; ebx+34 cbBuf
; ebx+30 pcSearch
; ebx+28 infolevel
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFSpec
push eax ; ptr param #2 phdir
push eax ; ptr param #3 pffb
push eax ; ptr param #4 pcSearch
;-------------------------------------
; *** BEGIN parameter packing
; pszFSpec
; pointer string --> string
mov eax,[ebx+46] ; base address
or eax,eax
jz L141 ; skip if null
SelToFlat
mov [esp+12],eax
L141:
; phdir
; pointer unsigned short --> unsigned short
mov eax,[ebx+42] ; base address
or eax,eax
jz L142 ; skip if null
SelToFlat
mov [esp+8],eax
L142:
; pffb
; pointer void --> void
mov eax,[ebx+36] ; base address
or eax,eax
jz L143 ; skip if null
SelToFlat
mov [esp+4],eax
L143:
; pcSearch
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L144 ; skip if null
SelToFlat
mov [esp+0],eax
L144:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; infolevel from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pcSearch from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pffb from: void
push dword ptr [esp+20] ; to: void
; usAttr from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
; phdir from: unsigned short
push dword ptr [esp+32] ; to: unsigned short
; pszFSpec from: string
push dword ptr [esp+40] ; to: string
call _Dos16FindFirst2@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_26
;===========================================================================
T__Dos16EnumAttribute label near
; ebx+52 fRefType
; ebx+48 pFileRef
; ebx+44 iStartEntry
; ebx+40 pEnumBuf
; ebx+36 cbBuf
; ebx+32 pcbActual
; ebx+28 infoLevel
; ebx+24 reserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pFileRef
push eax ; ptr param #2 pEnumBuf
push eax ; ptr param #3 pcbActual
;-------------------------------------
; *** BEGIN parameter packing
; pFileRef
; pointer void --> void
mov eax,[ebx+48] ; base address
or eax,eax
jz L145 ; skip if null
SelToFlat
mov [esp+8],eax
L145:
; pEnumBuf
; pointer void --> void
mov eax,[ebx+40] ; base address
or eax,eax
jz L146 ; skip if null
SelToFlat
mov [esp+4],eax
L146:
; pcbActual
; pointer unsigned long --> unsigned long
mov eax,[ebx+32] ; base address
or eax,eax
jz L147 ; skip if null
SelToFlat
mov [esp+0],eax
L147:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; reserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; infoLevel from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
; pcbActual from: unsigned long
push dword ptr [esp+8] ; to: unsigned long
; cbBuf from: unsigned long
push dword ptr [ebx+36] ; to unsigned long
; pEnumBuf from: void
push dword ptr [esp+20] ; to: void
; iStartEntry from: unsigned long
push dword ptr [ebx+44] ; to unsigned long
; pFileRef from: void
push dword ptr [esp+32] ; to: void
; fRefType from: unsigned short
movzx eax,word ptr [ebx+52]
push eax ; to: unsigned long
call _Dos16EnumAttribute@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_30
;===========================================================================
T__DosQFileMode label near
; ebx+32 pszFName
; ebx+28 pusAttr
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFName
push eax ; ptr param #2 pusAttr
;-------------------------------------
; *** BEGIN parameter packing
; pszFName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L148 ; skip if null
SelToFlat
mov [esp+4],eax
L148:
; pusAttr
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L149 ; skip if null
SelToFlat
mov [esp+0],eax
L149:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pusAttr from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; pszFName from: string
push dword ptr [esp+12] ; to: string
call _DosQFileMode@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosQFileInfo label near
; ebx+32 hf
; ebx+30 usInfoLevel
; ebx+26 pInfoBuf
; ebx+24 cbInfoBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pInfoBuf
;-------------------------------------
; *** BEGIN parameter packing
; pInfoBuf
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L150 ; skip if null
SelToFlat
mov [esp+0],eax
L150:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbInfoBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pInfoBuf from: void
push dword ptr [esp+4] ; to: void
; usInfoLevel from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosQFileInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosAllocSeg label near
; ebx+30 cbSize
; ebx+26 pSel
; ebx+24 fsAlloc
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pSel
;-------------------------------------
; *** BEGIN parameter packing
; pSel
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L151 ; skip if null
SelToFlat
mov [esp+0],eax
L151:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; fsAlloc from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pSel from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; cbSize from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosAllocSeg@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosFreeSeg label near
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosFreeSeg@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosGetSeg label near
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosGetSeg@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosGiveSeg label near
; ebx+30 sel
; ebx+28 pid
; ebx+24 pSelRecipient
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pSelRecipient
;-------------------------------------
; *** BEGIN parameter packing
; pSelRecipient
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L152 ; skip if null
SelToFlat
mov [esp+0],eax
L152:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pSelRecipient from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pid from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; sel from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosGiveSeg@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosReallocSeg label near
; ebx+26 cbNewSize
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cbNewSize from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _DosReallocSeg@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSizeSeg label near
; ebx+28 sel
; ebx+24 pcbSize
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pcbSize
;-------------------------------------
; *** BEGIN parameter packing
; pcbSize
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L153 ; skip if null
SelToFlat
mov [esp+0],eax
L153:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbSize from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; sel from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosSizeSeg@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosAllocHuge label near
; ebx+34 cSegs
; ebx+32 cbPartialSeg
; ebx+28 psel
; ebx+26 cMaxSegs
; ebx+24 fsAlloc
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 psel
;-------------------------------------
; *** BEGIN parameter packing
; psel
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L154 ; skip if null
SelToFlat
mov [esp+0],eax
L154:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; fsAlloc from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cMaxSegs from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; psel from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbPartialSeg from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; cSegs from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _DosAllocHuge@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosReallocHuge label near
; ebx+28 cSegs
; ebx+26 cbPartialSeg
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cbPartialSeg from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; cSegs from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosReallocHuge@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosGetHugeShift label near
; ebx+24 pusShiftCount
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusShiftCount
;-------------------------------------
; *** BEGIN parameter packing
; pusShiftCount
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L155 ; skip if null
SelToFlat
mov [esp+0],eax
L155:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusShiftCount from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
call _DosGetHugeShift@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosAllocShrSeg label near
; ebx+32 cbSeg
; ebx+28 pszSegName
; ebx+24 psel
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszSegName
push eax ; ptr param #2 psel
;-------------------------------------
; *** BEGIN parameter packing
; pszSegName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L156 ; skip if null
SelToFlat
mov [esp+4],eax
L156:
; psel
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L157 ; skip if null
SelToFlat
mov [esp+0],eax
L157:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; psel from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pszSegName from: string
push dword ptr [esp+8] ; to: string
; cbSeg from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosAllocShrSeg@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosLockSeg label near
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosLockSeg@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosUnlockSeg label near
; ebx+24 sel
;-------------------------------------
; create new call frame and make the call
; sel from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosUnlockSeg@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosGetShrSeg label near
; ebx+28 pszSegName
; ebx+24 psel
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszSegName
push eax ; ptr param #2 psel
;-------------------------------------
; *** BEGIN parameter packing
; pszSegName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L158 ; skip if null
SelToFlat
mov [esp+4],eax
L158:
; psel
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L159 ; skip if null
SelToFlat
mov [esp+0],eax
L159:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; psel from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pszSegName from: string
push dword ptr [esp+8] ; to: string
call _DosGetShrSeg@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosMemAvail label near
; ebx+24 pcbFree
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pcbFree
;-------------------------------------
; *** BEGIN parameter packing
; pcbFree
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L160 ; skip if null
SelToFlat
mov [esp+0],eax
L160:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbFree from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
call _DosMemAvail@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosCreateCSAlias label near
; ebx+28 selDS
; ebx+24 pselCS
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pselCS
;-------------------------------------
; *** BEGIN parameter packing
; pselCS
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L161 ; skip if null
SelToFlat
mov [esp+0],eax
L161:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pselCS from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; selDS from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosCreateCSAlias@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosSemClear label near
; ebx+24 hsem
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L162 ; skip if null
SelToFlat
mov [esp+0],eax
L162:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hsem from: void
push dword ptr [esp+0] ; to: void
call _DosSemClear@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSemSet label near
; ebx+24 hsem
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L163 ; skip if null
SelToFlat
mov [esp+0],eax
L163:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hsem from: void
push dword ptr [esp+0] ; to: void
call _DosSemSet@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSemWait label near
; ebx+28 hsem
; ebx+24 lTimeOut
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L164 ; skip if null
SelToFlat
mov [esp+0],eax
L164:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; lTimeOut from: long
push dword ptr [ebx+24] ; to long
; hsem from: void
push dword ptr [esp+4] ; to: void
call _DosSemWait@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosSemSetWait label near
; ebx+28 hsem
; ebx+24 lTimeOut
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L165 ; skip if null
SelToFlat
mov [esp+0],eax
L165:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; lTimeOut from: long
push dword ptr [ebx+24] ; to long
; hsem from: void
push dword ptr [esp+4] ; to: void
call _DosSemSetWait@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosSemRequest label near
; ebx+28 hsem
; ebx+24 lTimeOut
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L166 ; skip if null
SelToFlat
mov [esp+0],eax
L166:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; lTimeOut from: long
push dword ptr [ebx+24] ; to long
; hsem from: void
push dword ptr [esp+4] ; to: void
call _DosSemRequest@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosCreateSem label near
; ebx+32 fExclusive
; ebx+28 phsem
; ebx+24 pszSemName
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 phsem
push eax ; ptr param #2 pszSemName
;-------------------------------------
; *** BEGIN parameter packing
; phsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L167 ; skip if null
SelToFlat
mov [esp+4],eax
L167:
; pszSemName
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L168 ; skip if null
SelToFlat
mov [esp+0],eax
L168:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszSemName from: string
push dword ptr [esp+0] ; to: string
; phsem from: void
push dword ptr [esp+8] ; to: void
; fExclusive from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosCreateSem@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosOpenSem label near
; ebx+28 phsem
; ebx+24 pszSemName
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 phsem
push eax ; ptr param #2 pszSemName
;-------------------------------------
; *** BEGIN parameter packing
; phsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L169 ; skip if null
SelToFlat
mov [esp+4],eax
L169:
; pszSemName
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L170 ; skip if null
SelToFlat
mov [esp+0],eax
L170:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszSemName from: string
push dword ptr [esp+0] ; to: string
; phsem from: void
push dword ptr [esp+8] ; to: void
call _DosOpenSem@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosCloseSem label near
; ebx+24 hsem
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L171 ; skip if null
SelToFlat
mov [esp+0],eax
L171:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hsem from: void
push dword ptr [esp+0] ; to: void
call _DosCloseSem@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosMuxSemWait label near
; ebx+32 pisemCleared
; ebx+28 pmsxl
; ebx+24 lTimeOut
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pisemCleared
push eax ; ptr param #2 pmsxl
;-------------------------------------
; *** BEGIN parameter packing
; pisemCleared
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L172 ; skip if null
SelToFlat
mov [esp+4],eax
L172:
; pmsxl
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L173 ; skip if null
SelToFlat
mov [esp+0],eax
L173:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; lTimeOut from: long
push dword ptr [ebx+24] ; to long
; pmsxl from: void
push dword ptr [esp+4] ; to: void
; pisemCleared from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
call _DosMuxSemWait@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosFSRamSemRequest label near
; ebx+28 pdosfsrs
; ebx+24 lTimeOut
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pdosfsrs
;-------------------------------------
; *** BEGIN parameter packing
; pdosfsrs
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L174 ; skip if null
SelToFlat
mov [esp+0],eax
L174:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; lTimeOut from: long
push dword ptr [ebx+24] ; to long
; pdosfsrs from: void
push dword ptr [esp+4] ; to: void
call _DosFSRamSemRequest@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosFSRamSemClear label near
; ebx+24 pdosfsrs
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pdosfsrs
;-------------------------------------
; *** BEGIN parameter packing
; pdosfsrs
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L175 ; skip if null
SelToFlat
mov [esp+0],eax
L175:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pdosfsrs from: void
push dword ptr [esp+0] ; to: void
call _DosFSRamSemClear@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosAsyncTimer label near
; ebx+32 ulTime
; ebx+28 hsem
; ebx+24 phtimer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
push eax ; ptr param #2 phtimer
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L176 ; skip if null
SelToFlat
mov [esp+4],eax
L176:
; phtimer
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L177 ; skip if null
SelToFlat
mov [esp+0],eax
L177:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phtimer from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; hsem from: void
push dword ptr [esp+8] ; to: void
; ulTime from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
call _DosAsyncTimer@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosStartTimer label near
; ebx+32 ulTime
; ebx+28 hsem
; ebx+24 phtimer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsem
push eax ; ptr param #2 phtimer
;-------------------------------------
; *** BEGIN parameter packing
; hsem
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L178 ; skip if null
SelToFlat
mov [esp+4],eax
L178:
; phtimer
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L179 ; skip if null
SelToFlat
mov [esp+0],eax
L179:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phtimer from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; hsem from: void
push dword ptr [esp+8] ; to: void
; ulTime from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
call _DosStartTimer@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosStopTimer label near
; ebx+24 htimer
;-------------------------------------
; create new call frame and make the call
; htimer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosStopTimer@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosGetProcAddrNE label near
; ebx+32 hmod
; ebx+28 pszProcName
; ebx+24 ppfnProcAddr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszProcName
push eax ; ptr param #2 ppfnProcAddr
;-------------------------------------
; *** BEGIN parameter packing
; pszProcName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L180 ; skip if null
SelToFlat
mov [esp+4],eax
L180:
; ppfnProcAddr
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L181 ; skip if null
SelToFlat
mov [esp+0],eax
L181:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppfnProcAddr from: void
push dword ptr [esp+0] ; to: void
; pszProcName from: string
push dword ptr [esp+8] ; to: string
; hmod from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosGetProcAddrNE@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosQueryProcType label near
; ebx+36 hmod
; ebx+32 ordinal
; ebx+28 pszName
; ebx+24 pulproctype
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszName
push eax ; ptr param #2 pulproctype
;-------------------------------------
; *** BEGIN parameter packing
; pszName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L182 ; skip if null
SelToFlat
mov [esp+4],eax
L182:
; pulproctype
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L183 ; skip if null
SelToFlat
mov [esp+0],eax
L183:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pulproctype from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; pszName from: string
push dword ptr [esp+8] ; to: string
; ordinal from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
; hmod from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosQueryProcType@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosQueryResourceSize label near
; ebx+36 hmod
; ebx+32 idt
; ebx+28 idn
; ebx+24 pulsize
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pulsize
;-------------------------------------
; *** BEGIN parameter packing
; pulsize
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L184 ; skip if null
SelToFlat
mov [esp+0],eax
L184:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pulsize from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; idn from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
; idt from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
; hmod from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosQueryResourceSize@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosSetSigHandler label near
; ebx+36 pfnSigHandler
; ebx+32 ppfnPrev
; ebx+28 pfAction
; ebx+26 fAction
; ebx+24 usSigNum
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfnSigHandler
push eax ; ptr param #2 ppfnPrev
push eax ; ptr param #3 pfAction
;-------------------------------------
; *** BEGIN parameter packing
; pfnSigHandler
; pointer void --> void
mov eax,[ebx+36] ; base address
or eax,eax
jz L185 ; skip if null
SelToFlat
mov [esp+8],eax
L185:
; ppfnPrev
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L186 ; skip if null
SelToFlat
mov [esp+4],eax
L186:
; pfAction
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L187 ; skip if null
SelToFlat
mov [esp+0],eax
L187:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; usSigNum from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fAction from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; pfAction from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; ppfnPrev from: void
push dword ptr [esp+16] ; to: void
; pfnSigHandler from: void
push dword ptr [esp+24] ; to: void
call _DosSetSigHandler@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T_DosFlagProcess16 label near
; ebx+30 pid
; ebx+28 fScope
; ebx+26 usFlagNum
; ebx+24 usFlagArg
;-------------------------------------
; create new call frame and make the call
; usFlagArg from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usFlagNum from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; fScope from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pid from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call DosFlagProcess16@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T_DosHoldSignal16 label near
; ebx+24 fDisable
;-------------------------------------
; create new call frame and make the call
; fDisable from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call DosHoldSignal16@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T_DosSendSignal16 label near
; ebx+26 idProcess
; ebx+24 usSigNumber
;-------------------------------------
; create new call frame and make the call
; usSigNumber from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; idProcess from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call DosSendSignal16@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSetVec label near
; ebx+32 usVecNum
; ebx+28 pfnFun
; ebx+24 ppfnPrev
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfnFun
push eax ; ptr param #2 ppfnPrev
;-------------------------------------
; *** BEGIN parameter packing
; pfnFun
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L188 ; skip if null
SelToFlat
mov [esp+4],eax
L188:
; ppfnPrev
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L189 ; skip if null
SelToFlat
mov [esp+0],eax
L189:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppfnPrev from: void
push dword ptr [esp+0] ; to: void
; pfnFun from: void
push dword ptr [esp+8] ; to: void
; usVecNum from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosSetVec@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosGetEnv label near
; ebx+28 pselEnv
; ebx+24 pOffsetCmd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pselEnv
push eax ; ptr param #2 pOffsetCmd
;-------------------------------------
; *** BEGIN parameter packing
; pselEnv
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L190 ; skip if null
SelToFlat
mov [esp+4],eax
L190:
; pOffsetCmd
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L191 ; skip if null
SelToFlat
mov [esp+0],eax
L191:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pOffsetCmd from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pselEnv from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
call _DosGetEnv@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosGetVersion label near
; ebx+24 pVer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pVer
;-------------------------------------
; *** BEGIN parameter packing
; pVer
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L192 ; skip if null
SelToFlat
mov [esp+0],eax
L192:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pVer from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
call _DosGetVersion@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosGetMachineMode label near
; ebx+24 pMachMode
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pMachMode
;-------------------------------------
; *** BEGIN parameter packing
; pMachMode
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L193 ; skip if null
SelToFlat
mov [esp+0],eax
L193:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pMachMode from: char
push dword ptr [esp+0] ; to: char
call _DosGetMachineMode@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Dos16FindNext label near
; ebx+34 hdir
; ebx+30 pffb
; ebx+28 cbBuf
; ebx+24 pcSearch
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pffb
push eax ; ptr param #2 pcSearch
;-------------------------------------
; *** BEGIN parameter packing
; pffb
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L194 ; skip if null
SelToFlat
mov [esp+4],eax
L194:
; pcSearch
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L195 ; skip if null
SelToFlat
mov [esp+0],eax
L195:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcSearch from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pffb from: void
push dword ptr [esp+12] ; to: void
; hdir from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _Dos16FindNext@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosGetPID label near
; ebx+24 ppidInfo
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppidInfo
;-------------------------------------
; *** BEGIN parameter packing
; ppidInfo
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L196 ; skip if null
SelToFlat
mov [esp+0],eax
L196:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppidInfo from: void
push dword ptr [esp+0] ; to: void
call _DosGetPID@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosGetPPID label near
; ebx+28 pidChild
; ebx+24 ppidParent
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppidParent
;-------------------------------------
; *** BEGIN parameter packing
; ppidParent
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L197 ; skip if null
SelToFlat
mov [esp+0],eax
L197:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppidParent from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pidChild from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosGetPPID@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__Dos16MkDir label near
; ebx+28 pszDirName
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszDirName
;-------------------------------------
; *** BEGIN parameter packing
; pszDirName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L198 ; skip if null
SelToFlat
mov [esp+0],eax
L198:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pszDirName from: string
push dword ptr [esp+4] ; to: string
call _Dos16MkDir@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16MkDir2 label near
; ebx+32 pszDir
; ebx+28 peaop
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszDir
push eax ; ptr param #2 peaop
;-------------------------------------
; *** BEGIN parameter packing
; pszDir
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L199 ; skip if null
SelToFlat
mov [esp+4],eax
L199:
; peaop
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L200 ; skip if null
SelToFlat
mov [esp+0],eax
L200:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; peaop from: void
push dword ptr [esp+4] ; to: void
; pszDir from: string
push dword ptr [esp+12] ; to: string
call _Dos16MkDir2@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosSetFileMode label near
; ebx+30 pszFName
; ebx+28 usAttr
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszFName
;-------------------------------------
; *** BEGIN parameter packing
; pszFName
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L201 ; skip if null
SelToFlat
mov [esp+0],eax
L201:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; usAttr from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pszFName from: string
push dword ptr [esp+8] ; to: string
call _DosSetFileMode@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16SetFileInfo label near
; ebx+32 hf
; ebx+30 usInfoLevel
; ebx+26 pInfoBuf
; ebx+24 cbInfoBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pInfoBuf
;-------------------------------------
; *** BEGIN parameter packing
; pInfoBuf
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L202 ; skip if null
SelToFlat
mov [esp+0],eax
L202:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbInfoBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pInfoBuf from: void
push dword ptr [esp+4] ; to: void
; usInfoLevel from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _Dos16SetFileInfo@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__DosTrueGetMessage label near
; ebx+46 ppchVTable
; ebx+44 usVCount
; ebx+40 pchBuf
; ebx+38 cbBuf
; ebx+36 usMsgNum
; ebx+32 pszFileName
; ebx+28 pcbMsg
; ebx+24 pMsgSeg
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppchVTable
push eax ; ptr param #2 pchBuf
push eax ; ptr param #3 pszFileName
push eax ; ptr param #4 pcbMsg
push eax ; ptr param #5 pMsgSeg
;-------------------------------------
; *** BEGIN parameter packing
; ppchVTable
; pointer unsigned long --> unsigned long
mov eax,[ebx+46] ; base address
or eax,eax
jz L203 ; skip if null
SelToFlat
mov [esp+16],eax
L203:
; pchBuf
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L204 ; skip if null
SelToFlat
mov [esp+12],eax
L204:
; pszFileName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L205 ; skip if null
SelToFlat
mov [esp+8],eax
L205:
; pcbMsg
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L206 ; skip if null
SelToFlat
mov [esp+4],eax
L206:
; pMsgSeg
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L207 ; skip if null
SelToFlat
mov [esp+0],eax
L207:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pMsgSeg from: char
push dword ptr [esp+0] ; to: char
; pcbMsg from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pszFileName from: string
push dword ptr [esp+16] ; to: string
; usMsgNum from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
; pchBuf from: char
push dword ptr [esp+32] ; to: char
; usVCount from: unsigned short
movzx eax,word ptr [ebx+44]
push eax ; to: unsigned long
; ppchVTable from: unsigned long
push dword ptr [esp+44] ; to: unsigned long
call _DosTrueGetMessage@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_26
;===========================================================================
T__DosScanEnvNE label near
; ebx+28 pszValName
; ebx+24 ppszResult
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszValName
push eax ; ptr param #2 ppszResult
;-------------------------------------
; *** BEGIN parameter packing
; pszValName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L208 ; skip if null
SelToFlat
mov [esp+4],eax
L208:
; ppszResult
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L209 ; skip if null
SelToFlat
mov [esp+0],eax
L209:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppszResult from: char
push dword ptr [esp+0] ; to: char
; pszValName from: string
push dword ptr [esp+8] ; to: string
call _DosScanEnvNE@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosPTrace label near
; ebx+24 pvTraceBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pvTraceBuf
;-------------------------------------
; *** BEGIN parameter packing
; pvTraceBuf
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L210 ; skip if null
SelToFlat
mov [esp+0],eax
L210:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pvTraceBuf from: void
push dword ptr [esp+0] ; to: void
call _DosPTrace@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosInsMessage label near
; ebx+42 ppchVTable
; ebx+40 usVCount
; ebx+36 pszMsg
; ebx+34 cbMsg
; ebx+30 pchBuf
; ebx+28 cbBuf
; ebx+24 pcbMsg
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ppchVTable
push eax ; ptr param #2 pszMsg
push eax ; ptr param #3 pchBuf
push eax ; ptr param #4 pcbMsg
;-------------------------------------
; *** BEGIN parameter packing
; ppchVTable
; pointer unsigned long --> unsigned long
mov eax,[ebx+42] ; base address
or eax,eax
jz L211 ; skip if null
SelToFlat
mov [esp+12],eax
L211:
; pszMsg
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L212 ; skip if null
SelToFlat
mov [esp+8],eax
L212:
; pchBuf
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L213 ; skip if null
SelToFlat
mov [esp+4],eax
L213:
; pcbMsg
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L214 ; skip if null
SelToFlat
mov [esp+0],eax
L214:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbMsg from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pchBuf from: char
push dword ptr [esp+12] ; to: char
; cbMsg from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pszMsg from: string
push dword ptr [esp+24] ; to: string
; usVCount from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
; ppchVTable from: unsigned long
push dword ptr [esp+36] ; to: unsigned long
call _DosInsMessage@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_22
;===========================================================================
T__DosPutMessage label near
; ebx+30 hf
; ebx+28 cbMsg
; ebx+24 pchMsg
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchMsg
;-------------------------------------
; *** BEGIN parameter packing
; pchMsg
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L215 ; skip if null
SelToFlat
mov [esp+0],eax
L215:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pchMsg from: char
push dword ptr [esp+0] ; to: char
; cbMsg from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosPutMessage@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16SubSet label near
; ebx+28
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16SubSet@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__Dos16SubAlloc label near
; ebx+30
; ebx+26 pusOffset
; ebx+24
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusOffset
;-------------------------------------
; *** BEGIN parameter packing
; pusOffset
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L216 ; skip if null
SelToFlat
mov [esp+0],eax
L216:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pusOffset from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _Dos16SubAlloc@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16SubFree label near
; ebx+28
; ebx+26
; ebx+24
;-------------------------------------
; create new call frame and make the call
; from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _Dos16SubFree@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__Dos16StartSession label near
; ebx+32 pstdata
; ebx+28 pidSession
; ebx+24 ppid
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pstdata
push eax ; ptr param #2 pidSession
push eax ; ptr param #3 ppid
;-------------------------------------
; *** BEGIN parameter packing
; pstdata
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L217 ; skip if null
SelToFlat
mov [esp+8],eax
L217:
; pidSession
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L218 ; skip if null
SelToFlat
mov [esp+4],eax
L218:
; ppid
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L219 ; skip if null
SelToFlat
mov [esp+0],eax
L219:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ppid from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pidSession from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pstdata from: void
push dword ptr [esp+16] ; to: void
call _Dos16StartSession@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__DosStopSession label near
; ebx+30 fScope
; ebx+28 idSession
; ebx+24 ulReserved
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; idSession from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; fScope from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosStopSession@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosSetSession label near
; ebx+28 idSession
; ebx+24 pstsdata
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pstsdata
;-------------------------------------
; *** BEGIN parameter packing
; pstsdata
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L220 ; skip if null
SelToFlat
mov [esp+0],eax
L220:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pstsdata from: void
push dword ptr [esp+0] ; to: void
; idSession from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosSetSession@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosSelectSession label near
; ebx+28 idSession
; ebx+24 ulReserved
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; idSession from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _DosSelectSession@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__DosSMSetTitle label near
; ebx+24 pszTitle
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszTitle
;-------------------------------------
; *** BEGIN parameter packing
; pszTitle
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L221 ; skip if null
SelToFlat
mov [esp+0],eax
L221:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszTitle from: string
push dword ptr [esp+0] ; to: string
call _DosSMSetTitle@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__DosSMPMPresent label near
; ebx+24 Flag
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Flag
;-------------------------------------
; *** BEGIN parameter packing
; Flag
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L222 ; skip if null
SelToFlat
mov [esp+0],eax
L222:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; Flag from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
call _DosSMPMPresent@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__WinSetTitleAndIcon label near
; ebx+28 szTitle
; ebx+24 szIconFilePath
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 szTitle
push eax ; ptr param #2 szIconFilePath
;-------------------------------------
; *** BEGIN parameter packing
; szTitle
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L223 ; skip if null
SelToFlat
mov [esp+4],eax
L223:
; szIconFilePath
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L224 ; skip if null
SelToFlat
mov [esp+0],eax
L224:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; szIconFilePath from: string
push dword ptr [esp+0] ; to: string
; szTitle from: string
push dword ptr [esp+8] ; to: string
call _WinSetTitleAndIcon@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosGetPriority label near
; ebx+30 usScope
; ebx+26 pusPriority
; ebx+24 pid
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusPriority
;-------------------------------------
; *** BEGIN parameter packing
; pusPriority
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L225 ; skip if null
SelToFlat
mov [esp+0],eax
L225:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pid from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pusPriority from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; usScope from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosGetPriority@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosQSysInfo label near
; ebx+30 index
; ebx+26 pBuf
; ebx+24 cbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pBuf
;-------------------------------------
; *** BEGIN parameter packing
; pBuf
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L226 ; skip if null
SelToFlat
mov [esp+0],eax
L226:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pBuf from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; index from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosQSysInfo@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosDevIOCtl2 label near
; ebx+38 pvData
; ebx+36 cbData
; ebx+32 pvParms
; ebx+30 cbParms
; ebx+28 Function
; ebx+26 Category
; ebx+24 hDev
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pvData
push eax ; ptr param #2 pvParms
;-------------------------------------
; *** BEGIN parameter packing
; pvData
; pointer void --> void
mov eax,[ebx+38] ; base address
or eax,eax
jz L227 ; skip if null
SelToFlat
mov [esp+4],eax
L227:
; pvParms
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L228 ; skip if null
SelToFlat
mov [esp+0],eax
L228:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hDev from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Category from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Function from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; cbParms from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; pvParms from: void
push dword ptr [esp+16] ; to: void
; cbData from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; pvData from: void
push dword ptr [esp+28] ; to: void
call _DosDevIOCtl2@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__DosICanonicalize label near
; ebx+34 Source
; ebx+30 Dest
; ebx+28 BackupOffset
; ebx+26 DestEnd
; ebx+24 Flags
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Source
push eax ; ptr param #2 Dest
;-------------------------------------
; *** BEGIN parameter packing
; Source
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L229 ; skip if null
SelToFlat
mov [esp+4],eax
L229:
; Dest
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L230 ; skip if null
SelToFlat
mov [esp+0],eax
L230:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; Flags from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; DestEnd from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; BackupOffset from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Dest from: char
push dword ptr [esp+12] ; to: char
; Source from: char
push dword ptr [esp+20] ; to: char
call _DosICanonicalize@20 ; call 32-bit version
; return code void --> void
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosReadAsync label near
; ebx+42 hf
; ebx+38 hsemRam
; ebx+34 pusErrCode
; ebx+30 pvBuf
; ebx+28 cbBuf
; ebx+24 pcbBytesRead
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsemRam
push eax ; ptr param #2 pusErrCode
push eax ; ptr param #3 pvBuf
push eax ; ptr param #4 pcbBytesRead
;-------------------------------------
; *** BEGIN parameter packing
; hsemRam
; pointer unsigned long --> unsigned long
mov eax,[ebx+38] ; base address
or eax,eax
jz L231 ; skip if null
SelToFlat
mov [esp+12],eax
L231:
; pusErrCode
; pointer unsigned short --> unsigned short
mov eax,[ebx+34] ; base address
or eax,eax
jz L232 ; skip if null
SelToFlat
mov [esp+8],eax
L232:
; pvBuf
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L233 ; skip if null
SelToFlat
mov [esp+4],eax
L233:
; pcbBytesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L234 ; skip if null
SelToFlat
mov [esp+0],eax
L234:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbBytesRead from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pvBuf from: void
push dword ptr [esp+12] ; to: void
; pusErrCode from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; hsemRam from: unsigned long
push dword ptr [esp+28] ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
call _DosReadAsync@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__DosWriteAsync label near
; ebx+42 hf
; ebx+38 hsemRam
; ebx+34 pusErrCode
; ebx+30 pvBuf
; ebx+28 cbBuf
; ebx+24 pcbBytesRead
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hsemRam
push eax ; ptr param #2 pusErrCode
push eax ; ptr param #3 pvBuf
push eax ; ptr param #4 pcbBytesRead
;-------------------------------------
; *** BEGIN parameter packing
; hsemRam
; pointer unsigned long --> unsigned long
mov eax,[ebx+38] ; base address
or eax,eax
jz L235 ; skip if null
SelToFlat
mov [esp+12],eax
L235:
; pusErrCode
; pointer unsigned short --> unsigned short
mov eax,[ebx+34] ; base address
or eax,eax
jz L236 ; skip if null
SelToFlat
mov [esp+8],eax
L236:
; pvBuf
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L237 ; skip if null
SelToFlat
mov [esp+4],eax
L237:
; pcbBytesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L238 ; skip if null
SelToFlat
mov [esp+0],eax
L238:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbBytesRead from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pvBuf from: void
push dword ptr [esp+12] ; to: void
; pusErrCode from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; hsemRam from: unsigned long
push dword ptr [esp+28] ; to: unsigned long
; hf from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
call _DosWriteAsync@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__DosFindNotifyClose label near
;-------------------------------------
; create new call frame and make the call
call _DosFindNotifyClose@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosFindNotifyFirst label near
;-------------------------------------
; create new call frame and make the call
call _DosFindNotifyFirst@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosFindNotifyNext label near
;-------------------------------------
; create new call frame and make the call
call _DosFindNotifyNext@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__DosFileLocks label near
; ebx+32 hf
; ebx+28 pfUnLock
; ebx+24 pfLock
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfUnLock
push eax ; ptr param #2 pfLock
;-------------------------------------
; *** BEGIN parameter packing
; pfUnLock
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L239 ; skip if null
SelToFlat
mov [esp+4],eax
L239:
; pfLock
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L240 ; skip if null
SelToFlat
mov [esp+0],eax
L240:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pfLock from: void
push dword ptr [esp+0] ; to: void
; pfUnLock from: void
push dword ptr [esp+8] ; to: void
; hf from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
call _DosFileLocks@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Dos16QPathInfo label near
; ebx+36 pszPath
; ebx+34 usInfoLevel
; ebx+30 pInfoBuf
; ebx+28 cbInfoBuf
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszPath
push eax ; ptr param #2 pInfoBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszPath
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L241 ; skip if null
SelToFlat
mov [esp+4],eax
L241:
; pInfoBuf
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L242 ; skip if null
SelToFlat
mov [esp+0],eax
L242:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; cbInfoBuf from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pInfoBuf from: char
push dword ptr [esp+8] ; to: char
; usInfoLevel from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pszPath from: string
push dword ptr [esp+20] ; to: string
call _Dos16QPathInfo@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__Dos16SetPathInfo label near
; ebx+38 pszPath
; ebx+36 usInfoLevel
; ebx+32 pInfoBuf
; ebx+30 cbInfoBuf
; ebx+28 fsOptions
; ebx+24 ulReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszPath
push eax ; ptr param #2 pInfoBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszPath
; pointer string --> string
mov eax,[ebx+38] ; base address
or eax,eax
jz L243 ; skip if null
SelToFlat
mov [esp+4],eax
L243:
; pInfoBuf
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L244 ; skip if null
SelToFlat
mov [esp+0],eax
L244:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; ulReserved from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; fsOptions from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; cbInfoBuf from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; pInfoBuf from: char
push dword ptr [esp+12] ; to: char
; usInfoLevel from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; pszPath from: string
push dword ptr [esp+24] ; to: string
call _Dos16SetPathInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__DosPortAccess label near
; ebx+30 usReserved
; ebx+28 fRelease
; ebx+26 usFirstPort
; ebx+24 usLastPort
;-------------------------------------
; create new call frame and make the call
; usLastPort from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usFirstPort from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; fRelease from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; usReserved from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _DosPortAccess@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosCLIAccess label near
;-------------------------------------
; create new call frame and make the call
call _DosCLIAccess@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__WinQueryProfileString label near
; ebx+42 hab
; ebx+38 pszAppName
; ebx+34 pszKeyName
; ebx+30 pszError
; ebx+26 pszBuf
; ebx+24 cchBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
push eax ; ptr param #3 pszError
push eax ; ptr param #4 pszBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+38] ; base address
or eax,eax
jz L245 ; skip if null
SelToFlat
mov [esp+12],eax
L245:
; pszKeyName
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L246 ; skip if null
SelToFlat
mov [esp+8],eax
L246:
; pszError
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L247 ; skip if null
SelToFlat
mov [esp+4],eax
L247:
; pszBuf
; pointer string --> string
mov eax,[ebx+26] ; base address
or eax,eax
jz L248 ; skip if null
SelToFlat
mov [esp+0],eax
L248:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cchBuf from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pszBuf from: string
push dword ptr [esp+4] ; to: string
; pszError from: string
push dword ptr [esp+12] ; to: string
; pszKeyName from: string
push dword ptr [esp+20] ; to: string
; pszAppName from: string
push dword ptr [esp+28] ; to: string
call _WinQueryProfileString@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_22
;===========================================================================
T__WinQueryProfileSize label near
; ebx+36 hab
; ebx+32 pszAppName
; ebx+28 pszKeyName
; ebx+24 pcb
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
push eax ; ptr param #3 pcb
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L249 ; skip if null
SelToFlat
mov [esp+8],eax
L249:
; pszKeyName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L250 ; skip if null
SelToFlat
mov [esp+4],eax
L250:
; pcb
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L251 ; skip if null
SelToFlat
mov [esp+0],eax
L251:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcb from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pszKeyName from: string
push dword ptr [esp+8] ; to: string
; pszAppName from: string
push dword ptr [esp+16] ; to: string
call _WinQueryProfileSize@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__WinQueryProfileData label near
; ebx+40 hab
; ebx+36 pszAppName
; ebx+32 pszKeyName
; ebx+28 pvBuf
; ebx+24 pcbBuf
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
push eax ; ptr param #3 pvBuf
push eax ; ptr param #4 pcbBuf
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L252 ; skip if null
SelToFlat
mov [esp+12],eax
L252:
; pszKeyName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L253 ; skip if null
SelToFlat
mov [esp+8],eax
L253:
; pvBuf
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L254 ; skip if null
SelToFlat
mov [esp+4],eax
L254:
; pcbBuf
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L255 ; skip if null
SelToFlat
mov [esp+0],eax
L255:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbBuf from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pvBuf from: void
push dword ptr [esp+8] ; to: void
; pszKeyName from: string
push dword ptr [esp+16] ; to: string
; pszAppName from: string
push dword ptr [esp+24] ; to: string
call _WinQueryProfileData@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__WinQueryProfileInt label near
; ebx+34 hab
; ebx+30 pszAppName
; ebx+26 pszKeyName
; ebx+24 sError
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L256 ; skip if null
SelToFlat
mov [esp+4],eax
L256:
; pszKeyName
; pointer string --> string
mov eax,[ebx+26] ; base address
or eax,eax
jz L257 ; skip if null
SelToFlat
mov [esp+0],eax
L257:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; sError from: short
movsx eax,word ptr [ebx+24]
push eax ; to: long
; pszKeyName from: string
push dword ptr [esp+4] ; to: string
; pszAppName from: string
push dword ptr [esp+12] ; to: string
call _WinQueryProfileInt@12 ; call 32-bit version
; return code long --> short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__WinWriteProfileData label near
; ebx+38 hab
; ebx+34 pszAppName
; ebx+30 pszKeyName
; ebx+26 pcbBinaryData
; ebx+24 cchData
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
push eax ; ptr param #3 pcbBinaryData
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L258 ; skip if null
SelToFlat
mov [esp+8],eax
L258:
; pszKeyName
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L259 ; skip if null
SelToFlat
mov [esp+4],eax
L259:
; pcbBinaryData
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L260 ; skip if null
SelToFlat
mov [esp+0],eax
L260:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cchData from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pcbBinaryData from: void
push dword ptr [esp+4] ; to: void
; pszKeyName from: string
push dword ptr [esp+12] ; to: string
; pszAppName from: string
push dword ptr [esp+20] ; to: string
call _WinWriteProfileData@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__WinWriteProfileString label near
; ebx+36 hab
; ebx+32 pszAppName
; ebx+28 pszKeyName
; ebx+24 pszString
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszAppName
push eax ; ptr param #2 pszKeyName
push eax ; ptr param #3 pszString
;-------------------------------------
; *** BEGIN parameter packing
; pszAppName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L261 ; skip if null
SelToFlat
mov [esp+8],eax
L261:
; pszKeyName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L262 ; skip if null
SelToFlat
mov [esp+4],eax
L262:
; pszString
; pointer string --> string
mov eax,[ebx+24] ; base address
or eax,eax
jz L263 ; skip if null
SelToFlat
mov [esp+0],eax
L263:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszString from: string
push dword ptr [esp+0] ; to: string
; pszKeyName from: string
push dword ptr [esp+8] ; to: string
; pszAppName from: string
push dword ptr [esp+16] ; to: string
call _WinWriteProfileString@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__WinCreateHeap label near
; ebx+34 selHeapBase
; ebx+32 cbHeap
; ebx+30 cbGrow
; ebx+28 cbMinDed
; ebx+26 cbMaxDeb
; ebx+24 fsOptions
;-------------------------------------
; create new call frame and make the call
; fsOptions from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cbMaxDeb from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; cbMinDed from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; cbGrow from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; cbHeap from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; selHeapBase from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
call _WinCreateHeap@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__WinDestroyHeap label near
; ebx+24 hHeap
;-------------------------------------
; create new call frame and make the call
; hHeap from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _WinDestroyHeap@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__WinAllocMem label near
; ebx+26 hHeap
; ebx+24 cb
;-------------------------------------
; create new call frame and make the call
; cb from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; hHeap from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _WinAllocMem@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__WinFreeMem label near
; ebx+28 hHeap
; ebx+26 npMem
; ebx+24 cbMem
;-------------------------------------
; create new call frame and make the call
; cbMem from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; npMem from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; hHeap from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _WinFreeMem@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__WinGetLastError label near
; ebx+24 hab
;-------------------------------------
; create new call frame and make the call
; hab from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _WinGetLastError@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__VioScrollUp label near
; ebx+38 ulTopRow
; ebx+36 ulLeftCol
; ebx+34 ulBotRow
; ebx+32 ulRightCol
; ebx+30 cbLines
; ebx+26 pbCell
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbCell
;-------------------------------------
; *** BEGIN parameter packing
; pbCell
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L264 ; skip if null
SelToFlat
mov [esp+0],eax
L264:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbCell from: char
push dword ptr [esp+4] ; to: char
; cbLines from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; ulRightCol from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; ulBotRow from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; ulLeftCol from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; ulTopRow from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _VioScrollUp@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioGetCurPos label near
; ebx+30 pusRow
; ebx+26 pusColumn
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusRow
push eax ; ptr param #2 pusColumn
;-------------------------------------
; *** BEGIN parameter packing
; pusRow
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L265 ; skip if null
SelToFlat
mov [esp+4],eax
L265:
; pusColumn
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L266 ; skip if null
SelToFlat
mov [esp+0],eax
L266:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pusColumn from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; pusRow from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
call _VioGetCurPos@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__VioSetCurPos label near
; ebx+28 usRow
; ebx+26 usColumn
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usColumn from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; usRow from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _VioSetCurPos@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioWrtTTY label near
; ebx+28 pchString
; ebx+26 cbString
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchString
;-------------------------------------
; *** BEGIN parameter packing
; pchString
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L267 ; skip if null
SelToFlat
mov [esp+0],eax
L267:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cbString from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; pchString from: char
push dword ptr [esp+8] ; to: char
call _VioWrtTTY@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioGetMode label near
; ebx+26 pviomi
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pviomi
;-------------------------------------
; *** BEGIN parameter packing
; pviomi
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L268 ; skip if null
SelToFlat
mov [esp+0],eax
L268:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pviomi from: void
push dword ptr [esp+4] ; to: void
call _VioGetMode@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioReadCellStr label near
; ebx+34 pchCellString
; ebx+30 pcb
; ebx+28 usRow
; ebx+26 usColumn
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchCellString
push eax ; ptr param #2 pcb
;-------------------------------------
; *** BEGIN parameter packing
; pchCellString
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L269 ; skip if null
SelToFlat
mov [esp+4],eax
L269:
; pcb
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L270 ; skip if null
SelToFlat
mov [esp+0],eax
L270:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usColumn from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; usRow from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pcb from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
; pchCellString from: char
push dword ptr [esp+20] ; to: char
call _VioReadCellStr@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__VioScrollLf label near
; ebx+38 ulTopRow
; ebx+36 ulLeftCol
; ebx+34 ulBotRow
; ebx+32 ulRightCol
; ebx+30 cbLines
; ebx+26 pbCell
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbCell
;-------------------------------------
; *** BEGIN parameter packing
; pbCell
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L271 ; skip if null
SelToFlat
mov [esp+0],eax
L271:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbCell from: char
push dword ptr [esp+4] ; to: char
; cbLines from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; ulRightCol from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; ulBotRow from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; ulLeftCol from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; ulTopRow from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _VioScrollLf@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioReadCharStr label near
; ebx+34 pchCellString
; ebx+30 pcb
; ebx+28 usRow
; ebx+26 usColumn
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchCellString
push eax ; ptr param #2 pcb
;-------------------------------------
; *** BEGIN parameter packing
; pchCellString
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L272 ; skip if null
SelToFlat
mov [esp+4],eax
L272:
; pcb
; pointer unsigned short --> unsigned short
mov eax,[ebx+30] ; base address
or eax,eax
jz L273 ; skip if null
SelToFlat
mov [esp+0],eax
L273:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; usColumn from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; usRow from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pcb from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
; pchCellString from: char
push dword ptr [esp+20] ; to: char
call _VioReadCharStr@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__VioWrtCharStrAtt label near
; ebx+36 pchString
; ebx+34 cbString
; ebx+32 usRow
; ebx+30 usColumn
; ebx+26 pbAttr
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchString
push eax ; ptr param #2 pbAttr
;-------------------------------------
; *** BEGIN parameter packing
; pchString
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L274 ; skip if null
SelToFlat
mov [esp+4],eax
L274:
; pbAttr
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L275 ; skip if null
SelToFlat
mov [esp+0],eax
L275:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbAttr from: char
push dword ptr [esp+4] ; to: char
; usColumn from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; usRow from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; cbString from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; pchString from: char
push dword ptr [esp+24] ; to: char
call _VioWrtCharStrAtt@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioWrtCellStr label near
; ebx+32 CellStr
; ebx+30 Length
; ebx+28 Row
; ebx+26 Col
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 CellStr
;-------------------------------------
; *** BEGIN parameter packing
; CellStr
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L276 ; skip if null
SelToFlat
mov [esp+0],eax
L276:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Col from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Row from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Length from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; CellStr from: char
push dword ptr [esp+16] ; to: char
call _VioWrtCellStr@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__VioWrtCharStr label near
; ebx+32 CharStr
; ebx+30 Length
; ebx+28 Row
; ebx+26 Col
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 CharStr
;-------------------------------------
; *** BEGIN parameter packing
; CharStr
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L277 ; skip if null
SelToFlat
mov [esp+0],eax
L277:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Col from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Row from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Length from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; CharStr from: char
push dword ptr [esp+16] ; to: char
call _VioWrtCharStr@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__VioWrtNCell label near
; ebx+32 Cell
; ebx+30 Number
; ebx+28 Row
; ebx+26 Col
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Cell
;-------------------------------------
; *** BEGIN parameter packing
; Cell
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L278 ; skip if null
SelToFlat
mov [esp+0],eax
L278:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Col from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Row from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Number from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; Cell from: void
push dword ptr [esp+16] ; to: void
call _VioWrtNCell@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__VioWrtNAttr label near
; ebx+32 Attr
; ebx+30 Number
; ebx+28 Row
; ebx+26 Col
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Attr
;-------------------------------------
; *** BEGIN parameter packing
; Attr
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L279 ; skip if null
SelToFlat
mov [esp+0],eax
L279:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Col from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Row from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Number from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; Attr from: char
push dword ptr [esp+16] ; to: char
call _VioWrtNAttr@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__VioWrtNChar label near
; ebx+32 Char
; ebx+30 Number
; ebx+28 Row
; ebx+26 Col
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Char
;-------------------------------------
; *** BEGIN parameter packing
; Char
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L280 ; skip if null
SelToFlat
mov [esp+0],eax
L280:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Col from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; Row from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; Number from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; Char from: char
push dword ptr [esp+16] ; to: char
call _VioWrtNChar@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__VioScrollDn label near
; ebx+38 ulTopRow
; ebx+36 ulLeftCol
; ebx+34 ulBotRow
; ebx+32 ulRightCol
; ebx+30 cbLines
; ebx+26 pbCell
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbCell
;-------------------------------------
; *** BEGIN parameter packing
; pbCell
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L281 ; skip if null
SelToFlat
mov [esp+0],eax
L281:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbCell from: char
push dword ptr [esp+4] ; to: char
; cbLines from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; ulRightCol from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; ulBotRow from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; ulLeftCol from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; ulTopRow from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _VioScrollDn@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioScrollRt label near
; ebx+38 ulTopRow
; ebx+36 ulLeftCol
; ebx+34 ulBotRow
; ebx+32 ulRightCol
; ebx+30 cbLines
; ebx+26 pbCell
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbCell
;-------------------------------------
; *** BEGIN parameter packing
; pbCell
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L282 ; skip if null
SelToFlat
mov [esp+0],eax
L282:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbCell from: char
push dword ptr [esp+4] ; to: char
; cbLines from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; ulRightCol from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; ulBotRow from: unsigned short
movzx eax,word ptr [ebx+34]
push eax ; to: unsigned long
; ulLeftCol from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
; ulTopRow from: unsigned short
movzx eax,word ptr [ebx+38]
push eax ; to: unsigned long
call _VioScrollRt@28 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioGetAnsi label near
; ebx+26 pfAnsi
; ebx+24 hvio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfAnsi
;-------------------------------------
; *** BEGIN parameter packing
; pfAnsi
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L283 ; skip if null
SelToFlat
mov [esp+0],eax
L283:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hvio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pfAnsi from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _VioGetAnsi@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioSetAnsi label near
; ebx+26 fAnsi
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fAnsi from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _VioSetAnsi@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__VioGetConfig label near
; ebx+30 usReserved
; ebx+26 Config
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Config
;-------------------------------------
; *** BEGIN parameter packing
; Config
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L284 ; skip if null
SelToFlat
mov [esp+0],eax
L284:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Config from: void
push dword ptr [esp+4] ; to: void
; usReserved from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _VioGetConfig@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioGetCp label near
; ebx+30 usReserved
; ebx+26 pIdCodePage
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pIdCodePage
;-------------------------------------
; *** BEGIN parameter packing
; pIdCodePage
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L285 ; skip if null
SelToFlat
mov [esp+0],eax
L285:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pIdCodePage from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; usReserved from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _VioGetCp@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioSetCp label near
; ebx+28 usReserved
; ebx+26 idCodePage
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; idCodePage from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; usReserved from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _VioSetCp@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioGetCurType label near
; ebx+26 pCurType
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pCurType
;-------------------------------------
; *** BEGIN parameter packing
; pCurType
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L286 ; skip if null
SelToFlat
mov [esp+0],eax
L286:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pCurType from: void
push dword ptr [esp+4] ; to: void
call _VioGetCurType@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioSetCurType label near
; ebx+26 pCurType
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pCurType
;-------------------------------------
; *** BEGIN parameter packing
; pCurType
; pointer unsigned long --> unsigned long
mov eax,[ebx+26] ; base address
or eax,eax
jz L287 ; skip if null
SelToFlat
mov [esp+0],eax
L287:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pCurType from: unsigned long
push dword ptr [esp+4] ; to: unsigned long
call _VioSetCurType@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioSetMode label near
; ebx+26 Mode
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Mode
;-------------------------------------
; *** BEGIN parameter packing
; Mode
; pointer unsigned long --> unsigned long
mov eax,[ebx+26] ; base address
or eax,eax
jz L288 ; skip if null
SelToFlat
mov [esp+0],eax
L288:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Mode from: unsigned long
push dword ptr [esp+4] ; to: unsigned long
call _VioSetMode@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioDeRegister label near
;-------------------------------------
; create new call frame and make the call
call _VioDeRegister@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__VioRegister label near
; ebx+36 pszModuleName
; ebx+32 pszEntryName
; ebx+28 flFunction1
; ebx+24 flFunction2
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszModuleName
push eax ; ptr param #2 pszEntryName
;-------------------------------------
; *** BEGIN parameter packing
; pszModuleName
; pointer string --> string
mov eax,[ebx+36] ; base address
or eax,eax
jz L289 ; skip if null
SelToFlat
mov [esp+4],eax
L289:
; pszEntryName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L290 ; skip if null
SelToFlat
mov [esp+0],eax
L290:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; flFunction2 from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; flFunction1 from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
; pszEntryName from: string
push dword ptr [esp+8] ; to: string
; pszModuleName from: string
push dword ptr [esp+16] ; to: string
call _VioRegister@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__VioPopUp label near
; ebx+26 pWait
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pWait
;-------------------------------------
; *** BEGIN parameter packing
; pWait
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L291 ; skip if null
SelToFlat
mov [esp+0],eax
L291:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pWait from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _VioPopUp@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioEndPopUp label near
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _VioEndPopUp@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__VioGetBuf label near
; ebx+30 pulLVB
; ebx+26 pcbLVB
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pulLVB
push eax ; ptr param #2 pcbLVB
;-------------------------------------
; *** BEGIN parameter packing
; pulLVB
; pointer unsigned long --> unsigned long
mov eax,[ebx+30] ; base address
or eax,eax
jz L292 ; skip if null
SelToFlat
mov [esp+4],eax
L292:
; pcbLVB
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L293 ; skip if null
SelToFlat
mov [esp+0],eax
L293:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pcbLVB from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; pulLVB from: unsigned long
push dword ptr [esp+12] ; to: unsigned long
call _VioGetBuf@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__VioShowBuf label near
; ebx+28 offLVB
; ebx+26 cbOutput
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; cbOutput from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; offLVB from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _VioShowBuf@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioGetFont label near
; ebx+26 Font
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Font
;-------------------------------------
; *** BEGIN parameter packing
; Font
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L294 ; skip if null
SelToFlat
mov [esp+0],eax
L294:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Font from: void
push dword ptr [esp+4] ; to: void
call _VioGetFont@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioSetFont label near
; ebx+26 Font
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Font
;-------------------------------------
; *** BEGIN parameter packing
; Font
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L295 ; skip if null
SelToFlat
mov [esp+0],eax
L295:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Font from: void
push dword ptr [esp+4] ; to: void
call _VioSetFont@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioGetState label near
; ebx+26 State
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 State
;-------------------------------------
; *** BEGIN parameter packing
; State
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L296 ; skip if null
SelToFlat
mov [esp+0],eax
L296:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; State from: void
push dword ptr [esp+4] ; to: void
call _VioGetState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioSetState label near
; ebx+26 State
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 State
;-------------------------------------
; *** BEGIN parameter packing
; State
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L297 ; skip if null
SelToFlat
mov [esp+0],eax
L297:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; State from: void
push dword ptr [esp+4] ; to: void
call _VioSetState@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioGetPhysBuf label near
; ebx+26 pviopb
; ebx+24 Resr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pviopb
;-------------------------------------
; *** BEGIN parameter packing
; pviopb
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L298 ; skip if null
SelToFlat
mov [esp+0],eax
L298:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; Resr from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pviopb from: void
push dword ptr [esp+4] ; to: void
call _VioGetPhysBuf@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioModeUndo label near
; ebx+28 fRelinqush
; ebx+26 fTerminate
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fTerminate from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; fRelinqush from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _VioModeUndo@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioModeWait label near
; ebx+30 fEvent
; ebx+26 pfNotify
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfNotify
;-------------------------------------
; *** BEGIN parameter packing
; pfNotify
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L299 ; skip if null
SelToFlat
mov [esp+0],eax
L299:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pfNotify from: void
push dword ptr [esp+4] ; to: void
; fEvent from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _VioModeWait@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioSavRedrawWait label near
; ebx+30 fEvent
; ebx+26 pfNotify
; ebx+24 Resr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfNotify
;-------------------------------------
; *** BEGIN parameter packing
; pfNotify
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L300 ; skip if null
SelToFlat
mov [esp+0],eax
L300:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; Resr from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pfNotify from: void
push dword ptr [esp+4] ; to: void
; fEvent from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _VioSavRedrawWait@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioSavRedrawUndo label near
; ebx+28 fRelinqush
; ebx+26 fTerminate
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fTerminate from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; fRelinqush from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _VioSavRedrawUndo@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__VioScrLock label near
; ebx+30 fWait
; ebx+26 pfNotLocked
; ebx+24 hVio
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pfNotLocked
;-------------------------------------
; *** BEGIN parameter packing
; pfNotLocked
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L301 ; skip if null
SelToFlat
mov [esp+0],eax
L301:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pfNotLocked from: void
push dword ptr [esp+4] ; to: void
; fWait from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _VioScrLock@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__VioScrUnLock label near
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _VioScrUnLock@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__VioPrtSc label near
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _VioPrtSc@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__VioPrtScToggle label near
; ebx+24 hVio
;-------------------------------------
; create new call frame and make the call
; hVio from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _VioPrtScToggle@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdFlushBuffer label near
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _KbdFlushBuffer@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdGetStatus label near
; ebx+26 pkbstKbdInfo
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbstKbdInfo
;-------------------------------------
; *** BEGIN parameter packing
; pkbstKbdInfo
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L302 ; skip if null
SelToFlat
mov [esp+0],eax
L302:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pkbstKbdInfo from: void
push dword ptr [esp+4] ; to: void
call _KbdGetStatus@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdSetStatus label near
; ebx+26 pkbstKbdInfo
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbstKbdInfo
;-------------------------------------
; *** BEGIN parameter packing
; pkbstKbdInfo
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L303 ; skip if null
SelToFlat
mov [esp+0],eax
L303:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pkbstKbdInfo from: void
push dword ptr [esp+4] ; to: void
call _KbdSetStatus@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdPeek label near
; ebx+26 pkbci
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbci
;-------------------------------------
; *** BEGIN parameter packing
; pkbci
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L304 ; skip if null
SelToFlat
mov [esp+0],eax
L304:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pkbci from: void
push dword ptr [esp+4] ; to: void
call _KbdPeek@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdCharIn label near
; ebx+28 pkbci
; ebx+26 fwait
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbci
;-------------------------------------
; *** BEGIN parameter packing
; pkbci
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L305 ; skip if null
SelToFlat
mov [esp+0],eax
L305:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fwait from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; pkbci from: void
push dword ptr [esp+8] ; to: void
call _KbdCharIn@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__KbdStringIn label near
; ebx+32 pchBuffer
; ebx+28 psibLength
; ebx+26 fwait
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pchBuffer
push eax ; ptr param #2 psibLength
;-------------------------------------
; *** BEGIN parameter packing
; pchBuffer
; pointer void --> void
mov eax,[ebx+32] ; base address
or eax,eax
jz L306 ; skip if null
SelToFlat
mov [esp+4],eax
L306:
; psibLength
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L307 ; skip if null
SelToFlat
mov [esp+0],eax
L307:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fwait from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; psibLength from: void
push dword ptr [esp+8] ; to: void
; pchBuffer from: void
push dword ptr [esp+16] ; to: void
call _KbdStringIn@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__KbdGetFocus label near
; ebx+26 Wait
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Wait from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _KbdGetFocus@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__KbdFreeFocus label near
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _KbdFreeFocus@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdClose label near
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _KbdClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdOpen label near
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 hKbd
;-------------------------------------
; *** BEGIN parameter packing
; hKbd
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L308 ; skip if null
SelToFlat
mov [esp+0],eax
L308:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
call _KbdOpen@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__KbdDeRegister label near
;-------------------------------------
; create new call frame and make the call
call _KbdDeRegister@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__KbdRegister label near
; ebx+32 pszModuleName
; ebx+28 pszEntryName
; ebx+24 fFunctions
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszModuleName
push eax ; ptr param #2 pszEntryName
;-------------------------------------
; *** BEGIN parameter packing
; pszModuleName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L309 ; skip if null
SelToFlat
mov [esp+4],eax
L309:
; pszEntryName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L310 ; skip if null
SelToFlat
mov [esp+0],eax
L310:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; fFunctions from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pszEntryName from: string
push dword ptr [esp+4] ; to: string
; pszModuleName from: string
push dword ptr [esp+12] ; to: string
call _KbdRegister@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__KbdGetCp label near
; ebx+30 usReserved
; ebx+26 pIdCodePage
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pIdCodePage
;-------------------------------------
; *** BEGIN parameter packing
; pIdCodePage
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L311 ; skip if null
SelToFlat
mov [esp+0],eax
L311:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pIdCodePage from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; usReserved from: unsigned long
push dword ptr [ebx+30] ; to unsigned long
call _KbdGetCp@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__KbdSetCp label near
; ebx+28 usReserved
; ebx+26 idCodePage
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; idCodePage from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; usReserved from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
call _KbdSetCp@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdSetCustXt label near
; ebx+26 pusTransTbl
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pusTransTbl
;-------------------------------------
; *** BEGIN parameter packing
; pusTransTbl
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L312 ; skip if null
SelToFlat
mov [esp+0],eax
L312:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pusTransTbl from: void
push dword ptr [esp+4] ; to: void
call _KbdSetCustXt@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdXlate label near
; ebx+26 pkbxlKeyStroke
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbxlKeyStroke
;-------------------------------------
; *** BEGIN parameter packing
; pkbxlKeyStroke
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L313 ; skip if null
SelToFlat
mov [esp+0],eax
L313:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pkbxlKeyStroke from: void
push dword ptr [esp+4] ; to: void
call _KbdXlate@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdGetHWID label near
; ebx+26 pkbdhwid
; ebx+24 hKbd
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pkbdhwid
;-------------------------------------
; *** BEGIN parameter packing
; pkbdhwid
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L314 ; skip if null
SelToFlat
mov [esp+0],eax
L314:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pkbdhwid from: void
push dword ptr [esp+4] ; to: void
call _KbdGetHWID@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__KbdSetFgnd label near
; ebx+24 hKbd
;-------------------------------------
; create new call frame and make the call
; hKbd from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _KbdSetFgnd@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdSynch label near
; ebx+24 fWait
;-------------------------------------
; create new call frame and make the call
; fWait from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _KbdSynch@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__KbdShellInit label near
;-------------------------------------
; create new call frame and make the call
call _KbdShellInit@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__MouClose label near
; ebx+24 hMou
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _MouClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__MouDeRegister label near
;-------------------------------------
; create new call frame and make the call
call _MouDeRegister@0 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_0
;===========================================================================
T__MouDrawPtr label near
; ebx+24 hMou
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _MouDrawPtr@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__MouFlushQue label near
; ebx+24 hMou
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _MouFlushQue@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__MouGetDevStatus label near
; ebx+26 DevStatus
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 DevStatus
;-------------------------------------
; *** BEGIN parameter packing
; DevStatus
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L315 ; skip if null
SelToFlat
mov [esp+0],eax
L315:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; DevStatus from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouGetDevStatus@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetEventMask label near
; ebx+26 EventMask
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 EventMask
;-------------------------------------
; *** BEGIN parameter packing
; EventMask
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L316 ; skip if null
SelToFlat
mov [esp+0],eax
L316:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; EventMask from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouGetEventMask@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetNumButtons label near
; ebx+26 NumButtons
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 NumButtons
;-------------------------------------
; *** BEGIN parameter packing
; NumButtons
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L317 ; skip if null
SelToFlat
mov [esp+0],eax
L317:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; NumButtons from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouGetNumButtons@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetNumMickeys label near
; ebx+26 NumMickeys
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 NumMickeys
;-------------------------------------
; *** BEGIN parameter packing
; NumMickeys
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L318 ; skip if null
SelToFlat
mov [esp+0],eax
L318:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; NumMickeys from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouGetNumMickeys@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetNumQueEl label near
; ebx+26 NumQueEl
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 NumQueEl
;-------------------------------------
; *** BEGIN parameter packing
; NumQueEl
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L319 ; skip if null
SelToFlat
mov [esp+0],eax
L319:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; NumQueEl from: void
push dword ptr [esp+4] ; to: void
call _MouGetNumQueEl@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetPtrPos label near
; ebx+26 PtrPos
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 PtrPos
;-------------------------------------
; *** BEGIN parameter packing
; PtrPos
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L320 ; skip if null
SelToFlat
mov [esp+0],eax
L320:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; PtrPos from: void
push dword ptr [esp+4] ; to: void
call _MouGetPtrPos@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouGetPtrShape label near
; ebx+30 PtrMask
; ebx+26 PtrShape
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 PtrMask
push eax ; ptr param #2 PtrShape
;-------------------------------------
; *** BEGIN parameter packing
; PtrMask
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L321 ; skip if null
SelToFlat
mov [esp+4],eax
L321:
; PtrShape
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L322 ; skip if null
SelToFlat
mov [esp+0],eax
L322:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; PtrShape from: void
push dword ptr [esp+4] ; to: void
; PtrMask from: char
push dword ptr [esp+12] ; to: char
call _MouGetPtrShape@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__MouGetScaleFact label near
; ebx+26 ScaleFact
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ScaleFact
;-------------------------------------
; *** BEGIN parameter packing
; ScaleFact
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L323 ; skip if null
SelToFlat
mov [esp+0],eax
L323:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; ScaleFact from: void
push dword ptr [esp+4] ; to: void
call _MouGetScaleFact@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouOpen label near
; ebx+28 DriveName
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 DriveName
push eax ; ptr param #2 hMou
;-------------------------------------
; *** BEGIN parameter packing
; DriveName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L324 ; skip if null
SelToFlat
mov [esp+4],eax
L324:
; hMou
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L325 ; skip if null
SelToFlat
mov [esp+0],eax
L325:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; DriveName from: string
push dword ptr [esp+8] ; to: string
call _MouOpen@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__MouReadEventQue label near
; ebx+30 MouEvent
; ebx+26 Wait
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 MouEvent
push eax ; ptr param #2 Wait
;-------------------------------------
; *** BEGIN parameter packing
; MouEvent
; pointer void --> void
mov eax,[ebx+30] ; base address
or eax,eax
jz L326 ; skip if null
SelToFlat
mov [esp+4],eax
L326:
; Wait
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L327 ; skip if null
SelToFlat
mov [esp+0],eax
L327:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Wait from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; MouEvent from: void
push dword ptr [esp+12] ; to: void
call _MouReadEventQue@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__MouRegister label near
; ebx+32 pszModuleName
; ebx+28 pszEntryName
; ebx+24 fFunctions
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszModuleName
push eax ; ptr param #2 pszEntryName
;-------------------------------------
; *** BEGIN parameter packing
; pszModuleName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L328 ; skip if null
SelToFlat
mov [esp+4],eax
L328:
; pszEntryName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L329 ; skip if null
SelToFlat
mov [esp+0],eax
L329:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; fFunctions from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
; pszEntryName from: string
push dword ptr [esp+4] ; to: string
; pszModuleName from: string
push dword ptr [esp+12] ; to: string
call _MouRegister@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__MouRemovePtr label near
; ebx+26 Rect
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 Rect
;-------------------------------------
; *** BEGIN parameter packing
; Rect
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L330 ; skip if null
SelToFlat
mov [esp+0],eax
L330:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; Rect from: void
push dword ptr [esp+4] ; to: void
call _MouRemovePtr@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouSetDevStatus label near
; ebx+26 DevStatus
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 DevStatus
;-------------------------------------
; *** BEGIN parameter packing
; DevStatus
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L331 ; skip if null
SelToFlat
mov [esp+0],eax
L331:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; DevStatus from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouSetDevStatus@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouSetEventMask label near
; ebx+26 EventMask
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 EventMask
;-------------------------------------
; *** BEGIN parameter packing
; EventMask
; pointer unsigned short --> unsigned short
mov eax,[ebx+26] ; base address
or eax,eax
jz L332 ; skip if null
SelToFlat
mov [esp+0],eax
L332:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; EventMask from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
call _MouSetEventMask@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouSetPtrPos label near
; ebx+26 PtrPos
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 PtrPos
;-------------------------------------
; *** BEGIN parameter packing
; PtrPos
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L333 ; skip if null
SelToFlat
mov [esp+0],eax
L333:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; PtrPos from: void
push dword ptr [esp+4] ; to: void
call _MouSetPtrPos@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouSetPtrShape label near
; ebx+30 PtrMask
; ebx+26 PtrShape
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 PtrMask
push eax ; ptr param #2 PtrShape
;-------------------------------------
; *** BEGIN parameter packing
; PtrMask
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L334 ; skip if null
SelToFlat
mov [esp+4],eax
L334:
; PtrShape
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L335 ; skip if null
SelToFlat
mov [esp+0],eax
L335:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; PtrShape from: void
push dword ptr [esp+4] ; to: void
; PtrMask from: char
push dword ptr [esp+12] ; to: char
call _MouSetPtrShape@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__MouSetScaleFact label near
; ebx+26 ScaleFact
; ebx+24 hMou
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ScaleFact
;-------------------------------------
; *** BEGIN parameter packing
; ScaleFact
; pointer void --> void
mov eax,[ebx+26] ; base address
or eax,eax
jz L336 ; skip if null
SelToFlat
mov [esp+0],eax
L336:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; hMou from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; ScaleFact from: void
push dword ptr [esp+4] ; to: void
call _MouSetScaleFact@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_6
;===========================================================================
T__MouSynch label near
; ebx+24 fWait
;-------------------------------------
; create new call frame and make the call
; fWait from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _MouSynch@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosMonOpen label near
; ebx+28 pDevName
; ebx+24 phMon
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pDevName
push eax ; ptr param #2 phMon
;-------------------------------------
; *** BEGIN parameter packing
; pDevName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L337 ; skip if null
SelToFlat
mov [esp+4],eax
L337:
; phMon
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L338 ; skip if null
SelToFlat
mov [esp+0],eax
L338:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phMon from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pDevName from: string
push dword ptr [esp+8] ; to: string
call _DosMonOpen@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__DosMonClose label near
; ebx+24 hMon
;-------------------------------------
; create new call frame and make the call
; hMon from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _DosMonClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__DosMonRead label near
; ebx+34 pInBuffer
; ebx+32 fWait
; ebx+28 pDataBuf
; ebx+24 pcbDataSize
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pInBuffer
push eax ; ptr param #2 pDataBuf
push eax ; ptr param #3 pcbDataSize
;-------------------------------------
; *** BEGIN parameter packing
; pInBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L339 ; skip if null
SelToFlat
mov [esp+8],eax
L339:
; pDataBuf
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L340 ; skip if null
SelToFlat
mov [esp+4],eax
L340:
; pcbDataSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L341 ; skip if null
SelToFlat
mov [esp+0],eax
L341:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbDataSize from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pDataBuf from: char
push dword ptr [esp+8] ; to: char
; fWait from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pInBuffer from: char
push dword ptr [esp+20] ; to: char
call _DosMonRead@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosMonReg label near
; ebx+36 hMon
; ebx+32 pInBuffer
; ebx+28 pOutBuffer
; ebx+26 fPosition
; ebx+24 usIndex
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pInBuffer
push eax ; ptr param #2 pOutBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pInBuffer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L342 ; skip if null
SelToFlat
mov [esp+4],eax
L342:
; pOutBuffer
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L343 ; skip if null
SelToFlat
mov [esp+0],eax
L343:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; usIndex from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; fPosition from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; pOutBuffer from: char
push dword ptr [esp+8] ; to: char
; pInBuffer from: char
push dword ptr [esp+16] ; to: char
; hMon from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _DosMonReg@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__DosMonWrite label near
; ebx+30 pOutBuffer
; ebx+26 pDataBuf
; ebx+24 cbDataSize
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pOutBuffer
push eax ; ptr param #2 pDataBuf
;-------------------------------------
; *** BEGIN parameter packing
; pOutBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L344 ; skip if null
SelToFlat
mov [esp+4],eax
L344:
; pDataBuf
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L345 ; skip if null
SelToFlat
mov [esp+0],eax
L345:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbDataSize from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pDataBuf from: char
push dword ptr [esp+4] ; to: char
; pOutBuffer from: char
push dword ptr [esp+12] ; to: char
call _DosMonWrite@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Net16GetDCName label near
; ebx+34 pszServer
; ebx+30 pszDomain
; ebx+26 pbBuffer
; ebx+24 cbBuffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszDomain
push eax ; ptr param #3 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L346 ; skip if null
SelToFlat
mov [esp+8],eax
L346:
; pszDomain
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L347 ; skip if null
SelToFlat
mov [esp+4],eax
L347:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L348 ; skip if null
SelToFlat
mov [esp+0],eax
L348:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; pszDomain from: char
push dword ptr [esp+12] ; to: char
; pszServer from: char
push dword ptr [esp+20] ; to: char
call _Net16GetDCName@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__Net16HandleGetInfo label near
; ebx+36 hHandle
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuffer
push eax ; ptr param #2 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L349 ; skip if null
SelToFlat
mov [esp+4],eax
L349:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L350 ; skip if null
SelToFlat
mov [esp+0],eax
L350:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; hHandle from: unsigned short
movzx eax,word ptr [ebx+36]
push eax ; to: unsigned long
call _Net16HandleGetInfo@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__Net16ServerDiskEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L351 ; skip if null
SelToFlat
mov [esp+12],eax
L351:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L352 ; skip if null
SelToFlat
mov [esp+8],eax
L352:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L353 ; skip if null
SelToFlat
mov [esp+4],eax
L353:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L354 ; skip if null
SelToFlat
mov [esp+0],eax
L354:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16ServerDiskEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16ServerEnum2 label near
; ebx+48 pszServer
; ebx+46 sLevel
; ebx+42 pbBuffer
; ebx+40 cbBuffer
; ebx+36 pcEntriesRead
; ebx+32 pcTotalAvail
; ebx+28 flServerType
; ebx+24 pszDomain
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
push eax ; ptr param #5 pszDomain
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+48] ; base address
or eax,eax
jz L355 ; skip if null
SelToFlat
mov [esp+16],eax
L355:
; pbBuffer
; pointer char --> char
mov eax,[ebx+42] ; base address
or eax,eax
jz L356 ; skip if null
SelToFlat
mov [esp+12],eax
L356:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+36] ; base address
or eax,eax
jz L357 ; skip if null
SelToFlat
mov [esp+8],eax
L357:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L358 ; skip if null
SelToFlat
mov [esp+4],eax
L358:
; pszDomain
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L359 ; skip if null
SelToFlat
mov [esp+0],eax
L359:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszDomain from: char
push dword ptr [esp+0] ; to: char
; flServerType from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
; pcTotalAvail from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+32] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+46]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+44] ; to: char
call _Net16ServerEnum2@32 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_28
;===========================================================================
T__Net16ServerGetInfo label near
; ebx+36 pszServer
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L360 ; skip if null
SelToFlat
mov [esp+8],eax
L360:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L361 ; skip if null
SelToFlat
mov [esp+4],eax
L361:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L362 ; skip if null
SelToFlat
mov [esp+0],eax
L362:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+24] ; to: char
call _Net16ServerGetInfo@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__Net16ServiceControl label near
; ebx+38 pszServer
; ebx+34 pszService
; ebx+32 fbOpCode
; ebx+30 fbArg
; ebx+26 pbBuffer
; ebx+24 cbBuffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszService
push eax ; ptr param #3 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+38] ; base address
or eax,eax
jz L363 ; skip if null
SelToFlat
mov [esp+8],eax
L363:
; pszService
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L364 ; skip if null
SelToFlat
mov [esp+4],eax
L364:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L365 ; skip if null
SelToFlat
mov [esp+0],eax
L365:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; fbArg from: unsigned char
movzx eax,byte ptr [ebx+30]
push eax ; to: unsigned long
; fbOpCode from: unsigned char
movzx eax,byte ptr [ebx+32]
push eax ; to: unsigned long
; pszService from: char
push dword ptr [esp+20] ; to: char
; pszServer from: char
push dword ptr [esp+28] ; to: char
call _Net16ServiceControl@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__Net16ServiceEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L366 ; skip if null
SelToFlat
mov [esp+12],eax
L366:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L367 ; skip if null
SelToFlat
mov [esp+8],eax
L367:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L368 ; skip if null
SelToFlat
mov [esp+4],eax
L368:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L369 ; skip if null
SelToFlat
mov [esp+0],eax
L369:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16ServiceEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16ServiceGetInfo label near
; ebx+40 pszServer
; ebx+36 pszService
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszService
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L370 ; skip if null
SelToFlat
mov [esp+12],eax
L370:
; pszService
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L371 ; skip if null
SelToFlat
mov [esp+8],eax
L371:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L372 ; skip if null
SelToFlat
mov [esp+4],eax
L372:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L373 ; skip if null
SelToFlat
mov [esp+0],eax
L373:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszService from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16ServiceGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16ServiceInstall label near
; ebx+38 pszServer
; ebx+34 pszService
; ebx+30 pszCmdArgs
; ebx+26 pbBuffer
; ebx+24 cbBuffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszService
push eax ; ptr param #3 pszCmdArgs
push eax ; ptr param #4 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+38] ; base address
or eax,eax
jz L374 ; skip if null
SelToFlat
mov [esp+12],eax
L374:
; pszService
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L375 ; skip if null
SelToFlat
mov [esp+8],eax
L375:
; pszCmdArgs
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L376 ; skip if null
SelToFlat
mov [esp+4],eax
L376:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L377 ; skip if null
SelToFlat
mov [esp+0],eax
L377:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; pszCmdArgs from: char
push dword ptr [esp+12] ; to: char
; pszService from: char
push dword ptr [esp+20] ; to: char
; pszServer from: char
push dword ptr [esp+28] ; to: char
call _Net16ServiceInstall@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__Net16ShareEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L378 ; skip if null
SelToFlat
mov [esp+12],eax
L378:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L379 ; skip if null
SelToFlat
mov [esp+8],eax
L379:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L380 ; skip if null
SelToFlat
mov [esp+4],eax
L380:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L381 ; skip if null
SelToFlat
mov [esp+0],eax
L381:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16ShareEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16ShareGetInfo label near
; ebx+40 pszServer
; ebx+36 pszNetName
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszNetName
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L382 ; skip if null
SelToFlat
mov [esp+12],eax
L382:
; pszNetName
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L383 ; skip if null
SelToFlat
mov [esp+8],eax
L383:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L384 ; skip if null
SelToFlat
mov [esp+4],eax
L384:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L385 ; skip if null
SelToFlat
mov [esp+0],eax
L385:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszNetName from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16ShareGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16UseAdd label near
; ebx+32 pszServer
; ebx+30 sLevel
; ebx+26 pbBuffer
; ebx+24 cbBuffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L386 ; skip if null
SelToFlat
mov [esp+4],eax
L386:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L387 ; skip if null
SelToFlat
mov [esp+0],eax
L387:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+30]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+16] ; to: char
call _Net16UseAdd@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Net16UseDel label near
; ebx+30 pszServer
; ebx+26 pszUseName
; ebx+24 usForce
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszUseName
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L388 ; skip if null
SelToFlat
mov [esp+4],eax
L388:
; pszUseName
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L389 ; skip if null
SelToFlat
mov [esp+0],eax
L389:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; usForce from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pszUseName from: char
push dword ptr [esp+4] ; to: char
; pszServer from: char
push dword ptr [esp+12] ; to: char
call _Net16UseDel@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Net16UseEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L390 ; skip if null
SelToFlat
mov [esp+12],eax
L390:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L391 ; skip if null
SelToFlat
mov [esp+8],eax
L391:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L392 ; skip if null
SelToFlat
mov [esp+4],eax
L392:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L393 ; skip if null
SelToFlat
mov [esp+0],eax
L393:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16UseEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16UseGetInfo label near
; ebx+40 pszServer
; ebx+36 pszUseName
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszUseName
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L394 ; skip if null
SelToFlat
mov [esp+12],eax
L394:
; pszUseName
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L395 ; skip if null
SelToFlat
mov [esp+8],eax
L395:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L396 ; skip if null
SelToFlat
mov [esp+4],eax
L396:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L397 ; skip if null
SelToFlat
mov [esp+0],eax
L397:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszUseName from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16UseGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16UserEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L398 ; skip if null
SelToFlat
mov [esp+12],eax
L398:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L399 ; skip if null
SelToFlat
mov [esp+8],eax
L399:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L400 ; skip if null
SelToFlat
mov [esp+4],eax
L400:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L401 ; skip if null
SelToFlat
mov [esp+0],eax
L401:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16UserEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16WkstaGetInfo label near
; ebx+36 pszServer
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L402 ; skip if null
SelToFlat
mov [esp+8],eax
L402:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L403 ; skip if null
SelToFlat
mov [esp+4],eax
L403:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L404 ; skip if null
SelToFlat
mov [esp+0],eax
L404:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+24] ; to: char
call _Net16WkstaGetInfo@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__Net16AccessAdd label near
; ebx+32 pszServer
; ebx+30 sLevel
; ebx+26 pbBuffer
; ebx+24 cbBUffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L405 ; skip if null
SelToFlat
mov [esp+4],eax
L405:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L406 ; skip if null
SelToFlat
mov [esp+0],eax
L406:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBUffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+30]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+16] ; to: char
call _Net16AccessAdd@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Net16AccessSetInfo label near
; ebx+38 pszServer
; ebx+34 pszResource
; ebx+32 sLevel
; ebx+28 pbBuffer
; ebx+26 cbBuffer
; ebx+24 sParmNum
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszResource
push eax ; ptr param #3 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+38] ; base address
or eax,eax
jz L407 ; skip if null
SelToFlat
mov [esp+8],eax
L407:
; pszResource
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L408 ; skip if null
SelToFlat
mov [esp+4],eax
L408:
; pbBuffer
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L409 ; skip if null
SelToFlat
mov [esp+0],eax
L409:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; sParmNum from: short
movsx eax,word ptr [ebx+24]
push eax ; to: long
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+8] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+32]
push eax ; to: long
; pszResource from: char
push dword ptr [esp+20] ; to: char
; pszServer from: char
push dword ptr [esp+28] ; to: char
call _Net16AccessSetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__Net16AccessGetInfo label near
; ebx+40 pszServer
; ebx+36 pszResource
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszResource
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L410 ; skip if null
SelToFlat
mov [esp+12],eax
L410:
; pszResource
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L411 ; skip if null
SelToFlat
mov [esp+8],eax
L411:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L412 ; skip if null
SelToFlat
mov [esp+4],eax
L412:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L413 ; skip if null
SelToFlat
mov [esp+0],eax
L413:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszResource from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16AccessGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16AccessDel label near
; ebx+28 pszServer
; ebx+24 pszResource
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszResource
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L414 ; skip if null
SelToFlat
mov [esp+4],eax
L414:
; pszResource
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L415 ; skip if null
SelToFlat
mov [esp+0],eax
L415:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pszResource from: char
push dword ptr [esp+0] ; to: char
; pszServer from: char
push dword ptr [esp+8] ; to: char
call _Net16AccessDel@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Net16ShareAdd label near
; ebx+32 pszServer
; ebx+30 sLevel
; ebx+26 pbBuffer
; ebx+24 cbBUffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L416 ; skip if null
SelToFlat
mov [esp+4],eax
L416:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L417 ; skip if null
SelToFlat
mov [esp+0],eax
L417:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBUffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+30]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+16] ; to: char
call _Net16ShareAdd@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Net16ShareDel label near
; ebx+30 pszServer
; ebx+26 pszNetName
; ebx+24 usReserved
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszNetName
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L418 ; skip if null
SelToFlat
mov [esp+4],eax
L418:
; pszNetName
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L419 ; skip if null
SelToFlat
mov [esp+0],eax
L419:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; usReserved from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pszNetName from: char
push dword ptr [esp+4] ; to: char
; pszServer from: char
push dword ptr [esp+12] ; to: char
call _Net16ShareDel@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_10
;===========================================================================
T__Net16UserGetInfo label near
; ebx+40 pszServer
; ebx+36 pszUserName
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBUffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszUserName
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L420 ; skip if null
SelToFlat
mov [esp+12],eax
L420:
; pszUserName
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L421 ; skip if null
SelToFlat
mov [esp+8],eax
L421:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L422 ; skip if null
SelToFlat
mov [esp+4],eax
L422:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L423 ; skip if null
SelToFlat
mov [esp+0],eax
L423:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBUffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszUserName from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16UserGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16MessageBufferSend label near
; ebx+34 pszServer
; ebx+30 pszRecipient
; ebx+26 pbBuffer
; ebx+24 cbBuffer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszRecipient
push eax ; ptr param #3 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer string --> string
mov eax,[ebx+34] ; base address
or eax,eax
jz L424 ; skip if null
SelToFlat
mov [esp+8],eax
L424:
; pszRecipient
; pointer string --> string
mov eax,[ebx+30] ; base address
or eax,eax
jz L425 ; skip if null
SelToFlat
mov [esp+4],eax
L425:
; pbBuffer
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L426 ; skip if null
SelToFlat
mov [esp+0],eax
L426:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+4] ; to: char
; pszRecipient from: string
push dword ptr [esp+12] ; to: string
; pszServer from: string
push dword ptr [esp+20] ; to: string
call _Net16MessageBufferSend@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__Net16bios label near
; ebx+24 pNCB
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pNCB
;-------------------------------------
; *** BEGIN parameter packing
; pNCB
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L427 ; skip if null
SelToFlat
mov [esp+0],eax
L427:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pNCB from: void
push dword ptr [esp+0] ; to: void
call _Net16bios@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Net16BiosClose label near
; ebx+26 hDevName
; ebx+24 usReserved
;-------------------------------------
; create new call frame and make the call
; hDevName from: unsigned short
movzx eax,word ptr [ebx+26]
push eax ; to: unsigned long
call _Net16BiosClose@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__Net16BiosEnum label near
; ebx+40 pszServer
; ebx+38 sLevel
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+28 pcEntriesRead
; ebx+24 pcTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pbBuffer
push eax ; ptr param #3 pcEntriesRead
push eax ; ptr param #4 pcTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L428 ; skip if null
SelToFlat
mov [esp+12],eax
L428:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L429 ; skip if null
SelToFlat
mov [esp+8],eax
L429:
; pcEntriesRead
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L430 ; skip if null
SelToFlat
mov [esp+4],eax
L430:
; pcTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L431 ; skip if null
SelToFlat
mov [esp+0],eax
L431:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcEntriesRead from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+20] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+38]
push eax ; to: long
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16BiosEnum@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16BiosGetInfo label near
; ebx+40 pszServer
; ebx+36 pszNetBiosName
; ebx+34 sLevel
; ebx+30 pbBuffer
; ebx+28 cbBuffer
; ebx+24 pcbTotalAvail
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszNetBiosName
push eax ; ptr param #3 pbBuffer
push eax ; ptr param #4 pcbTotalAvail
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L432 ; skip if null
SelToFlat
mov [esp+12],eax
L432:
; pszNetBiosName
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L433 ; skip if null
SelToFlat
mov [esp+8],eax
L433:
; pbBuffer
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L434 ; skip if null
SelToFlat
mov [esp+4],eax
L434:
; pcbTotalAvail
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L435 ; skip if null
SelToFlat
mov [esp+0],eax
L435:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcbTotalAvail from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+12] ; to: char
; sLevel from: short
movsx eax,word ptr [ebx+34]
push eax ; to: long
; pszNetBiosName from: char
push dword ptr [esp+24] ; to: char
; pszServer from: char
push dword ptr [esp+32] ; to: char
call _Net16BiosGetInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__Net16BiosOpen label near
; ebx+34 pszServer
; ebx+30 pszReserved
; ebx+28 usOpenOpt
; ebx+24 phDevName
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszServer
push eax ; ptr param #2 pszReserved
push eax ; ptr param #3 phDevName
;-------------------------------------
; *** BEGIN parameter packing
; pszServer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L436 ; skip if null
SelToFlat
mov [esp+8],eax
L436:
; pszReserved
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L437 ; skip if null
SelToFlat
mov [esp+4],eax
L437:
; phDevName
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L438 ; skip if null
SelToFlat
mov [esp+0],eax
L438:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phDevName from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; usOpenOpt from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; pszReserved from: char
push dword ptr [esp+12] ; to: char
; pszServer from: char
push dword ptr [esp+20] ; to: char
call _Net16BiosOpen@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_14
;===========================================================================
T__Net16BiosSubmit label near
; ebx+30 hDevName
; ebx+28 usNcbOpt
; ebx+24 pNCB
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pNCB
;-------------------------------------
; *** BEGIN parameter packing
; pNCB
; pointer void --> void
mov eax,[ebx+24] ; base address
or eax,eax
jz L439 ; skip if null
SelToFlat
mov [esp+0],eax
L439:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pNCB from: void
push dword ptr [esp+0] ; to: void
; usNcbOpt from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; hDevName from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
call _Net16BiosSubmit@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos16MakeMailslot label near
; ebx+32 pszName
; ebx+30 cbMessageSize
; ebx+28 cbMailslotSize
; ebx+24 phMailslot
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszName
push eax ; ptr param #2 phMailslot
;-------------------------------------
; *** BEGIN parameter packing
; pszName
; pointer string --> string
mov eax,[ebx+32] ; base address
or eax,eax
jz L440 ; skip if null
SelToFlat
mov [esp+4],eax
L440:
; phMailslot
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L441 ; skip if null
SelToFlat
mov [esp+0],eax
L441:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; phMailslot from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; cbMailslotSize from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; cbMessageSize from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; pszName from: string
push dword ptr [esp+16] ; to: string
call _Dos16MakeMailslot@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos16DeleteMailslot label near
; ebx+24 hMailslot
;-------------------------------------
; create new call frame and make the call
; hMailslot from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
call _Dos16DeleteMailslot@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_2
;===========================================================================
T__Dos16MailslotInfo label near
; ebx+44 hMailslot
; ebx+40 pcbMessageSize
; ebx+36 pcbMailslotSize
; ebx+32 pcbNextSize
; ebx+28 pusNextPriority
; ebx+24 pcMessages
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pcbMessageSize
push eax ; ptr param #2 pcbMailslotSize
push eax ; ptr param #3 pcbNextSize
push eax ; ptr param #4 pusNextPriority
push eax ; ptr param #5 pcMessages
;-------------------------------------
; *** BEGIN parameter packing
; pcbMessageSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+40] ; base address
or eax,eax
jz L442 ; skip if null
SelToFlat
mov [esp+16],eax
L442:
; pcbMailslotSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+36] ; base address
or eax,eax
jz L443 ; skip if null
SelToFlat
mov [esp+12],eax
L443:
; pcbNextSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L444 ; skip if null
SelToFlat
mov [esp+8],eax
L444:
; pusNextPriority
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L445 ; skip if null
SelToFlat
mov [esp+4],eax
L445:
; pcMessages
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L446 ; skip if null
SelToFlat
mov [esp+0],eax
L446:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pcMessages from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pusNextPriority from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pcbNextSize from: unsigned short
push dword ptr [esp+16] ; to: unsigned short
; pcbMailslotSize from: unsigned short
push dword ptr [esp+24] ; to: unsigned short
; pcbMessageSize from: unsigned short
push dword ptr [esp+32] ; to: unsigned short
; hMailslot from: unsigned short
movzx eax,word ptr [ebx+44]
push eax ; to: unsigned long
call _Dos16MailslotInfo@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_22
;===========================================================================
T__Dos16PeekMailslot label near
; ebx+40 hMailslot
; ebx+36 pbBuffer
; ebx+32 pcbReturned
; ebx+28 pcbNextSize
; ebx+24 pusNextPriority
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuffer
push eax ; ptr param #2 pcbReturned
push eax ; ptr param #3 pcbNextSize
push eax ; ptr param #4 pusNextPriority
;-------------------------------------
; *** BEGIN parameter packing
; pbBuffer
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L447 ; skip if null
SelToFlat
mov [esp+12],eax
L447:
; pcbReturned
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L448 ; skip if null
SelToFlat
mov [esp+8],eax
L448:
; pcbNextSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L449 ; skip if null
SelToFlat
mov [esp+4],eax
L449:
; pusNextPriority
; pointer unsigned short --> unsigned short
mov eax,[ebx+24] ; base address
or eax,eax
jz L450 ; skip if null
SelToFlat
mov [esp+0],eax
L450:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pusNextPriority from: unsigned short
push dword ptr [esp+0] ; to: unsigned short
; pcbNextSize from: unsigned short
push dword ptr [esp+8] ; to: unsigned short
; pcbReturned from: unsigned short
push dword ptr [esp+16] ; to: unsigned short
; pbBuffer from: char
push dword ptr [esp+24] ; to: char
; hMailslot from: unsigned short
movzx eax,word ptr [ebx+40]
push eax ; to: unsigned long
call _Dos16PeekMailslot@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__Dos16ReadMailslot label near
; ebx+44 hMailslot
; ebx+40 pbBuffer
; ebx+36 pcbReturned
; ebx+32 pcbNextSize
; ebx+28 pusNextPriority
; ebx+24 cTimeout
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pbBuffer
push eax ; ptr param #2 pcbReturned
push eax ; ptr param #3 pcbNextSize
push eax ; ptr param #4 pusNextPriority
;-------------------------------------
; *** BEGIN parameter packing
; pbBuffer
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L451 ; skip if null
SelToFlat
mov [esp+12],eax
L451:
; pcbReturned
; pointer unsigned short --> unsigned short
mov eax,[ebx+36] ; base address
or eax,eax
jz L452 ; skip if null
SelToFlat
mov [esp+8],eax
L452:
; pcbNextSize
; pointer unsigned short --> unsigned short
mov eax,[ebx+32] ; base address
or eax,eax
jz L453 ; skip if null
SelToFlat
mov [esp+4],eax
L453:
; pusNextPriority
; pointer unsigned short --> unsigned short
mov eax,[ebx+28] ; base address
or eax,eax
jz L454 ; skip if null
SelToFlat
mov [esp+0],eax
L454:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cTimeout from: long
push dword ptr [ebx+24] ; to long
; pusNextPriority from: unsigned short
push dword ptr [esp+4] ; to: unsigned short
; pcbNextSize from: unsigned short
push dword ptr [esp+12] ; to: unsigned short
; pcbReturned from: unsigned short
push dword ptr [esp+20] ; to: unsigned short
; pbBuffer from: char
push dword ptr [esp+28] ; to: char
; hMailslot from: unsigned short
movzx eax,word ptr [ebx+44]
push eax ; to: unsigned long
call _Dos16ReadMailslot@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_22
;===========================================================================
T__Dos16WriteMailslot label near
; ebx+38 pszName
; ebx+34 pbBuffer
; ebx+32 cbBuffer
; ebx+30 usPriority
; ebx+28 usClass
; ebx+24 cTimeout
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszName
push eax ; ptr param #2 pbBuffer
;-------------------------------------
; *** BEGIN parameter packing
; pszName
; pointer string --> string
mov eax,[ebx+38] ; base address
or eax,eax
jz L455 ; skip if null
SelToFlat
mov [esp+4],eax
L455:
; pbBuffer
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L456 ; skip if null
SelToFlat
mov [esp+0],eax
L456:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; cTimeout from: long
push dword ptr [ebx+24] ; to long
; usClass from: unsigned short
movzx eax,word ptr [ebx+28]
push eax ; to: unsigned long
; usPriority from: unsigned short
movzx eax,word ptr [ebx+30]
push eax ; to: unsigned long
; cbBuffer from: unsigned short
movzx eax,word ptr [ebx+32]
push eax ; to: unsigned long
; pbBuffer from: char
push dword ptr [esp+16] ; to: char
; pszName from: string
push dword ptr [esp+24] ; to: string
call _Dos16WriteMailslot@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_18
;===========================================================================
T__DosIRemoteApi label near
; ebx+42 ApiNumber
; ebx+38 ServerNamePointer
; ebx+34 ParameterDescriptor
; ebx+30 DataDescriptor
; ebx+26 AuxDescriptor
; ebx+24 NullSessionFlag
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ServerNamePointer
push eax ; ptr param #2 ParameterDescriptor
push eax ; ptr param #3 DataDescriptor
push eax ; ptr param #4 AuxDescriptor
;-------------------------------------
; *** BEGIN parameter packing
; ServerNamePointer
; pointer char --> char
mov eax,[ebx+38] ; base address
or eax,eax
jz L457 ; skip if null
SelToFlat
mov [esp+12],eax
L457:
; ParameterDescriptor
; pointer char --> char
mov eax,[ebx+34] ; base address
or eax,eax
jz L458 ; skip if null
SelToFlat
mov [esp+8],eax
L458:
; DataDescriptor
; pointer char --> char
mov eax,[ebx+30] ; base address
or eax,eax
jz L459 ; skip if null
SelToFlat
mov [esp+4],eax
L459:
; AuxDescriptor
; pointer char --> char
mov eax,[ebx+26] ; base address
or eax,eax
jz L460 ; skip if null
SelToFlat
mov [esp+0],eax
L460:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; NullSessionFlag from: unsigned short
movzx eax,word ptr [ebx+24]
push eax ; to: unsigned long
; AuxDescriptor from: char
push dword ptr [esp+4] ; to: char
; DataDescriptor from: char
push dword ptr [esp+12] ; to: char
; ParameterDescriptor from: char
push dword ptr [esp+20] ; to: char
; ServerNamePointer from: char
push dword ptr [esp+28] ; to: char
; ApiNumber from: unsigned short
movzx eax,word ptr [ebx+42]
push eax ; to: unsigned long
call _DosIRemoteApi@24 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__NetIWkstaGetUserInfo label near
; ebx+40 UserName
; ebx+36 logonServer
; ebx+32 LogonDomain
; ebx+28 OtherDomains
; ebx+24 WsName
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 UserName
push eax ; ptr param #2 logonServer
push eax ; ptr param #3 LogonDomain
push eax ; ptr param #4 OtherDomains
push eax ; ptr param #5 WsName
;-------------------------------------
; *** BEGIN parameter packing
; UserName
; pointer char --> char
mov eax,[ebx+40] ; base address
or eax,eax
jz L461 ; skip if null
SelToFlat
mov [esp+16],eax
L461:
; logonServer
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L462 ; skip if null
SelToFlat
mov [esp+12],eax
L462:
; LogonDomain
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L463 ; skip if null
SelToFlat
mov [esp+8],eax
L463:
; OtherDomains
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L464 ; skip if null
SelToFlat
mov [esp+4],eax
L464:
; WsName
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L465 ; skip if null
SelToFlat
mov [esp+0],eax
L465:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; WsName from: char
push dword ptr [esp+0] ; to: char
; OtherDomains from: char
push dword ptr [esp+8] ; to: char
; LogonDomain from: char
push dword ptr [esp+16] ; to: char
; logonServer from: char
push dword ptr [esp+24] ; to: char
; UserName from: char
push dword ptr [esp+32] ; to: char
call _NetIWkstaGetUserInfo@20 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_20
;===========================================================================
T__NetIUserPasswordSet label near
; ebx+36 ServerNamePointer
; ebx+32 UserNamePointer
; ebx+28 OldPasswordPointer
; ebx+24 NewPasswordPointer
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ServerNamePointer
push eax ; ptr param #2 UserNamePointer
push eax ; ptr param #3 OldPasswordPointer
push eax ; ptr param #4 NewPasswordPointer
;-------------------------------------
; *** BEGIN parameter packing
; ServerNamePointer
; pointer char --> char
mov eax,[ebx+36] ; base address
or eax,eax
jz L466 ; skip if null
SelToFlat
mov [esp+12],eax
L466:
; UserNamePointer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L467 ; skip if null
SelToFlat
mov [esp+8],eax
L467:
; OldPasswordPointer
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L468 ; skip if null
SelToFlat
mov [esp+4],eax
L468:
; NewPasswordPointer
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L469 ; skip if null
SelToFlat
mov [esp+0],eax
L469:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; NewPasswordPointer from: char
push dword ptr [esp+0] ; to: char
; OldPasswordPointer from: char
push dword ptr [esp+8] ; to: char
; UserNamePointer from: char
push dword ptr [esp+16] ; to: char
; ServerNamePointer from: char
push dword ptr [esp+24] ; to: char
call _NetIUserPasswordSet@16 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_16
;===========================================================================
T__DosIEncryptSES label near
; ebx+32 ServerNamePointer
; ebx+28 passwordPointer
; ebx+24 encryptedLmOwfPassword
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 ServerNamePointer
push eax ; ptr param #2 passwordPointer
push eax ; ptr param #3 encryptedLmOwfPassword
;-------------------------------------
; *** BEGIN parameter packing
; ServerNamePointer
; pointer char --> char
mov eax,[ebx+32] ; base address
or eax,eax
jz L470 ; skip if null
SelToFlat
mov [esp+8],eax
L470:
; passwordPointer
; pointer char --> char
mov eax,[ebx+28] ; base address
or eax,eax
jz L471 ; skip if null
SelToFlat
mov [esp+4],eax
L471:
; encryptedLmOwfPassword
; pointer char --> char
mov eax,[ebx+24] ; base address
or eax,eax
jz L472 ; skip if null
SelToFlat
mov [esp+0],eax
L472:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; encryptedLmOwfPassword from: char
push dword ptr [esp+0] ; to: char
; passwordPointer from: char
push dword ptr [esp+8] ; to: char
; ServerNamePointer from: char
push dword ptr [esp+16] ; to: char
call _DosIEncryptSES@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos32LoadModule label near
; ebx+28 DllName
; ebx+24 pDllHandle
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 DllName
push eax ; ptr param #2 pDllHandle
;-------------------------------------
; *** BEGIN parameter packing
; DllName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L473 ; skip if null
SelToFlat
mov [esp+4],eax
L473:
; pDllHandle
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L474 ; skip if null
SelToFlat
mov [esp+0],eax
L474:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pDllHandle from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; DllName from: string
push dword ptr [esp+8] ; to: string
call _Dos32LoadModule@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__Dos32GetProcAddr label near
; ebx+32 Handle
; ebx+28 pszProcName
; ebx+24 pWin32Thunk
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pszProcName
push eax ; ptr param #2 pWin32Thunk
;-------------------------------------
; *** BEGIN parameter packing
; pszProcName
; pointer string --> string
mov eax,[ebx+28] ; base address
or eax,eax
jz L475 ; skip if null
SelToFlat
mov [esp+4],eax
L475:
; pWin32Thunk
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L476 ; skip if null
SelToFlat
mov [esp+0],eax
L476:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pWin32Thunk from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; pszProcName from: string
push dword ptr [esp+8] ; to: string
; Handle from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
call _Dos32GetProcAddr@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos32Dispatch label near
; ebx+32 Win32Thunk
; ebx+28 pArguments
; ebx+24 pRetCode
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pArguments
push eax ; ptr param #2 pRetCode
;-------------------------------------
; *** BEGIN parameter packing
; pArguments
; pointer void --> void
mov eax,[ebx+28] ; base address
or eax,eax
jz L477 ; skip if null
SelToFlat
mov [esp+4],eax
L477:
; pRetCode
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L478 ; skip if null
SelToFlat
mov [esp+0],eax
L478:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pRetCode from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; pArguments from: void
push dword ptr [esp+8] ; to: void
; Win32Thunk from: unsigned long
push dword ptr [ebx+32] ; to unsigned long
call _Dos32Dispatch@12 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_12
;===========================================================================
T__Dos32FreeModule label near
; ebx+24 DllHandle
;-------------------------------------
; create new call frame and make the call
; DllHandle from: unsigned long
push dword ptr [ebx+24] ; to unsigned long
call _Dos32FreeModule@4 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_4
;===========================================================================
T__FarPtr2FlatPtr label near
; ebx+28 FarPtr
; ebx+24 pFlarPtr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pFlarPtr
;-------------------------------------
; *** BEGIN parameter packing
; pFlarPtr
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L479 ; skip if null
SelToFlat
mov [esp+0],eax
L479:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pFlarPtr from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; FarPtr from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
call _FarPtr2FlatPtr@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
;===========================================================================
T__FlatPtr2FarPtr label near
; ebx+28 FlatPtr
; ebx+24 pFarPtr
;-------------------------------------
; temp storage
xor eax,eax
push eax ; ptr param #1 pFarPtr
;-------------------------------------
; *** BEGIN parameter packing
; pFarPtr
; pointer unsigned long --> unsigned long
mov eax,[ebx+24] ; base address
or eax,eax
jz L480 ; skip if null
SelToFlat
mov [esp+0],eax
L480:
; *** END parameter packing
;-------------------------------------
; create new call frame and make the call
; pFarPtr from: unsigned long
push dword ptr [esp+0] ; to: unsigned long
; FlatPtr from: unsigned long
push dword ptr [ebx+28] ; to unsigned long
call _FlatPtr2FarPtr@8 ; call 32-bit version
; return code unsigned long --> unsigned short
; no conversion needed
;-------------------------------------
jmp ExitFlat_8
_TEXT ends
ENDIF
end