home *** CD-ROM | disk | FTP | other *** search
/ Hall of Fame / HallofFameCDROM.cdr / open / qbinters.lzh / FREE.BAS < prev    next >
BASIC Source File  |  1989-04-24  |  953b  |  39 lines

  1. 'Mon  Apr 24, 1989   8:55:26 am 
  2. '****************************************************************************
  3. 'This routine returns the amount of space available on a disk drive.
  4. '*****************************************************************************
  5.  
  6. TYPE RegType
  7.     ax    AS INTEGER
  8.     bx    AS INTEGER
  9.     cx    AS INTEGER
  10.     dx    AS INTEGER
  11.     bp    AS INTEGER
  12.     si    AS INTEGER
  13.     di    AS INTEGER
  14.     flags AS INTEGER
  15. END TYPE
  16.  
  17. DIM SHARED inregs AS RegType, outregs AS RegType
  18.  
  19. DECLARE FUNCTION Free (drive)
  20.  
  21. CONST default = 0: a = 1: b = 2: c = 3: d = 4: e = 5
  22.  
  23. f = Free(default)
  24. PRINT "Free = "; USING "##########,"; f
  25.  
  26.  
  27.  
  28.  
  29.  
  30. FUNCTION Free (drive)
  31.     inregs.ax = &H3600: inregs.bx = 0: inregs.cx = 0: inregs.dx = drive
  32.     CALL interrupt(&H21, inregs, outregs)
  33.     a = outregs.ax: b = outregs.bx: c = outregs.cx: d = outregs.dx
  34.     total = a * c * d
  35.     PRINT "Total ="; USING "##########,"; total
  36.     Free = a * c * b
  37. END FUNCTION
  38.  
  39.