DataMuseum.dk

Presents historical artifacts from the history of:

MIKADOS

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about MIKADOS

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦0f0ca5b54⟧ TextFile

    Length: 2976 (0xba0)
    Types: TextFile
    Notes: Mikados_K
    Names: »LUKOP.K«

Derivation

└─⟦5630b2e42⟧ Bits:30009005 START APRIL 1985 aft april 1985 (PASCAL kildetekster)
    └─⟦this⟧ »LUKOP.K« 
└─⟦6c21327e0⟧ Bits:30008986 LINIMATIC K-FILER (IKKE HELT UPTODTATE)
    └─⟦this⟧ »LUKOP.K« 

Mikados K File

(*$P*)
PROCEDURE LUKOP(VAR F:ISF);
TYPE
NIVEAU=(MENIG,SERGENT,LØJTNANT,KAPTAJN,MAJOR,OBERST,GENERAL,HSM,UMULIUS);
FILDESC=RECORD
  FILNAVN,DESCNAVN,POSTNAVN,REGNAVN:STRING(18);
  VEDLNIVEAU:NIVEAU;
  ZONESIZE:INTEGER;
END;
FILEDESC=FILE OF FILDESC;
VAR          
ISFFILES:FILEDESC;
FNAVN   :STRING(18);
PREDZONE,SUCCZONE,SIZE,REST,
I       :INTEGER;
BEGIN
  FNAVN:='ISFFILES:P2:0000:S';
  RESET(ISFFILES,FNAVN);IOC;
  SEEK(ISFFILES,CURRFILE);IOC;
  GET(ISFFILES);IOC;
  FNAVN:=ISFFILES^.FILNAVN;
  PREDZONE:=0;                                           
  CURRZONE:=0;                                           
  I:=AVAILZONE;                                          
  WHILE I<MZONESIZE DO                                   
  IF Z(I+1)>=ISFFILES^.ZONESIZE THEN                     
  BEGIN                                                  
    CURRZONE:=I;                                         
    SIZE:=Z(I+1);                                        
    SUCCZONE:=Z(I);
    REST:=SIZE-ISFFILES^.ZONESIZE;                       
    Z(I):=ISFFILES^.ZONESIZE;                            
    IF REST>1 THEN                                       
    BEGIN                                                
      Z(I+1):=Z(I);                                      
      I:=I+Z(I);                                         
      IF I<MZONESIZE THEN                                
      BEGIN                                              
        Z(I):=SUCCZONE;                                  
        Z(I+1):=REST                                     
      END                                                
    END                                                  
    ELSE I:=SUCCZONE;                                    
    IF PREDZONE=0 THEN AVAILZONE:=I ELSE Z(PREDZONE):=I; 
    I:=MZONESIZE                                         
  END                                                    
  ELSE
  BEGIN
    PREDZONE:=I;
    I:=Z(I)
  END;
  CLOSE(ISFFILES);IOC;                                                      
  IF CURRZONE=0 THEN
  BEGIN
    USER(CURRUSER).FILES(CURRHEAD).STATUS:=LUKKET;
    IER:=-16
  END
  ELSE
  BEGIN
    REWRITE(F,FNAVN);IOC;                                                     
    WITH FILEHEAD(CURRHEAD) DO
    BEGIN
      FILENAME:='        ';
      FOR I:=1 TO POS(':',FNAVN)-1 DO FILENAME(I):=FNAVN(I)
    END
  END
END;

Mikados K File

