2bc0 42c3 0300 B ... DICKER
Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)

   10!PROGRAMM VON N.BRENNICKE
   20 REM Feur Z 1013 bearbeiet
   30 REM R.Knecht FER 9 Bad Suelze
   35 REM fuer KC 85/1 Zeilen 50, 270, 870        und 880 aendern
   40 FOR I=1 TO 6:Z$(I)=STR$(I):NEXT
   50 WINDOW 0,31,0,31:CLS
   60 PRINT AT(3,3);""
   70 PRINT AT(4,3);"                "
   80 PRINT AT(5,3);"                "
   90 PRINT AT(6,3);"                "
  100 PRINT AT(7,3);"                "  
  110 PRINT AT(8,3);"                "
  120 PRINT AT(9,3);"                "
  130 PRINT AT(10,3);"                "
  140 PRINT AT(11,3);"                "
  150 PRINT AT(12,3);"                "
  160 PRINT AT(13,3);"                "
  170 PRINT AT(14,3);"                "
  180 PRINT AT(15,3);"                "
  190 PRINT AT(16,3);"                "
  200 PRINT AT(17,3);"                "
  210 PRINT AT(18,3);"                "
  220 PRINT AT(19,3);"                "
  230 PRINT AT(20,3);"                "
  240 PRINT AT(21,3);"                "
  250 PRINT AT(22,3);"                "
  260 PRINT AT(23,3);"                "
  270 PRINT AT(24,3);"        "
  280 DIM T(6,5):DIM M(6,5)
  290 FOR A=1 TO 5
  300 FOR B=1 TO 4
  310 M(A,B)=33
  320 NEXT
  330 NEXT
  340 FOR X=0 TO 6
  350 T(X,0)=20
  360 T(X,5)=20
  370 NEXT
  380 FOR X=0 TO 5
  390 T(0,X)=20
  400 T(6,X)=20
  410 NEXT
  420 T(6,2)=22:T(6,3)=22:ERF=0
  430 FOR X=1 TO 5
  440 FOR Y=1 TO 4
  450 READ A
  460 T(X,Y)=A
  470 NEXT
  480 NEXT
  490 DATA 2,1,1,3,2,1,1,3,4,6,6,5,4,7,8,5,9,0,0,10
  500 PRINT AT(14,22);"STEIN"
  510 PRINT AT(17,22);"CURS:"
  520 PRINT AT(08,22);"VERSUCH"
  530 PRINT AT(10,23);"Nr.0"          
  540 GOTO 1420
  550!EINGABE
  560 WINDOW 14,16,27,29:CLS
  570 INPUT "";S
  580 IF S<1 OR S>10 THEN:CLS:GOTO 570
  590 WINDOW 17,19,28,31:CLS
  600 WINDOW 17,19,28,31:PRINT AT(17,29);"??"
  610 R$=INKEY$
  620 IF R$=CHR$(8)OR R$=CHR$(9)OR R$=CHR$(10)OR R$=CHR$(11)THEN GOTO 630 ELSE GOTO 610
  630 IF R$=CHR$(8)THEN PRINT AT(19,22);"LINKS ":GOTO 670
  640 IF R$=CHR$(9)THEN PRINT AT(19,22);"RECHTS":GOTO 670
  650 IF R$=CHR$(10)THEN PRINT AT(19,22);"RUNTER":GOTO 670
  660 PRINT AT(19,22);"HOCH  "
  670!ZAEHLER
  680 V=V+1
  690 PRINT AT(10,26);V:PRINT AT(17,29);"  "
  700!TEST
  710 FOR X=1 TO 5
  720 FOR Y=1 TO 4
  730 IF T(X,Y)=S THEN GOTO 760
  740 NEXT
  750 NEXT
  760 IF R$=CHR$(9)THEN GOTO 1140
  770 IF R$=CHR$(8)THEN GOTO 1320
  780 IF R$=CHR$(11)THEN GOTO 1020
  790!RUNTER
  800 IF S=1 THEN GOTO 820
  810 GOTO 910
  820 IF T(X+2,Y)=0 AND T(X+2,Y+1)=0 THEN T(X+2,Y)=1:T(X+2,Y+1)=1:GOTO 840
  830 GOTO 850
  840 T(X,Y)=0:T(X,Y+1)=0:GOTO 1420
  850 IF T(X+2,Y)=22 AND T(X+2,Y+1)=22 THEN ERF=1:GOTO 1420
  860 FOR X=1 TO 7
  870 PRINT AT(28,5);"ZUG NICHT MOEGLICH !":PAUSE 6 
  880 PRINT AT(28,5);"                    ":PAUSE 1
  890 NEXT X
  900 GOTO 550
  910 IF S=6 THEN GOTO 930
  920 GOTO 960
  930 IF T(X+1,Y)=0 AND T(X+1,Y+1)=0 THEN T(X+1,Y)=6:T(X+1,Y+1)=6:GOTO 950
  940 GOTO 860
  950 T(X,Y)=0:T(X,Y+1)=0:GOTO 1420
  960 IF S=2 OR S=3 OR S=4 OR S=5 THEN GOTO 980
  970 GOTO 1000
  980 IF T(X+2,Y)=0 THEN T(X+2,Y)=S:T(X,Y)=0:GOTO 1420
  990 GOTO 860
 1000 IF T(X+1,Y)=0 THEN T(X+1,Y)=S:T(X,Y)=0:GOTO 1420
 1010 GOTO 860
 1020!TESTHOCH
 1030 IF S=1 OR S=6 THEN GOTO 1050
 1040 GOTO 1090
 1050 IF T(X-1,Y)=0 AND T(X-1,Y+1)=0 THEN T(X-1,Y)=S:T(X-1,Y+1)=S:GOTO 1070
 1060 GOTO 860
 1070 IF S=1 THEN T(X+1,Y)=0:T(X+1,Y+1)=0:GOTO 1420
 1080 T(X,Y)=0:T(X,Y+1)=0:GOTO 1420
 1090 IF T(X-1,Y)=0 THEN GOTO 1110
 1100 GOTO 860
 1110 IF S=2 OR S=3 OR S=4 OR S=5 THEN GOTO 1130
 1120 T(X-1,Y)=S:T(X,Y)=0:GOTO 1420
 1130 T(X-1,Y)=S:T(X+1,Y)=0:GOTO 1420
 1140!TESTRECHTS
 1150 IF S=1 THEN GOTO 1170
 1160 GOTO 1200
 1170 IF T(X,Y+2)=0 AND T(X+1,Y+2)=0 THEN T(X,Y+2)=1:T(X+1,Y+2)=1:GOTO 1190
 1180 GOTO 860
 1190 T(X,Y)=0:T(X+1,Y)=0:GOTO 1420
 1200 IF S=6 THEN GOTO 1220
 1210 GOTO 1240
 1220 IF T(X,Y+2)=0 THEN T(X,Y+2)=6:T(X,Y)=0:GOTO 1420
 1230 GOTO 860
 1240 IF S=2 OR S=3 OR S=4 OR S=5 THEN GOTO 1260
 1250 GOTO 1290
 1260 IF T(X,Y+1)=0 AND T(X+1,Y+1)=0 THEN T(X,Y+1)=S:T(X+1,Y+1)=S:GOTO 1280
 1270 GOTO 860
 1280 T(X,Y)=0:T(X+1,Y)=0:GOTO 1420
 1290 IF T(X,Y+1)=0 THEN T(X,Y)=0:T(X,Y+1)=S:GOTO 1420
 1300 GOTO 860
 1310!TESTLINKS
 1320 IF S=1 OR S=2 OR S=3 OR S=4 OR S=5 THEN GOTO 1340
 1330 GOTO 1380
 1340 IF T(X,Y-1)=0 AND T(X+1,Y-1)=0 THEN T(X,Y-1)=S:T(X+1,Y-1)=S:GOTO 1360
 1350 GOTO 860
 1360 IF S=1 THEN T(X,Y+1)=0:T(X+1,Y+1)=0:GOTO 1420
 1370 T(X,Y)=0:T(X+1,Y)=0:GOTO 1420
 1380 IF T(X,Y-1)=0 THEN T(X,Y-1)=S:GOTO 1400
 1390 GOTO 860
 1400 IF S=6 THEN T(X,Y+1)=0:GOTO 1420
 1410 T(X,Y)=0:GOTO 1420
 1420 FOR AB=1 TO 10
 1430 FOR AX=1 TO 5
 1440 FOR AY=1 TO 4
 1450 IF T(AX,AY)=AB THEN GOTO 1490
 1460 NEXT
 1470 NEXT
 1480 NEXT AB
 1490 IF AB<>1 THEN GOTO 1660
 1500 IF M(AX,AY)=1 AND M(AX+1,AY+1)=1 THEN GOTO 1480
 1510 WINDOW 4*AX,4*AX+7,4*AY,4*AY+7:CLS:PRINT:FOR Z=1 TO 7
 1520 PRINT "      ";:NEXT:PRINT CHR$(11);
 1530 I=1
 1540 G=AX*4:H=AY*4
 1550 PRINT AT(G,H);CHR$(193)
 1560 PRINT AT(G,H+7);CHR$(137)
 1570 PRINT AT(G+7,H);CHR$(136)
 1580 PRINT AT(G+7,H+7);CHR$(200)
 1590 PRINT AT(G+3,H+3);Z$(I)
 1600 PRINT AT(G+4,H+3);"*"
 1610 PRINT AT(G+3,H+3);"*"
 1620 PRINT AT(G+4,H+4);"*"
 1630 PRINT AT(G,H+1);""
 1640 PRINT AT(G+7,H+1);""
 1650 GOTO 2510
 1660 IF AB<>2 THEN GOTO 1830
 1670 IF M(AX,AY)=2 AND M(AX+1,AY)=2 THEN GOTO 1480
 1680 G=AX*4:H=AY*4
 1690 WINDOW G,G+7,H,H+3:CLS:PRINT:FOR Z=1 TO 7
 1700 PRINT "  ";:NEXT:PRINT CHR$(11);
 1710 I=2
 1720 PRINT AT(G,H);CHR$(193)
 1730 PRINT AT(G,H+3);CHR$(137)
 1740 PRINT AT(G+7,H);CHR$(136)
 1750 PRINT AT(G+7,H+3);CHR$(200)
 1760 PRINT AT(G+3,H+1);Z$(I)
 1770 PRINT AT(G+3,H+1);"*"
 1780 PRINT AT(G+4,H+1);"*"
 1790 PRINT AT(G+4,H+2);"*"
 1800 PRINT AT(G,H+1);""
 1810 PRINT AT(G+7,H+1);""
 1820 GOTO 2510
 1830 IF AB<>3 THEN GOTO 1890
 1840 IF M(AX,AY)=3 AND M(AX+1,AY)=3 THEN GOTO 1480
 1850 G=AX*4:H=AY*4
 1860 WINDOW G,G+7,H,H+3:CLS:PRINT:FOR Z=1 TO 7 
 1870 PRINT "  ";:NEXT:PRINT CHR$(11);
 1880 I=3:GOTO 1720
 1890 IF AB<>4 GOTO 1950
 1900 IF M(AX,AY)=4 AND M(AX+1,AY)=4 THEN GOTO 1480
 1910 G=AX*4:H=AY*4
 1920 WINDOW G,G+7,H,H+3:CLS:PRINT:FOR I=1 TO 7
 1930 PRINT "  ";:NEXT:PRINT CHR$(11);
 1940 I=4:GOTO 1720
 1950 IF AB<>5 THEN GOTO 2010
 1960 IF M(AX,AY)=5 AND M(AX+1,AY)=5 THEN GOTO 1480
 1970 G=AX*4:H=AY*4
 1980 WINDOW G,G+7,H,H+3:CLS:PRINT:FOR Z=1 TO 7
 1990 PRINT "  ";:NEXT:PRINT CHR$(11);
 2000 I=5:GOTO 1720
 2010 IF AB<>6 THEN GOTO 2180
 2020 IF M(AX,AY)=6 AND M(AX,AY+1)=6 THEN GOTO 1480
 2030 G=AX*4:H=AY*4
 2040 WINDOW G,G+3,H,H+7:CLS:PRINT:FOR Z=1 TO 2
 2050 PRINT "      ";:NEXT:PRINT CHR$(11);
 2060 I=6
 2070 PRINT AT(G,H);CHR$(193)
 2080 PRINT AT(G,H+7);CHR$(137)
 2090 PRINT AT(G+3,H);CHR$(136)
 2100 PRINT AT(G+3,H+7);CHR$(200)
 2110 PRINT AT(G+1,H+3);Z$(I)
 2120 PRINT AT(G+1,H+3);"*"
 2130 PRINT AT(G+2,H+3);"*"
 2140 PRINT AT(G+2,H+4);"*"
 2150 PRINT AT(G,H+1);""
 2160 PRINT AT(G+3,H+1);""
 2170 GOTO 2510
 2180 G=AX*4:H=AY*4
 2190 IF AB<>7 THEN GOTO 2340
 2200 IF M(AX,AY)=7 THEN GOTO 1480
 2210 WINDOW G,G+3,H,H+3:CLS:PRINT:FOR Z=1 TO 2
 2220 PRINT "  ";:NEXT:PRINT CHR$(11);
 2230 Y$="*7"
 2240 PRINT AT(G,H);CHR$(193)
 2250 PRINT AT(G,H+3);CHR$(137)
 2260 PRINT AT(G+3,H);CHR$(136)
 2270 PRINT AT(G+3,H+3);CHR$(200)
 2280 PRINT AT(G+1,H+1);Y$
 2290 PRINT AT(G+2,H+1);"*"
 2300 PRINT AT(G+2,H+2);"*"
 2310 PRINT AT(G,H+1);""
 2320 PRINT AT(G+3,H+1);""
 2330 GOTO 2510
 2340 IF AB<>8 THEN GOTO 2400
 2350 IF M(AX,AY)=8 THEN GOTO 1480
 2360 WINDOW G,G+3,H,H+3:CLS:PRINT:FOR Z=1 TO 2
 2370 PRINT "  ";:NEXT:PRINT CHR$(11);
 2380 Y$="*8"
 2390 GOTO 2240
 2400 IF AB<>9 THEN GOTO 2460
 2410 IF M(AX,AY)=9 THEN GOTO 1480
 2420 WINDOW G,G+3,H,H+3:CLS:PRINT:FOR Z=1 TO 2
 2430 PRINT "  ";:NEXT:PRINT CHR$(11);
 2440 Y$="*9"
 2450 GOTO 2240
 2460 IF M(AX,AY)=10 THEN GOTO 1480
 2470 WINDOW G,G+3,H,H+3:CLS:PRINT:FOR Z=1 TO 2
 2480 PRINT "  ";:NEXT:PRINT CHR$(11);
 2490 Y$="10"
 2500 GOTO 2240
 2510 FOR X=1 TO 5
 2520 FOR Y=1 TO 4
 2530 IF T(X,Y)=0 THEN GOTO 2560
 2540 NEXT
 2550 NEXT
 2560 WINDOW 4*X,4*X+3,4*Y,4*Y+3:CLS
 2570 FOR X=5 TO 1 STEP-1
 2580 FOR Y=4 TO 1 STEP-1
 2590 IF T(X,Y)=0 THEN GOTO 2620
 2600 NEXT
 2610 NEXT
 2620 WINDOW 4*X,X*4+3,4*Y,Y*4+3:CLS
 2630 IF V<>0 OR AB=10 THEN GOTO 2650
 2640 GOTO 1480
 2650 FOR X=1 TO 5
 2660 FOR Y=1 TO 4
 2670 M(X,Y)=T(X,Y)
 2680 NEXT
 2690 NEXT
 2700 IF ERF=1 THEN PRINT AT(13,22);"GEWONNEN!":END
 2710 GOTO 550