|
|
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: 7584 (0x1da0)
Types: TextFile
Notes: Mikados_K
Names: »FILCATA.K«
└─⟦f1b095e24⟧ Bits:30005320 Katalogisering af disketter
└─⟦this⟧ »FILCATA.K«
PROGRAM FILCATA;
(* BR-08.05.85 *)
TYPE BLOCK = PACKED ARRAY (0..255) OF CHAR;
BINÆRTRÆ = ^KNUDE;
NAVNTYPE = STRING(8);
KNUDE = RECORD
NAVN : NAVNTYPE;
VENSTRE, HØJRE : BINÆRTRÆ;
END;
FILPOST = RECORD
FNAVN : NAVNTYPE;
FTYPE : CHAR;
END;
STR3 = STRING(3);
VAR DISCBUFFER : BLOCK;
DISC, ERRORCODE : INTEGER;
ROD, FIL : BINÆRTRÆ;
TRÆ : ARRAY('0'..'Å') OF BINÆRTRÆ;
FILTYPE : CHAR;
FUNDET : BOOLEAN;
DISKFIL : FILE OF FILPOST;
NUMMER : STR3;
DISKID : STRING(15);
PROCEDURE PSCIU(VAR DISCBUFFER: BLOCK; DISC, TRACK, SECTOR,
IOCODE: INTEGER; VAR ERRORCODE: INTEGER); EXTERNAL;
(********************************************************************)
PROCEDURE INITIALISER;
BEGIN
FOR FILTYPE:='0' TO 'Å' DO TRÆ(FILTYPE) :=NIL;
ERRORCODE:=1;
CLEARSCREEN;
WRITELN('KATALOGISERING AF FILER':45);
WRITELN('***********************':45);
WRITELN;
REPEAT
NUMMER:='000';
WRITE('Indlæs diskettens nummer : ');
EDIT(NUMMER:3);
UNTIL (NUMMER>'000') AND (NUMMER<='999');
DISKID:=CONCAT('DISK',NUMMER,':P3:5:F');
REWRITE(DISKFIL,DISKID);
END; (*INITIALISER*)
(********************************************************************)
PROCEDURE AFSLUT;
BEGIN
DISKFIL^.FNAVN:='########';
DISKFIL^.FTYPE:='#';
PUT(DISKFIL);
CLOSE(DISKFIL);
CLEARSCREEN;
WRITELN('MIKADOS VERSION 01.11.1984');
END; (*AFSLUT*)
(********************************************************************)
PROCEDURE LÆSFILCATALOG(NUMMER:STR3);
VAR DISKID: STRING(15);
BEGIN
DISKID:=CONCAT('DISK',NUMMER,':P3:5:F');
RESET(DISKFIL,DISKID);
WRITELN(LIST,'Filer på disk nr. ',NUMMER,' : ');
WRITELN(LIST);
WITH DISKFIL^ DO BEGIN
GET(DISKFIL);
WHILE FNAVN<>'########' DO BEGIN
WRITELN(LIST,FNAVN,' ',FTYPE);
GET(DISKFIL);
END;
END;
CLOSE(DISKFIL);
PAGE(LIST);
END;
(********************************************************************)
PROCEDURE TRÆINDSÆT(VAR ROD:BINÆRTRÆ; FIL:BINÆRTRÆ);
BEGIN
IF ROD=NIL THEN
ROD:=FIL
ELSE
IF FIL^.NAVN<ROD^.NAVN THEN
TRÆINDSÆT(ROD^.VENSTRE,FIL)
ELSE
TRÆINDSÆT(ROD^.HØJRE,FIL);
END; (*TRÆINDSÆT*)
(********************************************************************)
PROCEDURE TRÆGENNEMLØB(ROD:BINÆRTRÆ; FILTYPE:CHAR);
BEGIN
IF ROD<>NIL THEN
BEGIN
TRÆGENNEMLØB(ROD^.VENSTRE,FILTYPE);
WITH DISKFIL^ DO BEGIN
FNAVN:=ROD^.NAVN;
FTYPE:=FILTYPE;
PUT(DISKFIL);
END;
TRÆGENNEMLØB(ROD^.HØJRE,FILTYPE);
END;
END; (*TRÆGENNEMLØB*)
(********************************************************************)
PROCEDURE LÆSDISKCAT(DISC:INTEGER);
CONST CAT2 = 256; (*ANTAL SEKTORER I KATALOGEN FOR P1/P2*)
CAT3 = 64; (*ANTAL SEKTORER I KATALOGEN FOR P3*)
SPS2 = 32; (*ANTAL SEKTORER PR. SPOR FOR P1/P2*)
SPS3 = 16; (*ANTAL SEKTORER PR. SPOR FOR P3*)
VAR CATSIZE, SEKTMAX, N : INTEGER;
TRACK, SECTOR, IOCODE, J, L, CIFFER :INTEGER;
FILNAVN : STRING(9);
BEGIN
CASE DISC OF
1,2: BEGIN
CATSIZE:=CAT2;
SEKTMAX:=SPS2;
END;
3 : BEGIN
CATSIZE:=CAT3;
SEKTMAX:=SPS3;
END;
END;
FOR N:=1 TO CATSIZE DO
BEGIN
TRACK := N DIV SEKTMAX;
SECTOR:= N MOD SEKTMAX;
ERRORCODE:=0;
IOCODE := 1;
PSCIU(DISCBUFFER,DISC,TRACK,SECTOR,IOCODE,ERRORCODE);
IF ERRORCODE <> 0 THEN EXIT(LÆSDISKCAT);
J:=0;
REPEAT
FILNAVN:='*********';
FOR L := J TO J+8 DO
BEGIN
CIFFER := ORD(DISCBUFFER(L)) MOD 128;
IF (CIFFER <= 126) AND (CIFFER>=32) THEN FILNAVN(L-J+1):=CHR(CIFFER);
END;
FILTYPE:=FILNAVN(9);
FILNAVN:=COPY(FILNAVN,1,8);
IF (SCAN(8,='*',FILNAVN(1))=8) AND (FILTYPE IN (.'0'..'Å'.)) THEN
BEGIN
NEW(FIL);
FIL^.NAVN:=FILNAVN;
FIL^.VENSTRE:=NIL;
FIL^.HØJRE:=NIL;
TRÆINDSÆT(TRÆ(FILTYPE),FIL);
(* WRITELN(LIST,TRACK:3,' ',SECTOR:2,' ',FILNAVN,' ',FILTYPE);*)
END;
J:=J+13;
UNTIL (FILNAVN='********') OR (J>=242);
END; (*FOR N:=....*)
END; (*LÆSDISKCAT*)
(**********************************************************************)
PROCEDURE MAIN;
VAR FILNAVN : NAVNTYPE;
FTYPE : STRING(1);
BEGIN
INITIALISER;
IF NUMMER='001' THEN DISC:=1 ELSE
IF NUMMER='002' THEN DISC:=2 ELSE DISC:=3;
WRITELN;
WRITELN('Katalogen på disk nr. ',NUMMER,' læses. VENT !');
LÆSDISKCAT(DISC);
FOR FILTYPE:='0' TO 'Å' DO TRÆGENNEMLØB(TRÆ(FILTYPE),FILTYPE);
END; (*MAIN*)
(**********************************************************************)
BEGIN
MAIN;
IF ERRORCODE <> 0 THEN WRITELN ('ERRORCODE:', ERRORCODE:4);
AFSLUT;
LÆSFILCATALOG(NUMMER);
END.
0x0000…0012 Line {l1=0x10, l2=»PROGRAM FILCATA;«, l3=0x10}
0x0012…0015 Line {l1=0x01, l2=» «, l3=0x01}
0x0015…0028 Line {l1=0x11, l2=»(* BR-08.05.85 *)«, l3=0x11}
0x0028…002b Line {l1=0x01, l2=» «, l3=0x01}
0x002b…005b Line {l1=0x2e, l2=»TYPE BLOCK = PACKED ARRAY (0..255) OF CHAR;«, l3=0x2e}
0x005b…0074 Line {l1=0x17, l2=» BINÆRTRÆ = ^KNUDE;«, l3=0x17}
0x0074…0090 Line {l1=0x1a, l2=» NAVNTYPE = STRING(8);«, l3=0x1a}
0x0090…00a8 Line {l1=0x16, l2=» KNUDE = RECORD«, l3=0x16}
0x00a8…00cd Line {l1=0x23, l2=» NAVN : NAVNTYPE; «, l3=0x23}
0x00cd…00fb Line {l1=0x2c, l2=» VENSTRE, HØJRE : BINÆRTRÆ;«, l3=0x2c}
0x00fb…0111 Line {l1=0x14, l2=» END;«, l3=0x14}
0x0111…0129 Line {l1=0x16, l2=» FILPOST = RECORD«, l3=0x16}
0x0129…014e Line {l1=0x23, l2=» FNAVN : NAVNTYPE;«, l3=0x23}
0x014e…016f Line {l1=0x1f, l2=» FTYPE : CHAR;«, l3=0x1f}
0x016f…0185 Line {l1=0x14, l2=» END;«, l3=0x14}
0x0185…01a1 Line {l1=0x1a, l2=» STR3 = STRING(3);«, l3=0x1a}
0x01a1…01a4 Line {l1=0x01, l2=» «, l3=0x01}
0x01a4…01c6 Line {l1=0x20, l2=»VAR DISCBUFFER : BLOCK;«, l3=0x20}
0x01c6…01ea Line {l1=0x22, l2=» DISC, ERRORCODE : INTEGER;«, l3=0x22}
0x01ea…020f Line {l1=0x23, l2=» ROD, FIL : BINÆRTRÆ;«, l3=0x23}
0x020f…0247 Line {l1=0x36, l2=» TRÆ : ARRAY('0'..'Å') OF BINÆRTRÆ;«, l3=0x36}
0x0247…0268 Line {l1=0x1f, l2=» FILTYPE : CHAR;«, l3=0x1f}
0x0268…028c Line {l1=0x22, l2=» FUNDET : BOOLEAN;«, l3=0x22}
0x028c…02b8 Line {l1=0x2a, l2=» DISKFIL : FILE OF FILPOST;«, l3=0x2a}
0x02b8…02d9 Line {l1=0x1f, l2=» NUMMER : STR3;«, l3=0x1f}
0x02d9…0300 Line {l1=0x25, l2=» DISKID : STRING(15);«, l3=0x25}
0x0300…0306 Line {l1=0x04, l2=» «, l3=0x04}
0x0306…0343 Line {l1=0x3b, l2=»PROCEDURE PSCIU(VAR DISCBUFFER: BLOCK; DISC, TRACK, SECTOR,«, l3=0x3b}
0x0343…0388 Line {l1=0x43, l2=» IOCODE: INTEGER; VAR ERRORCODE: INTEGER); EXTERNAL;«, l3=0x43}
0x0388…038b Line {l1=0x01, l2=» «, l3=0x01}
0x038b…03d3 Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x03d3…03d6 Line {l1=0x01, l2=» «, l3=0x01}
0x03d6…03ee Line {l1=0x16, l2=»PROCEDURE INITIALISER;«, l3=0x16}
0x03ee…03f1 Line {l1=0x01, l2=» «, l3=0x01}
0x03f1…03f8 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x03f8…042a Line {l1=0x30, l2=» FOR FILTYPE:='0' TO 'Å' DO TRÆ(FILTYPE) :=NIL;«, l3=0x30}
0x042a…043b Line {l1=0x0f, l2=» ERRORCODE:=1;«, l3=0x0f}
0x043b…044b Line {l1=0x0e, l2=» CLEARSCREEN;«, l3=0x0e}
0x044b…0475 Line {l1=0x28, l2=» WRITELN('KATALOGISERING AF FILER':45);«, l3=0x28}
0x0475…049f Line {l1=0x28, l2=» WRITELN('***********************':45);«, l3=0x28}
0x049f…04ab Line {l1=0x0a, l2=» WRITELN;«, l3=0x0a}
0x04ab…04b5 Line {l1=0x08, l2=» REPEAT«, l3=0x08}
0x04b5…04c9 Line {l1=0x12, l2=» NUMMER:='000';«, l3=0x12}
0x04c9…04f4 Line {l1=0x29, l2=» WRITE('Indlæs diskettens nummer : ');«, l3=0x29}
0x04f4…0509 Line {l1=0x13, l2=» EDIT(NUMMER:3);«, l3=0x13}
0x0509…0536 Line {l1=0x2b, l2=» UNTIL (NUMMER>'000') AND (NUMMER<='999');«, l3=0x2b}
0x0536…0562 Line {l1=0x2a, l2=» DISKID:=CONCAT('DISK',NUMMER,':P3:5:F');«, l3=0x2a}
0x0562…057e Line {l1=0x1a, l2=» REWRITE(DISKFIL,DISKID);«, l3=0x1a}
0x057e…0594 Line {l1=0x14, l2=»END; (*INITIALISER*)«, l3=0x14}
0x0594…0597 Line {l1=0x01, l2=» «, l3=0x01}
0x0597…05df Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x05df…05e2 Line {l1=0x01, l2=» «, l3=0x01}
0x05e2…05f5 Line {l1=0x11, l2=»PROCEDURE AFSLUT;«, l3=0x11}
0x05f5…05f8 Line {l1=0x01, l2=» «, l3=0x01}
0x05f8…05ff Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x05ff…061e Line {l1=0x1d, l2=» DISKFIL^.FNAVN:='########';«, l3=0x1d}
0x061e…0636 Line {l1=0x16, l2=» DISKFIL^.FTYPE:='#';«, l3=0x16}
0x0636…0647 Line {l1=0x0f, l2=» PUT(DISKFIL);«, l3=0x0f}
0x0647…065a Line {l1=0x11, l2=» CLOSE(DISKFIL);«, l3=0x11}
0x065a…066a Line {l1=0x0e, l2=» CLEARSCREEN;«, l3=0x0e}
0x066a…0694 Line {l1=0x28, l2=» WRITELN('MIKADOS VERSION 01.11.1984');«, l3=0x28}
0x0694…06a5 Line {l1=0x0f, l2=»END; (*AFSLUT*)«, l3=0x0f}
0x06a5…06a8 Line {l1=0x01, l2=» «, l3=0x01}
0x06a8…06f0 Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x06f0…06f3 Line {l1=0x01, l2=» «, l3=0x01}
0x06f3…071a Line {l1=0x25, l2=»PROCEDURE LÆSFILCATALOG(NUMMER:STR3);«, l3=0x25}
0x071a…071d Line {l1=0x01, l2=» «, l3=0x01}
0x071d…0736 Line {l1=0x17, l2=»VAR DISKID: STRING(15);«, l3=0x17}
0x0736…0739 Line {l1=0x01, l2=» «, l3=0x01}
0x0739…0740 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0740…076c Line {l1=0x2a, l2=» DISKID:=CONCAT('DISK',NUMMER,':P3:5:F');«, l3=0x2a}
0x076c…0786 Line {l1=0x18, l2=» RESET(DISKFIL,DISKID);«, l3=0x18}
0x0786…07ba Line {l1=0x32, l2=» WRITELN(LIST,'Filer på disk nr. ',NUMMER,' : ');«, l3=0x32}
0x07ba…07cc Line {l1=0x10, l2=» WRITELN(LIST);«, l3=0x10}
0x07cc…07e6 Line {l1=0x18, l2=» WITH DISKFIL^ DO BEGIN«, l3=0x18}
0x07e6…07f9 Line {l1=0x11, l2=» GET(DISKFIL);«, l3=0x11}
0x07f9…081f Line {l1=0x24, l2=» WHILE FNAVN<>'########' DO BEGIN«, l3=0x24}
0x081f…0845 Line {l1=0x24, l2=» WRITELN(LIST,FNAVN,' ',FTYPE);«, l3=0x24}
0x0845…085a Line {l1=0x13, l2=» GET(DISKFIL);«, l3=0x13}
0x085a…0864 Line {l1=0x08, l2=» END;«, l3=0x08}
0x0864…086c Line {l1=0x06, l2=» END;«, l3=0x06}
0x086c…087f Line {l1=0x11, l2=» CLOSE(DISKFIL);«, l3=0x11}
0x087f…088e Line {l1=0x0d, l2=» PAGE(LIST);«, l3=0x0d}
0x088e…0894 Line {l1=0x04, l2=»END;«, l3=0x04}
0x0894…0897 Line {l1=0x01, l2=» «, l3=0x01}
0x0897…08df Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x08df…08e2 Line {l1=0x01, l2=» «, l3=0x01}
0x08e2…0918 Line {l1=0x34, l2=»PROCEDURE TRÆINDSÆT(VAR ROD:BINÆRTRÆ; FIL:BINÆRTRÆ);«, l3=0x34}
0x0918…091b Line {l1=0x01, l2=» «, l3=0x01}
0x091b…0922 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0922…0935 Line {l1=0x11, l2=» IF ROD=NIL THEN«, l3=0x11}
0x0935…0943 Line {l1=0x0c, l2=» ROD:=FIL«, l3=0x0c}
0x0943…094b Line {l1=0x06, l2=» ELSE«, l3=0x06}
0x094b…096c Line {l1=0x1f, l2=» IF FIL^.NAVN<ROD^.NAVN THEN«, l3=0x1f}
0x096c…0990 Line {l1=0x22, l2=» TRÆINDSÆT(ROD^.VENSTRE,FIL) «, l3=0x22}
0x0990…099a Line {l1=0x08, l2=» ELSE«, l3=0x08}
0x099a…09bc Line {l1=0x20, l2=» TRÆINDSÆT(ROD^.HØJRE,FIL);«, l3=0x20}
0x09bc…09d0 Line {l1=0x12, l2=»END; (*TRÆINDSÆT*)«, l3=0x12}
0x09d0…09d3 Line {l1=0x01, l2=» «, l3=0x01}
0x09d3…0a1b Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x0a1b…0a1e Line {l1=0x01, l2=» «, l3=0x01}
0x0a1e…0a53 Line {l1=0x33, l2=»PROCEDURE TRÆGENNEMLØB(ROD:BINÆRTRÆ; FILTYPE:CHAR);«, l3=0x33}
0x0a53…0a56 Line {l1=0x01, l2=» «, l3=0x01}
0x0a56…0a5d Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0a5d…0a71 Line {l1=0x12, l2=» IF ROD<>NIL THEN«, l3=0x12}
0x0a71…0a7a Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x0a7a…0aa3 Line {l1=0x27, l2=» TRÆGENNEMLØB(ROD^.VENSTRE,FILTYPE);«, l3=0x27}
0x0aa3…0abf Line {l1=0x1a, l2=» WITH DISKFIL^ DO BEGIN«, l3=0x1a}
0x0abf…0ad8 Line {l1=0x17, l2=» FNAVN:=ROD^.NAVN;«, l3=0x17}
0x0ad8…0aef Line {l1=0x15, l2=» FTYPE:=FILTYPE;«, l3=0x15}
0x0aef…0b04 Line {l1=0x13, l2=» PUT(DISKFIL);«, l3=0x13}
0x0b04…0b0e Line {l1=0x08, l2=» END;«, l3=0x08}
0x0b0e…0b35 Line {l1=0x25, l2=» TRÆGENNEMLØB(ROD^.HØJRE,FILTYPE);«, l3=0x25}
0x0b35…0b3d Line {l1=0x06, l2=» END;«, l3=0x06}
0x0b3d…0b54 Line {l1=0x15, l2=»END; (*TRÆGENNEMLØB*)«, l3=0x15}
0x0b54…0b57 Line {l1=0x01, l2=» «, l3=0x01}
0x0b57…0b9f Line {l1=0x46, l2=»(********************************************************************)«, l3=0x46}
0x0b9f…0ba2 Line {l1=0x01, l2=» «, l3=0x01}
0x0ba2…0bc7 Line {l1=0x23, l2=»PROCEDURE LÆSDISKCAT(DISC:INTEGER);«, l3=0x23}
0x0bc7…0bca Line {l1=0x01, l2=» «, l3=0x01}
0x0bca…0c07 Line {l1=0x3b, l2=»CONST CAT2 = 256; (*ANTAL SEKTORER I KATALOGEN FOR P1/P2*)«, l3=0x3b}
0x0c07…0c42 Line {l1=0x39, l2=» CAT3 = 64; (*ANTAL SEKTORER I KATALOGEN FOR P3*)«, l3=0x39}
0x0c42…0c7c Line {l1=0x38, l2=» SPS2 = 32; (*ANTAL SEKTORER PR. SPOR FOR P1/P2*)«, l3=0x38}
0x0c7c…0cb4 Line {l1=0x36, l2=» SPS3 = 16; (*ANTAL SEKTORER PR. SPOR FOR P3*)«, l3=0x36}
0x0cb4…0cb7 Line {l1=0x01, l2=» «, l3=0x01}
0x0cb7…0cdb Line {l1=0x22, l2=»VAR CATSIZE, SEKTMAX, N : INTEGER;«, l3=0x22}
0x0cdb…0d0e Line {l1=0x31, l2=» TRACK, SECTOR, IOCODE, J, L, CIFFER :INTEGER;«, l3=0x31}
0x0d0e…0d28 Line {l1=0x18, l2=» FILNAVN : STRING(9);«, l3=0x18}
0x0d28…0d2b Line {l1=0x01, l2=» «, l3=0x01}
0x0d2b…0d32 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x0d32…0d42 Line {l1=0x0e, l2=» CASE DISC OF«, l3=0x0e}
0x0d42…0d50 Line {l1=0x0c, l2=» 1,2: BEGIN«, l3=0x0c}
0x0d50…0d69 Line {l1=0x17, l2=» CATSIZE:=CAT2;«, l3=0x17}
0x0d69…0d82 Line {l1=0x17, l2=» SEKTMAX:=SPS2;«, l3=0x17}
0x0d82…0d8f Line {l1=0x0b, l2=» END;«, l3=0x0b}
0x0d8f…0d9d Line {l1=0x0c, l2=» 3 : BEGIN«, l3=0x0c}
0x0d9d…0db6 Line {l1=0x17, l2=» CATSIZE:=CAT3;«, l3=0x17}
0x0db6…0dcf Line {l1=0x17, l2=» SEKTMAX:=SPS3;«, l3=0x17}
0x0dcf…0ddc Line {l1=0x0b, l2=» END;«, l3=0x0b}
0x0ddc…0de4 Line {l1=0x06, l2=» END;«, l3=0x06}
0x0de4…0de7 Line {l1=0x01, l2=» «, l3=0x01}
0x0de7…0e01 Line {l1=0x18, l2=» FOR N:=1 TO CATSIZE DO«, l3=0x18}
0x0e01…0e0a Line {l1=0x07, l2=» BEGIN«, l3=0x07}
0x0e0a…0e27 Line {l1=0x1b, l2=» TRACK := N DIV SEKTMAX;«, l3=0x1b}
0x0e27…0e44 Line {l1=0x1b, l2=» SECTOR:= N MOD SEKTMAX;«, l3=0x1b}
0x0e44…0e57 Line {l1=0x11, l2=» ERRORCODE:=0;«, l3=0x11}
0x0e57…0e69 Line {l1=0x10, l2=» IOCODE := 1;«, l3=0x10}
0x0e69…0ea4 Line {l1=0x39, l2=» PSCIU(DISCBUFFER,DISC,TRACK,SECTOR,IOCODE,ERRORCODE);«, l3=0x39}
0x0ea4…0ed2 Line {l1=0x2c, l2=» IF ERRORCODE <> 0 THEN EXIT(LÆSDISKCAT);«, l3=0x2c}
0x0ed2…0ed5 Line {l1=0x01, l2=» «, l3=0x01}
0x0ed5…0ee0 Line {l1=0x09, l2=» J:=0;«, l3=0x09}
0x0ee0…0eec Line {l1=0x0a, l2=» REPEAT«, l3=0x0a}
0x0eec…0f09 Line {l1=0x1b, l2=» FILNAVN:='*********';«, l3=0x1b}
0x0f09…0f25 Line {l1=0x1a, l2=» FOR L := J TO J+8 DO«, l3=0x1a}
0x0f25…0f32 Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x0f32…0f61 Line {l1=0x2d, l2=» CIFFER := ORD(DISCBUFFER(L)) MOD 128;«, l3=0x2d}
0x0f61…0fb0 Line {l1=0x4d, l2=» IF (CIFFER <= 126) AND (CIFFER>=32) THEN FILNAVN(L-J+1):=CHR(CIFFER);«, l3=0x4d}
0x0fb0…0fbc Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x0fbc…0fd8 Line {l1=0x1a, l2=» FILTYPE:=FILNAVN(9);«, l3=0x1a}
0x0fd8…0ffb Line {l1=0x21, l2=» FILNAVN:=COPY(FILNAVN,1,8);«, l3=0x21}
0x0ffb…1044 Line {l1=0x47, l2=» IF (SCAN(8,='*',FILNAVN(1))=8) AND (FILTYPE IN (.'0'..'Å'.)) THEN«, l3=0x47}
0x1044…1051 Line {l1=0x0b, l2=» BEGIN«, l3=0x0b}
0x1051…1064 Line {l1=0x11, l2=» NEW(FIL);«, l3=0x11}
0x1064…1081 Line {l1=0x1b, l2=» FIL^.NAVN:=FILNAVN;«, l3=0x1b}
0x1081…109d Line {l1=0x1a, l2=» FIL^.VENSTRE:=NIL;«, l3=0x1a}
0x109d…10b7 Line {l1=0x18, l2=» FIL^.HØJRE:=NIL;«, l3=0x18}
0x10b7…10dd Line {l1=0x24, l2=» TRÆINDSÆT(TRÆ(FILTYPE),FIL);«, l3=0x24}
0x10dd…1126 Line {l1=0x47, l2=»(* WRITELN(LIST,TRACK:3,' ',SECTOR:2,' ',FILNAVN,' ',FILTYPE);*)«, l3=0x47}
0x1126…1132 Line {l1=0x0a, l2=» END;«, l3=0x0a}
0x1132…1142 Line {l1=0x0e, l2=» J:=J+13;«, l3=0x0e}
0x1142…116f Line {l1=0x2b, l2=» UNTIL (FILNAVN='********') OR (J>=242);«, l3=0x2b}
0x116f…1187 Line {l1=0x16, l2=» END; (*FOR N:=....*)«, l3=0x16}
0x1187…119c Line {l1=0x13, l2=»END; (*LÆSDISKCAT*)«, l3=0x13}
0x119c…119f Line {l1=0x01, l2=» «, l3=0x01}
0x119f…11e9 Line {l1=0x48, l2=»(**********************************************************************)«, l3=0x48}
0x11e9…11ec Line {l1=0x01, l2=» «, l3=0x01}
0x11ec…11fd Line {l1=0x0f, l2=»PROCEDURE MAIN;«, l3=0x0f}
0x11fd…1200 Line {l1=0x01, l2=» «, l3=0x01}
0x1200…1225 Line {l1=0x23, l2=»VAR FILNAVN : NAVNTYPE;«, l3=0x23}
0x1225…124b Line {l1=0x24, l2=» FTYPE : STRING(1);«, l3=0x24}
0x124b…1251 Line {l1=0x04, l2=» «, l3=0x04}
0x1251…1258 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x1258…1268 Line {l1=0x0e, l2=» INITIALISER;«, l3=0x0e}
0x1268…126b Line {l1=0x01, l2=» «, l3=0x01}
0x126b…1290 Line {l1=0x23, l2=» IF NUMMER='001' THEN DISC:=1 ELSE«, l3=0x23}
0x1290…12c0 Line {l1=0x2e, l2=» IF NUMMER='002' THEN DISC:=2 ELSE DISC:=3;«, l3=0x2e}
0x12c0…12c3 Line {l1=0x01, l2=» «, l3=0x01}
0x12c3…12cf Line {l1=0x0a, l2=» WRITELN;«, l3=0x0a}
0x12cf…130e Line {l1=0x3d, l2=» WRITELN('Katalogen på disk nr. ',NUMMER,' læses. VENT !');«, l3=0x3d}
0x130e…1323 Line {l1=0x13, l2=» LÆSDISKCAT(DISC);«, l3=0x13}
0x1323…1326 Line {l1=0x01, l2=» «, l3=0x01}
0x1326…1368 Line {l1=0x40, l2=» FOR FILTYPE:='0' TO 'Å' DO TRÆGENNEMLØB(TRÆ(FILTYPE),FILTYPE);«, l3=0x40}
0x1368…136d Line {l1=0x03, l2=» «, l3=0x03}
0x136d…137c Line {l1=0x0d, l2=»END; (*MAIN*)«, l3=0x0d}
0x137c…137f Line {l1=0x01, l2=» «, l3=0x01}
0x137f…13c9 Line {l1=0x48, l2=»(**********************************************************************)«, l3=0x48}
0x13c9…13cc Line {l1=0x01, l2=» «, l3=0x01}
0x13cc…13d3 Line {l1=0x05, l2=»BEGIN«, l3=0x05}
0x13d3…13dc Line {l1=0x07, l2=» MAIN;«, l3=0x07}
0x13dc…141b Line {l1=0x3d, l2=» IF ERRORCODE <> 0 THEN WRITELN ('ERRORCODE:', ERRORCODE:4);«, l3=0x3d}
0x141b…1426 Line {l1=0x09, l2=» AFSLUT;«, l3=0x09}
0x1426…1440 Line {l1=0x18, l2=» LÆSFILCATALOG(NUMMER);«, l3=0x18}
0x1440…1446 Line {l1=0x04, l2=»END.«, l3=0x04}
0x1446…1460 00 00 49 4e 47 28 38 29 3b 1a 16 20 20 20 20 20 4b 4e 55 44 45 20 20 20 20 3d ┆ ING(8); KNUDE =┆
0x1460…1480 20 52 45 43 4f 52 44 16 23 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 4e 41 56 4e 20 ┆ RECORD # NAVN ┆
0x1480…14a0 3a 20 4e 41 56 4e 54 59 50 45 3b 20 23 2c 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 ┆: NAVNTYPE; #, ┆
0x14a0…14c0 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┆
[…0x47…]