home *** CD-ROM | disk | FTP | other *** search
- PROCEDURE ShowFree;
- { This procedure calls Dos 2.0 function $36 which determines the disk
- { free space.
- { Danny Cavasos June 1984 }
- TYPE
- varX=RECORD
- varL,varH:BYTE;
- END;
- FreeRec=RECORD
- AX:varX;
- BX,CX:INTEGER;
- DX:varX;
- BP,SI,DI,DS,ES,FLAGS:INTEGER;
- END;
- VAR
- FreeParm:FreeRec;
- FreeBytes,dum1,dum2,dum3:REAL;
- BEGIN
- GOTOXY(62,24);
- WITH FreeParm DO
- BEGIN
- AX.varH:=$36; { function 36 hex }
- DX.varL:=$0; { perform function for current default drive }
- MsDos(FreeParm);
- dum1:=AX.varL; { sectors per cluster }
- dum2:=BX; { available clusters }
- dum3:=CX; { bytes per sector }
- FreeBytes:=dum1*dum2*dum3;
- WRITE(FreeBytes:6:0,' Bytes Free');
- END;
- GOTOXY(1,1);
- END;