home *** CD-ROM | disk | FTP | other *** search
- DECLARE SUB DriveNum (Lw)
- DECLARE SUB ParkDisk (Lw)
- '* ------------------------------------------------------- *
- '* PARK.BAS *
- '* Festplattenparkprogramm *
- '* (c) 1990 Maximillian Dornseif & TOOLBOX *
- '* ------------------------------------------------------- *
-
- ' Achtung: Sie müssen QB mit der Option "/L" starten, um
- ' die mitgelieferten Assemblerroutinen einzubinden
-
- TYPE Regs
- ax AS INTEGER
- bx AS INTEGER
- cx AS INTEGER
- dx AS INTEGER
- bp AS INTEGER
- si AS INTEGER
- di AS INTEGER
- flags AS INTEGER
- ds AS INTEGER
- es AS INTEGER
- END TYPE
-
- DIM SHARED InRegs AS Regs
- DIM SHARED OutRegs AS Regs
-
- PRINT "Festplatten Park Utility V 1.1"
- PRINT "(C) 1990 Maximillian Dornseif & TOOLBOX"
- PRINT
-
- ' Anzahl der Festplatten feststellen
- CALL DriveNum(LwAnz)
-
- SELECT CASE LwAnz
- CASE 0
- PRINT "Es sind Keine Festplattenlaufwerke vorhanden !"
- END
- CASE 1
- CALL ParkDisk(0)
- PRINT "Festplatte 01 geparkt."
- CASE 2
- CALL ParkDisk(1)
- PRINT "Festplatte 01 geparkt."
- CALL ParkDisk(2)
- PRINT "Festplatte 02 geparkt."
- END SELECT
- PRINT
- PRINT "Schalten Sie nun Ihren Computer aus"
- PRINT "oder drücken Sie eine beliebige"
- PRINT "Taste, um zu DOS zurückzukehren."
- PRINT "Wenn Sie dies tun, ist jedoch"
- PRINT "das Parken der Festplatte";
- IF LwAnz > 1 THEN PRINT "n" ELSE PRINT
- PRINT "aufgehoben."
- PRINT
- WHILE INKEY$ = ""
- WEND
-
- SUB DriveNum (Lw)
- ' Gibt die Anzahl der Festplattenlaufwerke
- ' in LW zurück
- InRegs.ax = &H800
- InRegs.dx = &H80
- CALL INTERRUPTX(&H13, InRegs, OutRegs)
- Lw = OutRegs.dx AND &HFF
- END SUB
-
- SUB ParkDisk (Lw)
- ' Parkt die Festplatte (0-1), die in LW übergeben wird
- ' Eckdaten der Festplatte holen
- InRegs.ax = &H800
- InRegs.dx = &H80 + Lw
- CALL INTERRUPT(&H13, InRegs, OutRegs)
-
- ' Kopf auf letzte Spur fahren
- InRegs.ax = &HC00
- InRegs.cx = OutRegs.cx
- InRegs.dx = &H80 + Lw
- CALL INTERRUPT(&H13, InRegs, OutRegs)
- END SUB
- '* ------------------------------------------------------- *
- '* Ende von PARK.BAS *
-
-