|
|
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: »ICLOSE.K«
└─⟦a3d38fea3⟧ Bits:30008985 PRODUKTION NBT.
└─⟦this⟧ »ICLOSE.K«
SEGMENT PROCEDURE ICLOSE(VAR ZO:ISFHEAD;VAR F:ISF);
VAR I:INTEGER;
BEGIN
IER:=0;
WITH ZO DO
IF FILEOPEN THEN
BEGIN
IF NOT FILEINIT AND (RECINUSE>0) THEN
BEGIN
FILEINIT:=TRUE;
INITREC:=RECINUSE
END;
IF UPSTAT=SKRIV THEN
BEGIN
IF BLKCHG THEN
BEGIN
COPSEGS(Z,F,Z(BLT+(BLKINZONE-1)*ENTRYSIZE),BLKSIZE,BLK,SKRIV);
IF IER<>0 THEN EXIT(ICLOSE)
END;
IF BLTCHG THEN
BEGIN
COPSEGS(Z,F,Z(BUT+(BUCINZONE-1)*ENTRYSIZE),BLTSIZE,BLT,SKRIV);
IF IER<>0 THEN EXIT(ICLOSE)
END;
IF BUTCHG THEN
BEGIN
COPSEGS(Z,F,2,BUTSIZE,BUT,SKRIV);
IF IER<>0 THEN EXIT(ICLOSE)
END;
FILEOPEN:=FALSE;
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);
IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;
PUT(F);
IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;
END;
CLOSE(F);
IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;
FILEOPEN:=FALSE
END
ELSE IER:=-3
END;
0x000…035 Line {l1=0x33, l2=»SEGMENT PROCEDURE ICLOSE(VAR ZO:ISFHEAD;VAR F:ISF);«, l3=0x33}
0x035…045 Line {l1=0x0e, l2=»VAR I:INTEGER;«, l3=0x0e}
0x045…04c Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x04c…057 Line {l1=0x09, l2=» IER:=0;«, l3=0x09}
0x057…065 Line {l1=0x0c, l2=» WITH ZO DO«, l3=0x0c}
0x065…079 Line {l1=0x12, l2=» IF FILEOPEN THEN«, l3=0x12}
0x079…082 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x082…0ad Line {l1=0x29, l2=» IF NOT FILEINIT AND (RECINUSE>0) THEN«, l3=0x29}
0x0ad…0b8 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x0b8…0cf Line {l1=0x15, l2=» FILEINIT:=TRUE;«, l3=0x15}
0x0cf…0e8 Line {l1=0x17, l2=» INITREC:=RECINUSE«, l3=0x17}
0x0e8…0f2 Line {l1=0x08, l2=» END;«, l3=0x08}
0x0f2…10c Line {l1=0x18, l2=» IF UPSTAT=SKRIV THEN«, l3=0x18}
0x10c…117 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x117…12b Line {l1=0x12, l2=» IF BLKCHG THEN«, l3=0x12}
0x12b…136 Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x136…17d Line {l1=0x45, l2=» COPSEGS(Z,F,Z(BLT+(BLKINZONE-1)*ENTRYSIZE),BLKSIZE,BLK,SKRIV);«, l3=0x45}
0x17d…1a1 Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(ICLOSE)«, l3=0x22}
0x1a1…1ab Line {l1=0x08, l2=» END;«, l3=0x08}
0x1ab…1bf Line {l1=0x12, l2=» IF BLTCHG THEN«, l3=0x12}
0x1bf…1ca Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x1ca…211 Line {l1=0x45, l2=» COPSEGS(Z,F,Z(BUT+(BUCINZONE-1)*ENTRYSIZE),BLTSIZE,BLT,SKRIV);«, l3=0x45}
0x211…235 Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(ICLOSE)«, l3=0x22}
0x235…23f Line {l1=0x08, l2=» END;«, l3=0x08}
0x23f…253 Line {l1=0x12, l2=» IF BUTCHG THEN«, l3=0x12}
0x253…25e Line {l1=0x09, l2=» BEGIN«, l3=0x09}
0x25e…288 Line {l1=0x28, l2=» COPSEGS(Z,F,2,BUTSIZE,BUT,SKRIV);«, l3=0x28}
0x288…2ac Line {l1=0x22, l2=» IF IER<>0 THEN EXIT(ICLOSE)«, l3=0x22}
0x2ac…2b6 Line {l1=0x08, l2=» END;«, l3=0x08}
0x2b6…2cc Line {l1=0x14, l2=» FILEOPEN:=FALSE;«, l3=0x14}
0x2cc…2e1 Line {l1=0x13, l2=» F^(1):=NBUC;«, l3=0x13}
0x2e1…2f6 Line {l1=0x13, l2=» F^(2):=NBLK;«, l3=0x13}
0x2f6…30b Line {l1=0x13, l2=» F^(3):=NREC;«, l3=0x13}
0x30b…324 Line {l1=0x17, l2=» F^(4):=BLKPRBUC;«, l3=0x17}
0x324…33d Line {l1=0x17, l2=» F^(5):=RECPRBUC;«, l3=0x17}
0x33d…356 Line {l1=0x17, l2=» F^(6):=RECPRBLK;«, l3=0x17}
0x356…36e Line {l1=0x16, l2=» F^(7):=KEYFLDS;«, l3=0x16}
0x36e…386 Line {l1=0x16, l2=» F^(8):=FLHSIZE;«, l3=0x16}
0x386…39e Line {l1=0x16, l2=» F^(9):=BUTSIZE;«, l3=0x16}
0x39e…3b7 Line {l1=0x17, l2=» F^(10):=BLTSIZE;«, l3=0x17}
0x3b7…3d0 Line {l1=0x17, l2=» F^(11):=BLKSIZE;«, l3=0x17}
0x3d0…3e9 Line {l1=0x17, l2=» F^(12):=RECSIZE;«, l3=0x17}
0x3e9…402 Line {l1=0x17, l2=» F^(13):=KEYSIZE;«, l3=0x17}
0x402…41c Line {l1=0x18, l2=» F^(14):=SEGINFLH;«, l3=0x18}
0x41c…436 Line {l1=0x18, l2=» F^(15):=SEGINBUT;«, l3=0x18}
0x436…450 Line {l1=0x18, l2=» F^(16):=SEGINBUC;«, l3=0x18}
0x450…46a Line {l1=0x18, l2=» F^(17):=SEGINBLT;«, l3=0x18}
0x46a…484 Line {l1=0x18, l2=» F^(18):=SEGINBLK;«, l3=0x18}
0x484…49d Line {l1=0x17, l2=» F^(19):=INITREC;«, l3=0x17}
0x49d…4b7 Line {l1=0x18, l2=» F^(20):=BUCINUSE;«, l3=0x18}
0x4b7…4d1 Line {l1=0x18, l2=» F^(21):=BLKINUSE;«, l3=0x18}
0x4d1…4eb Line {l1=0x18, l2=» F^(22):=RECINUSE;«, l3=0x18}
0x4eb…51e Line {l1=0x31, l2=» IF FILEINIT THEN F^(23):=1 ELSE F^(23):=0;«, l3=0x31}
0x51e…551 Line {l1=0x31, l2=» IF FILEOPEN THEN F^(24):=1 ELSE F^(24):=0;«, l3=0x31}
0x551…56a Line {l1=0x17, l2=» FOR I:=1 TO 9 DO«, l3=0x17}
0x56a…578 Line {l1=0x0c, l2=» BEGIN«, l3=0x0c}
0x578…599 Line {l1=0x1f, l2=» F^(22+I*3):=KEYPOS(I);«, l3=0x1f}
0x599…5ba Line {l1=0x1f, l2=» F^(23+I*3):=KEYLNG(I);«, l3=0x1f}
0x5ba…5da Line {l1=0x1e, l2=» F^(24+I*3):=KEYSGN(I)«, l3=0x1e}
0x5da…5e7 Line {l1=0x0b, l2=» END;«, l3=0x0b}
0x5e7…5fa Line {l1=0x11, l2=» SEEK(F,1);«, l3=0x11}
0x5fa…63c Line {l1=0x40, l2=» IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;«, l3=0x40}
0x63c…64c Line {l1=0x0e, l2=» PUT(F);«, l3=0x0e}
0x64c…68e Line {l1=0x40, l2=» IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;«, l3=0x40}
0x68e…698 Line {l1=0x08, l2=» END;«, l3=0x08}
0x698…6a7 Line {l1=0x0d, l2=» CLOSE(F);«, l3=0x0d}
0x6a7…6e6 Line {l1=0x3d, l2=» IF IORESULT<>0 THEN BEGIN IER:=IORESULT;EXIT(ICLOSE) END;«, l3=0x3d}
0x6e6…6fb Line {l1=0x13, l2=» FILEOPEN:=FALSE«, l3=0x13}
0x6fb…702 Line {l1=0x05, l2=» END«, l3=0x05}
0x702…712 Line {l1=0x0e, l2=» ELSE IER:=-3«, l3=0x0e}
0x712…718 Line {l1=0x04, l2=»END;«, l3=0x04}
0x718…720 00 00 00 00 00 00 00 00 ┆ ┆
0x720…740 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 ┆ ┆
[…0x14…]