|
|
DataMuseum.dkPresents historical artifacts from the history of: MIKADOS |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about MIKADOS Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - download
Length: 12640 (0x3160)
Types: TextFile
Notes: Mikados_K
Names: »RAPPORT.K«
└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
└─⟦this⟧ »RAPPORT.K«
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
└─⟦this⟧ »RAPPORT.K«
PROGRAM RAPPORT;
CONST MAXZONE=1000;
LÆS = 0;
SKRIV= 1;
TYPE ISF = FILE OF ARRAY (1..232) OF INTEGER;
AR = ARRAY (-4..-4) OF INTEGER;
FILNAVN=PACKED ARRAY (1..8) OF CHAR;
ISFHEAD = RECORD
NBUC,NBLK,NREC,
BLKPRBUC,RECPRBUC,RECPRBLK,
KEYFLDS,
FLHSIZE,BUTSIZE,BLTSIZE,BLKSIZE,RECSIZE,KEYSIZE,
SEGINFLH,SEGINBUT,SEGINBUC,SEGINBLT,SEGINBLK,
INITREC,BUCINUSE,BLKINUSE,RECINUSE,
BUCINZONE,BLKINZONE,BLKENTRY,
UPSTAT,IRPRBUC,IRPRBLK,
BUT,BLT,BLK,KEY1,KEY2,ENTRYSIZE :INTEGER;
FILEINIT,FILEOPEN,BUTCHG,BLTCHG,BLKCHG :BOOLEAN;
KEYPOS,KEYLNG,KEYSGN : ARRAY (1..9) OF INTEGER;
Z:AR;
FILENAME:FILNAVN
END;
ZZONE =RECORD
H:ISFHEAD;
T:ARRAY(1..MAXZONE) OF INTEGER
END;
VAR I,IER:INTEGER;
CH:STRING(1);
REGISTER:ISF;
FNAVN :STRING;
ZONE:ZZONE;
(*$P*)
(*$R-*)
PROCEDURE COPSEGS(VAR Z:AR;VAR F:ISF;SEGADR,WORDS,WORDADR,INOUT:INTEGER);
VAR I:INTEGER;
BEGIN
WORDADR:=WORDADR-1;
IF INOUT=LÆS THEN
BEGIN
SEEK(F,SEGADR);
IER:=IORESULT;
IF IER<>0 THEN EXIT(COPSEGS);
REPEAT
GET(F);
IF IORESULT<>0 THEN
BEGIN
IER:=IORESULT;
EXIT(COPSEGS)
END;
IF WORDS>231 THEN
BEGIN
FOR I:=1 TO 232 DO Z(WORDADR+I):=F^(I);
WORDADR:=WORDADR+232;
END ELSE FOR I:=1 TO WORDS DO Z(WORDADR+I):=F^(I);
WORDS:=WORDS-232
UNTIL WORDS<1
END ELSE
BEGIN
SEEK(F,SEGADR);
IER:=IORESULT;
IF IER<>0 THEN EXIT(COPSEGS);
REPEAT
IF WORDS>231 THEN
BEGIN
FOR I:=1 TO 232 DO F^(I):=Z(WORDADR+I);
WORDADR:=WORDADR+232;
END ELSE FOR I:=1 TO WORDS DO F^(I):=Z(WORDADR+I);
WORDS:=WORDS-232;
PUT(F);
IF IORESULT<>0 THEN
BEGIN
IER:=IORESULT;
EXIT(COPSEGS)
END
UNTIL WORDS<1
END
END;
(*$P*)
PROCEDURE IOPEN(VAR ZO:ISFHEAD;VAR F:ISF;MODE:INTEGER);
(*F ER ÅBNET FØR KALD; MED REWRITE*)
VAR I,J,NUM,BUC,K,BLKNUM:INTEGER;
BEGIN
WITH ZO DO
BEGIN
SEEK(F,1);
IER:=IORESULT;
IF IER<>0 THEN EXIT(IOPEN);
GET(F);
IER:=IORESULT;
IF IER<>0 THEN EXIT (IOPEN);
NBUC := F^(1);
NBLK := F^(2);
NREC := F^(3);
BLKPRBUC := F^(4);
RECPRBUC := F^(5);
RECPRBLK := F^(6);
KEYFLDS := F^(7);
FLHSIZE := F^(8);
BUTSIZE := F^(9);
BLTSIZE := F^(10);
BLKSIZE := F^(11);
RECSIZE := F^(12);
KEYSIZE := F^(13);
SEGINFLH := F^(14);
SEGINBUT := F^(15);
SEGINBUC := F^(16);
SEGINBLT := F^(17);
SEGINBLK := F^(18);
INITREC := F^(19);
BUCINUSE := F^(20);
BLKINUSE := F^(21);
RECINUSE := F^(22);
FILEINIT := F^(23)=1;
FILEOPEN := F^(24)=1;
FOR I:=1 TO 9 DO
BEGIN
KEYPOS(I):= F^(22+I*3);
KEYLNG(I):= F^(23+I*3);
KEYSGN(I):= F^(24+I*3)
END;
BUTCHG:=FALSE;
BLTCHG:=FALSE;
BLKCHG:=FALSE;
BUCINZONE:=0;
BLKINZONE:=0;
BLKENTRY:=0;
UPSTAT:=MODE;
BUT:=1;
BLT:=BUT+BUTSIZE;
BLK:=BLT+BLTSIZE;
KEY1:=BLK+BLKSIZE+RECSIZE;
KEY2:=BLK+BLKSIZE;
ENTRYSIZE:=KEYSIZE+2;
IF RECPRBUC<>RECPRBLK*BLKPRBUC THEN
BEGIN
IER:=-4;
EXIT (IOPEN)
(*FILEN ER IKKE ISF*)
END;
IF FILEINIT THEN COPSEGS(Z,F,2,BUTSIZE,BUT,LÆS);
IF IER<>0 THEN EXIT (IOPEN);
IF FILEOPEN THEN
BEGIN
IER:=-18;
IF NOT FILEINIT THEN
BEGIN
IER:=-19;
INITREC:=0;
BUCINUSE:=0;
BLKINUSE:=0;
RECINUSE:=0
END
ELSE
BEGIN
BUCINUSE:=0;
BLKINUSE:=0;
RECINUSE:=0;
FOR I:=1 TO NBUC DO
BEGIN
BUC:=BUT+(I-1)*ENTRYSIZE+1;
COPSEGS(Z,F,Z(BUC-1),BLTSIZE,BLT,LÆS);
IF IER<>0 THEN EXIT (IOPEN);
IER:=-18;
NUM:=0;
FOR J:=1 TO BLKPRBUC DO
BEGIN
BLKNUM:=BLT+1+(J-1)*ENTRYSIZE;
IF Z(BLKNUM)>0 THEN
BEGIN
NUM:=NUM+Z(BLKNUM);
BLKINUSE:=BLKINUSE+1;
K:=BLKNUM
END
END;
IF NUM>0 THEN
BEGIN
RECINUSE:=RECINUSE+NUM;
BUCINUSE:=BUCINUSE+1;
FOR J:=1 TO KEYSIZE DO
Z(BUC+J):=Z(K+J)
END;
BUTCHG:=TRUE;
Z(BUC):=NUM
END; (*FOR I*)
BUCINZONE:=NBUC
END
END; (*FILEOPEN*)
FILEOPEN:=TRUE;
IF UPSTAT=SKRIV THEN
BEGIN
F^(1):=NBUC;
F^(2):=NBLK;
F^(3):=NREC;
F^(4):=BLKPRBUC;
F^(5):=RECPRBUC;
F^(6):=RECPRBLK;
F^(7):=KEYFLDS;
F^(8):=FLHSIZE;
F^(9):=BUTSIZE;
F^(10):=BLTSIZE;
F^(11):=BLKSIZE;
F^(12):=RECSIZE;
F^(13):=KEYSIZE;
F^(14):=SEGINFLH;
F^(15):=SEGINBUT;
F^(16):=SEGINBUC;
F^(17):=SEGINBLT;
F^(18):=SEGINBLK;
F^(19):=INITREC;
F^(20):=BUCINUSE;
F^(21):=BLKINUSE;
F^(22):=RECINUSE;
IF FILEINIT THEN F^(23):=1 ELSE F^(23):=0;
IF FILEOPEN THEN F^(24):=1 ELSE F^(24):=0;
FOR I:=1 TO 9 DO
BEGIN
F^(22+I*3):=KEYPOS(I);
F^(23+I*3):=KEYLNG(I);
F^(24+I*3):=KEYSGN(I)
END;
SEEK(F,1);
I:=IER;
IER:=IORESULT;
IF IER<>0 THEN EXIT(IOPEN);
PUT(F);
IER:=IORESULT;
IF IER<>0 THEN EXIT(IOPEN);
IER:=I
END
END
END (*IOPEN*);
(*$P*)
PROCEDURE READTABLE(VAR ZO:ISFHEAD;VAR F:ISF;BUTENTRY:INTEGER);
BEGIN
IER:=0;
WITH ZO DO
IF BUTENTRY<>BUCINZONE THEN
BEGIN
IF BLKCHG THEN
BEGIN
IF UPSTAT=SKRIV THEN
COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);
IF IER<>0 THEN EXIT(READTABLE)
END;
IF BLTCHG THEN
BEGIN
IF UPSTAT=SKRIV THEN
COPSEGS(Z,F,Z((BUCINZONE-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,SKRIV);
IF IER<>0 THEN EXIT(READTABLE)
END;
BLKCHG:=FALSE;
BLTCHG:=FALSE;
COPSEGS(Z,F,Z((BUTENTRY-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,LÆS);
IF IER<>0 THEN EXIT(READTABLE);
BUCINZONE:=BUTENTRY;
BLKINZONE:=0
END
END;
PROCEDURE READBLOCK(VAR ZO:ISFHEAD;VAR F:ISF;BLTENTRY,STARTPOST:INTEGER);
BEGIN
IER:=0;
WITH ZO DO
IF BLTENTRY<>BLKINZONE THEN
BEGIN
IF BLKCHG THEN
BEGIN
IF UPSTAT=SKRIV THEN
COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);
BLKCHG:=FALSE;
IF IER<>0 THEN EXIT(READBLOCK)
END;
COPSEGS(Z,F,Z((BLTENTRY-1)*ENTRYSIZE+BLT),BLKSIZE,BLK+(STARTPOST-1)*
RECSIZE,LÆS);
IF IER<>0 THEN EXIT(READBLOCK);
BLKINZONE:=BLTENTRY
END
END;
(*$P*)
PROCEDURE REPORT(VAR ZO:ISFHEAD;VAR F:ISF;SBUC:INTEGER);
VAR I,J,K,L,N:INTEGER;
PROCEDURE W(T:STRING;NR:INTEGER);
BEGIN
N:=N+1;
WRITE(LIST,' ',T,NR:6);
IF N=6 THEN
BEGIN
WRITELN(LIST);
N:=0
END
END;
BEGIN
WITH ZO DO
BEGIN
WRITELN(LIST,'REPORT');
WRITELN(LIST);
WRITELN(LIST,'FILEHEAD-INFORMATION');
WRITELN(LIST);
N:=0;
W('NBUC :',NBUC);W('NBLK :',NBLK);
W('NREC :',NREC);
W('BLKPRBUC:',BLKPRBUC);
W('RECPRBUC:',RECPRBUC);
W('RECPRBLK:',RECPRBLK);
W('KEYFLDS :',KEYFLDS);
W('FLHSIZE :',FLHSIZE);
W('BUTSIZE :',BUTSIZE);
W('BLTSIZE :',BLTSIZE);
W('BLKSIZE :',BLKSIZE);
W('RECSIZE :',RECSIZE);
W('KEYSIZE :',KEYSIZE);
W('SEGINFLH:',SEGINFLH);
W('SEGINBUT:',SEGINBUT);
W('SEGINBUC:',SEGINBUC);
W('SEGINBLT:',SEGINBLT);
W('SEGINBLK:',SEGINBLK);
WRITELN(LIST);
WRITELN(LIST,'FILE-STATUS');
WRITELN(LIST);
W('INITREC :',INITREC);
W('BUCINUSE:',BUCINUSE);
W('BLKINUSE:',BLKINUSE);
N:=5;
W('RECINUSE:',RECINUSE);
WRITE(LIST,' FILEINIT: ');
IF FILEINIT THEN WRITE(LIST,' TRUE') ELSE WRITE(LIST,'FALSE');
WRITE(LIST,' FILEOPEN: ');
IF FILEOPEN THEN WRITELN(LIST,' TRUE') ELSE WRITELN(LIST,'FALSE');
WRITELN(LIST);
WRITELN(LIST,'KEY-DESCRIPTION');
WRITELN(LIST);
WRITELN(LIST,' KEYFLD KEYPOS KEYLNG KEYSGN');
FOR I:=1 TO KEYFLDS DO
WRITELN(LIST,I:9,KEYPOS(I):9,KEYLNG(I):9,KEYSGN(I):9);
WRITELN(LIST);
WRITELN(LIST,'BUCKETTABLE');
WRITELN(LIST);
WRITELN(LIST,' ADR NUM KEY');
FOR I:=1 TO NBUC DO
BEGIN
WRITE(LIST,Z((I-1)*ENTRYSIZE+1):6,Z((I-1)*ENTRYSIZE+2):6);
FOR J:=1 TO KEYSIZE DO WRITE(LIST,Z((I-1)*ENTRYSIZE+2+J):6);
WRITELN(LIST)
END;
WRITELN(LIST);
FOR I:=SBUC TO NBUC DO
BEGIN
WRITELN(LIST,I:5,'. BUCKET');
WRITELN(LIST);
READTABLE(ZO,F,I);
IF IER<>0 THEN EXIT(REPORT);
WRITELN(LIST,'BLOCKTABLE');
WRITELN(LIST);
WRITELN(LIST,' ADR NUM KEY');
FOR J:=1 TO BLKPRBUC DO
BEGIN
WRITE(LIST,Z((J-1)*ENTRYSIZE+BLT):6,Z((J-1)*ENTRYSIZE
+BLT+1):6);
FOR K:=1 TO KEYSIZE DO WRITE(LIST,Z((J-1)*ENTRYSIZE+BLT+1+K):6);
WRITELN(LIST)
END;
(* WRITELN(LIST);
FOR J:=1 TO BLKPRBUC DO
BEGIN
WRITE(LIST,I:5,'. BUCKET ',J:5,'. BLOCK');
READBLOCK(ZO,F,J,1);
IF IER<>0 THEN EXIT(REPORT);
FOR K:=1 TO RECPRBLK DO
BEGIN
IF K>Z(BLT+(J-1)*ENTRYSIZE+1) THEN
WRITE(LIST,' *')
ELSE WRITE(LIST,' ');
FOR L:=1 TO RECSIZE DO
WRITE(LIST,Z(BLK+(K-1)*RECSIZE+L-1));
WRITELN(LIST);
END;
WRITELN(LIST)
END;*)
WRITELN(LIST)
END
END
END;
(*$P*)
PROCEDURE ERROR(VAR FIL:FILNAVN);
BEGIN
WRITELN('FEJL I REGISTER ',FIL,' FEJLKODE ',IER,' RETURN');
CH:=' ';EDIT(CH);IF CH='R' THEN REPORT(ZONE.H,REGISTER,1);
EXIT(RAPPORT)
END;
PROCEDURE OFEJL(VAR FIL:FILNAVN);
VAR I:INTEGER;
BEGIN
GOTOXY(1,20);
WRITELN('REGISTERFEJL ',IER,' I ',FIL,' . SITUATIONEN ER FORSØGT REDDET.');
WRITELN('TAST 0, HVIS DER SKAL FORTSÆTTES');
REPEAT GOTOXY(40,21);READLN;READ(I) UNTIL IORESULT=0;
IF I<>0 THEN ERROR(FIL);
CLEARSCREEN
END;
(*$P*)
BEGIN
CLEARSCREEN;
WRITE('INDTAST FILNAVN ');READLN;READ(FNAVN);
ZONE.H.FILENAME:=' ';
FOR I:=1 TO POS(':',FNAVN)-1 DO ZONE.H.FILENAME(I):=FNAVN(I);
REWRITE(REGISTER,FNAVN);
IOPEN(ZONE.H,REGISTER,LÆS);IF IER<>0 THEN OFEJL(ZONE.H.FILENAME);
WRITELN('REPORT, SBUC');READLN;READ(I);
REPORT(ZONE.H,REGISTER,I)
END.
0x0000…0012 Line {l1=0x10, l2=»PROGRAM RAPPORT;«, l3=0x10}
0x0012…0027 Line {l1=0x13, l2=»CONST MAXZONE=1000;«, l3=0x13}
0x0027…0039 Line {l1=0x10, l2=» LÆS = 0;«, l3=0x10}
0x0039…004b Line {l1=0x10, l2=» SKRIV= 1;«, l3=0x10}
0x004b…007b Line {l1=0x2e, l2=»TYPE ISF = FILE OF ARRAY (1..232) OF INTEGER;«, l3=0x2e}
0x007b…00a3 Line {l1=0x26, l2=» AR = ARRAY (-4..-4) OF INTEGER;«, l3=0x26}
0x00a3…00cf Line {l1=0x2a, l2=» FILNAVN=PACKED ARRAY (1..8) OF CHAR;«, l3=0x2a}
0x00cf…00e7 Line {l1=0x16, l2=» ISFHEAD = RECORD«, l3=0x16}
0x00e7…0107 Line {l1=0x1e, l2=» NBUC,NBLK,NREC,«, l3=0x1e}
0x0107…0133 Line {l1=0x2a, l2=» BLKPRBUC,RECPRBUC,RECPRBLK,«, l3=0x2a}
0x0133…014c Line {l1=0x17, l2=» KEYFLDS,«, l3=0x17}
0x014c…018d Line {l1=0x3f, l2=» FLHSIZE,BUTSIZE,BLTSIZE,BLKSIZE,RECSIZE,KEYSIZE,«, l3=0x3f}
0x018d…01cb Line {l1=0x3c, l2=» SEGINFLH,SEGINBUT,SEGINBUC,SEGINBLT,SEGINBLK,«, l3=0x3c}
0x01cb…01ff Line {l1=0x32, l2=» INITREC,BUCINUSE,BLKINUSE,RECINUSE,«, l3=0x32}
0x01ff…022d Line {l1=0x2c, l2=» BUCINZONE,BLKINZONE,BLKENTRY,«, l3=0x2c}
0x022d…0255 Line {l1=0x26, l2=» UPSTAT,IRPRBUC,IRPRBLK,«, l3=0x26}
0x0255…0297 Line {l1=0x40, l2=» BUT,BLT,BLK,KEY1,KEY2,ENTRYSIZE :INTEGER;«, l3=0x40}
0x0297…02d9 Line {l1=0x40, l2=» FILEINIT,FILEOPEN,BUTCHG,BLTCHG,BLKCHG :BOOLEAN;«, l3=0x40}
0x02d9…0319 Line {l1=0x3e, l2=» KEYPOS,KEYLNG,KEYSGN : ARRAY (1..9) OF INTEGER;«, l3=0x3e}
0x0319…032f Line {l1=0x14, l2=» Z:AR;«, l3=0x14}
0x032f…0350 Line {l1=0x1f, l2=» FILENAME:FILNAVN«, l3=0x1f}
0x0350…0362 Line {l1=0x10, l2=» END;«, l3=0x10}
0x0362…0373 Line {l1=0x0f, l2=»ZZONE =RECORD«, l3=0x0f}
0x0373…0387 Line {l1=0x12, l2=» H:ISFHEAD;«, l3=0x12}
0x0387…03af Line {l1=0x26, l2=» T:ARRAY(1..MAXZONE) OF INTEGER«, l3=0x26}
0x03af…03b5 Line {l1=0x04, l2=»END;«, l3=0x04}
0x03b5…03c9 Line {l1=0x12, l2=»VAR I,IER:INTEGER;«, l3=0x12}
0x03c9…03dc Line {l1=0x11, l2=» CH:STRING(1);«, l3=0x11}
0x03dc…03ef Line {l1=0x11, l2=» REGISTER:ISF;«, l3=0x11}
0x03ef…0413 Line {l1=0x22, l2=» FNAVN :STRING;«, l3=0x22}
0x0413…0424 Line {l1=0x0f, l2=» ZONE:ZZONE;«, l3=0x0f}
0x0424…042c Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x042c…0435 Line {l1=0x07, l2=»(*$R-*)«, l3=0x07}
0x0435…0480 Line {l1=0x49, l2=»PROCEDURE COPSEGS(VAR Z:AR;VAR F:ISF;SEGADR,WORDS,WORDADR,INOUT:INTEGER);«, l3=0x49}
0x0480…0490 Line {l1=0x0e, l2=»VAR I:INTEGER;«, l3=0x0e}
0x0490…0497 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0497…04ae Line {l1=0x15, l2=» WORDADR:=WORDADR-1;«, l3=0x15}
0x04ae…04c3 Line {l1=0x13, l2=» IF INOUT=LÆS THEN«, l3=0x13}
0x04c3…04cc Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x04cc…04e1 Line {l1=0x13, l2=» SEEK(F,SEGADR);«, l3=0x13}
0x04e1…04f5 Line {l1=0x12, l2=» IER:=IORESULT;«, l3=0x12}
0x04f5…0518 Line {l1=0x21, l2=» IF IER<>0 THEN EXIT(COPSEGS);«, l3=0x21}
0x0518…0524 Line {l1=0x0a, l2=» REPEAT«, l3=0x0a}
0x0524…0534 Line {l1=0x0e, l2=» GET(F);«, l3=0x0e}
0x0534…0550 Line {l1=0x1a, l2=» IF IORESULT<>0 THEN«, l3=0x1a}
0x0550…055e Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x055e…0577 Line {l1=0x17, l2=» IER:=IORESULT;«, l3=0x17}
0x0577…058f Line {l1=0x16, l2=» EXIT(COPSEGS)«, l3=0x16}
0x058f…059c Line {l1=0x0b, l2=» END;«, l3=0x0b}
0x059c…05b6 Line {l1=0x18, l2=» IF WORDS>231 THEN«, l3=0x18}
0x05b6…05c4 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x05c4…05f6 Line {l1=0x30, l2=» FOR I:=1 TO 232 DO Z(WORDADR+I):=F^(I);«, l3=0x30}
0x05f6…0616 Line {l1=0x1e, l2=» WORDADR:=WORDADR+232;«, l3=0x1e}
0x0616…0651 Line {l1=0x39, l2=» END ELSE FOR I:=1 TO WORDS DO Z(WORDADR+I):=F^(I);«, l3=0x39}
0x0651…066a Line {l1=0x17, l2=» WORDS:=WORDS-232«, l3=0x17}
0x066a…067d Line {l1=0x11, l2=» UNTIL WORDS<1«, l3=0x11}
0x067d…0689 Line {l1=0x0a, l2=» END ELSE«, l3=0x0a}
0x0689…0692 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x0692…06a7 Line {l1=0x13, l2=» SEEK(F,SEGADR);«, l3=0x13}
0x06a7…06bb Line {l1=0x12, l2=» IER:=IORESULT;«, l3=0x12}
0x06bb…06de Line {l1=0x21, l2=» IF IER<>0 THEN EXIT(COPSEGS);«, l3=0x21}
0x06de…06ea Line {l1=0x0a, l2=» REPEAT«, l3=0x0a}
0x06ea…0704 Line {l1=0x18, l2=» IF WORDS>231 THEN«, l3=0x18}
0x0704…0712 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x0712…0744 Line {l1=0x30, l2=» FOR I:=1 TO 232 DO F^(I):=Z(WORDADR+I);«, l3=0x30}
0x0744…0764 Line {l1=0x1e, l2=» WORDADR:=WORDADR+232;«, l3=0x1e}
0x0764…079f Line {l1=0x39, l2=» END ELSE FOR I:=1 TO WORDS DO F^(I):=Z(WORDADR+I);«, l3=0x39}
0x079f…07b9 Line {l1=0x18, l2=» WORDS:=WORDS-232;«, l3=0x18}
0x07b9…07c9 Line {l1=0x0e, l2=» PUT(F);«, l3=0x0e}
0x07c9…07e5 Line {l1=0x1a, l2=» IF IORESULT<>0 THEN«, l3=0x1a}
0x07e5…07f3 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x07f3…080c Line {l1=0x17, l2=» IER:=IORESULT;«, l3=0x17}
0x080c…0824 Line {l1=0x16, l2=» EXIT(COPSEGS)«, l3=0x16}
0x0824…0830 Line {l1=0x0a, l2=» END«, l3=0x0a}
0x0830…0843 Line {l1=0x11, l2=» UNTIL WORDS<1«, l3=0x11}
0x0843…084a Line {l1=0x05, l2=» END«, l3=0x05}
0x084a…0850 Line {l1=0x04, l2=»END;«, l3=0x04}
0x0850…0858 Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x0858…0891 Line {l1=0x37, l2=»PROCEDURE IOPEN(VAR ZO:ISFHEAD;VAR F:ISF;MODE:INTEGER);«, l3=0x37}
0x0891…08be Line {l1=0x2b, l2=» (*F ER ÅBNET FØR KALD; MED REWRITE*)«, l3=0x2b}
0x08be…08e1 Line {l1=0x21, l2=»VAR I,J,NUM,BUC,K,BLKNUM:INTEGER;«, l3=0x21}
0x08e1…08e8 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x08e8…08f6 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x08f6…08ff Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x08ff…090f Line {l1=0x0e, l2=» SEEK(F,1);«, l3=0x0e}
0x090f…0923 Line {l1=0x12, l2=» IER:=IORESULT;«, l3=0x12}
0x0923…0944 Line {l1=0x1f, l2=» IF IER<>0 THEN EXIT(IOPEN);«, l3=0x1f}
0x0944…0951 Line {l1=0x0b, l2=» GET(F);«, l3=0x0b}
0x0951…0965 Line {l1=0x12, l2=» IER:=IORESULT;«, l3=0x12}
0x0965…0987 Line {l1=0x20, l2=» IF IER<>0 THEN EXIT (IOPEN);«, l3=0x20}
0x0987…09a1 Line {l1=0x18, l2=» NBUC := F^(1);«, l3=0x18}
0x09a1…09bb Line {l1=0x18, l2=» NBLK := F^(2);«, l3=0x18}
0x09bb…09d5 Line {l1=0x18, l2=» NREC := F^(3);«, l3=0x18}
0x09d5…09ef Line {l1=0x18, l2=» BLKPRBUC := F^(4);«, l3=0x18}
0x09ef…0a09 Line {l1=0x18, l2=» RECPRBUC := F^(5);«, l3=0x18}
0x0a09…0a23 Line {l1=0x18, l2=» RECPRBLK := F^(6);«, l3=0x18}
0x0a23…0a3d Line {l1=0x18, l2=» KEYFLDS := F^(7);«, l3=0x18}
0x0a3d…0a57 Line {l1=0x18, l2=» FLHSIZE := F^(8);«, l3=0x18}
0x0a57…0a71 Line {l1=0x18, l2=» BUTSIZE := F^(9);«, l3=0x18}
0x0a71…0a8c Line {l1=0x19, l2=» BLTSIZE := F^(10);«, l3=0x19}
0x0a8c…0aa7 Line {l1=0x19, l2=» BLKSIZE := F^(11);«, l3=0x19}
0x0aa7…0ac2 Line {l1=0x19, l2=» RECSIZE := F^(12);«, l3=0x19}
0x0ac2…0add Line {l1=0x19, l2=» KEYSIZE := F^(13);«, l3=0x19}
0x0add…0af8 Line {l1=0x19, l2=» SEGINFLH := F^(14);«, l3=0x19}
0x0af8…0b13 Line {l1=0x19, l2=» SEGINBUT := F^(15);«, l3=0x19}
0x0b13…0b2e Line {l1=0x19, l2=» SEGINBUC := F^(16);«, l3=0x19}
0x0b2e…0b49 Line {l1=0x19, l2=» SEGINBLT := F^(17);«, l3=0x19}
0x0b49…0b64 Line {l1=0x19, l2=» SEGINBLK := F^(18);«, l3=0x19}
0x0b64…0b7f Line {l1=0x19, l2=» INITREC := F^(19);«, l3=0x19}
0x0b7f…0b9a Line {l1=0x19, l2=» BUCINUSE := F^(20);«, l3=0x19}
0x0b9a…0bb5 Line {l1=0x19, l2=» BLKINUSE := F^(21);«, l3=0x19}
0x0bb5…0bd0 Line {l1=0x19, l2=» RECINUSE := F^(22);«, l3=0x19}
0x0bd0…0bed Line {l1=0x1b, l2=» FILEINIT := F^(23)=1;«, l3=0x1b}
0x0bed…0c0a Line {l1=0x1b, l2=» FILEOPEN := F^(24)=1;«, l3=0x1b}
0x0c0a…0c20 Line {l1=0x14, l2=» FOR I:=1 TO 9 DO«, l3=0x14}
0x0c20…0c2b Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x0c2b…0c4b Line {l1=0x1e, l2=» KEYPOS(I):= F^(22+I*3);«, l3=0x1e}
0x0c4b…0c6b Line {l1=0x1e, l2=» KEYLNG(I):= F^(23+I*3);«, l3=0x1e}
0x0c6b…0c8a Line {l1=0x1d, l2=» KEYSGN(I):= F^(24+I*3)«, l3=0x1d}
0x0c8a…0c94 Line {l1=0x08, l2=» END;«, l3=0x08}
0x0c94…0ca8 Line {l1=0x12, l2=» BUTCHG:=FALSE;«, l3=0x12}
0x0ca8…0cbc Line {l1=0x12, l2=» BLTCHG:=FALSE;«, l3=0x12}
0x0cbc…0cd0 Line {l1=0x12, l2=» BLKCHG:=FALSE;«, l3=0x12}
0x0cd0…0ce3 Line {l1=0x11, l2=» BUCINZONE:=0;«, l3=0x11}
0x0ce3…0cf6 Line {l1=0x11, l2=» BLKINZONE:=0;«, l3=0x11}
0x0cf6…0d08 Line {l1=0x10, l2=» BLKENTRY:=0;«, l3=0x10}
0x0d08…0d1b Line {l1=0x11, l2=» UPSTAT:=MODE;«, l3=0x11}
0x0d1b…0d28 Line {l1=0x0b, l2=» BUT:=1;«, l3=0x0b}
0x0d28…0d3f Line {l1=0x15, l2=» BLT:=BUT+BUTSIZE;«, l3=0x15}
0x0d3f…0d56 Line {l1=0x15, l2=» BLK:=BLT+BLTSIZE;«, l3=0x15}
0x0d56…0d76 Line {l1=0x1e, l2=» KEY1:=BLK+BLKSIZE+RECSIZE;«, l3=0x1e}
0x0d76…0d8e Line {l1=0x16, l2=» KEY2:=BLK+BLKSIZE;«, l3=0x16}
0x0d8e…0da9 Line {l1=0x19, l2=» ENTRYSIZE:=KEYSIZE+2;«, l3=0x19}
0x0da9…0dd2 Line {l1=0x27, l2=» IF RECPRBUC<>RECPRBLK*BLKPRBUC THEN«, l3=0x27}
0x0dd2…0ddd Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x0ddd…0dee Line {l1=0x0f, l2=» IER:=-4;«, l3=0x0f}
0x0dee…0e03 Line {l1=0x13, l2=» EXIT (IOPEN)«, l3=0x13}
0x0e03…0e21 Line {l1=0x1c, l2=» (*FILEN ER IKKE ISF*)«, l3=0x1c}
0x0e21…0e2b Line {l1=0x08, l2=» END;«, l3=0x08}
0x0e2b…0e61 Line {l1=0x34, l2=» IF FILEINIT THEN COPSEGS(Z,F,2,BUTSIZE,BUT,LÆS);«, l3=0x34}
0x0e61…0e83 Line {l1=0x20, l2=» IF IER<>0 THEN EXIT (IOPEN);«, l3=0x20}
0x0e83…0e99 Line {l1=0x14, l2=» IF FILEOPEN THEN«, l3=0x14}
0x0e99…0ea4 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x0ea4…0eb6 Line {l1=0x10, l2=» IER:=-18;«, l3=0x10}
0x0eb6…0ed3 Line {l1=0x1b, l2=» IF NOT FILEINIT THEN«, l3=0x1b}
0x0ed3…0ee1 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x0ee1…0ef5 Line {l1=0x12, l2=» IER:=-19;«, l3=0x12}
0x0ef5…0f0b Line {l1=0x14, l2=» INITREC:=0;«, l3=0x14}
0x0f0b…0f22 Line {l1=0x15, l2=» BUCINUSE:=0;«, l3=0x15}
0x0f22…0f39 Line {l1=0x15, l2=» BLKINUSE:=0;«, l3=0x15}
0x0f39…0f4f Line {l1=0x14, l2=» RECINUSE:=0«, l3=0x14}
0x0f4f…0f5b Line {l1=0x0a, l2=» END«, l3=0x0a}
0x0f5b…0f68 Line {l1=0x0b, l2=» ELSE«, l3=0x0b}
0x0f68…0f76 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x0f76…0f8d Line {l1=0x15, l2=» BUCINUSE:=0;«, l3=0x15}
0x0f8d…0fa4 Line {l1=0x15, l2=» BLKINUSE:=0;«, l3=0x15}
0x0fa4…0fbb Line {l1=0x15, l2=» RECINUSE:=0;«, l3=0x15}
0x0fbb…0fd9 Line {l1=0x1c, l2=» FOR I:=1 TO NBUC DO«, l3=0x1c}
0x0fd9…0fe9 Line {l1=0x0e, l2=» BEGIN«, l3=0x0e}
0x0fe9…1011 Line {l1=0x26, l2=» BUC:=BUT+(I-1)*ENTRYSIZE+1;«, l3=0x26}
0x1011…1044 Line {l1=0x31, l2=» COPSEGS(Z,F,Z(BUC-1),BLTSIZE,BLT,LÆS);«, l3=0x31}
0x1044…106d Line {l1=0x27, l2=» IF IER<>0 THEN EXIT (IOPEN);«, l3=0x27}
0x106d…1083 Line {l1=0x14, l2=» IER:=-18;«, l3=0x14}
0x1083…1097 Line {l1=0x12, l2=» NUM:=0;«, l3=0x12}
0x1097…10bb Line {l1=0x22, l2=» FOR J:=1 TO BLKPRBUC DO«, l3=0x22}
0x10bb…10cd Line {l1=0x10, l2=» BEGIN«, l3=0x10}
0x10cd…10fa Line {l1=0x2b, l2=» BLKNUM:=BLT+1+(J-1)*ENTRYSIZE;«, l3=0x2b}
0x10fa…111c Line {l1=0x20, l2=» IF Z(BLKNUM)>0 THEN«, l3=0x20}
0x111c…1130 Line {l1=0x12, l2=» BEGIN«, l3=0x12}
0x1130…1154 Line {l1=0x22, l2=» NUM:=NUM+Z(BLKNUM);«, l3=0x22}
0x1154…117a Line {l1=0x24, l2=» BLKINUSE:=BLKINUSE+1;«, l3=0x24}
0x117a…1194 Line {l1=0x18, l2=» K:=BLKNUM«, l3=0x18}
0x1194…11a6 Line {l1=0x10, l2=» END«, l3=0x10}
0x11a6…11b7 Line {l1=0x0f, l2=» END;«, l3=0x0f}
0x11b7…11d1 Line {l1=0x18, l2=» IF NUM>0 THEN«, l3=0x18}
0x11d1…11e3 Line {l1=0x10, l2=» BEGIN«, l3=0x10}
0x11e3…1209 Line {l1=0x24, l2=» RECINUSE:=RECINUSE+NUM;«, l3=0x24}
0x1209…122d Line {l1=0x22, l2=» BUCINUSE:=BUCINUSE+1;«, l3=0x22}
0x122d…1252 Line {l1=0x23, l2=» FOR J:=1 TO KEYSIZE DO«, l3=0x23}
0x1252…1273 Line {l1=0x1f, l2=» Z(BUC+J):=Z(K+J)«, l3=0x1f}
0x1273…1284 Line {l1=0x0f, l2=» END;«, l3=0x0f}
0x1284…129e Line {l1=0x18, l2=» BUTCHG:=TRUE;«, l3=0x18}
0x129e…12b6 Line {l1=0x16, l2=» Z(BUC):=NUM«, l3=0x16}
0x12b6…12d1 Line {l1=0x19, l2=» END; (*FOR I*)«, l3=0x19}
0x12d1…12eb Line {l1=0x18, l2=» BUCINZONE:=NBUC«, l3=0x18}
0x12eb…12f7 Line {l1=0x0a, l2=» END«, l3=0x0a}
0x12f7…1310 Line {l1=0x17, l2=» END; (*FILEOPEN*)«, l3=0x17}
0x1310…1326 Line {l1=0x14, l2=» FILEOPEN:=TRUE;«, l3=0x14}
0x1326…1341 Line {l1=0x19, l2=» IF UPSTAT=SKRIV THEN«, l3=0x19}
0x1341…134d Line {l1=0x0a, l2=» BEGIN«, l3=0x0a}
0x134d…1362 Line {l1=0x13, l2=» F^(1):=NBUC;«, l3=0x13}
0x1362…1377 Line {l1=0x13, l2=» F^(2):=NBLK;«, l3=0x13}
0x1377…138c Line {l1=0x13, l2=» F^(3):=NREC;«, l3=0x13}
0x138c…13a5 Line {l1=0x17, l2=» F^(4):=BLKPRBUC;«, l3=0x17}
0x13a5…13be Line {l1=0x17, l2=» F^(5):=RECPRBUC;«, l3=0x17}
0x13be…13d7 Line {l1=0x17, l2=» F^(6):=RECPRBLK;«, l3=0x17}
0x13d7…13ef Line {l1=0x16, l2=» F^(7):=KEYFLDS;«, l3=0x16}
0x13ef…1407 Line {l1=0x16, l2=» F^(8):=FLHSIZE;«, l3=0x16}
0x1407…141f Line {l1=0x16, l2=» F^(9):=BUTSIZE;«, l3=0x16}
0x141f…1438 Line {l1=0x17, l2=» F^(10):=BLTSIZE;«, l3=0x17}
0x1438…1451 Line {l1=0x17, l2=» F^(11):=BLKSIZE;«, l3=0x17}
0x1451…146a Line {l1=0x17, l2=» F^(12):=RECSIZE;«, l3=0x17}
0x146a…1483 Line {l1=0x17, l2=» F^(13):=KEYSIZE;«, l3=0x17}
0x1483…149d Line {l1=0x18, l2=» F^(14):=SEGINFLH;«, l3=0x18}
0x149d…14b7 Line {l1=0x18, l2=» F^(15):=SEGINBUT;«, l3=0x18}
0x14b7…14d1 Line {l1=0x18, l2=» F^(16):=SEGINBUC;«, l3=0x18}
0x14d1…14eb Line {l1=0x18, l2=» F^(17):=SEGINBLT;«, l3=0x18}
0x14eb…1505 Line {l1=0x18, l2=» F^(18):=SEGINBLK;«, l3=0x18}
0x1505…151e Line {l1=0x17, l2=» F^(19):=INITREC;«, l3=0x17}
0x151e…1538 Line {l1=0x18, l2=» F^(20):=BUCINUSE;«, l3=0x18}
0x1538…1552 Line {l1=0x18, l2=» F^(21):=BLKINUSE;«, l3=0x18}
0x1552…156c Line {l1=0x18, l2=» F^(22):=RECINUSE;«, l3=0x18}
0x156c…159f Line {l1=0x31, l2=» IF FILEINIT THEN F^(23):=1 ELSE F^(23):=0;«, l3=0x31}
0x159f…15d2 Line {l1=0x31, l2=» IF FILEOPEN THEN F^(24):=1 ELSE F^(24):=0;«, l3=0x31}
0x15d2…15eb Line {l1=0x17, l2=» FOR I:=1 TO 9 DO«, l3=0x17}
0x15eb…15f9 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x15f9…161a Line {l1=0x1f, l2=» F^(22+I*3):=KEYPOS(I);«, l3=0x1f}
0x161a…163b Line {l1=0x1f, l2=» F^(23+I*3):=KEYLNG(I);«, l3=0x1f}
0x163b…165b Line {l1=0x1e, l2=» F^(24+I*3):=KEYSGN(I)«, l3=0x1e}
0x165b…1668 Line {l1=0x0b, l2=» END;«, l3=0x0b}
0x1668…167b Line {l1=0x11, l2=» SEEK(F,1);«, l3=0x11}
0x167b…168b Line {l1=0x0e, l2=» I:=IER;«, l3=0x0e}
0x168b…16a2 Line {l1=0x15, l2=» IER:=IORESULT;«, l3=0x15}
0x16a2…16c6 Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(IOPEN);«, l3=0x22}
0x16c6…16d6 Line {l1=0x0e, l2=» PUT(F);«, l3=0x0e}
0x16d6…16ed Line {l1=0x15, l2=» IER:=IORESULT;«, l3=0x15}
0x16ed…1711 Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(IOPEN);«, l3=0x22}
0x1711…1720 Line {l1=0x0d, l2=» IER:=I«, l3=0x0d}
0x1720…172a Line {l1=0x08, l2=» END«, l3=0x08}
0x172a…1732 Line {l1=0x06, l2=» END«, l3=0x06}
0x1732…1743 Line {l1=0x0f, l2=»END (*IOPEN*);«, l3=0x0f}
0x1743…174b Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x174b…178c Line {l1=0x3f, l2=»PROCEDURE READTABLE(VAR ZO:ISFHEAD;VAR F:ISF;BUTENTRY:INTEGER);«, l3=0x3f}
0x178c…1793 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x1793…179e Line {l1=0x09, l2=» IER:=0;«, l3=0x09}
0x179e…17ac Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x17ac…17cd Line {l1=0x1f, l2=» IF BUTENTRY<>BUCINZONE THEN«, l3=0x1f}
0x17cd…17d8 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x17d8…17ee Line {l1=0x14, l2=» IF BLKCHG THEN«, l3=0x14}
0x17ee…17fb Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x17fb…1819 Line {l1=0x1c, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1c}
0x1819…1861 Line {l1=0x46, l2=» COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);«, l3=0x46}
0x1861…1889 Line {l1=0x26, l2=» IF IER<>0 THEN EXIT(READTABLE)«, l3=0x26}
0x1889…1895 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x1895…18ab Line {l1=0x14, l2=» IF BLTCHG THEN«, l3=0x14}
0x18ab…18b8 Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x18b8…18d6 Line {l1=0x1c, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1c}
0x18d6…191e Line {l1=0x46, l2=» COPSEGS(Z,F,Z((BUCINZONE-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,SKRIV);«, l3=0x46}
0x191e…1946 Line {l1=0x26, l2=» IF IER<>0 THEN EXIT(READTABLE)«, l3=0x26}
0x1946…1952 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x1952…1968 Line {l1=0x14, l2=» BLKCHG:=FALSE;«, l3=0x14}
0x1968…197e Line {l1=0x14, l2=» BLTCHG:=FALSE;«, l3=0x14}
0x197e…19c1 Line {l1=0x41, l2=» COPSEGS(Z,F,Z((BUTENTRY-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,LÆS);«, l3=0x41}
0x19c1…19e8 Line {l1=0x25, l2=» IF IER<>0 THEN EXIT(READTABLE);«, l3=0x25}
0x19e8…1a04 Line {l1=0x1a, l2=» BUCINZONE:=BUTENTRY;«, l3=0x1a}
0x1a04…1a18 Line {l1=0x12, l2=» BLKINZONE:=0«, l3=0x12}
0x1a18…1a21 Line {l1=0x07, l2=» END«, l3=0x07}
0x1a21…1a27 Line {l1=0x04, l2=»END;«, l3=0x04}
0x1a27…1a2a Line {l1=0x01, l2=» «, l3=0x01}
0x1a2a…1a75 Line {l1=0x49, l2=»PROCEDURE READBLOCK(VAR ZO:ISFHEAD;VAR F:ISF;BLTENTRY,STARTPOST:INTEGER);«, l3=0x49}
0x1a75…1a7c Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x1a7c…1a87 Line {l1=0x09, l2=» IER:=0;«, l3=0x09}
0x1a87…1a95 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x1a95…1ab4 Line {l1=0x1d, l2=» IF BLTENTRY<>BLKINZONE THEN«, l3=0x1d}
0x1ab4…1abd Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x1abd…1ad1 Line {l1=0x12, l2=» IF BLKCHG THEN«, l3=0x12}
0x1ad1…1adc Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x1adc…1af8 Line {l1=0x1a, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1a}
0x1af8…1b3e Line {l1=0x44, l2=» COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);«, l3=0x44}
0x1b3e…1b54 Line {l1=0x14, l2=» BLKCHG:=FALSE;«, l3=0x14}
0x1b54…1b7a Line {l1=0x24, l2=» IF IER<>0 THEN EXIT(READBLOCK)«, l3=0x24}
0x1b7a…1b84 Line {l1=0x08, l2=» END;«, l3=0x08}
0x1b84…1bce Line {l1=0x48, l2=» COPSEGS(Z,F,Z((BLTENTRY-1)*ENTRYSIZE+BLT),BLKSIZE,BLK+(STARTPOST-1)*«, l3=0x48}
0x1bce…1c16 Line {l1=0x46, l2=» RECSIZE,LÆS);«, l3=0x46}
0x1c16…1c3b Line {l1=0x23, l2=» IF IER<>0 THEN EXIT(READBLOCK);«, l3=0x23}
0x1c3b…1c54 Line {l1=0x17, l2=» BLKINZONE:=BLTENTRY«, l3=0x17}
0x1c54…1c5b Line {l1=0x05, l2=» END«, l3=0x05}
0x1c5b…1c61 Line {l1=0x04, l2=»END;«, l3=0x04}
0x1c61…1c69 Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x1c69…1ca3 Line {l1=0x38, l2=»PROCEDURE REPORT(VAR ZO:ISFHEAD;VAR F:ISF;SBUC:INTEGER);«, l3=0x38}
0x1ca3…1cbb Line {l1=0x16, l2=»VAR I,J,K,L,N:INTEGER;«, l3=0x16}
0x1cbb…1cde Line {l1=0x21, l2=»PROCEDURE W(T:STRING;NR:INTEGER);«, l3=0x21}
0x1cde…1ce5 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x1ce5…1cf0 Line {l1=0x09, l2=» N:=N+1;«, l3=0x09}
0x1cf0…1d0c Line {l1=0x1a, l2=» WRITE(LIST,' ',T,NR:6);«, l3=0x1a}
0x1d0c…1d1b Line {l1=0x0d, l2=» IF N=6 THEN«, l3=0x0d}
0x1d1b…1d24 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x1d24…1d38 Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x1d38…1d42 Line {l1=0x08, l2=» N:=0«, l3=0x08}
0x1d42…1d49 Line {l1=0x05, l2=» END«, l3=0x05}
0x1d49…1d4f Line {l1=0x04, l2=»END;«, l3=0x04}
0x1d4f…1d56 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x1d56…1d64 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x1d64…1d6d Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x1d6d…1d8a Line {l1=0x1b, l2=» WRITELN(LIST,'REPORT');«, l3=0x1b}
0x1d8a…1d9e Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x1d9e…1dc9 Line {l1=0x29, l2=» WRITELN(LIST,'FILEHEAD-INFORMATION');«, l3=0x29}
0x1dc9…1ddd Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x1ddd…1de8 Line {l1=0x09, l2=» N:=0;«, l3=0x09}
0x1de8…1e16 Line {l1=0x2c, l2=» W('NBUC :',NBUC);W('NBLK :',NBLK);«, l3=0x2c}
0x1e16…1e30 Line {l1=0x18, l2=» W('NREC :',NREC);«, l3=0x18}
0x1e30…1e4e Line {l1=0x1c, l2=» W('BLKPRBUC:',BLKPRBUC);«, l3=0x1c}
0x1e4e…1e6c Line {l1=0x1c, l2=» W('RECPRBUC:',RECPRBUC);«, l3=0x1c}
0x1e6c…1e8a Line {l1=0x1c, l2=» W('RECPRBLK:',RECPRBLK);«, l3=0x1c}
0x1e8a…1ea7 Line {l1=0x1b, l2=» W('KEYFLDS :',KEYFLDS);«, l3=0x1b}
0x1ea7…1ec4 Line {l1=0x1b, l2=» W('FLHSIZE :',FLHSIZE);«, l3=0x1b}
0x1ec4…1ee1 Line {l1=0x1b, l2=» W('BUTSIZE :',BUTSIZE);«, l3=0x1b}
0x1ee1…1efe Line {l1=0x1b, l2=» W('BLTSIZE :',BLTSIZE);«, l3=0x1b}
0x1efe…1f1b Line {l1=0x1b, l2=» W('BLKSIZE :',BLKSIZE);«, l3=0x1b}
0x1f1b…1f38 Line {l1=0x1b, l2=» W('RECSIZE :',RECSIZE);«, l3=0x1b}
0x1f38…1f55 Line {l1=0x1b, l2=» W('KEYSIZE :',KEYSIZE);«, l3=0x1b}
0x1f55…1f73 Line {l1=0x1c, l2=» W('SEGINFLH:',SEGINFLH);«, l3=0x1c}
0x1f73…1f91 Line {l1=0x1c, l2=» W('SEGINBUT:',SEGINBUT);«, l3=0x1c}
0x1f91…1faf Line {l1=0x1c, l2=» W('SEGINBUC:',SEGINBUC);«, l3=0x1c}
0x1faf…1fcd Line {l1=0x1c, l2=» W('SEGINBLT:',SEGINBLT);«, l3=0x1c}
0x1fcd…1feb Line {l1=0x1c, l2=» W('SEGINBLK:',SEGINBLK);«, l3=0x1c}
0x1feb…1fff Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x1fff…2021 Line {l1=0x20, l2=» WRITELN(LIST,'FILE-STATUS');«, l3=0x20}
0x2021…2035 Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x2035…2052 Line {l1=0x1b, l2=» W('INITREC :',INITREC);«, l3=0x1b}
0x2052…2070 Line {l1=0x1c, l2=» W('BUCINUSE:',BUCINUSE);«, l3=0x1c}
0x2070…208e Line {l1=0x1c, l2=» W('BLKINUSE:',BLKINUSE);«, l3=0x1c}
0x208e…2099 Line {l1=0x09, l2=» N:=5;«, l3=0x09}
0x2099…20b7 Line {l1=0x1c, l2=» W('RECINUSE:',RECINUSE);«, l3=0x1c}
0x20b7…20d8 Line {l1=0x1f, l2=» WRITE(LIST,' FILEINIT: ');«, l3=0x1f}
0x20d8…211c Line {l1=0x42, l2=» IF FILEINIT THEN WRITE(LIST,' TRUE') ELSE WRITE(LIST,'FALSE');«, l3=0x42}
0x211c…213d Line {l1=0x1f, l2=» WRITE(LIST,' FILEOPEN: ');«, l3=0x1f}
0x213d…2185 Line {l1=0x46, l2=» IF FILEOPEN THEN WRITELN(LIST,' TRUE') ELSE WRITELN(LIST,'FALSE');«, l3=0x46}
0x2185…2199 Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x2199…21bf Line {l1=0x24, l2=» WRITELN(LIST,'KEY-DESCRIPTION');«, l3=0x24}
0x21bf…21d3 Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x21d3…220e Line {l1=0x39, l2=» WRITELN(LIST,' KEYFLD KEYPOS KEYLNG KEYSGN');«, l3=0x39}
0x220e…222a Line {l1=0x1a, l2=» FOR I:=1 TO KEYFLDS DO«, l3=0x1a}
0x222a…2269 Line {l1=0x3d, l2=» WRITELN(LIST,I:9,KEYPOS(I):9,KEYLNG(I):9,KEYSGN(I):9);«, l3=0x3d}
0x2269…227d Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x227d…229f Line {l1=0x20, l2=» WRITELN(LIST,'BUCKETTABLE');«, l3=0x20}
0x229f…22b3 Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x22b3…22df Line {l1=0x2a, l2=» WRITELN(LIST,' ADR NUM KEY');«, l3=0x2a}
0x22df…22f8 Line {l1=0x17, l2=» FOR I:=1 TO NBUC DO«, l3=0x17}
0x22f8…2303 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x2303…2346 Line {l1=0x41, l2=» WRITE(LIST,Z((I-1)*ENTRYSIZE+1):6,Z((I-1)*ENTRYSIZE+2):6);«, l3=0x41}
0x2346…238b Line {l1=0x43, l2=» FOR J:=1 TO KEYSIZE DO WRITE(LIST,Z((I-1)*ENTRYSIZE+2+J):6);«, l3=0x43}
0x238b…23a1 Line {l1=0x14, l2=» WRITELN(LIST)«, l3=0x14}
0x23a1…23ab Line {l1=0x08, l2=» END;«, l3=0x08}
0x23ab…23bf Line {l1=0x12, l2=» WRITELN(LIST);«, l3=0x12}
0x23bf…23db Line {l1=0x1a, l2=» FOR I:=SBUC TO NBUC DO«, l3=0x1a}
0x23db…23e6 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x23e6…240b Line {l1=0x23, l2=» WRITELN(LIST,I:5,'. BUCKET');«, l3=0x23}
0x240b…2421 Line {l1=0x14, l2=» WRITELN(LIST);«, l3=0x14}
0x2421…243b Line {l1=0x18, l2=» READTABLE(ZO,F,I);«, l3=0x18}
0x243b…245f Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(REPORT);«, l3=0x22}
0x245f…2482 Line {l1=0x21, l2=» WRITELN(LIST,'BLOCKTABLE');«, l3=0x21}
0x2482…2498 Line {l1=0x14, l2=» WRITELN(LIST);«, l3=0x14}
0x2498…24c6 Line {l1=0x2c, l2=» WRITELN(LIST,' ADR NUM KEY');«, l3=0x2c}
0x24c6…24e5 Line {l1=0x1d, l2=» FOR J:=1 TO BLKPRBUC DO«, l3=0x1d}
0x24e5…24f2 Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x24f2…2531 Line {l1=0x3d, l2=» WRITE(LIST,Z((J-1)*ENTRYSIZE+BLT):6,Z((J-1)*ENTRYSIZE«, l3=0x3d}
0x2531…254c Line {l1=0x19, l2=» +BLT+1):6);«, l3=0x19}
0x254c…2596 Line {l1=0x48, l2=» FOR K:=1 TO KEYSIZE DO WRITE(LIST,Z((J-1)*ENTRYSIZE+BLT+1+K):6);«, l3=0x48}
0x2596…25ad Line {l1=0x15, l2=» WRITELN(LIST)«, l3=0x15}
0x25ad…25b9 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x25b9…25cf Line {l1=0x14, l2=»(* WRITELN(LIST);«, l3=0x14}
0x25cf…25ee Line {l1=0x1d, l2=» FOR J:=1 TO BLKPRBUC DO«, l3=0x1d}
0x25ee…25fb Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x25fb…262f Line {l1=0x32, l2=» WRITE(LIST,I:5,'. BUCKET ',J:5,'. BLOCK');«, l3=0x32}
0x262f…264d Line {l1=0x1c, l2=» READBLOCK(ZO,F,J,1);«, l3=0x1c}
0x264d…2673 Line {l1=0x24, l2=» IF IER<>0 THEN EXIT(REPORT);«, l3=0x24}
0x2673…2694 Line {l1=0x1f, l2=» FOR K:=1 TO RECPRBLK DO«, l3=0x1f}
0x2694…26a3 Line {l1=0x0d, l2=» BEGIN«, l3=0x0d}
0x26a3…26d1 Line {l1=0x2c, l2=» IF K>Z(BLT+(J-1)*ENTRYSIZE+1) THEN«, l3=0x2c}
0x26d1…26f2 Line {l1=0x1f, l2=» WRITE(LIST,' *')«, l3=0x1f}
0x26f2…2719 Line {l1=0x25, l2=» ELSE WRITE(LIST,' ');«, l3=0x25}
0x2719…273b Line {l1=0x20, l2=» FOR L:=1 TO RECSIZE DO«, l3=0x20}
0x273b…2771 Line {l1=0x34, l2=» WRITE(LIST,Z(BLK+(K-1)*RECSIZE+L-1));«, l3=0x34}
0x2771…2790 Line {l1=0x1d, l2=» WRITELN(LIST);«, l3=0x1d}
0x2790…279e Line {l1=0x0c, l2=» END;«, l3=0x0c}
0x279e…27b5 Line {l1=0x15, l2=» WRITELN(LIST)«, l3=0x15}
0x27b5…27c3 Line {l1=0x0c, l2=» END;*)«, l3=0x0c}
0x27c3…27d8 Line {l1=0x13, l2=» WRITELN(LIST)«, l3=0x13}
0x27d8…27e1 Line {l1=0x07, l2=» END«, l3=0x07}
0x27e1…27e8 Line {l1=0x05, l2=» END«, l3=0x05}
0x27e8…27ee Line {l1=0x04, l2=»END;«, l3=0x04}
0x27ee…27f6 Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x27f6…2819 Line {l1=0x21, l2=»PROCEDURE ERROR(VAR FIL:FILNAVN);«, l3=0x21}
0x2819…2820 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x2820…285f Line {l1=0x3d, l2=» WRITELN('FEJL I REGISTER ',FIL,' FEJLKODE ',IER,' RETURN');«, l3=0x3d}
0x285f…289d Line {l1=0x3c, l2=» CH:=' ';EDIT(CH);IF CH='R' THEN REPORT(ZONE.H,REGISTER,1);«, l3=0x3c}
0x289d…28ae Line {l1=0x0f, l2=» EXIT(RAPPORT)«, l3=0x0f}
0x28ae…28b4 Line {l1=0x04, l2=»END;«, l3=0x04}
0x28b4…28d7 Line {l1=0x21, l2=»PROCEDURE OFEJL(VAR FIL:FILNAVN);«, l3=0x21}
0x28d7…28e7 Line {l1=0x0e, l2=»VAR I:INTEGER;«, l3=0x0e}
0x28e7…28ee Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x28ee…28ff Line {l1=0x0f, l2=» GOTOXY(1,20);«, l3=0x0f}
0x28ff…294e Line {l1=0x4d, l2=» WRITELN('REGISTERFEJL ',IER,' I ',FIL,' . SITUATIONEN ER FORSØGT REDDET.');«, l3=0x4d}
0x294e…297e Line {l1=0x2e, l2=» WRITELN('TAST 0, HVIS DER SKAL FORTSÆTTES');«, l3=0x2e}
0x297e…29b7 Line {l1=0x37, l2=» REPEAT GOTOXY(40,21);READLN;READ(I) UNTIL IORESULT=0;«, l3=0x37}
0x29b7…29d3 Line {l1=0x1a, l2=» IF I<>0 THEN ERROR(FIL);«, l3=0x1a}
0x29d3…29e2 Line {l1=0x0d, l2=» CLEARSCREEN«, l3=0x0d}
0x29e2…29e8 Line {l1=0x04, l2=»END;«, l3=0x04}
0x29e8…29f0 Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x29f0…29f7 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x29f7…2a07 Line {l1=0x0e, l2=» CLEARSCREEN;«, l3=0x0e}
0x2a07…2a38 Line {l1=0x2f, l2=» WRITE('INDTAST FILNAVN ');READLN;READ(FNAVN);«, l3=0x2f}
0x2a38…2a58 Line {l1=0x1e, l2=» ZONE.H.FILENAME:=' ';«, l3=0x1e}
0x2a58…2a99 Line {l1=0x3f, l2=» FOR I:=1 TO POS(':',FNAVN)-1 DO ZONE.H.FILENAME(I):=FNAVN(I);«, l3=0x3f}
0x2a99…2ab5 Line {l1=0x1a, l2=» REWRITE(REGISTER,FNAVN);«, l3=0x1a}
0x2ab5…2afa Line {l1=0x43, l2=» IOPEN(ZONE.H,REGISTER,LÆS);IF IER<>0 THEN OFEJL(ZONE.H.FILENAME);«, l3=0x43}
0x2afa…2b25 Line {l1=0x29, l2=» WRITELN('REPORT, SBUC');READLN;READ(I);«, l3=0x29}
0x2b25…2b43 Line {l1=0x1c, l2=» REPORT(ZONE.H,REGISTER,I) «, l3=0x1c}
0x2b43…2b49 Line {l1=0x04, l2=»END.«, l3=0x04}
0x2b49…2b60 00 00 4f 4e 45 2e 48 2c 52 45 47 49 53 54 45 52 2c 49 29 20 1c 04 45 ┆ ONE.H,REGISTER,I) E┆
0x2b60…2b80 4e 44 2e 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ND. ┆
0x2b80…2ba0 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ ┆
[…0x2d…]
0x3140…3160 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 63 ┆ c┆