ladderii_sss.tap
ladderii_sss.z80
Zeichensatz UTF-8+Z1013()+CTRL()-ohne Umlaute(äöüß)

    1 WINDOW:CLS
    2!     Barrels by Matthias Geissler
    3!     cccccccccccccccccccccccccccc
    4! 
    9 RESTORE 8000
   10 FOR K=529 TO 755:READ B:POKE K,B:NEXT K
   20 DIM L$(12,12):DIM R(5)
   30 FOR K=2 TO 12
   40 FOR I=2 TO K
   50 L$(K,I-1)="$"
   60 NEXT I
   70 NEXT K
   75 R(1)=20:R(2)=16:R(3)=30:R(4)=28:R(5)=20
   80 FOR K=1 TO 4:PRINT STRING$(240,"");:NEXT K
   90 PRINT AT(2,13);"-Barrels-"
  100 WINDOW 4,21,3,36:CLS
  110 PRINT:PRINT " In diesem Spiel muessen Sie zu"
  120 PRINT:PRINT " dem  gelangen.Unterwegs koennen"
  130 PRINT:PRINT " Sie Edelsteine()einsammeln.Sie"
  140 PRINT:PRINT " werden durch ein $ dargestellt," 
  150 PRINT:PRINT " welches Sie mit den Tasten"
  160 PRINT:PRINT " 9 - Rechts   0 - Links"
  170 PRINT " 2 - Hoch     3 - Runter"
  180 PRINT " V - Sprung"
  190 PRINT:PRINT " steuern koennen."
  200 PRINT "                          >Enter<"
  210 PRINT AT(21,3);" "
  220 IF INKEY$<>CHR$(13)THEN 220
  222 CLS
  224 PRINT "WELCHE SPIELSTUFE (1..5) ";
  225 INPUT ST
  226 IF ST>0 AND ST <6 THEN 230
  227 PRINT CHR$(6);"U N G U E L T I G":PRINT CHR$(6):GOTO 224
  229 IF INKEY$<>CHR$(13)THEN 229
  230 WINDOW:CLS
  240 V=4:DOKE 762,0
  250 POKE 767,32:Y=22:X=34
  260 POKE 764,0:POKE 765,1
  270 ON ST GOSUB 3000,3700,3100,3200,3400
  275 PRINT AT(0,0);" "
  280 POKE(-5120+Y*40+X),36
  285 CALL 652:IF PEEK(765)<>1 THEN 480
  290 IF INT(RND(1)*R(ST))=1 THEN POKE 766,207:ELSE POKE 766,32
  310 POKE(-5120+Y*40+X),PEEK(767)
  320 A=JOYST$(1)
  330 IF A=1 OR A=65 THEN X=X+1
  340 IF A=2 OR A=66 THEN X=X-1
  345 IF PEEK(-5120+(Y+1)*40+X)=207 THEN Z=DEEK(762):Z=Z+100:DOKE 762,Z
  350 IF PEEK(764)>0 THEN 430 
  360 IF A=4 AND PEEK(767)=183 THEN Y=Y-1
  370 IF A=8 AND PEEK(-5120+(Y+1)*40+X)=183 THEN Y=Y+1
  385 IF A>63 THEN POKE 764,3:GOTO 430
  387 POKE 767,PEEK(-5120+Y*40+X)
  390 IF PEEK(767)=207 THEN 660
  405 IF PEEK(767)=138 THEN POKE 767,32:BEEP:Z=DEEK(762):Z=Z+100:DOKE 762,Z
  410 PRINT AT(0,19);DEEK(762)
  420 GOTO 280
  430 B=PEEK(764)
  440 B=B-1:POKE 764,B
  450 IF B=2 THEN Y=Y-1
  460 IF B=0 THEN Y=Y+1
  470 GOTO 387
  480 IF PEEK(765)=0 THEN 660
  500 V=V+1:ST=ST+1:PAUSE 9
  510 Z=DEEK(762):Z=Z+700:DOKE 762,Z
  520 IF H<DEEK(762)THEN H=DEEK(762):PRINT AT(0,33);H
  530 IF ST<6 THEN WINDOW 2,23,0,39:CLS:WINDOW:GOTO 250
  540 FOR K=14 TO 12 STEP-1
  550 PRINT AT(3,K);"$ ":PAUSE 1
  560 NEXT K
  570 FOR K=0 TO 5
  580 PRINT AT(8-K,11+K);".":BEEP
  590 PRINT AT(8-K,11-K);"."
  600 NEXT K
  610 PRINT AT(2,6);".    .    ."
  620 PRINT AT(1,6);".   . .   ."
  630 PRINT AT(0,7);"...  P..."
  635 PRINT AT(4,17);"Herzlichen Glueckwunsch"
  640 IF JOYST$(1)=0 THEN 640
  650 GOTO 80
  660 IF PEEK(-5120+(Y+1)*40+X)<>32 THEN 700
  670 PRINT AT(Y,X);" ":Y=Y+1
  680 PRINT AT(Y,X);"$"
  690 IF PEEK(-5120+(Y+1)*40+X)=32 THEN 670
  700 FOR K=1 TO 20:PRINT AT(Y,X);"$":BEEP:PRINT AT(Y,X);"":BEEP
  710 PRINT AT(Y,X);" "
  720 NEXT K
  730 Z=DEEK(762):Z=Z+0:DOKE 762,Z
  740 IF H<DEEK(762)THEN H=DEEK(762):PRINT AT(0,33);H
  750 V=V-1:IF V=0 THEN PAUSE 9:GOTO 80
  760 WINDOW 2,23,0,39:CLS:WINDOW:GOTO 250
 1000 PRINT AT(0,1);"Stufe:",ST
 1010 PRINT AT(0,12);"Punkte:",DEEK(762)
 1020 PRINT AT(0,26);"Rekord:",H
 1025 PRINT AT(1,0);"                     "
 1030 FOR K=1 TO 8
 1040 PRINT AT(1,K);L$(V,K)
 1050 NEXT K
 1060 PRINT AT(3,11);""
 1070 PRINT AT(4,10);""
 1080 PRINT AT(5,14);"":PRINT AT(6,14);""
 1090 FOR K=7 TO 23 STEP 4
 1100 PRINT AT(K,3);"":NEXT K
 1110 PRINT AT(23,0);"":PRINT AT(23,37);""
 1120 RETURN
 3000 GOSUB 1000
 3010 PRINT AT(5,4);"":PRINT AT(13,36);""
 3020 FOR K=0 TO 3
 3030 PRINT AT(K+7,32);""
 3040 PRINT AT(K+15,31);""
 3050 PRINT AT(K+11,4);""
 3060 PRINT AT(K+19,6);""
 3070 NEXT K
 3080 RETURN
 3100 GOSUB 1000
 3110 PRINT AT(5,4);"":PRINT AT(9,36);""
 3120 PRINT AT(19,15);"    ":PRINT AT(15,8);"    "
 3130 PRINT AT(11,15);"  "
 3140 PRINT AT(21,3);""
 3150 FOR K=0 TO 3
 3160 PRINT AT(11+K,4);""
 3170 PRINT AT(K+7,35);""
 3180 PRINT AT(K+19,6);""
 3190 PRINT AT(K+15,35);""
 3192 NEXT K
 3198 RETURN
 3200 GOSUB 1000
 3210 PRINT AT(21,4);""
 3220 PRINT AT(17,11);""
 3230 PRINT AT(13,16);""
 3240 PRINT AT(19,8);""
 3250 PRINT AT(15,15);"         " 
 3260 PRINT AT(16,22);"    "
 3270 PRINT AT(11,8);"   "
 3280 PRINT AT(7,15);"   "
 3290 PRINT AT(8,18);"":PRINT AT(10,16);""
 3300 PRINT AT(9,16);""
 3310 FOR K=0 TO 3
 3320 PRINT AT(K+7,5);"":PRINT AT(K+7,34);""
 3330 PRINT AT(K+11,20);"":PRINT AT(K+15,4);""
 3335 PRINT AT(K+15,14);"":PRINT AT(K+15,36);""
 3340 PRINT AT(K+19,6);""
 3350 NEXT K
 3360 RETURN
 3400 GOSUB 1000 
 3405 PRINT AT(7,11);"   "
 3410 PRINT AT(19,7);"   ":PRINT AT(20,7);""
 3420 PRINT AT(21,10);"":PRINT AT(22,10);""
 3430 PRINT AT(19,18);"":PRINT AT(20,20);""
 3440 PRINT AT(15,7);"  "
 3450 PRINT AT(16,13);"  "
 3460 PRINT AT(11,5);"            "
 3465 PRINT AT(12,7);"  "
 3470 PRINT AT(11,24);"     "
 3480 PRINT AT(13,22);"     "
 3490 PRINT AT(14,22);"         "
 3500 PRINT AT(15,24);"":PRINT AT(5,9);""
 3510 PRINT AT(16,25);""
 3520 PRINT AT(17,26);""
 3530 PRINT AT(9,11);"":PRINT AT(3,25);""
 3540 PRINT AT(4,23);"":PRINT AT(5,23);"":PRINT AT(6,23);""
 3550 FOR K=0 TO 3
 3560 PRINT AT(K+7,4);"":PRINT AT(K+11,4);""
 3570 PRINT AT(K+15,4);"":PRINT AT(K+19,4);""
 3580 PRINT AT(K+5,14);"":PRINT AT(K+7,35);""
 3590 PRINT AT(K+11,17);"":PRINT AT(K+12,12);""
 3600 PRINT AT(K+15,12);"":PRINT AT(K+15,35);""
 3610 NEXT K
 3620 RETURN
 3700 GOSUB 1000
 3710 PRINT AT(5,5);"":PRINT AT(9,11);""
 3720 PRINT AT(13,22);"":PRINT AT(17,33);""
 3730 PRINT AT(19,30);"":PRINT AT(15,8);""
 3740 PRINT AT(15,19);" ^ ":PRINT AT(11,8);"^^^"
 3750 PRINT AT(7,9);"      "
 3760 PRINT AT(11,15);"      "
 3770 FOR K=0 TO 3
 3780 PRINT AT(K+7,7);"":PRINT AT(K+7,14);""
 3790 PRINT AT(K+7,18);"":PRINT AT(K+7,32);""
 3800 PRINT AT(K+11,6);"":PRINT AT(K+11,14);""
 3810 PRINT AT(K+11,18);"":PRINT AT(K+11,33);""
 3820 PRINT AT(K+15,5);"":PRINT AT(K+15,28);""
 3830 PRINT AT(K+19,4);"":PRINT AT(K+19,35);""
 3840 NEXT K
 3850 RETURN
 8000 DATA 6,0,245,126,254,207,32,3,54,32,71,197,6,34,43,126,254,207
 8005 DATA 32,30
 8010 DATA 229,17,39,0,55,237,82,126,225,54,183,254,183,40,2,54,32,35
 8015 DATA 126,254
 8020 DATA 36,32,4,175,50,253,2,54,207,43,16,218,193,241,35,254,207,32
 8025 DATA 1,119
 8030 DATA 120,201,6,0,245,126,254,207,32,3,54,32,71,197,6,34,35,126,254
 8035 DATA 207,32
 8040 DATA 29,54,32,229,17,39,0,55,237,82,126,225,254,183,32,2,54,183
 8045 DATA 43,254
 8050 DATA 36,32,4,175,50,253,2,54,207,35,16,219,193,241,43,254,207,32
 8055 DATA 1,119
 8060 DATA 120,201,58,254,2,33,20,237,205,17,2,33,147,237,205,79,2,33
 8065 DATA 84,238
 8070 DATA 205,17,2,33,211,238,205,79,2,33,148,239,205,17,2,33,80,236
 8075 DATA 1,112
 8080 DATA 3,62,36,237,177,32,54,43,17,40,0
 8090 DATA 229,25,126,254,207,32,10,17,100,0,42,250,2,25,34,250,2,225
 8095 DATA 229,43
 8100 DATA 43,43,126,254,203,32,5,62,2,50,253,2,225,58,252,2,254,0,192,17
 8105 DATA 40,0
 8110 DATA 25,126,254,183,200,254,182,200,175,50,253,2,201