|
|
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: 6240 (0x1860)
Types: TextFile
Notes: Mikados_K
Names: »SYSFIVED.K«
└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
└─⟦this⟧ »SYSFIVED.K«
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
└─⟦this⟧ »SYSFIVED.K«
PROGRAM SYSFIVED;
TYPE
NIVEAU=(MENIG,SERGENT,LØJTNANT,KAPTAJN,MAJOR,OBERST,GENERAL,HSM,UMULIUS);
AR=ARRAY (-4..-4) OF INTEGER;
ARAR=PACKED ARRAY (-11..-10) OF CHAR;
RAR=ARRAY (0..0) OF REAL;
PPOST=RECORD
AA:ARAR;
A:AR;
AAA:RAR;
CONTENTS: ARRAY (1..250) OF INTEGER
END;
LISTTYPE=RECORD
NAVN:STRING(30); (*LISTENS BETEGNELSE*)
DESCLIST:STRING(18); (*NAVN PÅ LISTEDEFINITIONSFILEN*)
LISTENIVEAU:NIVEAU; (*ADGANGSNIVEAUET TIL LISTEN*)
BLANKTYP, (*BLANKETTYPE*)
ZPOSTNR:INTEGER (*KONSTANTPOSTENS NR*)
END;
LISTFILE=FILE OF LISTTYPE; (*FORTEGNELSE OVER ALLE DEFINEREDE LISTER*)
ZEROFIL=FILE OF PPOST;
FILDESC=RECORD
FILNAVN:STRING(18); (*ISF-FILENS NAVN*)
DESCNAVN:STRING(18); (*NAVNET PÅ DEN ENKELTE ISF-FILS BESKRIVELSESFIL*)
POSTNAVN: STRING(18); (*NAVNET PÅ ET INDIVID I FILEN*)
REGNAVN:STRING(18); (*FILENS BETEGNELSE*)
VEDLNIVEAU:NIVEAU;(*ADGANGSNIVEAU FOR GENERELT VEDLIGEHOLDELSESPROGRAM*)
ZONESIZE:INTEGER
END;
FILEDESC=FILE OF FILDESC;(*FORTEGNELSE OVER ALLE ISF-FILER*)
PROGDESC=RECORD
PROGFIL,PROGNAVN:STRING(18);
PROGNIVEAU:NIVEAU
END;
PROGFILE=FILE OF PROGDESC;
VAR FNAVN:STRING;
ISFFILES:FILEDESC;
LISTER:LISTFILE;
FIL0:ZEROFIL;
PROGS:PROGFILE;
TEGN,I,J,FNR:INTEGER;
(*$P*)
PROCEDURE IOC;
VAR CH:STRING(1);
BEGIN
IF IORESULT<>0 THEN
BEGIN
CLEARSCREEN;
GOTOXY(1,10);
WRITELN('Pladefejl ',IORESULT:5,' RETURN');
CH:=' ';
EDIT(CH);
IF CH<>'R' THEN EXIT(SYSFIVED)
END
END;
(*$P*)
PROCEDURE VEDL;
PROCEDURE VÆLG;
BEGIN
REPEAT
GOTOXY(1,23);
WRITE('Postnr ');READLN;READ(I)
UNTIL (IORESULT=0) AND (I IN (.0..30.))
END;
PROCEDURE THREE;
BEGIN
FNAVN:='ZEROFILE:P2:0000:S';
REWRITE(FIL0,FNAVN);IOC;
REPEAT
VÆLG;
IF I>0 THEN
BEGIN
CLEARSCREEN;
SEEK(FIL0,I);IOC;
GET(FIL0);IOC;
GOTOXY(1,10);
WITH FIL0^ DO
BEGIN
WRITE('AA(-11) ',ORD(AA(-11)),' ');READLN;READ(TEGN);
AA(-11):=CHR(TEGN);
WRITE('AA(-10) ',ORD(AA(-10)),' ');READLN;READ(TEGN);
AA(-10):=CHR(TEGN);
WRITE('A(-4) ',A(-4),' ');READLN;READ(A(-4));
WRITE('AAA(0) ',AAA(0),' ');READLN;READ(AAA(0));
FOR J:=1 TO 250 DO WRITELN(J:4,CONTENTS(J):10);
END;
SEEK(FIL0,I);IOC;
PUT(FIL0);IOC
END
UNTIL I=0;
CLOSE(FIL0);IOC
END;
BEGIN
CASE FNR OF
1:
BEGIN
FNAVN:='ISFFILES:P2:0000:S';
REWRITE(ISFFILES,FNAVN);IOC;
REPEAT
VÆLG;
IF I>0 THEN
BEGIN
CLEARSCREEN;
SEEK(ISFFILES,I);IOC;
GET(ISFFILES);IOC;
GOTOXY(1,10);
WITH ISFFILES^ DO
BEGIN
WRITE('FILNAVN ');EDIT(FILNAVN);
WRITE('DESCNAVN ');EDIT(DESCNAVN);
WRITE('POSTNAVN ',POSTNAVN);READLN;IF NOT EOLN(INPUT) THEN
READ(POSTNAVN);
WRITE('REGNAVN ',REGNAVN);READLN;IF NOT EOLN(INPUT) THEN READ(REGNAVN);
WRITE('NIVEAU',ORD(VEDLNIVEAU):3);
REPEAT
GOTOXY(12,14);READLN;
IF EOLN(INPUT) THEN J:=ORD(VEDLNIVEAU) ELSE READ(J)
UNTIL (IORESULT=0) AND (J IN (.0..8.));
VEDLNIVEAU:=MENIG;
WRITE('Z-SIZE',ZONESIZE:6);READLN;IF NOT EOLN(INPUT) THEN
READ(ZONESIZE);
WHILE J>0 DO
BEGIN
J:=J-1;
VEDLNIVEAU:=SUCC(VEDLNIVEAU)
END;
END;
SEEK(ISFFILES,I);IOC;
PUT(ISFFILES);IOC
END
UNTIL I=0;
CLOSE(ISFFILES);IOC
END;
2:
BEGIN
FNAVN:='LISTDEFS:P2:0000:S';
REWRITE(LISTER,FNAVN);IOC;
REPEAT
VÆLG;
IF I>0 THEN
BEGIN
CLEARSCREEN;
SEEK(LISTER,I);IOC;
GET(LISTER);IOC;
GOTOXY(1,10);
WITH LISTER^ DO
BEGIN
WRITE('NAVN ');EDIT(NAVN);
WRITE('DESCLIST ');EDIT(DESCLIST);
WRITE('ZPOSTNR ',ZPOSTNR:3);
REPEAT
GOTOXY(13,12);READLN;READ(ZPOSTNR)
UNTIL IORESULT=0;
WRITE('NIVEAU',ORD(LISTENIVEAU):3);
REPEAT
GOTOXY(12,13);READLN;READ(J)
UNTIL (IORESULT=0) AND (J IN (.0..8.));
LISTENIVEAU:=MENIG;
WHILE J>0 DO
BEGIN
J:=J-1;
LISTENIVEAU:=SUCC(LISTENIVEAU)
END;
WRITE('BLANKETTYPE ',BLANKTYP:5);
REPEAT
GOTOXY(12,14);READLN;READ(BLANKTYP)
UNTIL IORESULT=0;
END;
SEEK(LISTER,I);IOC;
PUT(LISTER);IOC
END
UNTIL I=0;
CLOSE(LISTER);IOC
END;
3:THREE;
4:
BEGIN
FNAVN:='PROGFILE:P2:0000:S';
REWRITE(PROGS,FNAVN);IOC;
REPEAT
VÆLG;
IF I>0 THEN
BEGIN
CLEARSCREEN;
SEEK(PROGS,I);IOC;
GET(PROGS);IOC;
GOTOXY(1,10);
WITH PROGS^ DO
BEGIN
WRITE('PROGFIL ');EDIT(PROGFIL);
WRITE('PROGNAVN ');EDIT(PROGNAVN);
WRITE('NIVEAU',ORD(PROGNIVEAU):3);
REPEAT
GOTOXY(12,12);READLN;READ(J)
UNTIL (IORESULT=0) AND (J IN (.0..8.));
PROGNIVEAU:=MENIG;
WHILE J>0 DO
BEGIN
J:=J-1;
PROGNIVEAU:=SUCC(PROGNIVEAU)
END;
END;
SEEK(PROGS,I);IOC;
PUT(PROGS);IOC
END
UNTIL I=0;
CLOSE(PROGS);IOC
END
END
END;
(*$P*)
BEGIN
REPEAT
CLEARSCREEN;
WRITELN('1 ISFFILES');
WRITELN('2 LISTDEFS');
WRITELN('3 ZEROFILE');
WRITELN('4 PROGFILE');
REPEAT
GOTOXY(1,6);
WRITE('VÆLG 1-4 ');READLN;READ(FNR)
UNTIL (IORESULT=0) AND (FNR>=0) AND (FNR<=4);
CLEARSCREEN;
IF FNR>0 THEN VEDL
UNTIL FNR=0
END.