62 lines
2.3 KiB
OpenEdge ABL
62 lines
2.3 KiB
OpenEdge ABL
93200 #include "rundecs.h"
|
|
93210 (* COPYRIGHT 1983 C.H.LINDSEY, UNIVERSITY OF MANCHESTER *)
|
|
93220 (**)
|
|
93230 PROCEDURE SETREADMOOD(PCOV:OBJECTP); EXTERN;
|
|
93240 (**)
|
|
93250 (*+01() (*$X6*) ()+01*)
|
|
93260 FUNCTION PROC( PROCEDURE P (*-01() ( COV: OBJECTP ; EFET: FETROOMP ) ()-01*) ): ASPROC ; EXTERN ;
|
|
93270 (*-01()
|
|
93280 FUNCTION PROC1(
|
|
93290 PROCEDURE P( COV: OBJECTP ; CHARS: GETBUFTYPE ; TERM: TERMSET ; I: INTEGER ; EFET: FETROOMP )
|
|
93300 ): ASPROC ; EXTERN ;
|
|
93310 ()-01*)
|
|
93320 PROCEDURE AOPEN( EFET:FETROOMP; DISP:INTEGER; LFN:LFNTYPE; BUF:IPOINT ); EXTERN;
|
|
93330 PROCEDURE SIRDSTR(COV: OBJECTP; CHARS: GETBUFTYPE; TERM (*+01(),TERM1()+01*): TERMSET; I: INTEGER; EFET: FETROOMP);
|
|
93340 EXTERN;
|
|
93350 PROCEDURE SINEWLINE(COV: OBJECTP; EFET: FETROOMP); EXTERN;
|
|
93360 PROCEDURE SINEWPAGE(COV: OBJECTP; EFET: FETROOMP); EXTERN;
|
|
93370 PROCEDURE SIRESET(COV: OBJECTP; EFET: FETROOMP); EXTERN;
|
|
93380 (**)
|
|
93390 (**)
|
|
93400 PROCEDURE STINCH(PCOV: OBJECTP; LFN: LFNTYPE);
|
|
93410 (*+01() VAR AW66: ^W66; ()+01*)
|
|
93420 BEGIN WITH PCOV^ DO
|
|
93430 BEGIN CHARBOUND:=MAXINT;
|
|
93440 LINEBOUND:=MAXINT;
|
|
93450 PAGEBOUND:=MAXINT;
|
|
93460 POSSIBLES:=[GETPOSS];
|
|
93470 (*+01()
|
|
93480 AW66 := ASPTR(66B);
|
|
93490 IF (LFN= 'INPUT:::::') AND (AW66^.JOPR=3) THEN (*INPUT AND ONLINE*)
|
|
93500 BEGIN
|
|
93510 AOPEN( BOOK, FORREAD + ONLINE, LFN, ORD(BOOK)+BUFFOFFSET ) ;
|
|
93520 STATUS := [OPENED,NOTINITIALIZED,NOTRESET,LFE,PAGEOVERFLOW,LINEOVERFLOW,CHARMOOD,LAZY,NOTSET]
|
|
93530 END
|
|
93540 ELSE
|
|
93550 ()+01*)
|
|
93560 BEGIN
|
|
93570 AOPEN( BOOK, FORREAD, LFN, ORD(BOOK)+BUFFOFFSET ) ;
|
|
93580 STATUS := [OPENED,NOTRESET,CHARMOOD,NOTSET(*-01(),LAZY()-01*)]
|
|
93590 END;
|
|
93600 (*+01()
|
|
93610 IF BOOK^.LFN<>'INPUT::' THEN POSSIBLES := POSSIBLES+[RESETPOSS];
|
|
93620 ()+01*)
|
|
93630 DOGETS := PROC(*-01()1()-01*)(SIRDSTR);
|
|
93640 DONEWLINE := PROC(SINEWLINE);
|
|
93650 DONEWPAGE := PROC(SINEWPAGE);
|
|
93660 DORESET := PROC(SIRESET);
|
|
93670 SETREADMOOD(PCOV)
|
|
93680 END
|
|
93690 END;
|
|
93700 (*+01() (*$X4*) ()+01*)
|
|
93710 (**)
|
|
93720 (**)
|
|
93730 (*-02()
|
|
93740 BEGIN (*OF A68*)
|
|
93750 END; (*OF A68*)
|
|
93760 ()-02*)
|
|
93770 (*+01()
|
|
93780 BEGIN (*OF MAIN PROGRAM*)
|
|
93790 END (* OF EVERYTHING *).
|
|
93800 ()+01*)
|