80 lines
2.0 KiB
HTML
80 lines
2.0 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML//EN">
|
|
|
|
<html>
|
|
|
|
<head>
|
|
<meta http-equiv="Content-Type"
|
|
content="text-html; charset=Windows-1252">
|
|
<title>Control Block Format (DOS 4.</title>
|
|
<meta name="FORMATTER" content="Microsoft FrontPage 2.0">
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<h1><a name="kap_interrupt_2850"></a>Control Block Format (DOS
|
|
4.x):</h1>
|
|
|
|
<p> % Offset Size Description</p>
|
|
|
|
<p> 00 dword starting sector</p>
|
|
|
|
<p> 04 word number of sectors to read</p>
|
|
|
|
<p> 06 dword pointer to buffer</p>
|
|
|
|
<p> - reads disk sectors into buffer at DS:BX or DS:[BX+6]</p>
|
|
|
|
<p> - after calling this interrupt the flags register remains on
|
|
the</p>
|
|
|
|
<p> stack and must be popped manually</p>
|
|
|
|
<p> - sectors are logical sectors starting at the beginning of a</p>
|
|
|
|
<p> logical disk; each DOS partition on a drive unit is
|
|
considered</p>
|
|
|
|
<p> one logical drive and has it's own logical sector numbers
|
|
with</p>
|
|
|
|
<p> track 0 starting at the first track in the partition</p>
|
|
|
|
<p> - this function uses logical drives, and is susceptible to
|
|
ASSIGN</p>
|
|
|
|
<p> - physical sector numbers can be converted to and from DOS
|
|
sector</p>
|
|
|
|
<p> numbers with the following formulas:</p>
|
|
|
|
<p> dos_sector = (sector - 1) + (head * sectors_per_track) +</p>
|
|
|
|
<p> (track * sectors_per_track * num_heads)</p>
|
|
|
|
<p> physical_sector = 1 + (dos_sector MOD sectors_per_track)</p>
|
|
|
|
<p> physical_head = (dos_sector / sectors_per_track) MOD
|
|
num_heads</p>
|
|
|
|
<p> physical_track = dos_sector / (sectors_per_track * num_heads)</p>
|
|
|
|
<p> - see ~INT 13,STATUS~</p>
|
|
|
|
<hr>
|
|
|
|
<table border="0" width="100%" cols="3">
|
|
<tr>
|
|
<td width="33%">Zurück zum <a href="inte1at0.htm">Interrupt
|
|
Info</a>. </td>
|
|
<td align="center" width="33%"><a
|
|
href="mailto:Roger.Morgan@htl-steyr.ac.at">Roger Morgan</a>
|
|
/ 1998 </td>
|
|
<td align="right" width="33%"><font size="1">L.Änderung <!--webbot
|
|
bot="Timestamp" s-type="EDITED" s-format="%d.%m.%y"
|
|
startspan -->29.03.99<!--webbot bot="Timestamp" endspan
|
|
i-checksum="13964" --> </font></td>
|
|
</tr>
|
|
</table>
|
|
</body>
|
|
</html>
|