|
|
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: 3744 (0xea0)
Types: TextFile
Notes: Mikados_K
Names: »STOP.K«
└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
└─⟦this⟧ »STOP.K«
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
└─⟦this⟧ »STOP.K«
PROGRAM STOP;
TYPE
PARMARRAY=PACKED ARRAY (1..39) OF CHAR;
NAME =STRING(10);
PCB =^INTEGER;
MESSAGETYPE=(ÅBEN,LUK,LÆSPOST,LÆSPOSTX,NÆSTE,NÆSTEX,SLET,SLETX,GEMPOST,
INDSÆT,INITIER,UTILMELD,UAFMELD,PTILMELD,PAFMELD,STOPSYS,
RETURNHEAD,RETURNSTAT);
MESSAGE =RECORD
KOMMANDO:MESSAGETYPE;
INFO:INTEGER
END;
CPSTAT =RECORD
CPPCB :INTEGER;
STATUS :ARRAY (1..100) OF INTEGER
END;
STATFILE=FILE OF CPSTAT;
AR =ARRAY (0..0) OF INTEGER;
VAR
FORCED :^PARMARRAY;
CPSTATUS:STATFILE;
FUSK :AR;
CPPCB :PCB;
BESKED :MESSAGE;
FNAVN :STRING(20);
I,
MLÆNGDE,
MSTATUS :INTEGER;
SEMAFOR :NAME;
PROCEDURE SENDM(RECEIVER:PCB;VAR CONTENTS:MESSAGE;
LENGTH:INTEGER;VAR STATUS:INTEGER);EXTERNAL;
PROCEDURE RECEIV(VAR SENDER:PCB;VAR CONTENTS:MESSAGE;
VAR LENGTH:INTEGER);EXTERNAL;
PROCEDURE RESERV(RESOURCE:NAME;EXCLUSIVE,WAIT:BOOLEAN;
VAR STATUS:INTEGER);EXTERNAL;
PROCEDURE RELEAS(RESOURCE:NAME;VAR STATUS:INTEGER);EXTERNAL;
PROCEDURE IOC;
VAR CH:STRING(1);
IOR:INTEGER;
BEGIN
IOR:=IORESULT;
IF IOR<>0 THEN
BEGIN
CLEARSCREEN;
GOTOXY(1,10);
WRITELN('Pladefejl ',IOR:5,' RETURN');
CH:=' ';
EDIT(CH);
IF CH<>'R' THEN EXIT(STOP)
END
END;
BEGIN
WRITELN('Systemet stoppes, VENT');
SEMAFOR:='CHECCPSTAT';
BESKED.INFO:=1;
(*$XT*) WRITELN('RESERV ',SEMAFOR); (*$X-*)
RESERV(SEMAFOR,TRUE,TRUE,MSTATUS);
IF MSTATUS<>0 THEN BEGIN WRITELN('1:',MSTATUS:5);READLN END;
FNAVN:='CPSTATUS:P1:1:S';
REWRITE(CPSTATUS,FNAVN);IOC;
SEEK(CPSTATUS,1);IOC;
GET(CPSTATUS);IOC;
IF CPSTATUS^.CPPCB<>0 THEN
BEGIN
(*$R-*) FUSK(1):=CPSTATUS^.CPPCB;(*$R+*)
BESKED.KOMMANDO:=STOPSYS;
IF FORCED^(1)='1' THEN BESKED.INFO:=1 ELSE BESKED.INFO:=0;
(*$XT*) WRITELN('SENDM STOPSYS'); (*$X-*)
SENDM(CPPCB,BESKED,4,MSTATUS);
IF MSTATUS<>0 THEN BEGIN WRITELN('2:',MSTATUS:5);READLN END;
(*$XT*) WRITELN('RECEIV'); (*$X-*)
RECEIV(CPPCB,BESKED,MLÆNGDE);
IF BESKED.INFO<>0 THEN
BEGIN
WRITELN('SYSTEMSTOP AFVIST, RETURN ',BESKED.INFO);
READLN
END
ELSE
BEGIN
CPSTATUS^.CPPCB:=0;
SEEK(CPSTATUS,1);IOC;
PUT(CPSTATUS);IOC
END;
END ELSE WRITELN('SYSTEMET VAR STOPPET');
CLOSE(CPSTATUS);IOC;
RELEAS(SEMAFOR,MSTATUS);
IF MSTATUS<>0 THEN BEGIN WRITELN('3:',MSTATUS:5);READLN END;
IF BESKED.INFO=0 THEN
WRITELN('SYSTEM STOPPET');
(*$XT*) WRITELN('STOP STOPPER') (*$X-*)
END.
0x000…00f Line {l1=0x0d, l2=»PROGRAM STOP;«, l3=0x0d}
0x00f…015 Line {l1=0x04, l2=»TYPE«, l3=0x04}
0x015…03e Line {l1=0x27, l2=»PARMARRAY=PACKED ARRAY (1..39) OF CHAR;«, l3=0x27}
0x03e…054 Line {l1=0x14, l2=»NAME =STRING(10);«, l3=0x14}
0x054…068 Line {l1=0x12, l2=»PCB =^INTEGER;«, l3=0x12}
0x068…0b1 Line {l1=0x47, l2=»MESSAGETYPE=(ÅBEN,LUK,LÆSPOST,LÆSPOSTX,NÆSTE,NÆSTEX,SLET,SLETX,GEMPOST,«, l3=0x47}
0x0b1…101 Line {l1=0x4e, l2=» INDSÆT,INITIER,UTILMELD,UAFMELD,PTILMELD,PAFMELD,STOPSYS, «, l3=0x4e}
0x101…14b Line {l1=0x48, l2=» RETURNHEAD,RETURNSTAT); «, l3=0x48}
0x14b…15c Line {l1=0x0f, l2=»MESSAGE =RECORD«, l3=0x0f}
0x15c…17e Line {l1=0x20, l2=» KOMMANDO:MESSAGETYPE;«, l3=0x20}
0x17e…198 Line {l1=0x18, l2=» INFO:INTEGER «, l3=0x18}
0x198…1a7 Line {l1=0x0d, l2=» END;«, l3=0x0d}
0x1a7…1b8 Line {l1=0x0f, l2=»CPSTAT =RECORD«, l3=0x0f}
0x1b8…1db Line {l1=0x21, l2=» CPPCB :INTEGER;«, l3=0x21}
0x1db…20f Line {l1=0x32, l2=» STATUS :ARRAY (1..100) OF INTEGER«, l3=0x32}
0x20f…21e Line {l1=0x0d, l2=» END;«, l3=0x0d}
0x21e…238 Line {l1=0x18, l2=»STATFILE=FILE OF CPSTAT;«, l3=0x18}
0x238…25b Line {l1=0x21, l2=»AR =ARRAY (0..0) OF INTEGER;«, l3=0x21}
0x25b…26f Line {l1=0x12, l2=»VAR «, l3=0x12}
0x26f…285 Line {l1=0x14, l2=»FORCED :^PARMARRAY;«, l3=0x14}
0x285…299 Line {l1=0x12, l2=»CPSTATUS:STATFILE;«, l3=0x12}
0x299…2a7 Line {l1=0x0c, l2=»FUSK :AR;«, l3=0x0c}
0x2a7…2b6 Line {l1=0x0d, l2=»CPPCB :PCB;«, l3=0x0d}
0x2b6…2c9 Line {l1=0x11, l2=»BESKED :MESSAGE;«, l3=0x11}
0x2c9…2df Line {l1=0x14, l2=»FNAVN :STRING(20);«, l3=0x14}
0x2df…2e3 Line {l1=0x02, l2=»I,«, l3=0x02}
0x2e3…2f6 Line {l1=0x11, l2=»MLÆNGDE, «, l3=0x11}
0x2f6…309 Line {l1=0x11, l2=»MSTATUS :INTEGER;«, l3=0x11}
0x309…319 Line {l1=0x0e, l2=»SEMAFOR :NAME;«, l3=0x0e}
0x319…34d Line {l1=0x32, l2=»PROCEDURE SENDM(RECEIVER:PCB;VAR CONTENTS:MESSAGE;«, l3=0x32}
0x34d…38b Line {l1=0x3c, l2=» LENGTH:INTEGER;VAR STATUS:INTEGER);EXTERNAL;«, l3=0x3c}
0x38b…3c2 Line {l1=0x35, l2=»PROCEDURE RECEIV(VAR SENDER:PCB;VAR CONTENTS:MESSAGE;«, l3=0x35}
0x3c2…3f2 Line {l1=0x2e, l2=» VAR LENGTH:INTEGER);EXTERNAL;«, l3=0x2e}
0x3f2…42a Line {l1=0x36, l2=»PROCEDURE RESERV(RESOURCE:NAME;EXCLUSIVE,WAIT:BOOLEAN;«, l3=0x36}
0x42a…45a Line {l1=0x2e, l2=» VAR STATUS:INTEGER);EXTERNAL;«, l3=0x2e}
0x45a…498 Line {l1=0x3c, l2=»PROCEDURE RELEAS(RESOURCE:NAME;VAR STATUS:INTEGER);EXTERNAL;«, l3=0x3c}
0x498…4a8 Line {l1=0x0e, l2=»PROCEDURE IOC;«, l3=0x0e}
0x4a8…4bf Line {l1=0x15, l2=»VAR CH:STRING(1);«, l3=0x15}
0x4bf…4d5 Line {l1=0x14, l2=» IOR:INTEGER;«, l3=0x14}
0x4d5…4dc Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x4dc…4ee Line {l1=0x10, l2=» IOR:=IORESULT;«, l3=0x10}
0x4ee…51c Line {l1=0x2c, l2=» IF IOR<>0 THEN «, l3=0x2c}
0x51c…54a Line {l1=0x2c, l2=» BEGIN «, l3=0x2c}
0x54a…578 Line {l1=0x2c, l2=» CLEARSCREEN; «, l3=0x2c}
0x578…5a6 Line {l1=0x2c, l2=» GOTOXY(1,10); «, l3=0x2c}
0x5a6…5d4 Line {l1=0x2c, l2=» WRITELN('Pladefejl ',IOR:5,' RETURN'); «, l3=0x2c}
0x5d4…602 Line {l1=0x2c, l2=» CH:=' '; «, l3=0x2c}
0x602…630 Line {l1=0x2c, l2=» EDIT(CH); «, l3=0x2c}
0x630…650 Line {l1=0x1e, l2=» IF CH<>'R' THEN EXIT(STOP)«, l3=0x1e}
0x650…67e Line {l1=0x2c, l2=» END «, l3=0x2c}
0x67e…684 Line {l1=0x04, l2=»END;«, l3=0x04}
0x684…687 Line {l1=0x01, l2=» «, l3=0x01}
0x687…68e Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x68e…6b4 Line {l1=0x24, l2=» WRITELN('Systemet stoppes, VENT');«, l3=0x24}
0x6b4…6ce Line {l1=0x18, l2=» SEMAFOR:='CHECCPSTAT';«, l3=0x18}
0x6ce…6e1 Line {l1=0x11, l2=» BESKED.INFO:=1;«, l3=0x11}
0x6e1…710 Line {l1=0x2d, l2=» (*$XT*) WRITELN('RESERV ',SEMAFOR); (*$X-*)«, l3=0x2d}
0x710…736 Line {l1=0x24, l2=» RESERV(SEMAFOR,TRUE,TRUE,MSTATUS);«, l3=0x24}
0x736…776 Line {l1=0x3e, l2=» IF MSTATUS<>0 THEN BEGIN WRITELN('1:',MSTATUS:5);READLN END;«, l3=0x3e}
0x776…793 Line {l1=0x1b, l2=» FNAVN:='CPSTATUS:P1:1:S';«, l3=0x1b}
0x793…7b3 Line {l1=0x1e, l2=» REWRITE(CPSTATUS,FNAVN);IOC;«, l3=0x1e}
0x7b3…7cc Line {l1=0x17, l2=» SEEK(CPSTATUS,1);IOC;«, l3=0x17}
0x7cc…7e2 Line {l1=0x14, l2=» GET(CPSTATUS);IOC;«, l3=0x14}
0x7e2…800 Line {l1=0x1c, l2=» IF CPSTATUS^.CPPCB<>0 THEN«, l3=0x1c}
0x800…809 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x809…835 Line {l1=0x2a, l2=» (*$R-*) FUSK(1):=CPSTATUS^.CPPCB;(*$R+*)«, l3=0x2a}
0x835…852 Line {l1=0x1b, l2=» BESKED.KOMMANDO:=STOPSYS;«, l3=0x1b}
0x852…890 Line {l1=0x3c, l2=» IF FORCED^(1)='1' THEN BESKED.INFO:=1 ELSE BESKED.INFO:=0;«, l3=0x3c}
0x890…8bd Line {l1=0x2b, l2=» (*$XT*) WRITELN('SENDM STOPSYS'); (*$X-*)«, l3=0x2b}
0x8bd…8df Line {l1=0x20, l2=» SENDM(CPPCB,BESKED,4,MSTATUS);«, l3=0x20}
0x8df…91f Line {l1=0x3e, l2=» IF MSTATUS<>0 THEN BEGIN WRITELN('2:',MSTATUS:5);READLN END;«, l3=0x3e}
0x91f…945 Line {l1=0x24, l2=» (*$XT*) WRITELN('RECEIV'); (*$X-*)«, l3=0x24}
0x945…966 Line {l1=0x1f, l2=» RECEIV(CPPCB,BESKED,MLÆNGDE);«, l3=0x1f}
0x966…980 Line {l1=0x18, l2=» IF BESKED.INFO<>0 THEN«, l3=0x18}
0x980…989 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x989…9c1 Line {l1=0x36, l2=» WRITELN('SYSTEMSTOP AFVIST, RETURN ',BESKED.INFO);«, l3=0x36}
0x9c1…9cd Line {l1=0x0a, l2=» READLN«, l3=0x0a}
0x9cd…9d4 Line {l1=0x05, l2=» END«, l3=0x05}
0x9d4…9dc Line {l1=0x06, l2=» ELSE«, l3=0x06}
0x9dc…9e5 Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x9e5…9fe Line {l1=0x17, l2=» CPSTATUS^.CPPCB:=0;«, l3=0x17}
0x9fe…a19 Line {l1=0x19, l2=» SEEK(CPSTATUS,1);IOC;«, l3=0x19}
0xa19…a30 Line {l1=0x15, l2=» PUT(CPSTATUS);IOC«, l3=0x15}
0xa30…a38 Line {l1=0x06, l2=» END;«, l3=0x06}
0xa38…a65 Line {l1=0x2b, l2=» END ELSE WRITELN('SYSTEMET VAR STOPPET');«, l3=0x2b}
0xa65…a7d Line {l1=0x16, l2=» CLOSE(CPSTATUS);IOC;«, l3=0x16}
0xa7d…a99 Line {l1=0x1a, l2=» RELEAS(SEMAFOR,MSTATUS);«, l3=0x1a}
0xa99…ad9 Line {l1=0x3e, l2=» IF MSTATUS<>0 THEN BEGIN WRITELN('3:',MSTATUS:5);READLN END;«, l3=0x3e}
0xad9…af2 Line {l1=0x17, l2=» IF BESKED.INFO=0 THEN«, l3=0x17}
0xaf2…b12 Line {l1=0x1e, l2=» WRITELN('SYSTEM STOPPET');«, l3=0x1e}
0xb12…b3d Line {l1=0x29, l2=» (*$XT*) WRITELN('STOP STOPPER') (*$X-*)«, l3=0x29}
0xb3d…b43 Line {l1=0x04, l2=»END.«, l3=0x04}
0xb43…b60 00 00 4e 20 28 2a 43 50 27 53 20 50 43 42 2a 29 16 30 20 20 20 20 20 20 46 4e 41 56 4e ┆ N (*CP'S PCB*) 0 FNAVN┆
0xb60…b80 28 49 29 3a 3d 43 48 52 28 46 55 53 4b 28 31 29 20 4d 4f 44 20 31 30 20 2b 34 38 29 3b 20 20 20 ┆(I):=CHR(FUSK(1) MOD 10 +48); ┆
0xb80…ba0 20 20 20 20 20 30 1d 20 20 20 20 20 20 46 55 53 4b 28 31 29 3a 3d 46 55 53 4b 28 31 29 20 44 49 ┆ 0 FUSK(1):=FUSK(1) DI┆
0xba0…bc0 56 20 31 30 1d 08 20 20 20 20 45 4e 44 3b 08 0b 20 20 20 20 28 2a 24 52 2b 2a 29 0b 1b 20 20 20 ┆V 10 END; (*$R+*) ┆
0xbc0…be0 20 57 52 49 54 45 4c 4e 28 27 43 48 41 49 4e 20 48 4f 56 45 44 27 29 3b 1b 27 20 20 20 20 43 48 ┆ WRITELN('CHAIN HOVED'); ' CH┆
0xbe0…c00 41 49 4e 28 27 48 4f 56 45 44 20 20 20 2a 31 27 2c 46 4e 41 56 4e 2c 43 50 50 43 42 29 3b 49 4f ┆AIN('HOVED *1',FNAVN,CPPCB);IO┆
0xc00…c20 43 27 06 20 20 45 4e 44 3b 06 1a 20 20 57 52 49 54 45 4c 4e 28 27 53 54 41 52 54 20 53 54 4f 50 ┆C' END; WRITELN('START STOP┆
0xc20…c40 50 45 52 27 29 1a 04 45 4e 44 2e 04 00 00 10 eb 20 00 30 2b 00 32 00 20 20 20 20 38 32 31 36 2c ┆PER') END. 0+ 2 8216,┆
0xc40…c60 30 30 2b 00 00 00 00 00 00 00 00 00 53 4b 49 56 45 00 30 2b 00 30 2b 00 30 2b 00 00 30 37 2d 35 ┆00+ SKIVE 0+ 0+ 0+ 07-5┆
0xc60…c80 32 30 34 30 39 00 00 00 00 00 10 eb 20 00 30 2b 00 32 00 20 20 20 20 38 32 31 36 2c 30 30 2b 00 ┆20409 0+ 2 8216,00+ ┆
0xc80…ca0 00 00 00 00 00 00 00 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 20 20 20 31 32 33 39 2c 37 36 2b 00 ┆ 0+ 0+ 0+ 0+ 1239,76+ ┆
0xca0…cc0 39 00 00 00 00 00 10 eb 20 00 30 2b 00 32 00 20 20 20 20 38 32 31 36 2c 30 30 2b 00 00 00 00 00 ┆9 0+ 2 8216,00+ ┆
0xcc0…ce0 00 00 00 00 20 20 20 34 31 36 37 2c 31 36 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 39 00 00 00 ┆ 4167,16+ 0+ 0+ 0+ 0+ 9 ┆
0xce0…d00 00 00 10 eb 20 00 30 2b 00 32 00 20 20 20 20 38 32 31 36 2c 30 30 2b 00 00 00 00 00 00 00 00 00 ┆ 0+ 2 8216,00+ ┆
0xd00…d20 30 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 39 00 00 00 00 00 10 eb ┆0+ 0+ 0+ 0+ 0+ 0+ 0+ 0+ 9 ┆
0xd20…d40 20 00 30 2b 00 32 00 20 20 20 20 38 32 31 36 2c 30 30 2b 00 00 00 00 00 00 00 00 00 10 eb 19 00 ┆ 0+ 2 8216,00+ ┆
0xd40…d60 4e 59 45 20 4f 4c 45 20 47 49 4c 42 4f 20 41 2f 53 00 20 20 20 31 32 38 36 30 2c 30 30 2b 00 3b ┆NYE OLE GILBO A/S 12860,00+ ;┆
0xd60…d80 00 20 20 20 31 39 30 38 34 2c 30 30 2b 00 00 00 00 00 00 00 00 00 00 00 30 2b 00 30 2b 00 30 2b ┆ 19084,00+ 0+ 0+ 0+┆
0xd80…da0 00 01 80 00 00 31 00 30 2b 00 41 2f 53 00 20 20 20 31 32 38 36 30 2c 30 30 2b 00 3b 00 20 20 20 ┆ 1 0+ A/S 12860,00+ ; ┆
0xda0…dc0 31 39 30 38 34 2c 30 30 2b 00 00 00 00 00 00 00 00 00 00 00 53 54 4f 52 47 41 54 45 20 31 35 00 ┆19084,00+ STORGATE 15 ┆
0xdc0…de0 32 2d 31 31 33 38 36 32 00 00 00 00 00 10 eb 1a 00 30 2b 00 30 2b 00 3b 00 20 20 20 31 39 30 38 ┆2-113862 0+ 0+ ; 1908┆
0xde0…e00 34 2c 30 30 2b 00 00 00 00 00 00 00 00 00 00 00 4f 53 4c 4f 00 30 2b 00 30 2b 00 30 2b 00 31 31 ┆4,00+ OSLO 0+ 0+ 0+ 11┆
0xe00…e20 33 38 36 32 00 00 00 00 00 10 eb 1a 00 30 2b 00 30 2b 00 3b 00 20 20 20 31 39 30 38 34 2c 30 30 ┆3862 0+ 0+ ; 19084,00┆
0xe20…e40 2b 00 00 00 00 00 00 00 00 00 00 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 20 20 20 34 38 35 30 2c ┆+ 0+ 0+ 0+ 0+ 4850,┆
0xe40…e60 30 30 2b 00 00 10 eb 1a 00 30 2b 00 30 2b 00 3b 00 30 2b 00 20 20 20 20 00 00 00 00 00 00 00 00 ┆00+ 0+ 0+ ; 0+ ┆
0xe60…e80 00 00 00 00 00 00 00 00 20 20 31 32 39 38 30 2c 30 30 2b 00 30 2b 00 30 2b 00 30 2b 00 30 2b 00 ┆ 12980,00+ 0+ 0+ 0+ 0+ ┆
0xe80…ea0 00 10 eb 1a 00 30 2b 00 30 2b 00 3b 00 30 2b 00 20 20 20 20 00 00 00 00 00 00 00 00 00 00 00 63 ┆ 0+ 0+ ; 0+ c┆