<html>
Guys, please look at
<a href="http://msdn.microsoft.com/library/default.asp" eudora="autourl">http://msdn.microsoft.com/library/default.asp</a>
first.<br>
<br>
For GO32 you need to refer to underlying OS anyway, and this is always DOS, so call basic int21h functions.<br>
But, it GO32 works in a DOS box under win95osr2 or later, or if it is a pure win32 app call fat32 api functions, for example<br>
<br>
<font size=4><b>Int 21h Function 440Dh Minor Code 60h (FAT32) <br>
</b></font>Returns the device parameters for the specified block device. <br>
<font face="Courier New, Courier">mov bx, Drive ;See below<br>
mov ch, DeviceCat ;See below<br>
mov cl, 60h ;Get device parameters<br>
mov dx, seg DriveDP ;See below<br>
mov ds, dx<br>
mov dx, offset DriveDP ;ds:dx points to a device parameters structure<br>
mov ax, 440Dh ;IOCTL for block device<br>
int 21h<br>
<br>
jc error_handler ;carry set means error<br>
<br>
</font>It returns EA_DEVICEPARAMETERS structure, which contains FAT32 version of BPB structure, which contains A_BF_BPB_BytesPerSector DW ? ;and <br>
A_BF_BPB_SectorsPerCluster DB ? <br>
Multiplying those two gives bytes-per-cluster info. Please look at <a href="http://msdn.microsoft.com/library/default.asp?URL=/library/psdk/winbase/fat32_7jxs.htm" eudora="autourl">http://msdn.microsoft.com/library/default.asp?URL=/library/psdk/winbase/fat32_7jxs.htm</a><br>
for details.<br>
<br>
Cheerz,<br>
Kuba</html>