ack/lang/a68s/liba68s/stopen.p

49 lines
1.5 KiB
OpenEdge ABL
Raw Permalink Normal View History

1988-10-04 13:41:01 +00:00
93900 #include "rundecs.h"
93910 (* COPYRIGHT 1983 C.H.LINDSEY, UNIVERSITY OF MANCHESTER *)
93920 (**)
93930 FUNCTION CRSTRUCT(TEMPLATE: DPOINT ) : OBJECTP ; EXTERN ;
93940 (*+01() (*$X6*) ()+01*)
93950 PROCEDURE OPENCOVER(
93960 PFET: FETROOMP; VAR PCOV: OBJECTP; LFN: LFNTYPE; PROCEDURE CH (*-01() ( COV: OBJECTP; L: LFNTYPE) ()-01*)
93970 ); EXTERN;
93980 (**)
93990 (**)
94000 PROCEDURE STOPEN(
94010 PFET: FETROOMP; VAR RF: OBJECTP; LFN: LFNTYPE; PROCEDURE CH (*-01() (COV: OBJECTP; L: LFNTYPE) ()-01*)
94020 );
94030 VAR F, PCOV: OBJECTP;
94040 BEGIN
94050 OPENCOVER(PFET, PCOV, LFN, CH);
94060 PCOV^.STATUS := PCOV^.STATUS+[STARTUP];
94070 F := CRSTRUCT(FILEBLOCK);
94080 WITH F^ DO
94090 BEGIN
94100 FINC;
94110 OSCOPE := 1;
94120 PCOVER := PCOV;
94130 TERM := [] ; (*+01() TERM1 := [] ; ()+01*)
94140 END;
94150 ENEW(RF, REFNSIZE);
94160 WITH RF^ DO
94170 BEGIN
94180 (*-02() FIRSTWORD := SORTSHIFT * ORD(REFN) + INCRF; ()-02*)
94190 (*+02() PCOUNT:=1; SORT:=REFN; ()+02*)
94200 (*+01() SECONDWORD := 0; ()+01*)
94210 ANCESTOR := RF;
94220 OFFSET := STRUCTCONST;
94230 PVALUE := F;
94240 OSCOPE := 3;
94250 END
94260 END;
94270 (*+01() (*$X4*) ()+01*)
94280 (**)
94290 (**)
94300 (*-02()
94310 BEGIN (*OF A68*)
94320 END; (*OF A68*)
94330 ()-02*)
94340 (*+01()
94350 BEGIN (*OF MAIN PROGRAM*)
94360 END (* OF EVERYTHING *).
94370 ()+01*)