0x000…008 Line {l1=0x06, l2=»(*$P*)«, l3=0x06}
0x008…025 Line {l1=0x1b, l2=»PROCEDURE LUKOP(VAR F:ISF);«, l3=0x1b}
0x025…02b Line {l1=0x04, l2=»TYPE«, l3=0x04}
0x02b…076 Line {l1=0x49, l2=»NIVEAU=(MENIG,SERGENT,LØJTNANT,KAPTAJN,MAJOR,OBERST,GENERAL,HSM,UMULIUS);«, l3=0x49}
0x076…086 Line {l1=0x0e, l2=»FILDESC=RECORD«, l3=0x0e}
0x086…0b7 Line {l1=0x2f, l2=»  FILNAVN,DESCNAVN,POSTNAVN,REGNAVN:STRING(18);«, l3=0x2f}
0x0b7…0cd Line {l1=0x14, l2=»  VEDLNIVEAU:NIVEAU;«, l3=0x14}
0x0cd…0e2 Line {l1=0x13, l2=»  ZONESIZE:INTEGER;«, l3=0x13}
0x0e2…0e8 Line {l1=0x04, l2=»END;«, l3=0x04}
0x0e8…103 Line {l1=0x19, l2=»FILEDESC=FILE OF FILDESC;«, l3=0x19}
0x103…112 Line {l1=0x0d, l2=»VAR          «, l3=0x0d}
0x112…126 Line {l1=0x12, l2=»ISFFILES:FILEDESC;«, l3=0x12}
0x126…13c Line {l1=0x14, l2=»FNAVN   :STRING(18);«, l3=0x14}
0x13c…15a Line {l1=0x1c, l2=»PREDZONE,SUCCZONE,SIZE,REST,«, l3=0x1c}
0x15a…16d Line {l1=0x11, l2=»I       :INTEGER;«, l3=0x11}
0x16d…174 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x174…194 Line {l1=0x1e, l2=»  FNAVN:='ISFFILES:P2:0000:S';«, l3=0x1e}
0x194…1b2 Line {l1=0x1c, l2=»  RESET(ISFFILES,FNAVN);IOC;«, l3=0x1c}
0x1b2…1d2 Line {l1=0x1e, l2=»  SEEK(ISFFILES,CURRFILE);IOC;«, l3=0x1e}
0x1d2…1e8 Line {l1=0x14, l2=»  GET(ISFFILES);IOC;«, l3=0x14}
0x1e8…205 Line {l1=0x1b, l2=»  FNAVN:=ISFFILES^.FILNAVN;«, l3=0x1b}
0x205…240 Line {l1=0x39, l2=»  PREDZONE:=0;                                           «, l3=0x39}
0x240…27b Line {l1=0x39, l2=»  CURRZONE:=0;                                           «, l3=0x39}
0x27b…2b6 Line {l1=0x39, l2=»  I:=AVAILZONE;                                          «, l3=0x39}
0x2b6…2f1 Line {l1=0x39, l2=»  WHILE I<MZONESIZE DO                                   «, l3=0x39}
0x2f1…32c Line {l1=0x39, l2=»  IF Z(I+1)>=ISFFILES^.ZONESIZE THEN                     «, l3=0x39}
0x32c…367 Line {l1=0x39, l2=»  BEGIN                                                  «, l3=0x39}
0x367…3a2 Line {l1=0x39, l2=»    CURRZONE:=I;                                         «, l3=0x39}
0x3a2…3dd Line {l1=0x39, l2=»    SIZE:=Z(I+1);                                        «, l3=0x39}
0x3dd…3f2 Line {l1=0x13, l2=»    SUCCZONE:=Z(I);«, l3=0x13}
0x3f2…42d Line {l1=0x39, l2=»    REST:=SIZE-ISFFILES^.ZONESIZE;                       «, l3=0x39}
0x42d…468 Line {l1=0x39, l2=»    Z(I):=ISFFILES^.ZONESIZE;                            «, l3=0x39}
0x468…4a3 Line {l1=0x39, l2=»    IF REST>1 THEN                                       «, l3=0x39}
0x4a3…4de Line {l1=0x39, l2=»    BEGIN                                                «, l3=0x39}
0x4de…519 Line {l1=0x39, l2=»      Z(I+1):=Z(I);                                      «, l3=0x39}
0x519…554 Line {l1=0x39, l2=»      I:=I+Z(I);                                         «, l3=0x39}
0x554…58f Line {l1=0x39, l2=»      IF I<MZONESIZE THEN                                «, l3=0x39}
0x58f…5ca Line {l1=0x39, l2=»      BEGIN                                              «, l3=0x39}
0x5ca…605 Line {l1=0x39, l2=»        Z(I):=SUCCZONE;                                  «, l3=0x39}
0x605…640 Line {l1=0x39, l2=»        Z(I+1):=REST                                     «, l3=0x39}
0x640…67b Line {l1=0x39, l2=»      END                                                «, l3=0x39}
0x67b…6b6 Line {l1=0x39, l2=»    END                                                  «, l3=0x39}
0x6b6…6f1 Line {l1=0x39, l2=»    ELSE I:=SUCCZONE;                                    «, l3=0x39}
0x6f1…72c Line {l1=0x39, l2=»    IF PREDZONE=0 THEN AVAILZONE:=I ELSE Z(PREDZONE):=I; «, l3=0x39}
0x72c…767 Line {l1=0x39, l2=»    I:=MZONESIZE                                         «, l3=0x39}
0x767…7a2 Line {l1=0x39, l2=»  END                                                    «, l3=0x39}
0x7a2…7aa Line {l1=0x06, l2=»  ELSE«, l3=0x06}
0x7aa…7b3 Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x7b3…7c5 Line {l1=0x10, l2=»    PREDZONE:=I;«, l3=0x10}
0x7c5…7d2 Line {l1=0x0b, l2=»    I:=Z(I)«, l3=0x0b}
0x7d2…7da Line {l1=0x06, l2=»  END;«, l3=0x06}
0x7da…828 Line {l1=0x4c, l2=»  CLOSE(ISFFILES);IOC;                                                      «, l3=0x4c}
0x828…83e Line {l1=0x14, l2=»  IF CURRZONE=0 THEN«, l3=0x14}
0x83e…847 Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x847…87b Line {l1=0x32, l2=»    USER(CURRUSER).FILES(CURRHEAD).STATUS:=LUKKET;«, l3=0x32}
0x87b…889 Line {l1=0x0c, l2=»    IER:=-16«, l3=0x0c}
0x889…890 Line {l1=0x05, l2=»  END«, l3=0x05}
0x890…898 Line {l1=0x06, l2=»  ELSE«, l3=0x06}
0x898…8a1 Line {l1=0x07, l2=»  BEGIN«, l3=0x07}
0x8a1…8f1 Line {l1=0x4e, l2=»    REWRITE(F,FNAVN);IOC;                                                     «, l3=0x4e}
0x8f1…911 Line {l1=0x1e, l2=»    WITH FILEHEAD(CURRHEAD) DO«, l3=0x1e}
0x911…91c Line {l1=0x09, l2=»    BEGIN«, l3=0x09}
0x91c…939 Line {l1=0x1b, l2=»      FILENAME:='        ';«, l3=0x1b}
0x939…976 Line {l1=0x3b, l2=»      FOR I:=1 TO POS(':',FNAVN)-1 DO FILENAME(I):=FNAVN(I)«, l3=0x3b}
0x976…97f Line {l1=0x07, l2=»    END«, l3=0x07}
0x97f…986 Line {l1=0x05, l2=»  END«, l3=0x05}
0x986…98c Line {l1=0x04, l2=»END;«, l3=0x04}
0x98c…9a0 00 00 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63                                       ┆  cccccccccccccccccc┆
0x9a0…9c0 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63 63   ┆cccccccccccccccccccccccccccccccc┆
          […0xf…]

Reduced view