|
|
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: 1248 (0x4e0)
Types: TextFile
Notes: Mikados_K
Names: »INITIATE.K«
└─⟦a3d38fea3⟧ Bits:30008985 PRODUKTION NBT.
└─⟦this⟧ »INITIATE.K«
SEGMENT PROCEDURE INITIATE(VAR ZO:ISFHEAD;VAR F:ISF;IREC:INTEGER);
VAR I,BUCADR,BLKADR,J:INTEGER;
BEGIN
WITH ZO DO
IF FILEOPEN THEN
BEGIN
IER:=0;
IF FILEINIT THEN IER:=-13;
IF RECINUSE>0 THEN IER:=-13;
IF IREC<1 THEN IER:=-5;
IF IREC>NREC THEN IER:=-5;
IF IER<>0 THEN EXIT(INITIATE);
FOR I:=1 TO NBUC DO
BEGIN
BUCADR:=2+SEGINBUT+SEGINBUC*(I-1);
Z(BUT+(I-1)*ENTRYSIZE):=BUCADR;
Z(BUT+(I-1)*ENTRYSIZE+1):=0;
FOR J:=1 TO BLKPRBUC DO
BEGIN
BLKADR:=BUCADR+SEGINBLT+SEGINBLK*(J-1);
Z(BLT+(J-1)*ENTRYSIZE):=BLKADR;
Z(BLT+(J-1)*ENTRYSIZE+1):=0;
(* COPSEGS(Z,F,BLKADR,BLKSIZE,BLK,SKRIV); UNØDVENDIG *)
END;
IF UPSTAT=SKRIV THEN
COPSEGS(Z,F,BUCADR,BLTSIZE,BLT,SKRIV);
IF IER <>0 THEN EXIT(INITIATE)
END;
IF UPSTAT=SKRIV THEN
COPSEGS(Z,F,2,BUTSIZE,BUT,SKRIV);
IF IER <>0 THEN EXIT(INITIATE);
INITREC:=IREC;
IRPRBUC:=(IREC-1)DIV NBUC +1;
IRPRBLK:=(IRPRBUC-1) DIV BLKPRBUC +1
END
ELSE
IER:=-3
END;
0x000…044 Line {l1=0x42, l2=»SEGMENT PROCEDURE INITIATE(VAR ZO:ISFHEAD;VAR F:ISF;IREC:INTEGER);«, l3=0x42}
0x044…064 Line {l1=0x1e, l2=»VAR I,BUCADR,BLKADR,J:INTEGER;«, l3=0x1e}
0x064…06b Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x06b…079 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x079…08d Line {l1=0x12, l2=» IF FILEOPEN THEN«, l3=0x12}
0x08d…096 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x096…0a3 Line {l1=0x0b, l2=» IER:=0;«, l3=0x0b}
0x0a3…0c3 Line {l1=0x1e, l2=» IF FILEINIT THEN IER:=-13;«, l3=0x1e}
0x0c3…0e5 Line {l1=0x20, l2=» IF RECINUSE>0 THEN IER:=-13;«, l3=0x20}
0x0e5…102 Line {l1=0x1b, l2=» IF IREC<1 THEN IER:=-5;«, l3=0x1b}
0x102…122 Line {l1=0x1e, l2=» IF IREC>NREC THEN IER:=-5;«, l3=0x1e}
0x122…146 Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(INITIATE);«, l3=0x22}
0x146…15f Line {l1=0x17, l2=» FOR I:=1 TO NBUC DO«, l3=0x17}
0x15f…16a Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x16a…194 Line {l1=0x28, l2=» BUCADR:=2+SEGINBUT+SEGINBUC*(I-1);«, l3=0x28}
0x194…1bb Line {l1=0x25, l2=» Z(BUT+(I-1)*ENTRYSIZE):=BUCADR;«, l3=0x25}
0x1bb…1df Line {l1=0x22, l2=» Z(BUT+(I-1)*ENTRYSIZE+1):=0;«, l3=0x22}
0x1df…1fe Line {l1=0x1d, l2=» FOR J:=1 TO BLKPRBUC DO«, l3=0x1d}
0x1fe…20b Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x20b…23c Line {l1=0x2f, l2=» BLKADR:=BUCADR+SEGINBLT+SEGINBLK*(J-1);«, l3=0x2f}
0x23c…265 Line {l1=0x27, l2=» Z(BLT+(J-1)*ENTRYSIZE):=BLKADR;«, l3=0x27}
0x265…28b Line {l1=0x24, l2=» Z(BLT+(J-1)*ENTRYSIZE+1):=0;«, l3=0x24}
0x28b…2ca Line {l1=0x3d, l2=»(* COPSEGS(Z,F,BLKADR,BLKSIZE,BLK,SKRIV); UNØDVENDIG *)«, l3=0x3d}
0x2ca…2d6 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x2d6…2f2 Line {l1=0x1a, l2=» IF UPSTAT=SKRIV THEN«, l3=0x1a}
0x2f2…320 Line {l1=0x2c, l2=» COPSEGS(Z,F,BUCADR,BLTSIZE,BLT,SKRIV);«, l3=0x2c}
0x320…346 Line {l1=0x24, l2=» IF IER <>0 THEN EXIT(INITIATE)«, l3=0x24}
0x346…350 Line {l1=0x08, l2=» END;«, l3=0x08}
0x350…36a Line {l1=0x18, l2=» IF UPSTAT=SKRIV THEN«, l3=0x18}
0x36a…391 Line {l1=0x25, l2=» COPSEGS(Z,F,2,BUTSIZE,BUT,SKRIV);«, l3=0x25}
0x391…3b6 Line {l1=0x23, l2=» IF IER <>0 THEN EXIT(INITIATE);«, l3=0x23}
0x3b6…3ca Line {l1=0x12, l2=» INITREC:=IREC;«, l3=0x12}
0x3ca…3ed Line {l1=0x21, l2=» IRPRBUC:=(IREC-1)DIV NBUC +1;«, l3=0x21}
0x3ed…417 Line {l1=0x28, l2=» IRPRBLK:=(IRPRBUC-1) DIV BLKPRBUC +1«, l3=0x28}
0x417…41e Line {l1=0x05, l2=» END«, l3=0x05}
0x41e…426 Line {l1=0x06, l2=» ELSE«, l3=0x06}
0x426…431 Line {l1=0x09, l2=» IER:=-3«, l3=0x09}
0x431…437 Line {l1=0x04, l2=»END;«, l3=0x04}
0x437…440 00 00 20 42 4c 4b 50 52 42 ┆ BLKPRB┆
0x440…460 55 43 20 2b 31 28 05 20 20 45 4e 44 05 06 20 20 45 4c 53 45 06 09 20 20 49 45 52 3a 3d 2d 33 09 ┆UC +1( END ELSE IER:=-3 ┆
0x460…480 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 00 00 00 00 00 ┆ END; ┆
0x480…4a0 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 ┆ ┆
[…0x2…]