home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* COPY7.PAS *)
- (* ------------------------------------------------------ *)
- USES Dos, Crt;
-
- TYPE
- Secbuf = ARRAY [0..511] OF BYTE;
-
- PROCEDURE ReadSector(anz, spur, sektor, kopf,
- laufwerk : byte;
- VAR puffer : Secbuf);
- VAR
- Regs : Registers;
- BEGIN
- WITH Regs DO BEGIN
- ah := 2;
- al := anz;
- ch := spur;
- cl := sektor;
- dh := kopf;
- dl := laufwerk;
- es := Seg(puffer);
- bx := Ofs(puffer);
- Intr($13, Regs);
- END;
- END;
-
- PROCEDURE WriteSector(anz, spur, sektor, kopf,
- laufwerk : byte;
- VAR puffer : Secbuf);
- VAR
- Regs : Registers;
- BEGIN
- WITH Regs DO BEGIN
- ah := 3;
- al := anz;
- ch := spur;
- cl := sektor;
- dh := kopf;
- dl := laufwerk;
- es := Seg(puffer);
- bx := Ofs(puffer);
- Intr($13, regs);
- END;
- END;
-
-
- VAR
- Sektorpuffer : Secbuf;
- source, target, zyl, sec, hd : BYTE;
-
- BEGIN
- ClrScr;
- source := 1; target := 0;
- FOR zyl := 0 TO 79 DO
- FOR sec := 0 TO 9 DO
- FOR hd := 0 TO 1 DO BEGIN
- ReadSector(1, zyl, sec, hd, source, Sektorpuffer);
- WriteSector(1, zyl, sec, hd, target, Sektorpuffer);
- GotoXY(20,1);
- Write('Seite: ', hd:2, ' Sektor: ', sec:2,
- ' Spur: ', zyl:2);
- END;
- END.
- (* ------------------------------------------------------ *)
- (* Ende von COPY7.PAS *)