373 lines
16 KiB
HTML
373 lines
16 KiB
HTML
<HTML>
|
|
<HEAD>
|
|
<TITLE>Int 2F/AX=1684h/BX=0017h
|
|
</TITLE>
|
|
<META NAME="Description" CONTENT="
|
|
Int 2F/AX=1684h/BX=0017h - MS Windows - SHELL - GET API ENTRY POINT -
|
|
AX = 1684h
|
|
BX = 0017h (virtual device ID for SHELL device) (see #02642)
|
|
ES:DI = 0000h:0000h
|
|
Return: ES:DI - VxD API entry point (see #02657)
|
|
0000h:0000h if the VxD does not support an API
|
|
SeeAlso: AX=1684h/BX=0021h,#01283 at INT 20Windows
|
|
(Table 02657)
|
|
Call SHELL entry point with:
|
|
EDX = function number (0000h-0027h,0100h-0108h, mostly unknown)
|
|
">
|
|
<META NAME="robots" CONTENT="none">
|
|
</HEAD>
|
|
<BODY BGCOLOR="#FFD0A0">
|
|
<center>
|
|
<h2>Int 2F/AX=1684h/BX=0017h
|
|
</h2>
|
|
</center><p>
|
|
<table border=1 cellpadding=3 cellspacing=1>
|
|
<td>
|
|
<a href="rb-4547.htm" tppabs="http://www.ctyme.com/intr/rb-4547.htm">
|
|
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
|
<a href="rb-4549.htm" tppabs="http://www.ctyme.com/intr/rb-4549.htm">
|
|
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
|
|
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
|
|
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
|
|
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
|
|
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
|
|
</td></table><p>
|
|
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
<h3><font color=#C00040>MS Windows - SHELL - GET API ENTRY POINT</font></h3>
|
|
<PRE>
|
|
AX = 1684h
|
|
BX = 0017h (virtual device ID for SHELL device) <a href="rb-4534.htm#Table2642" tppabs="http://www.ctyme.com/intr/rb-4534.htm#Table2642">(see #02642)</a>
|
|
ES:DI = 0000h:0000h<br>
|
|
<p><b>Return:</b><br>ES:DI -> VxD API entry point (see #02657)
|
|
0000h:0000h if the VxD does not support an API
|
|
</PRE>
|
|
<p><b>See Also:</b>
|
|
<a href="rb-4551.htm" tppabs="http://www.ctyme.com/intr/rb-4551.htm">AX=1684h/BX=0021h</a> - <a href="rb-4416.htm" tppabs="http://www.ctyme.com/intr/rb-4416.htm">#01283 at INT 20"Windows"</a>
|
|
<PRE>
|
|
<p>
|
|
<a name=table2657></a>
|
|
(Table 02657)
|
|
Call SHELL entry point with:.
|
|
EDX = function number (0000h-0027h,0100h-0108h, mostly unknown)
|
|
0000h get version number
|
|
<p><b>Return:</b><br>AX = version number
|
|
EBX = system VM handle
|
|
0001h "SHELL_Get_SYSVM_Info" get system VM information
|
|
<p><b>Return:</b><br>CF clear
|
|
AX bit 0 set if system VM executing exclusively
|
|
BX = background time slice priority
|
|
CX = foreground time slice priority
|
|
SI = minimum time slice in milliseconds
|
|
0002h "SHELL_Set_SYSVM_Info" set system VM information
|
|
AX bit 0 set if system VM should execute exclusively (ignored?)
|
|
BX = background time slice priority (1-10000)
|
|
CX = foreground time slice priority (1-10000)
|
|
SI = minimum time slice in milliseconds (1-10000)
|
|
<p><b>Return:</b><br>CF clear if successful
|
|
0003h "SHELL_Crt_VM" create a virtual machine
|
|
ES:EDI -> SEB structure <a href="rb-4548.htm#Table2658" tppabs="http://www.ctyme.com/intr/rb-4548.htm#Table2658">(see #02658)</a>
|
|
<p><b>Return:</b><br>CF clear if successful
|
|
EAX = VM handle
|
|
CF set on error
|
|
EDX,EAX = result from GetSetDetailedVMError()
|
|
0004h "SHELL_Destroy_VM" destroy a virtual machine
|
|
EBX = VM handle (not system VM)
|
|
<p><b>Return:</b><br>Nothing
|
|
0005h "SHELL_Set_Focus"
|
|
EBX = VM handle
|
|
ECX = ???
|
|
<p><b>Return:</b><br>Nothing
|
|
0006h "SHELL_Get_VM_State"
|
|
EBX = VM handle (not system VM)
|
|
ES:EDI -> ??? structure
|
|
<p><b>Return:</b><br>CF clear if successful
|
|
0007h "SHELL_Set_VM_State"
|
|
EBX = VM handle (not system VM)
|
|
ES:EDI -> ??? structure
|
|
0008h "SHELL_Debug_Out"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
Dummy function in retail version of MS Windows
|
|
0009h "SHELL_VMDA_Init"
|
|
???
|
|
<PRE>
|
|
<p><b>Return:</b><br>???
|
|
000Ah "SHELL_VMDA_Exit"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
000Bh "SHELL_Get_Message_Txt"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
000Ch "SHELL_Event_Complete"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
000Dh "SHELL_Get_Contention_Info"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
000Eh "SHELL_Get_Clip_Info"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
000Fh "SHELL_Set_Paste"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0010h "SHELL_Switcher_Assist"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0011h "SHELL_Get_FileSysChng"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0012h "SHELL_Query_Destroy"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0013h "SHELL_SetFocus_Cur_VM" set input focus to current VM
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0014h "SHELL_User_Busy_API"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0015h "SHELL_Chng_Hot_Key"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
0016h "SHELL_Get_TermInfo"
|
|
???
|
|
<p><b>Return:</b><br>???
|
|
---Windows95---
|
|
0017h ???
|
|
0018h ???
|
|
0019h ???
|
|
001Ah ???
|
|
001Bh ???
|
|
001Ch ???
|
|
001Dh ???
|
|
001Eh ???
|
|
001Fh ???
|
|
0020h ???
|
|
0021h ???
|
|
0022h ???
|
|
0023h ???
|
|
0024h ???
|
|
0025h ???
|
|
0026h ???
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
Makes VxDCALL 00178002h (see INT 20"Windows")
|
|
0027h ???
|
|
0100h get ??? version
|
|
<PRE>
|
|
<p><b>Return:</b><br>AX = version??? (0400h for Windows95)
|
|
0101h not implemented
|
|
<p><b>Return:</b><br>CF set
|
|
EAX = FFFFFFFFh
|
|
0102h not implemented
|
|
<p><b>Return:</b><br>CF set
|
|
EAX = FFFFFFFFh
|
|
0103h not implemented
|
|
<p><b>Return:</b><br>CF set
|
|
EAX = FFFFFFFFh
|
|
0104h ???
|
|
0105h ???
|
|
0106h ???
|
|
???
|
|
<p><b>Return:</b><br>CF clear if successful
|
|
CF set on error
|
|
0107h get SDK version for VxD
|
|
AX = VxD identifier
|
|
<p><b>Return:</b><br>EAX = VxD ID (high word) and SDK version (low)
|
|
00000000h if no such VxD loaded
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
Makes a VMMCALL 0001013Fh (see INT 20"Windows")
|
|
followed by ???
|
|
0108h ???<br>
|
|
<PRE>
|
|
<p><b>Return:</b><br>CF set if called from VM other than system VM
|
|
EAX = FFFFFFFFh
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
Except for functions 0013h,0026h,and 010xh, this API may only be
|
|
called from the system VM
|
|
<p><b>See Also:</b>
|
|
<a href="rb-4416.htm" tppabs="http://www.ctyme.com/intr/rb-4416.htm">#01283 at INT 20"Windows"</a>
|
|
<PRE>
|
|
<p>
|
|
Format of Shell Execution Block (SEB):
|
|
<a name=table2658></a>
|
|
Offset Size Description (Table 02658)
|
|
00h DWORD PIF flags <a href="rb-4548.htm#Table2659" tppabs="http://www.ctyme.com/intr/rb-4548.htm#Table2659">(see #02659)</a>
|
|
04h DWORD display flags <a href="rb-4548.htm#Table2660" tppabs="http://www.ctyme.com/intr/rb-4548.htm#Table2660">(see #02660)</a>
|
|
08h PWORD -> pathname of .EXE to run
|
|
0Eh PWORD -> argument list
|
|
14h PWORD -> working drive/directory
|
|
1Ah WORD desired number of V86 pages for virtual machine
|
|
1Ch WORD minimum number of V86 pages for VM
|
|
1Eh WORD foreground priority
|
|
20h WORD background priority
|
|
22h WORD maximum KB of EMS
|
|
24h WORD minimum KB of EMS
|
|
26h WORD maximum KB of XMS
|
|
28h WORD minimum KB of XMS
|
|
2Ah WORD maximum KB of DPMI???
|
|
2Ch WORD minimum KB of DPMI???
|
|
2Eh 128 BYTEs title
|
|
</PRE>
|
|
<p><b>Note:</b>
|
|
The PWORDs at offsets 08h,0Eh, and 14h consist of a DWORD offset
|
|
followed by a WORD selector
|
|
<PRE>
|
|
<p>
|
|
Bitfields for 386 Enhanced Mode PIF flags:
|
|
<a name=table2659></a>
|
|
Bit(s) Description (Table 02659)
|
|
0 exclusive use of processor when VM is fullscreen
|
|
1 VM runs in background
|
|
2 VM runs in window
|
|
3-4 ???
|
|
5 Alt-Tab reserved
|
|
6 Alt-Esc reserved
|
|
7 Alt-Space reserved
|
|
8 Alt-Enter reserved
|
|
9 Alt-PrtSc reserved
|
|
10 PrtSc reserved
|
|
11 Ctrl-Esc reserved
|
|
12 VM will release idle time slice
|
|
13 VM not allowed to use high memory
|
|
14 ???
|
|
15 VM expanded memory not pageable
|
|
16 VM extended memory not pageable
|
|
17 Fast paste from clipboard enabled
|
|
18 VM application memory not pageable
|
|
30 Close VM when application exits
|
|
</PRE>
|
|
<p><b>See Also:</b>
|
|
#02658 - #02660
|
|
<PRE>
|
|
<p>
|
|
Bitfields for SHELL display options:
|
|
<a name=table2660></a>
|
|
Bit(s) Description (Table 02660)
|
|
0 emulate text mode
|
|
1 monitor text port
|
|
2 monitor low graphics port
|
|
3 monitor high graphics port
|
|
7 Retain video memory
|
|
</PRE>
|
|
<p><b>See Also:</b>
|
|
#02658 - #02659
|
|
<p>
|
|
<b>Category: <a href="cat-049.htm" tppabs="http://www.ctyme.com/intr/cat-049.htm">
|
|
Windows</a>
|
|
- <a href="int-2f-1.htm" tppabs="http://www.ctyme.com/intr/int-2F.htm">
|
|
Int 2Fh</a>
|
|
- <a href="alpha-m.htm" tppabs="http://www.ctyme.com/intr/alpha-m.htm">
|
|
M</a>
|
|
</b><p><p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
<table border=1 cellpadding=3 cellspacing=1>
|
|
<td>
|
|
<a href="rb-4547.htm" tppabs="http://www.ctyme.com/intr/rb-4547.htm">
|
|
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
|
<a href="rb-4549.htm" tppabs="http://www.ctyme.com/intr/rb-4549.htm">
|
|
<img src="ldown.gif" tppabs="http://graphics.ctyme.com/gif/ldown.gif" border=0 alt=Next></a>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/rbrown.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/rbrown.htm'" tppabs="http://www.ctyme.com/rbrown.htm">
|
|
<img src="lhome.gif" tppabs="http://graphics.ctyme.com/gif/lhome.gif" border=0 alt=Ralf Brown Page></a>
|
|
<td><a href="int.htm" tppabs="http://www.ctyme.com/intr/int.htm">Interrups</a></td>
|
|
<td><a href="cat.htm" tppabs="http://www.ctyme.com/intr/cat.htm">Categories</a></td>
|
|
<td><a href="alpha.htm" tppabs="http://www.ctyme.com/intr/alpha.htm">Contents</a></td>
|
|
</td></table><p>
|
|
|
|
<!-- Bottom Link Start -->
|
|
|
|
<center>
|
|
|
|
<p><table border=1 bgcolor="#ffff99"><tr><td>
|
|
<table border=0 height=80>
|
|
<tr align=center><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">
|
|
<img src="tip.gif" tppabs="http://graphics.ctyme.com/gif/tip.gif" ALT="Sponsors" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/sponsor.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/sponsor.htm'" tppabs="http://www.ctyme.com/sponsor.htm">Shopping</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">
|
|
<img src="comment.gif" tppabs="http://graphics.ctyme.com/gif/comment.gif" ALT="Forum" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://talk.ctyme.com/webx.cgi?13@@.ee6b2be \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://talk.ctyme.com/webx.cgi?13@@.ee6b2be'" tppabs="http://talk.ctyme.com/webx.cgi?13@@.ee6b2be">Forum</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">
|
|
<img src="mail.gif" tppabs="http://graphics.ctyme.com/gif/mail.gif" ALT="email" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/mail.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/mail.htm'" tppabs="http://www.ctyme.com/mail.htm">EMail</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">
|
|
<img src="toc.gif" tppabs="http://graphics.ctyme.com/gif/toc.gif" ALT="Index" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/map.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/map.htm'" tppabs="http://www.ctyme.com/map.htm">Index</a>
|
|
|
|
</td><td width="65">
|
|
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">
|
|
<img src="home.gif" tppabs="http://graphics.ctyme.com/gif/home.gif" ALT="Home" height="40" width="40"></a>
|
|
<br><a href="javascript:if(confirm('http://www.ctyme.com/ \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/'" tppabs="http://www.ctyme.com/">Home</a>
|
|
|
|
</td><td width="90">
|
|
|
|
<center>
|
|
<FORM ACTION="https://secure.paypal.com/cgi-bin/webscr" tppabs="https://secure.paypal.com/cgi-bin/webscr" METHOD="POST" traget="_blank">
|
|
<INPUT TYPE="hidden" NAME="cmd" VALUE="_xclick">
|
|
<INPUT TYPE="hidden" NAME="business" VALUE="marc@perkel.com">
|
|
<INPUT TYPE="hidden" NAME="return" VALUE="http://www.perkel.com">
|
|
<INPUT TYPE="hidden" NAME="item_name" VALUE="Donation To Support this Site">
|
|
<INPUT TYPE="hidden" NAME="no_intl" VALUE="1">
|
|
<INPUT TYPE="image" SRC="x-click-but7.gif" tppabs="http://images.paypal.com/images/x-click-but7.gif" vspace=9
|
|
NAME="submit" ALT="Make payments with PayPal - it's fast, free and secure!">
|
|
</FORM>
|
|
|
|
</td></tr></table></td></tr></table><p>
|
|
|
|
|
|
<center>
|
|
<p>
|
|
<a href="javascript:if(confirm('http://www.ctyme.com/hosting/index.htm \n\nThis file was not retrieved by Teleport Pro, because it is addressed on a domain or path outside the boundaries set for its Starting Address. \n\nDo you want to open it from the server?'))window.location='http://www.ctyme.com/hosting/index.htm'" tppabs="http://www.ctyme.com/hosting/index.htm" target="_blank">
|
|
<img src="ctymehost.gif" tppabs="http://graphics.ctyme.com/gif/ctymehost.gif"
|
|
border=3 height=60 width=468></a>
|
|
<p>
|
|
<!-- Ad End --->
|
|
|
|
</center>
|
|
<FORM ACTION="http://service.bfast.com/bfast/click" target="_blank">
|
|
<INPUT TYPE="hidden" NAME="siteid" VALUE="30472466" >
|
|
<INPUT TYPE="hidden" NAME="bfpage" VALUE="horizontal">
|
|
<INPUT TYPE="hidden" NAME="bfmid" VALUE="27253343" >
|
|
<INPUT TYPE="hidden" NAME="num" VALUE="30">
|
|
|
|
<table bgcolor=white border=3><tr><td>
|
|
<table bgcolor=white border=0>
|
|
<tr><td>
|
|
<IMG SRC="serve-bfmid=27253343&siteid=30472466&bfpage=horizontal.gif" tppabs="http://service.bfast.com/bfast/serve?bfmid=27253343&siteid=30472466&bfpage=horizontal" BORDER="0" WIDTH="1" HEIGHT="1" align=right NOSAVE >
|
|
<center><b>Search the web with Google</b></center>
|
|
</td></tr><tr><td>
|
|
<TABLE cellpadding=0 cellspacing=5 bgcolor="#FFFFFF">
|
|
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr><tr><td>
|
|
<IMG SRC="affiliate_logo.gif" tppabs="http://www.google.com/affiliates/affiliate_logo.gif" border="0" ALT="Google" align="center">
|
|
<INPUT TYPE=text name=q size=30 maxlength=255 value="">
|
|
<INPUT type=submit name=sa VALUE="Go">
|
|
</td></tr>
|
|
<tr><td bgcolor="#0000cc"><IMG SRC="cleardot.gif" tppabs="http://www.google.com/images/cleardot.gif" height=1 border="0" ALT="Google"></td></tr></TABLE>
|
|
</td></tr></table>
|
|
</tr></td></table>
|
|
</FORM>
|
|
|
|
</center>
|
|
|
|
|
|
<p><img src="rbline.gif" tppabs="http://graphics.ctyme.com/gif/rbline.gif" width="100%" alt="------"><p>
|
|
|
|
<!-- Bottom Link End -->
|
|
|
|
</BODY>
|
|
</HTML>
|