Path: utzoo!utgpu!watmath!att!mcdchg!ddsw1!ddsw1!andyross From: andyross@ddsw1.MCS.COM (Andrew Rossmann) Newsgroups: comp.sys.ibm.pc Subject: Miniscribe 3085 on Dos3.3? Message-ID: <[4368.2]comp.ibmpc;1@ddsw1.MCS.COM> Date: 17 Jul 89 23:00:07 GMT References: <36300051@iuvax> <[4368.1]comp.ibmpc;1@ddsw1.MCS.COM> Lines: 34 > Resp: 1 of 1 by karl at ddsw1.MCS.COM >Author: [Karl Denninger] >... >Dos 4.1 uses a larger bit table for the FAT, and thus can deal with larger >disks without changing the allocation size... This is not true. DOS 4, when using partitions >32M still uses the same 16-bit FAT it uses under DOS 3.x. The difference is in the INT 25h and INT 26h functions. Originally, you could only enter a sector number between 0 and 65535 (0000 - FFFF). Since sectors are usually 512 bytes, 65536*512 bytes = 33554432 bytes = 32M. DOS 4 (and Compaq DOS 3.31) supports an alternative entry method that uses 32-bit sector numbers. DOS 4 will support up to 128M using 2K clusters. It will start increasing the cluster size as you go over 128M. The cluster size can hit 64K!! Under DOS 4, you can use the 'standard' INT 25/26h method for accessing disks/partitions < 32M. If your paritition is >32M, you MUST use the alternate method. For those interested, the alternate metod is: INT 25H is disk read, INT 26H is disk write: AL=drive number (A=0, B=1...) if <32M then CX=number of sectors to read, DX= starting sector, and DS:BX is the buffer where the data is/should go. if >32M then CX=-1 (FFFFh), DS:BX point to a parameter block: bytes 0-3 are a 32-bit sector number (low, low-mid, hi-mid, hi) bytes 4-5 are number of sectors to read bytes 6-7 are offset of buffer bytes 8-9 are segment of buffer The 'old' method can only be used if a disk partition is <32M. The 'new' method can be used on ANY disk. andyross@ddsw1.MCS.COM