|
|
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: 2528 (0x9e0)
Types: TextFile
Notes: Mikados_K
Names: »DELET1.K«
└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
└─⟦this⟧ »DELET1.K«
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
└─⟦this⟧ »DELET1.K«
(*$P*)
PROCEDURE DELETE;
VAR J,K:INTEGER;
BEGIN
IER:=0;
WITH FILEHEAD DO
IF FILEOPEN THEN
IF FILEINIT THEN
BEGIN
FINDPOST;
IF IER=0 THEN
BEGIN
IF RECINUSE>1 THEN
BEGIN
IF BLKENTRY=Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1) THEN
BEGIN
IF BLKENTRY=1 THEN
BEGIN
IF Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1)=1 THEN BUCINUSE:=BUCINUSE-1
ELSE
IF COMPARE(KEY1,BUT+(BUCINZONE-1)*ENTRYSIZE+2)=0 THEN
BEGIN
K:=BLKINZONE-1;
WHILE (K>0) AND (Z(BLT+(K-1)*ENTRYSIZE+1)=0) DO K:=K-1;
IF K=0 THEN BEGIN IER:=-105;EXIT(OBEY) END;
FOR J:=1 TO KEYSIZE DO
Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1+J):=Z(BLT+(K-1)*ENTRYSIZE+1+J)
END;
BLKINUSE:=BLKINUSE-1
END
ELSE
SÆTKEY(BLKENTRY-1)
END
ELSE
FSKDIBLK(-BLKENTRY);
Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1):=Z(BLT+(BLKINZONE-1)*ENTRYSIZE+1)-1;
Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1):=Z(BUT+(BUCINZONE-1)*ENTRYSIZE+1)-1;
RECINUSE:=RECINUSE-1;
BLKCHG:=TRUE;BLTCHG:=TRUE;BUTCHG:=TRUE;
NEXTREC;
IER:=0
END ELSE IER:=-9
END ELSE IF IER=-1 THEN IER:=-6
END ELSE IER:=-12 ELSE IER:=-3
END;