191 lines
12 KiB
HTML
191 lines
12 KiB
HTML
<HTML>
|
||
<HEAD>
|
||
<TITLE>Int 2F/AH=13h
|
||
</TITLE>
|
||
<META NAME="Description" CONTENT="
|
||
Int 2F/AH=13h - DOS 3.2+ - SET DISK INTERRUPT HANDLER -
|
||
AH = 13h
|
||
DS:DX - interrupt handler disk driver calls on read/write
|
||
ES:BX = address to restore INT 13 to on system halt (exit from root
|
||
shell) or warm boot (INT 19)
|
||
Return: DS:DX set by previous invocation of this function
|
||
ES:BX set by previous invocation of this function
|
||
Notes: IO.SYS hooks INT 13 and inserts one or more filters ahead of the
|
||
original INT 13 handler. The first is for disk change detection
|
||
on floppy drives, the second is for tracking formatting calls and
|
||
correcting DMA boundary errors, the third is for working around
|
||
">
|
||
<META NAME="robots" CONTENT="none">
|
||
</HEAD>
|
||
<BODY BGCOLOR="#FFD0A0">
|
||
<center>
|
||
<h2>Int 2F/AH=13h
|
||
</h2>
|
||
</center><p>
|
||
<table border=1 cellpadding=3 cellspacing=1>
|
||
<td>
|
||
<a href="rb-4452.htm" tppabs="http://www.ctyme.com/intr/rb-4452.htm">
|
||
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
||
<a href="rb-4454.htm" tppabs="http://www.ctyme.com/intr/rb-4454.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>DOS 3.2+ - SET DISK INTERRUPT HANDLER</font></h3>
|
||
<PRE>
|
||
AH = 13h
|
||
DS:DX -> interrupt handler disk driver calls on read/write
|
||
ES:BX = address to restore INT 13 to on system halt (exit from root
|
||
shell) or warm boot (INT 19)<br>
|
||
<p><b>Return:</b><br>DS:DX set by previous invocation of this function
|
||
ES:BX set by previous invocation of this function
|
||
</PRE>
|
||
<p><b>Notes:</b>
|
||
IO.SYS hooks INT 13 and inserts one or more filters ahead of the
|
||
original INT 13 handler. The first is for disk change detection
|
||
on floppy drives, the second is for tracking formatting calls and
|
||
correcting DMA boundary errors, the third is for working around
|
||
problems in a particular version of IBM's ROM BIOS.
|
||
Before the first call, ES:BX points at the original BIOS INT 13; DS:DX
|
||
also points there unless IO.SYS has installed a special filter for
|
||
hard disk reads (on systems with model byte FCh and BIOS date
|
||
"01/10/84" only), in which case it points at the special filter.
|
||
Most DOS 3.2+ disk access is via the vector in DS:DX, although a few
|
||
functions are still invoked via an INT 13 instruction.
|
||
During Windows 3.1 startup this function seems to be used to
|
||
temporarily point DOS to a dummy handler in WDCTRL.386 which always
|
||
halts the system with a fatal error message. If DS hasn't changed
|
||
on return from the function, Windows will display the error message
|
||
"Invalid DOS version"..
|
||
This is a dangerous security loophole for any virus-monitoring software
|
||
which does not trap this call ("INT13", "Nomenklatura", and many
|
||
Bulgarian viruses are known to use it to get the original ROM entry
|
||
point).
|
||
The preloadable Novell DOS 7+ SECURITY.BIN driver $SECURE$ traps
|
||
this call.
|
||
<p><b>BUG:</b>
|
||
Novell DOS 7 IBMBIO.COM before 1995-05-08 trashed AX on return from
|
||
this function. VGACOPY by Thomas M<>nkemeier's VGA Software GmbH
|
||
crashed due to this. Later releases of Novell DOS 7 preserved the
|
||
contents of the AX register.
|
||
<p><b>See Also:</b>
|
||
<a href="rb-0606.htm" tppabs="http://www.ctyme.com/intr/rb-0606.htm">INT 13/AH=01h</a> - <a href="rb-2270.htm" tppabs="http://www.ctyme.com/intr/rb-2270.htm">INT 19</a> - <a href="rb-8327.htm" tppabs="http://www.ctyme.com/intr/rb-8327.htm">INT 9D"VIRUS"</a>
|
||
<p>
|
||
<b>Category: <a href="cat-010.htm" tppabs="http://www.ctyme.com/intr/cat-010.htm">
|
||
DOS Kernel</a>
|
||
- <a href="int-2f-1.htm" tppabs="http://www.ctyme.com/intr/int-2F.htm">
|
||
Int 2Fh</a>
|
||
- <a href="alpha-d.htm" tppabs="http://www.ctyme.com/intr/alpha-d.htm">
|
||
D</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-4452.htm" tppabs="http://www.ctyme.com/intr/rb-4452.htm">
|
||
<img src="lup.gif" tppabs="http://graphics.ctyme.com/gif/lup.gif" border=0 alt=Prev></a>
|
||
<a href="rb-4454.htm" tppabs="http://www.ctyme.com/intr/rb-4454.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>
|