1 W$="@C&RN@@@@---------------------------------@@@@@-------------------------" 2 W$=W$+"--------@@@@@----------------------------------" 3 DIMKA%(400),A%(400),NA$(400),ZA$(400),ZE$(400),HA$(400),AR$(400),H%(30) 4 OPEN1,8,0,"PLATTE,U":INPUT#1,FI,KA:DIMPL$(200),PL%(200):IFKA=0GOTO8 5 FORA=1TOKA:PRINT""A:INPUT#1,PL$(A),PL%(A):NEXT 6 FORA=1TOFI:PRINT""A 7 INPUT#1,KA%(A),A%(A),NA$(A),ZA$(A),ZE$(A),HA$(A),AR$(A):NEXT 8 CLOSE1:_C0,6 9 LO=KA-21*INT(KA/21):HI=KA-LO:IFLO=0THENHI=HI-21:IFHI<0THENHI=0 10 _W"Z@LBL[193]NSEHEN@[211]ORTIEREN@[211]PEICHERN@" 11 _W"ZGLAL[214]OR@[218]URUECK@" 12 _W"ZMLCL[196]RUCKEN@-NUR [212]IT.@-NUR [208]LA.@-NACH [208]LA.@":_W"ZTLAK[212]ITEL @[208]LATTEN@" 13 _W"@@XUO":_P34,21:PRINT"[151]"FI;:_P34,22:PRINTKA"[155]" 14 _P0,1:FORA=1TO21:PRINT" "PL$(SA+A):NEXT 15 _M:WAIT2,1:IF_Y=0OR_Y>22OR_X=25OR(_X>24AND_Y>17)GOTO15 16 IF_X<25GOTO24 17 IF(_Y>3AND_Y<8)OR(_Y>9AND_Y<14)GOTO15 18 A=_Y+4*(_Y>6)+5*(_Y>12) 19 ONAGOTO88,68,79,22,20,113,121,124:GOTO15 20 IFSA>20THENSA=SA-21:GOTO13 21 SA=HI:GOTO13 22 IFSA22THENK1=SA+_Y:K=PL%(K1):IF(SA4GOTO31 29 FORA=1TOKA:K=PL%(A):PL%(A)=1022-A:FORB=1TOFI:IFINT(A%(B)/32)=KTHENKA%(B)=PL%(A) 30 NEXT:NEXT:FORA=1TOFI:A%(A)=32*KA%(A)+(A%(A)AND31):NEXT:GOTO28 31 _C0,6 32 H%(0)=0:C=0:FORA=1TOFI:IFKA%(A)=KTHENH%(C)=A:C=C+1 33 NEXT 34 _W"@A$@L[197]XIT [196]RUCKEN@":_W"@C$RL":_P14,2:PRINT"[152]"PL$(K1) 35 IFC<2GOTO38 36 FORA=0TOC-2:FORB=A+1TOC-1:IFA%(H%(A))>A%(H%(B))THEN:_SH%(A),H%(B) 37 NEXT:NEXT 38 FORA=0TOC-1:_P1,4+A:PRINT""NA$(H%(A)):NEXT 39 _M:WAIT2,1:IF_Y=2AND_X<5GOTO8 40 IF_Y=2AND_X<12GOTO66 41 IF_Y=2THENGOSUB56:IFNA$=""GOTO57 42 IF_Y=2THENPL$(K1)=NA$ 43 IF_Y<4GOTO39 44 IF(C>18)AND(_Y>22)GOTO39 45 _W"@B&DN[212]ITEL@[201]NTERPR.@[218]EIT@[218]AEHLER@[194]EM.@":FL=0 46 IFC=0THENE=1+32*K:D=FI+1:FL=1:GOTO49 47 IF_Y-43THEND=H%(_Y-4):E=A%(D):GOTO49 48 E=A%(H%(C-1))+1:D=FI+1:FL=1 49 _P9,3:PRINT"[154]"NA$(D):PRINTTAB(9)""HA$(D):PRINTTAB(9)""ZE$(D) 50 PRINTTAB(9)""ZA$(D):PRINTTAB(9)""AR$(D) 51 _E9,3,37,7:NA$=""+_I(3,9,37):IFFL=1THENIFNA$=""GOTO34 52 IFNA$=""THENGOSUB61:GOTO31 53 A%(D)=E:KA%(D)=K:NA$(D)=NA$:HA$(D)=""+_I(4,9,37):ZE$(D)=""+_I(5,9,19) 54 AR$(D)=""+_I(7,9,37):ZA$(D)=""+_I(6,9,19):FI=FI-(FL=1):GOTO32 55 _C0,6:_W"@A$@L":_W"@C$RL" 56 _E14,2,35,2:NA$=""+_I(2,14,35):RETURN 57 _SPL$(KA),PL$(K1):_SPL%(KA),PL%(K1):PL$(KA)="":KA=KA-1:D=1 58 IFKA%(D)=KTHENGOSUB61:D=D-1 59 D=D+1:IFD<=FIGOTO58 60 GOTO8 61 NA$(D)="":AR$(D)="":ZA$(D)="":ZE$(D)="":HA$(D)="":KA%(D)=0 62 _SNA$(D),NA$(FI):_SHA$(D),HA$(FI):_SAR$(D),AR$(FI):_SZE$(D),ZE$(FI) 63 _SZA$(D),ZA$(FI):_SA%(D),A%(FI):_SKA%(D),KA%(FI):FI=FI-1 64 FORA=1TOFI:IFKA%(A)=KTHENIF(A%(A)AND31)>DTHENA%(A)=A%(A)-1 65 NEXT:RETURN 66 FL=C:GOSUB111:_U1:PRINT#1,PL$(K1):GOSUB117:FORB=0TOFL-1:A=H%(B) 67 GOSUB119:NEXT:_U0:CLOSE1:C=FL:GOTO31 68 FORA=1TOKA-1:B=A+ABS(_F(PL$(A),PL$(KA+2))):_SPL%(A),PL%(B):_SPL$(A),PL$(B):NEXT 69 _W"KGL@C[197]XIT@":_W"KILCC[210]EIHENFOLGE@[206]AME@[201]NTERPRET@[194]EMERKUNG@":IFFI<2GOTO9 70 _M:WAIT2,1:IF(_Y<8)OR(_Y=9)OR(_Y>13)GOTO70 71 IF_Y=8GOTO8 72 POKE55307+40*_Y,9:ON_Y-9GOTO73,74,75,76 73 FORA=1TOFI-1:B=A+_F(A%(A),A%(FI)):GOSUB77:NEXT:GOTO8 74 FORA=1TOFI-1:B=A+ABS(_F(NA$(A),NA$(FI))):GOSUB77:NEXT:GOTO8 75 FORA=1TOFI-1:B=A+ABS(_F(HA$(A),HA$(FI))):GOSUB77:NEXT:GOTO8 76 FORA=1TOFI-1:B=A+ABS(_F(AR$(A),AR$(FI))):GOSUB77:NEXT:GOTO8 77 _SA%(A),A%(B):_SKA%(A),KA%(B):_SHA$(A),HA$(B):_SAR$(A),AR$(B) 78 _SNA$(A),NA$(B):_SZA$(A),ZA$(B):_SZE$(A),ZE$(B):RETURN 79 OPEN1,8,5,"HILFE.PLATT,U,W":PRINT#1,FI:PRINT#1,KA 80 FORA=1TOKA:PRINT""A:PRINT#1,CHR$(34)PL$(A):PRINT#1,PL%(A):NEXT 81 FORA=1TOFI:PRINT""A:PRINT#1,KA%(A):PRINT#1,A%(A):PRINT#1,CHR$(34)NA$(A) 82 PRINT#1,CHR$(34)ZA$(A):PRINT#1,CHR$(34)ZE$(A):PRINT#1,CHR$(34)HA$(A):PRINT#1,CHR$(34)AR$(A) 83 NEXT:CLOSE1:PRINT" ":OPEN1,8,15:INPUT#1,A,B$,C,D:IFA>1THENGOSUB87 84 PRINT#1,"S:PLATTE,U":INPUT#1,A,B$,C,D:IFA>1THENGOSUB87 85 PRINT#1,"R:PLATTE=HILFE.PLATT":INPUT#1,A,B$,C,D:IFA>1THENGOSUB87 86 CLOSE1:GOTO8 87 _W"CEZBK[196]ISKETTENFEHLER@":_P4,7:PRINT"[151]"A,C,D;:_P4,8:PRINTB$:_M:WAIT2,1:RETURN 88 S=0 89 _C0,6:_W"@@S@L[197]XIT [214]OR [218]URUECK@":SM=FI-(FIAND3) 90 IF(FIAND3)=0THENSM=SM+4*(SM>0) 91 _WW$:_P0,4:PRINT"[154]"; 92 FORA=1TO4:PRINT" "NA$(A+S):PRINT" "HA$(A+S) 93 PRINT_T(" "+ZA$(A+S),12)ZE$(A+S):PRINT" "AR$(A+S):PRINT:NEXT 94 _M:WAIT2,1:IF_Y=0OR_Y=2OR_Y=3OR_Y=24GOTO94 95 IF_Y>2THEN101 96 IF_X<7THEN8 97 IF_X>11THENIFS>3THENS=S-4:GOTO91 98 IF_X>11THENS=SM:GOTO91 99 IFS13GOTO106 111 OPEN1,4,7:CLOSE1:IFST<>0THEN:_W"@@T@I[196]RUCKER EINSCHALTEN@":_M:WAIT2,1:GOTO111 112 OPEN1,4,7:PRINT#1,"@"CHR$(126)"3[210]";:RETURN 113 GOSUB104:_U1:C=2:GOSUB117 114 FORA=1TOFI:GOSUB119:IFC>53THENPRINT#1,CHR$(12);:C=0:IFKF=0THENGOSUB117 115 IFKA%(A)<>KA%(A+1)THENIFTF=0THENPRINT#1:C=C+1 116 NEXT:PRINT#1:CLOSE1:_U0:GOTO8 117 PRINT#1,_T("[201]NTERPRET",31)_T("[212]ITEL",31)_T("[194]EMERKUNG",31)_T("[218]EIT",15); 118 PRINT#1,"[195]OUNT":C=2:RETURN 119 PRINT#1,_T(HA$(A),31)_T(NA$(A),31)_T(AR$(A),31); 120 PRINT#1,_T(ZA$(A),13)_T(ZE$(A),13):C=C+1:RETURN 121 GOSUB111:_U1:C=0:FORA=1TOKASTEP4:FORB=0TO3:PRINT#1,_T(PL$(A+B),30);:NEXT:C=C+1 122 IFC=53THENPRINT#1,CHR$(12);:C=0 123 PRINT#1:NEXT:PRINT#1:CLOSE1:_U0:GOTO8 124 GOSUB104:_U1:GOSUB117 125 FORB=1TOKA:PRINT#1,PL$(B):C=C+1:IFC>53THENPRINT#1,CHR$(12);:C=0:IFKF=0THENGOSUB117 126 K=PL%(B):FORA=1TOFI:IFKA%(A)=KTHENGOSUB119 127 IFC>53THENPRINT#1:C=0:IFKF=0THENGOSUB117 128 NEXT:NEXT:_U0:CLOSE1:GOTO9 0