home *** CD-ROM | disk | FTP | other *** search
- (* ------------------------------------------------------ *)
- (* OPENFILE.PAS *)
- (* (C) 1989 Torsten Priebe, Thorsten Mietzel & TOOLBOX *)
- (* ------------------------------------------------------ *)
- UNIT OpenFile;
-
- INTERFACE
-
- USES Dos;
-
- PROCEDURE OpenRead(VAR F : FILE; RecSize : WORD);
-
- IMPLEMENTATION
-
- PROCEDURE OpenRead(VAR F : FILE; RecSize : WORD);
- VAR
- FRec: FileRec ABSOLUTE F;
- { In Unit Dos definierter Typ: }
- { Struktur einer untypisierten Dateivariablen }
- Regs: Registers;
- BEGIN
- Regs.AH := $3D; { Funktion 3DH: Datei öffnen }
- Regs.AL := 0; { Zugriffsmodus: Lesen }
- Regs.DS := Seg(FRec.Name); { Dateiname aus FRec holen }
- Regs.DX := Ofs(FRec.Name);
- MsDos(Regs); { öffnet die Datei }
- IF (Regs.Flags AND FCarry) <> 0 THEN
- DosError := Regs.AX
- ELSE BEGIN
- DosError := 0;
- FRec.Handle := Regs.AX; { DOS-Handle in AX }
- FRec.Mode:=FMInOut; { Turbo Pascal legt intern fest, }
- { ob Datei geöffnet oder geschlossen ist }
- FRec.RecSize := RecSize; { Recordgröße }
- END;
- END;
-
- END.
- (* ------------------------------------------------------ *)
- (* Ende von OPENFILE.PAS *)