|
DataMuseum.dkPresents historical artifacts from the history of: CP/M |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about CP/M Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - download
Length: 15744 (0x3d80) Names: »INDEX.PAS«
└─⟦29e35ddf2⟧ Bits:30003931/CCPM_Tegn.imd Disketter indleveret af Steffen Jensen (Piccolo/Piccoline) └─⟦this⟧ »INDEX.PAS«
0x0000…0020 (0,) 70 72 6f 67 72 61 6d 20 69 6e 64 65 78 3b 0d 0a 28 2a 24 55 2b 2a 29 0d 0a 63 6f 6e 73 74 0d 0a ┆program index; (*$U+*) const ┆ 0x0020…0040 20 20 73 74 61 72 74 69 6e 76 65 72 73 3d 40 32 37 27 70 27 3b 0d 0a 20 20 73 6c 75 74 69 6e 76 ┆ startinvers=@27'p'; slutinv┆ 0x0040…0060 65 72 73 3d 40 32 37 27 71 27 3b 0d 0a 20 20 41 4e 54 41 4c 4e 4f 45 47 4c 45 4f 52 44 3d 32 35 ┆ers=@27'q'; ANTALNOEGLEORD=25┆ 0x0060…0080 36 3b 0d 0a 20 20 49 4e 44 45 58 46 49 4c 4e 41 56 4e 3a 73 74 72 69 6e 67 28 2e 33 30 2e 29 3d ┆6; INDEXFILNAVN:string(.30.)=┆ 0x0080…00a0 27 49 4e 44 58 53 4f 52 54 27 3b 0d 0a 20 20 72 65 64 3d 40 32 37 27 62 34 27 3b 67 72 65 65 6e ┆'INDXSORT'; red=@27'b4';green┆ 0x00a0…00c0 3d 40 32 37 27 62 32 27 3b 67 72 65 79 3d 40 32 37 27 62 38 27 3b 0d 0a 74 79 70 65 0d 0a 20 20 ┆=@27'b2';grey=@27'b8'; type ┆ 0x00c0…00e0 73 74 72 31 3d 73 74 72 69 6e 67 28 2e 31 2e 29 3b 0d 0a 20 20 73 74 72 33 3d 73 74 72 69 6e 67 ┆str1=string(.1.); str3=string┆ 0x00e0…0100 28 2e 33 2e 29 3b 0d 0a 20 20 73 74 72 33 30 3d 73 74 72 69 6e 67 28 2e 33 30 2e 29 3b 0d 0a 20 ┆(.3.); str30=string(.30.); ┆ 0x0100…0120 20 73 74 72 38 30 3d 73 74 72 69 6e 67 28 2e 38 30 2e 29 3b 0d 0a 20 20 73 74 72 32 35 35 3d 73 ┆ str80=string(.80.); str255=s┆ 0x0120…0140 74 72 69 6e 67 28 2e 32 35 35 2e 29 3b 0d 0a 76 61 72 0d 0a 20 20 61 6e 74 61 6c 6f 72 64 2c 6e ┆tring(.255.); var antalord,n┆ 0x0140…0160 6f 65 67 6c 65 6f 72 64 6c 61 65 6e 67 64 65 2c 69 2c 74 2c 6c 6e 72 2c 73 69 64 65 3a 20 69 6e ┆oegleordlaengde,i,t,lnr,side: in┆ 0x0160…0180 74 65 67 65 72 3b 0d 0a 20 20 6e 6f 65 67 6c 65 6f 72 64 3a 20 61 72 72 61 79 28 2e 31 2e 2e 41 ┆teger; noegleord: array(.1..A┆ 0x0180…01a0 4e 54 41 4c 4e 4f 45 47 4c 45 4f 52 44 2e 29 20 6f 66 20 73 74 72 33 30 3b 0d 0a 20 20 69 6e 64 ┆NTALNOEGLEORD.) of str30; ind┆ 0x01a0…01c0 65 78 6c 69 6e 69 65 3a 20 61 72 72 61 79 28 2e 31 2e 2e 41 4e 54 41 4c 4e 4f 45 47 4c 45 4f 52 ┆exlinie: array(.1..ANTALNOEGLEOR┆ 0x01c0…01e0 44 2e 29 20 6f 66 20 73 74 72 38 30 3b 0d 0a 20 20 6e 6f 65 67 6c 65 6f 72 64 66 69 6c 6e 61 76 ┆D.) of str80; noegleordfilnav┆ 0x01e0…0200 6e 2c 20 72 63 74 66 69 6c 6e 61 76 6e 2c 20 72 63 74 69 6e 64 65 78 66 69 6c 6e 61 76 6e 3a 20 ┆n, rctfilnavn, rctindexfilnavn: ┆ 0x0200…0220 73 74 72 33 30 3b 0d 0a 20 20 74 65 6b 73 74 6c 69 6e 69 65 3a 20 73 74 72 32 35 35 3b 0d 0a 20 ┆str30; tekstlinie: str255; ┆ 0x0220…0240 20 74 65 67 6e 3a 20 63 68 61 72 3b 0d 0a 20 20 6e 6f 65 67 6c 65 6f 72 64 66 69 6c 2c 20 72 63 ┆ tegn: char; noegleordfil, rc┆ 0x0240…0260 74 65 6b 73 74 66 69 6c 2c 20 69 6e 64 65 78 66 69 6c 3a 20 74 65 78 74 28 2e 34 30 39 36 2e 29 ┆tekstfil, indexfil: text(.4096.)┆ 0x0260…0280 3b 20 28 2a 20 34 4b 20 66 69 6c 62 75 66 66 65 72 20 2a 29 0d 0a 20 20 70 72 69 6e 74 65 72 3a ┆; (* 4K filbuffer *) printer:┆ 0x0280…02a0 20 74 65 78 74 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 ┆ text; (* *) proced┆ 0x02a0…02c0 75 72 65 20 53 6c 65 74 53 6b 61 65 72 6d 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 77 72 69 74 65 28 ┆ure SletSkaerm; begin write(┆ 0x02c0…02e0 40 32 37 27 45 27 29 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 ┆@27'E'); end; (* *)┆ 0x02e0…0300 0d 0a 70 72 6f 63 65 64 75 72 65 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 62 65 67 69 6e 0d 0a ┆ procedure SlukCursor; begin ┆ 0x0300…0320 20 20 77 72 69 74 65 28 40 32 37 27 66 27 29 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ┆ write(@27'f'); end; (* ┆ 0x0320…0340 ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 54 61 65 6e 64 43 75 72 73 6f 72 3b ┆ *) procedure TaendCursor;┆ 0x0340…0360 0d 0a 62 65 67 69 6e 0d 0a 20 20 77 72 69 74 65 28 40 32 37 27 65 27 29 3b 0d 0a 65 6e 64 3b 0d ┆ begin write(@27'e'); end; ┆ 0x0360…0380 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 44 79 74 ┆ (* *) procedure Dyt┆ 0x0380…03a0 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 77 72 69 74 65 28 40 37 29 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a ┆; begin write(@7); end; (*┆ 0x03a0…03c0 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 42 6c 61 64 72 65 ┆ *) procedure Bladre┆ 0x03c0…03e0 28 78 2c 79 3a 20 69 6e 74 65 67 65 72 29 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 67 6f 74 6f 78 79 ┆(x,y: integer); begin gotoxy┆ 0x03e0…0400 28 78 2c 79 29 3b 0d 0a 20 20 77 72 69 74 65 28 73 74 61 72 74 69 6e 76 65 72 73 2c 72 65 64 2c ┆(x,y); write(startinvers,red,┆ 0x0400…0420 (1,) 27 52 45 54 55 52 4e 27 2c 67 72 65 65 6e 2c 73 6c 75 74 69 6e 76 65 72 73 2c 27 20 27 29 3b 0d ┆'RETURN',green,slutinvers,' '); ┆ 0x0420…0440 0a 20 20 72 65 70 65 61 74 0d 0a 20 20 20 20 72 65 61 64 28 4b 42 44 2c 74 65 67 6e 29 3b 0d 0a ┆ repeat read(KBD,tegn); ┆ 0x0440…0460 20 20 75 6e 74 69 6c 20 28 74 65 67 6e 3d 40 31 33 29 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ┆ until (tegn=@13); end; (* ┆ 0x0460…0480 ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 53 65 74 46 75 6e 6b 54 61 ┆ *) procedure SetFunkTa┆ 0x0480…04a0 73 74 28 61 73 63 69 69 3a 20 62 79 74 65 3b 20 73 74 72 65 6e 67 3a 20 73 74 72 33 30 29 3b 0d ┆st(ascii: byte; streng: str30); ┆ 0x04a0…04c0 0a 62 65 67 69 6e 0d 0a 20 20 77 72 69 74 65 28 40 32 37 27 3a 27 2b 63 68 72 28 61 73 63 69 69 ┆ begin write(@27':'+chr(ascii┆ 0x04c0…04e0 29 2b 73 74 72 65 6e 67 2b 40 30 29 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ┆)+streng+@0); end; (* ┆ 0x04e0…0500 ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 53 65 74 46 75 6e 6b 54 61 73 74 65 72 3b 0d ┆ *) procedure SetFunkTaster; ┆ 0x0500…0520 0a 62 65 67 69 6e 0d 0a 20 20 53 65 74 46 75 6e 6b 54 61 73 74 28 37 35 2c 40 39 29 3b 20 20 20 ┆ begin SetFunkTast(75,@9); ┆ 0x0520…0540 28 2a 20 70 69 6c 20 74 69 6c 20 76 65 6e 73 74 72 65 20 2a 29 0d 0a 20 20 53 65 74 46 75 6e 6b ┆(* pil til venstre *) SetFunk┆ 0x0540…0560 54 61 73 74 28 37 37 2c 40 32 34 29 3b 20 20 28 2a 20 70 69 6c 20 74 69 6c 20 68 7c 6a 72 65 20 ┆Tast(77,@24); (* pil til højre ┆ 0x0560…0580 2a 29 0d 0a 20 20 53 65 74 46 75 6e 6b 54 61 73 74 28 38 32 2c 40 34 29 3b 20 20 20 28 2a 20 74 ┆*) SetFunkTast(82,@4); (* t┆ 0x0580…05a0 65 67 6e 20 69 6e 64 20 2a 29 0d 0a 20 20 53 65 74 46 75 6e 6b 54 61 73 74 28 38 33 2c 40 35 29 ┆egn ind *) SetFunkTast(83,@5)┆ 0x05a0…05c0 3b 20 20 20 28 2a 20 73 6c 65 74 20 74 65 67 6e 20 2a 29 0d 0a 20 20 53 65 74 46 75 6e 6b 54 61 ┆; (* slet tegn *) SetFunkTa┆ 0x05c0…05e0 73 74 28 37 36 2c 40 31 33 29 3b 20 20 28 2a 20 52 45 54 55 52 4e 20 2a 29 0d 0a 65 6e 64 3b 0d ┆st(76,@13); (* RETURN *) end; ┆ 0x05e0…0600 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 49 6e 69 ┆ (* *) procedure Ini┆ 0x0600…0620 74 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 77 72 69 74 65 28 67 72 65 65 6e 29 3b 0d 0a 20 20 53 6c ┆t; begin write(green); Sl┆ 0x0620…0640 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 53 65 74 46 75 6e 6b 54 61 73 74 65 72 3b 0d 0a 65 6e 64 ┆ukCursor; SetFunkTaster; end┆ 0x0640…0660 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 49 ┆; (* *) procedure I┆ 0x0660…0680 6e 70 75 74 53 6b 61 65 72 6d 50 72 69 6e 74 65 72 28 78 2c 79 3a 20 69 6e 74 65 67 65 72 3b 20 ┆nputSkaermPrinter(x,y: integer; ┆ 0x0680…06a0 76 61 72 20 74 65 67 6e 3a 20 63 68 61 72 29 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 53 6c 75 6b 43 ┆var tegn: char); begin SlukC┆ 0x06a0…06c0 75 72 73 6f 72 3b 0d 0a 20 20 67 6f 74 6f 78 79 28 78 2c 79 29 3b 0d 0a 20 20 77 72 69 74 65 28 ┆ursor; gotoxy(x,y); write(┆ 0x06c0…06e0 72 65 64 2c 27 53 27 2c 67 72 65 65 6e 2c 27 3d 73 6b 7b 72 6d 20 27 2c 72 65 64 2c 27 50 27 2c ┆red,'S',green,'=skærm ',red,'P',┆ 0x06e0…0700 67 72 65 65 6e 2c 27 3d 70 72 69 6e 74 65 72 20 20 20 27 29 3b 0d 0a 20 20 54 61 65 6e 64 43 75 ┆green,'=printer '); TaendCu┆ 0x0700…0720 72 73 6f 72 3b 0d 0a 20 20 72 65 70 65 61 74 0d 0a 20 20 20 20 72 65 61 64 28 4b 42 44 2c 74 65 ┆rsor; repeat read(KBD,te┆ 0x0720…0740 67 6e 29 3b 0d 0a 20 20 20 20 69 66 20 6e 6f 74 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 ┆gn); if not(tegn in (.@13,'┆ 0x0740…0760 53 27 2c 27 73 27 2c 27 50 27 2c 27 70 27 2e 29 29 20 74 68 65 6e 20 44 79 74 3b 0d 0a 20 20 75 ┆S','s','P','p'.)) then Dyt; u┆ 0x0760…0780 6e 74 69 6c 20 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 53 27 2c 27 73 27 2c 27 50 27 2c ┆ntil (tegn in (.@13,'S','s','P',┆ 0x0780…07a0 27 70 27 2e 29 29 20 6f 72 20 28 74 65 67 6e 3d 40 32 37 29 3b 0d 0a 20 20 53 6c 75 6b 43 75 72 ┆'p'.)) or (tegn=@27); SlukCur┆ 0x07a0…07c0 73 6f 72 3b 0d 0a 20 20 69 66 20 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 53 27 2c 27 73 ┆sor; if (tegn in (.@13,'S','s┆ 0x07c0…07e0 27 2e 29 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 74 65 67 6e 3a 3d 27 53 27 3b 0d ┆'.)) then begin tegn:='S'; ┆ 0x07e0…0800 0a 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 20 20 69 66 20 28 74 65 67 6e 3c ┆ end else begin if (tegn<┆ 0x0800…0820 (2,) 3e 40 32 37 29 20 74 68 65 6e 20 74 65 67 6e 3a 3d 27 50 27 3b 0d 0a 20 20 65 6e 64 3b 0d 0a 65 ┆>@27) then tegn:='P'; end; e┆ 0x0820…0840 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 ┆nd; (* *) procedure┆ 0x0840…0860 20 49 6e 70 75 74 41 42 28 78 2c 79 3a 20 69 6e 74 65 67 65 72 3b 20 76 61 72 20 74 65 67 6e 3a ┆ InputAB(x,y: integer; var tegn:┆ 0x0860…0880 20 63 68 61 72 29 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 ┆ char); begin SlukCursor; ┆ 0x0880…08a0 20 67 6f 74 6f 78 79 28 78 2c 79 29 3b 0d 0a 20 20 77 72 69 74 65 28 72 65 64 2c 27 41 27 2c 67 ┆ gotoxy(x,y); write(red,'A',g┆ 0x08a0…08c0 72 65 65 6e 2c 27 2d 64 69 73 6b 20 20 27 2c 72 65 64 2c 27 42 27 2c 67 72 65 65 6e 2c 27 2d 64 ┆reen,'-disk ',red,'B',green,'-d┆ 0x08c0…08e0 69 73 6b 20 20 27 29 3b 0d 0a 20 20 54 61 65 6e 64 43 75 72 73 6f 72 3b 0d 0a 20 20 72 65 70 65 ┆isk '); TaendCursor; repe┆ 0x08e0…0900 61 74 0d 0a 20 20 20 20 72 65 61 64 28 4b 42 44 2c 74 65 67 6e 29 3b 0d 0a 20 20 20 20 69 66 20 ┆at read(KBD,tegn); if ┆ 0x0900…0920 6e 6f 74 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 41 27 2c 27 61 27 2c 27 42 27 2c 27 62 ┆not(tegn in (.@13,'A','a','B','b┆ 0x0920…0940 27 2e 29 29 20 74 68 65 6e 20 44 79 74 3b 0d 0a 20 20 75 6e 74 69 6c 20 28 74 65 67 6e 20 69 6e ┆'.)) then Dyt; until (tegn in┆ 0x0940…0960 20 28 2e 40 31 33 2c 27 41 27 2c 27 61 27 2c 27 42 27 2c 27 62 27 2e 29 29 20 6f 72 20 28 74 65 ┆ (.@13,'A','a','B','b'.)) or (te┆ 0x0960…0980 67 6e 3d 40 32 37 29 3b 0d 0a 20 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 69 66 20 28 74 ┆gn=@27); SlukCursor; if (t┆ 0x0980…09a0 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 41 27 2c 27 61 27 2e 29 29 20 74 68 65 6e 20 62 65 67 ┆egn in (.@13,'A','a'.)) then beg┆ 0x09a0…09c0 69 6e 0d 0a 20 20 20 20 74 65 67 6e 3a 3d 27 41 27 3b 0d 0a 20 20 65 6e 64 20 65 6c 73 65 20 62 ┆in tegn:='A'; end else b┆ 0x09c0…09e0 65 67 69 6e 0d 0a 20 20 20 20 69 66 20 28 74 65 67 6e 3c 3e 40 32 37 29 20 74 68 65 6e 20 74 65 ┆egin if (tegn<>@27) then te┆ 0x09e0…0a00 67 6e 3a 3d 27 42 27 3b 0d 0a 20 20 65 6e 64 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ┆gn:='B'; end; end; (* ┆ 0x0a00…0a20 ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f 63 65 64 75 72 65 20 49 6e 70 75 74 4a 61 4e 65 6a 28 78 ┆ *) procedure InputJaNej(x┆ 0x0a20…0a40 2c 79 3a 20 69 6e 74 65 67 65 72 3b 20 76 61 72 20 74 65 67 6e 3a 20 63 68 61 72 29 3b 0d 0a 62 ┆,y: integer; var tegn: char); b┆ 0x0a40…0a60 65 67 69 6e 0d 0a 20 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 67 6f 74 6f 78 79 28 78 2c ┆egin SlukCursor; gotoxy(x,┆ 0x0a60…0a80 79 29 3b 0d 0a 20 20 77 72 69 74 65 28 72 65 64 2c 27 4e 27 2c 67 72 65 65 6e 2c 27 3d 6e 65 6a ┆y); write(red,'N',green,'=nej┆ 0x0a80…0aa0 20 20 27 2c 72 65 64 2c 27 4a 27 2c 67 72 65 65 6e 2c 27 3d 6a 61 20 20 27 29 3b 0d 0a 20 20 54 ┆ ',red,'J',green,'=ja '); T┆ 0x0aa0…0ac0 61 65 6e 64 43 75 72 73 6f 72 3b 0d 0a 20 20 72 65 70 65 61 74 0d 0a 20 20 20 20 72 65 61 64 28 ┆aendCursor; repeat read(┆ 0x0ac0…0ae0 4b 42 44 2c 74 65 67 6e 29 3b 0d 0a 20 20 20 20 69 66 20 6e 6f 74 28 74 65 67 6e 20 69 6e 20 28 ┆KBD,tegn); if not(tegn in (┆ 0x0ae0…0b00 2e 40 31 33 2c 27 4e 27 2c 27 6e 27 2c 27 4a 27 2c 27 6a 27 2e 29 29 20 74 68 65 6e 20 44 79 74 ┆.@13,'N','n','J','j'.)) then Dyt┆ 0x0b00…0b20 3b 0d 0a 20 20 75 6e 74 69 6c 20 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c 27 4e 27 2c 27 6e ┆; until (tegn in (.@13,'N','n┆ 0x0b20…0b40 27 2c 27 4a 27 2c 27 6a 27 2e 29 29 20 6f 72 20 28 74 65 67 6e 3d 40 32 37 29 3b 0d 0a 20 20 53 ┆','J','j'.)) or (tegn=@27); S┆ 0x0b40…0b60 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 69 66 20 28 74 65 67 6e 20 69 6e 20 28 2e 40 31 33 2c ┆lukCursor; if (tegn in (.@13,┆ 0x0b60…0b80 27 4e 27 2c 27 6e 27 2e 29 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 74 65 67 6e 3a ┆'N','n'.)) then begin tegn:┆ 0x0b80…0ba0 3d 27 4e 27 3b 0d 0a 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 20 20 69 66 20 ┆='N'; end else begin if ┆ 0x0ba0…0bc0 28 74 65 67 6e 3c 3e 40 32 37 29 20 74 68 65 6e 20 74 65 67 6e 3a 3d 27 4a 27 3b 0d 0a 20 20 65 ┆(tegn<>@27) then tegn:='J'; e┆ 0x0bc0…0be0 6e 64 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 70 72 6f ┆nd; end; (* *) pro┆ 0x0be0…0c00 63 65 64 75 72 65 20 49 6e 70 75 74 53 74 72 65 6e 67 28 56 41 52 20 73 74 72 65 6e 67 3a 20 73 ┆cedure InputStreng(VAR streng: s┆ 0x0c00…0c20 (3,) 74 72 33 30 3b 0d 0a 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 6d 61 78 ┆tr30; max┆ 0x0c20…0c40 5f 6c 61 65 6e 67 64 65 2c 6b 6f 6c 6f 6e 6e 65 2c 6c 69 6e 69 65 3a 20 69 6e 74 65 67 65 72 3b ┆_laengde,kolonne,linie: integer;┆ 0x0c40…0c60 20 66 61 72 76 65 3a 20 73 74 72 33 29 3b 20 0d 0a 63 6f 6e 73 74 0d 0a 20 20 74 65 67 6e 73 61 ┆ farve: str3); const tegnsa┆ 0x0c60…0c80 65 74 3a 73 65 74 20 6f 66 20 63 68 61 72 3d 28 2e 27 20 27 2e 2e 27 7d 27 2e 29 3b 0d 0a 20 20 ┆et:set of char=(.' '..'å'.); ┆ 0x0c80…0ca0 70 69 6c 5f 76 65 6e 73 74 72 65 3d 39 3b 70 69 6c 5f 68 6f 65 6a 72 65 3d 32 34 3b 0d 0a 20 20 ┆pil_venstre=9;pil_hoejre=24; ┆ 0x0ca0…0cc0 74 65 67 6e 5f 69 6e 64 3d 34 3b 73 6c 65 74 5f 74 65 67 6e 3d 35 3b 0d 0a 20 20 73 6c 65 74 5f ┆tegn_ind=4;slet_tegn=5; slet_┆ 0x0cc0…0ce0 74 65 67 6e 5f 74 76 3d 38 3b 0d 0a 76 61 72 0d 0a 20 20 74 65 67 6e 3a 20 63 68 61 72 3b 0d 0a ┆tegn_tv=8; var tegn: char; ┆ 0x0ce0…0d00 20 20 73 74 72 65 6e 67 5f 74 65 67 6e 3a 20 61 72 72 61 79 28 2e 31 2e 2e 38 30 2e 29 20 6f 66 ┆ streng_tegn: array(.1..80.) of┆ 0x0d00…0d20 20 63 68 61 72 3b 0d 0a 20 20 74 61 73 74 2c 78 70 6f 73 3a 20 69 6e 74 65 67 65 72 3b 0d 0a 62 ┆ char; tast,xpos: integer; b┆ 0x0d20…0d40 65 67 69 6e 0d 0a 20 20 73 74 72 65 6e 67 3a 3d 27 27 3b 0d 0a 20 20 78 70 6f 73 3a 3d 31 3b 74 ┆egin streng:=''; xpos:=1;t┆ 0x0d40…0d60 65 67 6e 3a 3d 63 68 72 28 30 29 3b 74 61 73 74 3a 3d 30 3b 0d 0a 20 20 77 72 69 74 65 28 66 61 ┆egn:=chr(0);tast:=0; write(fa┆ 0x0d60…0d80 72 76 65 29 3b 0d 0a 20 20 67 6f 74 6f 78 79 28 6b 6f 6c 6f 6e 6e 65 2c 6c 69 6e 69 65 29 3b 0d ┆rve); gotoxy(kolonne,linie); ┆ 0x0d80…0da0 0a 20 20 66 6f 72 20 69 3a 3d 31 20 74 6f 20 6d 61 78 5f 6c 61 65 6e 67 64 65 20 64 6f 20 62 65 ┆ for i:=1 to max_laengde do be┆ 0x0da0…0dc0 67 69 6e 0d 0a 20 20 20 20 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 3a 3d 27 20 27 3b 0d ┆gin streng_tegn(.i.):=' '; ┆ 0x0dc0…0de0 0a 20 20 20 20 77 72 69 74 65 28 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 29 3b 0d 0a 20 ┆ write(streng_tegn(.i.)); ┆ 0x0de0…0e00 20 65 6e 64 3b 0d 0a 20 20 72 65 70 65 61 74 0d 0a 20 20 20 20 67 6f 74 6f 78 79 28 6b 6f 6c 6f ┆ end; repeat gotoxy(kolo┆ 0x0e00…0e20 6e 6e 65 2d 31 2b 78 70 6f 73 2c 6c 69 6e 69 65 29 3b 0d 0a 20 20 20 20 54 61 65 6e 64 43 75 72 ┆nne-1+xpos,linie); TaendCur┆ 0x0e20…0e40 73 6f 72 3b 0d 0a 20 20 20 20 72 65 61 64 28 4b 42 44 2c 74 65 67 6e 29 3b 74 61 73 74 3a 3d 6f ┆sor; read(KBD,tegn);tast:=o┆ 0x0e40…0e60 72 64 28 74 65 67 6e 29 3b 0d 0a 20 20 20 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 20 20 ┆rd(tegn); SlukCursor; ┆ 0x0e60…0e80 0d 0a 20 20 20 20 69 66 20 28 74 65 67 6e 20 69 6e 20 74 65 67 6e 73 61 65 74 29 20 61 6e 64 20 ┆ if (tegn in tegnsaet) and ┆ 0x0e80…0ea0 28 78 70 6f 73 3c 3d 6d 61 78 5f 6c 61 65 6e 67 64 65 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a ┆(xpos<=max_laengde) then begin ┆ 0x0ea0…0ec0 20 20 20 20 20 20 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 78 70 6f 73 2e 29 3a 3d 74 65 67 6e 3b ┆ streng_tegn(.xpos.):=tegn;┆ 0x0ec0…0ee0 0d 0a 20 20 20 20 20 20 78 70 6f 73 3a 3d 78 70 6f 73 2b 31 3b 0d 0a 20 20 20 20 20 20 77 72 69 ┆ xpos:=xpos+1; wri┆ 0x0ee0…0f00 74 65 28 74 65 67 6e 29 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 0d ┆te(tegn); end else begin ┆ 0x0f00…0f20 0a 20 20 20 20 69 66 20 28 74 61 73 74 3d 70 69 6c 5f 76 65 6e 73 74 72 65 29 20 61 6e 64 20 28 ┆ if (tast=pil_venstre) and (┆ 0x0f20…0f40 78 70 6f 73 3e 3d 32 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 78 70 6f 73 3a ┆xpos>=2) then begin xpos:┆ 0x0f40…0f60 3d 78 70 6f 73 2d 31 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 0d 0a ┆=xpos-1; end else begin ┆ 0x0f60…0f80 20 20 20 20 69 66 20 28 74 61 73 74 3d 70 69 6c 5f 68 6f 65 6a 72 65 29 20 61 6e 64 20 28 78 70 ┆ if (tast=pil_hoejre) and (xp┆ 0x0f80…0fa0 6f 73 3c 3d 28 6d 61 78 5f 6c 61 65 6e 67 64 65 2d 31 29 29 20 74 68 65 6e 20 62 65 67 69 6e 0d ┆os<=(max_laengde-1)) then begin ┆ 0x0fa0…0fc0 0a 20 20 20 20 20 20 78 70 6f 73 3a 3d 78 70 6f 73 2b 31 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c ┆ xpos:=xpos+1; end el┆ 0x0fc0…0fe0 73 65 20 62 65 67 69 6e 0d 0a 0d 0a 20 20 20 20 69 66 20 28 74 61 73 74 3d 32 30 31 29 20 74 68 ┆se begin if (tast=201) th┆ 0x0fe0…1000 65 6e 20 62 65 67 69 6e 20 28 2a 20 3c 41 31 3e 20 73 6c 65 74 20 72 65 73 74 65 6e 20 61 66 20 ┆en begin (* <A1> slet resten af ┆ 0x1000…1020 (4,) 6c 69 6e 69 65 20 2a 29 0d 0a 20 20 20 20 20 20 66 6f 72 20 69 3a 3d 78 70 6f 73 20 74 6f 20 6d ┆linie *) for i:=xpos to m┆ 0x1020…1040 61 78 5f 6c 61 65 6e 67 64 65 20 64 6f 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 73 74 72 ┆ax_laengde do begin str┆ 0x1040…1060 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 3a 3d 27 20 27 3b 0d 0a 20 20 20 20 20 20 20 20 77 72 69 ┆eng_tegn(.i.):=' '; wri┆ 0x1060…1080 74 65 28 27 20 27 29 3b 0d 0a 20 20 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c ┆te(' '); end; end el┆ 0x1080…10a0 73 65 20 62 65 67 69 6e 0d 0a 0d 0a 20 20 20 20 69 66 20 28 74 61 73 74 3d 74 65 67 6e 5f 69 6e ┆se begin if (tast=tegn_in┆ 0x10a0…10c0 64 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 66 6f 72 20 69 3a 3d 6d 61 78 5f ┆d) then begin for i:=max_┆ 0x10c0…10e0 6c 61 65 6e 67 64 65 20 64 6f 77 6e 74 6f 20 28 78 70 6f 73 2b 31 29 20 64 6f 20 62 65 67 69 6e ┆laengde downto (xpos+1) do begin┆ 0x10e0…1100 0d 0a 20 20 20 20 20 20 20 20 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 3a 3d 73 74 72 65 ┆ streng_tegn(.i.):=stre┆ 0x1100…1120 6e 67 5f 74 65 67 6e 28 2e 69 2d 31 2e 29 3b 0d 0a 20 20 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 ┆ng_tegn(.i-1.); end; ┆ 0x1120…1140 20 20 20 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 78 70 6f 73 2e 29 3a 3d 27 20 27 3b 0d 0a 20 20 ┆ streng_tegn(.xpos.):=' '; ┆ 0x1140…1160 20 20 20 20 66 6f 72 20 69 3a 3d 78 70 6f 73 20 74 6f 20 6d 61 78 5f 6c 61 65 6e 67 64 65 20 64 ┆ for i:=xpos to max_laengde d┆ 0x1160…1180 6f 20 77 72 69 74 65 28 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 29 3b 0d 0a 20 20 20 20 ┆o write(streng_tegn(.i.)); ┆ 0x1180…11a0 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 20 20 0d 0a 20 20 20 20 69 66 20 28 28 74 ┆end else begin if ((t┆ 0x11a0…11c0 61 73 74 3d 73 6c 65 74 5f 74 65 67 6e 5f 74 76 29 20 61 6e 64 20 28 78 70 6f 73 3e 31 29 29 20 ┆ast=slet_tegn_tv) and (xpos>1)) ┆ 0x11c0…11e0 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 66 6f 72 20 69 3a 3d 78 70 6f 73 20 74 6f ┆then begin for i:=xpos to┆ 0x11e0…1200 20 6d 61 78 5f 6c 61 65 6e 67 64 65 20 64 6f 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 73 ┆ max_laengde do begin s┆ 0x1200…1220 74 72 65 6e 67 5f 74 65 67 6e 28 2e 28 69 2d 31 29 2e 29 3a 3d 73 74 72 65 6e 67 5f 74 65 67 6e ┆treng_tegn(.(i-1).):=streng_tegn┆ 0x1220…1240 28 2e 69 2e 29 3b 0d 0a 20 20 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 20 20 73 74 72 65 6e 67 ┆(.i.); end; streng┆ 0x1240…1260 5f 74 65 67 6e 28 2e 6d 61 78 5f 6c 61 65 6e 67 64 65 2e 29 3a 3d 27 20 27 3b 0d 0a 20 20 20 20 ┆_tegn(.max_laengde.):=' '; ┆ 0x1260…1280 20 20 78 70 6f 73 3a 3d 28 78 70 6f 73 2d 31 29 3b 0d 0a 20 20 20 20 20 20 67 6f 74 6f 78 79 28 ┆ xpos:=(xpos-1); gotoxy(┆ 0x1280…12a0 6b 6f 6c 6f 6e 6e 65 2c 6c 69 6e 69 65 29 3b 0d 0a 20 20 20 20 20 20 66 6f 72 20 69 3a 3d 31 20 ┆kolonne,linie); for i:=1 ┆ 0x12a0…12c0 74 6f 20 6d 61 78 5f 6c 61 65 6e 67 64 65 20 64 6f 20 77 72 69 74 65 28 73 74 72 65 6e 67 5f 74 ┆to max_laengde do write(streng_t┆ 0x12c0…12e0 65 67 6e 28 2e 69 2e 29 29 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a ┆egn(.i.)); end else begin ┆ 0x12e0…1300 20 20 20 0d 0a 20 20 20 20 69 66 20 28 74 61 73 74 3d 73 6c 65 74 5f 74 65 67 6e 29 20 74 68 65 ┆ if (tast=slet_tegn) the┆ 0x1300…1320 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 66 6f 72 20 69 3a 3d 78 70 6f 73 20 74 6f 20 28 6d ┆n begin for i:=xpos to (m┆ 0x1320…1340 61 78 5f 6c 61 65 6e 67 64 65 2d 31 29 20 64 6f 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 ┆ax_laengde-1) do begin ┆ 0x1340…1360 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e 29 3a 3d 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 ┆streng_tegn(.i.):=streng_tegn(.i┆ 0x1360…1380 2b 31 2e 29 3b 0d 0a 20 20 20 20 20 20 20 20 77 72 69 74 65 28 73 74 72 65 6e 67 5f 74 65 67 6e ┆+1.); write(streng_tegn┆ 0x1380…13a0 28 2e 69 2e 29 29 3b 0d 0a 20 20 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 20 20 73 74 72 65 6e ┆(.i.)); end; stren┆ 0x13a0…13c0 67 5f 74 65 67 6e 28 2e 6d 61 78 5f 6c 61 65 6e 67 64 65 2e 29 3a 3d 27 20 27 3b 0d 0a 20 20 20 ┆g_tegn(.max_laengde.):=' '; ┆ 0x13c0…13e0 20 20 20 77 72 69 74 65 28 27 20 27 29 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 ┆ write(' '); end else beg┆ 0x13e0…1400 69 6e 0d 0a 20 20 20 0d 0a 20 20 20 20 65 6e 64 3b 65 6e 64 3b 65 6e 64 3b 65 6e 64 3b 65 6e 64 ┆in end;end;end;end;end┆ 0x1400…1420 (5,) 3b 65 6e 64 3b 65 6e 64 3b 0d 0a 20 20 75 6e 74 69 6c 20 28 74 61 73 74 3d 31 33 29 20 6f 72 20 ┆;end;end; until (tast=13) or ┆ 0x1420…1440 28 74 61 73 74 3d 32 37 29 3b 0d 0a 20 20 53 6c 75 6b 43 75 72 73 6f 72 3b 0d 0a 20 20 77 72 69 ┆(tast=27); SlukCursor; wri┆ 0x1440…1460 74 65 28 67 72 65 65 6e 29 3b 0d 0a 20 20 69 66 20 74 61 73 74 3d 31 33 20 74 68 65 6e 20 62 65 ┆te(green); if tast=13 then be┆ 0x1460…1480 67 69 6e 3b 0d 0a 20 20 20 20 66 6f 72 20 69 3a 3d 31 20 74 6f 20 6d 61 78 5f 6c 61 65 6e 67 64 ┆gin; for i:=1 to max_laengd┆ 0x1480…14a0 65 20 64 6f 20 73 74 72 65 6e 67 3a 3d 73 74 72 65 6e 67 2b 73 74 72 65 6e 67 5f 74 65 67 6e 28 ┆e do streng:=streng+streng_tegn(┆ 0x14a0…14c0 2e 69 2e 29 3b 0d 0a 20 20 20 20 69 3a 3d 6d 61 78 5f 6c 61 65 6e 67 64 65 3b 0d 0a 20 20 20 20 ┆.i.); i:=max_laengde; ┆ 0x14c0…14e0 72 65 70 65 61 74 0d 0a 20 20 20 20 20 20 69 66 20 73 74 72 65 6e 67 5f 74 65 67 6e 28 2e 69 2e ┆repeat if streng_tegn(.i.┆ 0x14e0…1500 29 3d 27 20 27 20 74 68 65 6e 20 64 65 6c 65 74 65 28 73 74 72 65 6e 67 2c 69 2c 31 29 3b 0d 0a ┆)=' ' then delete(streng,i,1); ┆ 0x1500…1520 20 20 20 20 20 20 69 3a 3d 69 2d 31 3b 0d 0a 20 20 20 20 75 6e 74 69 6c 20 28 73 74 72 65 6e 67 ┆ i:=i-1; until (streng┆ 0x1520…1540 5f 74 65 67 6e 28 2e 69 2e 29 3c 3e 27 20 27 29 20 6f 72 20 28 69 3d 31 29 3b 0d 0a 20 20 65 6e ┆_tegn(.i.)<>' ') or (i=1); en┆ 0x1540…1560 64 3b 0d 0a 20 20 69 66 20 74 61 73 74 3d 32 37 20 74 68 65 6e 20 73 74 72 65 6e 67 3a 3d 40 32 ┆d; if tast=27 then streng:=@2┆ 0x1560…1580 37 3b 0d 0a 65 6e 64 3b 0d 0a 28 2a 20 ac ac ac ac ac ac ac ac ac ac 20 2a 29 0d 0a 66 75 6e 63 ┆7; end; (* *) func┆ 0x1580…15a0 74 69 6f 6e 20 46 6f 72 6d 61 74 4f 4b 28 66 69 6c 6e 61 76 6e 3a 20 73 74 72 33 30 29 3a 62 6f ┆tion FormatOK(filnavn: str30):bo┆ 0x15a0…15c0 6f 6c 65 61 6e 3b 0d 0a 76 61 72 0d 0a 20 20 74 3a 20 69 6e 74 65 67 65 72 3b 0d 0a 20 20 4f 4b ┆olean; var t: integer; OK┆ 0x15c0…15e0 5f 74 65 67 6e 3a 20 73 65 74 20 6f 66 20 63 68 61 72 3b 0d 0a 62 65 67 69 6e 0d 0a 20 20 69 66 ┆_tegn: set of char; begin if┆ 0x15e0…1600 20 28 66 69 6c 6e 61 76 6e 3d 40 32 37 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 46 ┆ (filnavn=@27) then begin F┆ 0x1600…1620 6f 72 6d 61 74 4f 4b 3a 3d 66 61 6c 73 65 3b 0d 0a 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 ┆ormatOK:=false; end else begi┆ 0x1620…1640 6e 0d 0a 20 20 20 20 69 66 20 28 70 6f 73 28 27 41 3a 27 2c 66 69 6c 6e 61 76 6e 29 3d 31 29 20 ┆n if (pos('A:',filnavn)=1) ┆ 0x1640…1660 6f 72 20 28 70 6f 73 28 27 61 3a 27 2c 66 69 6c 6e 61 76 6e 29 3d 31 29 20 6f 72 0d 0a 20 20 20 ┆or (pos('a:',filnavn)=1) or ┆ 0x1660…1680 20 20 20 20 28 70 6f 73 28 27 42 3a 27 2c 66 69 6c 6e 61 76 6e 29 3d 31 29 20 6f 72 20 28 70 6f ┆ (pos('B:',filnavn)=1) or (po┆ 0x1680…16a0 73 28 27 62 3a 27 2c 66 69 6c 6e 61 76 6e 29 3d 31 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 ┆s('b:',filnavn)=1) then begin ┆ 0x16a0…16c0 20 20 20 20 20 69 66 20 6c 65 6e 28 66 69 6c 6e 61 76 6e 29 3e 31 34 20 74 68 65 6e 20 62 65 67 ┆ if len(filnavn)>14 then beg┆ 0x16c0…16e0 69 6e 0d 0a 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 4f 4b 3a 3d 66 61 6c 73 65 3b 0d 0a 20 20 ┆in FormatOK:=false; ┆ 0x16e0…1700 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 46 6f 72 6d ┆ end else begin Form┆ 0x1700…1720 61 74 4f 4b 3a 3d 74 72 75 65 3b 0d 0a 20 20 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 65 6e 64 ┆atOK:=true; end; end┆ 0x1720…1740 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 69 66 20 6c 65 6e 28 66 69 6c 6e 61 76 ┆ else begin if len(filnav┆ 0x1740…1760 6e 29 3e 31 32 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 ┆n)>12 then begin Format┆ 0x1760…1780 4f 4b 3a 3d 66 61 6c 73 65 3b 0d 0a 20 20 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e ┆OK:=false; end else begin┆ 0x1780…17a0 0d 0a 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 4f 4b 3a 3d 74 72 75 65 3b 0d 0a 20 20 20 20 20 ┆ FormatOK:=true; ┆ 0x17a0…17c0 20 65 6e 64 3b 0d 0a 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 69 66 20 28 66 69 6c 6e 61 76 6e ┆ end; end; if (filnavn┆ 0x17c0…17e0 3d 27 20 27 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 46 6f 72 6d 61 74 4f 4b ┆=' ') then begin FormatOK┆ 0x17e0…1800 3a 3d 66 61 6c 73 65 3b 0d 0a 20 20 20 20 65 6e 64 20 65 6c 73 65 20 62 65 67 69 6e 0d 0a 20 20 ┆:=false; end else begin ┆ 0x1800…1820 (6,) 20 20 20 20 4f 4b 5f 74 65 67 6e 3a 3d 28 2e 27 2e 27 2c 27 3a 27 2c 27 30 27 2e 2e 27 39 27 2c ┆ OK_tegn:=(.'.',':','0'..'9',┆ 0x1820…1840 27 41 27 2e 2e 27 5a 27 2c 27 61 27 2e 2e 27 7a 27 2c 27 5c 27 2c 27 7c 27 2e 29 3b 0d 0a 20 20 ┆'A'..'Z','a'..'z','Ø','ø'.); ┆ 0x1840…1860 20 20 20 20 74 3a 3d 30 3b 0d 0a 20 20 20 20 20 20 72 65 70 65 61 74 0d 0a 20 20 20 20 20 20 20 ┆ t:=0; repeat ┆ 0x1860…1880 20 74 3a 3d 74 2b 31 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 6e 6f 74 28 66 69 6c 6e 61 76 ┆ t:=t+1; if (not(filnav┆ 0x1880…18a0 6e 28 2e 74 2e 29 20 69 6e 20 4f 4b 5f 74 65 67 6e 29 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a ┆n(.t.) in OK_tegn)) then begin ┆ 0x18a0…18c0 20 20 20 20 20 20 20 20 20 20 46 6f 72 6d 61 74 4f 4b 3a 3d 66 61 6c 73 65 3b 0d 0a 20 20 20 20 ┆ FormatOK:=false; ┆ 0x18c0…18e0 20 20 20 20 65 6e 64 3b 0d 0a 20 20 20 20 20 20 20 20 69 66 20 28 66 69 6c 6e 61 76 6e 28 2e 74 ┆ end; if (filnavn(.t┆ 0x18e0…1900 2e 29 3d 27 5c 27 29 20 74 68 65 6e 20 62 65 67 69 6e 0d 0a 20 20 20 20 20 20 20 20 20 20 66 69 ┆.)='Ø') then begin fi┆ 0x1900…1920 6c 6e 61 76 6e 28 2e 74 2e 29 3a 3d 27 7c 27 3b 0d 0a 20 20 20 20 20 20 20 20 65 6e 64 3b 0d 0a ┆lnavn(.t.):='ø'; end; ┆ […truncated at 200 lines…]