|
|
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: 2496 (0x9c0)
Types: TextFile
Notes: Mikados_K
Names: »READPROC.K«
└─⟦eb89399bc⟧ Bits:30008990 SOM ISFORIG, MEN KUN K-FILER
└─⟦this⟧ »READPROC.K«
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;
0x000…041 Line {l1=0x3f, l2=»PROCEDURE READTABLE(VAR ZO:ISFHEAD;VAR F:ISF;BUTENTRY:INTEGER);«, l3=0x3f}
0x041…048 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x048…053 Line {l1=0x09, l2=» IER:=0;«, l3=0x09}
0x053…061 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x061…082 Line {l1=0x1f, l2=» IF BUTENTRY<>BUCINZONE THEN«, l3=0x1f}
0x082…08d Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x08d…0a3 Line {l1=0x14, l2=» IF BLKCHG THEN«, l3=0x14}
0x0a3…0b0 Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x0b0…0ce Line {l1=0x1c, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1c}
0x0ce…116 Line {l1=0x46, l2=» COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);«, l3=0x46}
0x116…13e Line {l1=0x26, l2=» IF IER<>0 THEN EXIT(READTABLE)«, l3=0x26}
0x13e…14a Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x14a…160 Line {l1=0x14, l2=» IF BLTCHG THEN«, l3=0x14}
0x160…16d Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x16d…18b Line {l1=0x1c, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1c}
0x18b…1d3 Line {l1=0x46, l2=» COPSEGS(Z,F,Z((BUCINZONE-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,SKRIV);«, l3=0x46}
0x1d3…1fb Line {l1=0x26, l2=» IF IER<>0 THEN EXIT(READTABLE)«, l3=0x26}
0x1fb…207 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x207…21d Line {l1=0x14, l2=» BLKCHG:=FALSE;«, l3=0x14}
0x21d…233 Line {l1=0x14, l2=» BLTCHG:=FALSE;«, l3=0x14}
0x233…276 Line {l1=0x41, l2=» COPSEGS(Z,F,Z((BUTENTRY-1)*ENTRYSIZE+BUT),BLTSIZE,BLT,LÆS);«, l3=0x41}
0x276…29d Line {l1=0x25, l2=» IF IER<>0 THEN EXIT(READTABLE);«, l3=0x25}
0x29d…2b9 Line {l1=0x1a, l2=» BUCINZONE:=BUTENTRY;«, l3=0x1a}
0x2b9…2cd Line {l1=0x12, l2=» BLKINZONE:=0«, l3=0x12}
0x2cd…2d6 Line {l1=0x07, l2=» END«, l3=0x07}
0x2d6…2dc Line {l1=0x04, l2=»END;«, l3=0x04}
0x2dc…2df Line {l1=0x01, l2=» «, l3=0x01}
0x2df…32a Line {l1=0x49, l2=»PROCEDURE READBLOCK(VAR ZO:ISFHEAD;VAR F:ISF;BLTENTRY,STARTPOST:INTEGER);«, l3=0x49}
0x32a…331 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x331…33c Line {l1=0x09, l2=» IER:=0;«, l3=0x09}
0x33c…34a Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x34a…369 Line {l1=0x1d, l2=» IF BLTENTRY<>BLKINZONE THEN«, l3=0x1d}
0x369…372 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x372…386 Line {l1=0x12, l2=» IF BLKCHG THEN«, l3=0x12}
0x386…391 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x391…3ad Line {l1=0x1a, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1a}
0x3ad…3f3 Line {l1=0x44, l2=» COPSEGS(Z,F,Z((BLKINZONE-1)*ENTRYSIZE+BLT),BLKSIZE,BLK,SKRIV);«, l3=0x44}
0x3f3…409 Line {l1=0x14, l2=» BLKCHG:=FALSE;«, l3=0x14}
0x409…42f Line {l1=0x24, l2=» IF IER<>0 THEN EXIT(READBLOCK)«, l3=0x24}
0x42f…439 Line {l1=0x08, l2=» END;«, l3=0x08}
0x439…483 Line {l1=0x48, l2=» COPSEGS(Z,F,Z((BLTENTRY-1)*ENTRYSIZE+BLT),BLKSIZE,BLK+(STARTPOST-1)*«, l3=0x48}
0x483…4cb Line {l1=0x46, l2=» RECSIZE,LÆS);«, l3=0x46}
0x4cb…4f0 Line {l1=0x23, l2=» IF IER<>0 THEN EXIT(READBLOCK);«, l3=0x23}
0x4f0…509 Line {l1=0x17, l2=» BLKINZONE:=BLTENTRY«, l3=0x17}
0x509…510 Line {l1=0x05, l2=» END«, l3=0x05}
0x510…516 Line {l1=0x04, l2=»END;«, l3=0x04}
0x516…520 00 00 53 49 5a 45 3a 38 2c 42 ┆ SIZE:8,B┆
0x520…540 4c 4b 2b 28 53 54 41 52 54 50 4f 53 54 2d 31 29 2a 4b 44 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆LK+(STARTPOST-1)*KD ┆
0x540…560 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆ ┆
0x560…580 20 20 20 20 20 20 20 20 20 20 20 20 52 45 43 53 49 5a 45 3a 38 29 3b 44 13 20 20 46 4f 52 20 49 ┆ RECSIZE:8);D FOR I┆
0x580…5a0 3a 3d 31 20 54 4f 20 32 35 20 44 4f 13 3f 20 20 57 52 49 54 45 4c 4e 28 4c 49 53 54 2c 5a 28 42 ┆:=1 TO 25 DO ? WRITELN(LIST,Z(B┆
0x5a0…5c0 4c 4b 2b 28 49 2d 31 29 2a 52 45 43 53 49 5a 45 29 3a 38 2c 5a 28 42 4c 4b 2b 31 2b 28 49 2d 31 ┆LK+(I-1)*RECSIZE):8,Z(BLK+1+(I-1┆
0x5c0…5e0 29 2a 52 45 43 53 49 5a 45 29 3a 38 2c 3f 29 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 5a 28 ┆)*RECSIZE):8,?) Z(┆
0x5e0…600 42 4c 4b 2b 32 2b 28 49 2d 31 29 2a 52 45 43 53 49 5a 45 29 3a 38 29 3b 29 05 20 45 4e 44 3b 05 ┆BLK+2+(I-1)*RECSIZE):8);) END; ┆
0x600…620 23 20 20 20 20 49 46 20 49 45 52 3c 3e 30 20 54 48 45 4e 20 45 58 49 54 28 52 45 41 44 42 4c 4f ┆# IF IER<>0 THEN EXIT(READBLO┆
0x620…640 43 4b 29 3b 23 17 20 20 20 20 42 4c 4b 49 4e 5a 4f 4e 45 3a 3d 42 4c 54 45 4e 54 52 59 17 05 20 ┆CK);# BLKINZONE:=BLTENTRY ┆
0x640…660 20 45 4e 44 05 04 45 4e 44 3b 04 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ┆ END END; ┆
0x660…680 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 ┆ ┆
[…0x1a…]