10 REM 20 REM 30 REM 40 REM 50 REM 60 REM 70 REM ** Henrik ]shuvud ** 84-08-14 ** 80 REM 85 ; INP(3%); 90 GOTO 2760 100 G%=1% : L2%=300% : L4%=5% 110 M%=1% : Y5%=38% 120 P1%=71% : P2%=2% : P3%=76% 130 ; CHR$(12%) : FOR I%=1% TO 24% : ; : ; CHR$(151%); : NEXT I% 140 REM **** VANLIG MUR **** 150 FOR I%=12% TO 20% STEP 2% 160 ; CUR(I%,1%)"//%//%//%//%//%//%//%//%//%//%//%//%//%" 170 ; CUR(I%+1%,1%)"/*//*//*//*//*//*//*//*//*//*//*//*//*%" 180 NEXT I% 190 ; CUR(22%,1%)"//%//%//%//%//%//%//%//%//%//%//%//%//%"; 200 \%=36% 210 ; CUR(0%,\%)"~#k"CUR(1%,\%-1%)"j5"CUR(2%,\%-1%)"#+#" 220 FOR I%=3% TO 29% : SETDOT I%,\%*2%+5% : NEXT I% 230 IF \%<30% 490 240 ON G% GOSUB 370,320,380,320,320,380,320,320,380,320,320,380,320,390 250 ON G% GOSUB 370,370,500,400,370,500,370,400,470,370,400,470,400,370 260 ON G% GOTO 2620,2630,2640,2650,2660,2670,2680,2690,2700,2710,2720,2730,2740,2750 270 O%=O%-G1%*25% : IF O%<100% O%=100 280 ; CUR(0%,0%)L2%CHR$(151%); 290 ; CUR(0%,28%)CHR$(135%)L4%CHR$(151%); : GOTO 750 300 IF G%=3% OR G%=6% GOSUB 520 310 GOTO 300 320 FOR I%=12% TO 18% 330 ; CUR(I%,5%)" "CUR(I%,16%)" "CUR(I%,26%)" " 340 NEXT I% 350 FOR I%=36% TO 55% : CLRDOT I%,22% : CLRDOT I%,31% : CLRDOT I%,64% 360 NEXT I% 370 RETURN 380 FOR I%=12% TO 19% : ; CUR(I%,8%)" " : NEXT I% : FOR I%=36% TO 59% : CLRDOT I%,64% : NEXT I% 390 RETURN 400 V%=8% 410 ; CUR(11%,V%)'`'CUR(12%,V%-3%)'h h1y'CUR(13%,V%-3%)'j j{{'CUR(14%,V%-3%)'j "l&'CUR(15%,V%-3%)'jjks{k' 420 ; CUR(16%,V%-3%)'j.j,nj'CUR(17%,V%-3%)'j j7'CUR(18%,V%-3%)'j z50' 430 IF V%=29% RETURN 440 ; CUR(11%,19%)'0'CUR(12%,16%)'4 vb4'CUR(13%,16%)'5 ww5'CUR(14%,16%)'5 )24 THEN U%=-1% 600 IF J<13 THEN U%=1% 610 RETURN 620 GOTO 520 630 ; CUR(7%,M%)' 9'CUR(8%,M%-1%)' 8~<0'CUR(9%,M%-1%)' %5&'CUR(10%,M%)' 75'CUR(11%,M%)'f u ' 640 IF NOT DOT(36%,M%*2%+5%) AND NOT DOT(36%,M%*2%+6%) 2080 650 IF NOT DOT(36%,M%*2%+4%) AND NOT DOT(36%,M%*2%+5%) 2080 660 ]%=1% 670 IF M%>=35% 1820 680 GOSUB 1120 690 FOR I%=0% TO O% : NEXT I% 700 IF D4%=4% 2070 710 IF INP(56%)=216% 750 720 IF INP(56%)=174% 850 730 IF INP(56%)=173% 1180 740 GOTO 680 750 ; CUR(7%,M%+1%)'jw$'CUR(8%,M%)'`l}d'CUR(9%,M%)')j*'CUR(10%,M%+1%)'j+0'CUR(11%,M%)' j0j0' 760 ]%=2% 770 IF NOT DOT(36%,M%*2%+4%) AND NOT DOT(36%,M%*2%+5%) 2080 780 GOSUB 1120 790 FOR I%=0% TO O% : NEXT I% 800 IF D4%=4% 2070 810 IF INP(56%)=216% M%=M%+1% : GOTO 630 820 IF INP(56%)=174% 850 830 IF INP(56%)=173% 1180 840 GOTO 780 850 ; CUR(11%,M%)' ' 860 REM OUT 6%,5% 870 S%=5% : U1%=-1% 880 ; CUR(S%,M%)' 9 'CUR(S%+1%,M%)'8~<0'CUR(S%+2%,M%)'%5%'CUR(S%+3%,M%)"`'e "CUR(S%+4%,M%)'u u' 890 IF U1%=-1% ; CUR(S%+5%,M%)' ' 900 IF U1%=1% ; CUR(S%-1%,M%+1%)' ' 910 IF S%=3% U1%=1% 920 FOR I%=0% TO O% : NEXT I% 930 GOSUB 1120 940 IF D4%=4% 2070 950 S%=S%+1%*U1% 960 IF R%=1% M%=M%+1% 970 IF S%=7% 990 980 GOTO 880 990 ; CUR(6%,M%)' ' 1000 ; CUR(S%,M%)' 'CUR(S%+3%,M%)' ' 1010 REM OUT 6%,0% 1020 IF R%=1% M%=M%-1% 1030 R%=0% 1040 ON ]% GOTO 630,750 1050 IF P1%<72% 1070 1060 P1%=72% 1070 FOR I%=P1% TO P1%+5% : SETDOT 32%,I% : NEXT I% : CLRDOT 32%,I%+1% : CLRDOT 32%,I%+2% 1080 P1%=P1%-2% 1090 IF DOT(32%,I%-7%) AND P1%<>31% D4%=4% : RETURN 1100 IF P1%=1% FOR I%=3% TO 9% : CLRDOT 32%,I% : NEXT I% : P1%=71% 1110 RETURN 1120 REM ******** UPPSAMLING & DISTRUB.* 1130 IF G%=3% OR G%=6% 520 1140 ON G% GOSUB 1050,1160,100,1500,1050,100,1920,2040,1920,2510,1920,2510,2510,2510 1150 GOSUB 2560 1160 RETURN 1170 REM *** H\GER-HOPP VAL *** 1180 ON G% GOTO 1190,1190,1350,1190,1190,1350,1190,1190,1190,1190,1190,1190,1190,1040 1190 REM 1200 IF M%>=33% 1040 1210 ; CUR(11%,M%)' 'CUR(10%,M%+1%)' 'CUR(8%,M%)' ' 1220 S2%=0% : M%=M%+2% 1230 ; CUR(10%,M%)' ' 1240 ; CUR(6%,M%)' 9'CUR(7%,M%-1%)' 8~<0'CUR(8%,M%-1%)' )5&0'CUR(9%,M%-2%)" '#!##!" 1250 IF D4%=4% 2070 1260 IF M%>=35% 1820 1270 GOSUB 1120 1280 FOR I%=0% TO O% : NEXT I% 1290 IF D4%=4% 2070 1300 M%=M%+1% : S2%=S2%+1% : IF S2%=6% 1330 1310 IF G%=9% OR G%=12% 2150 1320 GOTO 1240 1330 ; CUR(6%,M%)' 'CUR(7%,M%-1%)' 'CUR(8%,M%-1%)' 'CUR(9%,M%-2%)' ' 1340 GOTO 1040 1350 REM 1360 IF M%>29% OR M%<2% 1040 1370 S2%=0% : M%=M%+1% : R4%=0% 1380 ; CUR(7%,M%-1%)' jw$ 'CUR(8%,M%-1%)' h},,'CUR(9%,M%-2%)' j 'CUR(10%,M%-2%)' "k 'CUR(11%,M%-2%)" '# " 1390 IF DOT(25%,M%*2%+8%) R4%=4% 1400 GOSUB 1120 1410 FOR I%=0% TO O% : NEXT I% 1420 IF R4%=4% M%=J-3% : GOTO 1460 1430 M%=M%+1% : S2%=S2%+1% : IF S2%=6% 1470 1440 IF DOT(25%,M%*2%+6%) R4%=4% 1450 GOTO 1380 1460 IF INP(56%)=173% 1470 ELSE 1380 1470 ; CUR(7%,M%-1%)' 'CUR(8%,M%-1%)' 'CUR(9%,M%-2%)' 'CUR(10%,M%-2%)' 'CUR(11%,M%-1%)" " 1480 IF S2%=6% 1040 1490 M%=M%+3% : GOTO 1370 1500 REM *** VAKTERNAS SPJUTR\RELSE **** 1510 N%=N%+1% : IF N%=1% V5%=11% : GOTO 1560 1520 IF N%=2% V5%=32% : GOTO 1560 1530 IF N%=3% V5%=53% : GOTO 1560 1540 IF N%>3% N%=0% 1550 RETURN 1560 IF V6%=4% 1700 1570 SETDOT Y5%,V5% : CLRDOT Y5%+20%,V5% 1580 IF Y5%>33% SETDOT 57%,V5% : SETDOT 58%,V5% 1590 IF Y5%<30% 1660 1600 IF Y5%=30% 1770 1610 SETDOT Y5%-1%,V5% : CLRDOT Y5%+19%,V5% 1620 IF Y5%<30% 1680 1630 N%=N%-1% : Y5%=Y5%-2% 1640 IF Y5%=26% V6%=4% 1650 RETURN 1660 IF DOT(Y5%-1%,V5%) 1790 1670 GOTO 1610 1680 IF DOT(Y5%-2%,V5%) 1790 1690 GOTO 1630 1700 REM 1710 CLRDOT Y5%,V5% : SETDOT Y5%+19%,V5% 1720 CLRDOT Y5%+1%,V5% : SETDOT Y5%+20%,V5% 1730 IF Y5%=30% 1780 1740 N%=N%-1% : Y5%=Y5%+2% 1750 IF Y5%=38% N%=N%+1% : V6%=0% 1760 RETURN 1770 CLRDOT 49%,V5%+1% : FOR I%=46% TO 49% : CLRDOT I%,V5%+2% : NEXT I% : SETDOT 44%,V5%+1% : GOTO 1610 1780 SETDOT 49%,V5%+1% : FOR I%=46% TO 49% : SETDOT I%,V5%+2% : NEXT I% : CLRDOT 44%,V5%+1% : GOTO 1740 1790 FOR I%=Y5% TO Y5%+12% : SETDOT I%,V5% : NEXT I% 1800 D4%=4% : RETURN 1810 REM *** KLOCK-KLANG & DYL ********* 1820 K1%=34% 1830 ; CUR(0%,K1%)'`|6'CUR(1%,K1%-1%)'+?! 'CUR(2%,K1%)'"% ' 1840 OUT 6,121 : ; CHR$(7%) 1850 FOR I%=20% TO 29% : SETDOT I%,77% : NEXT I% 1860 G%=G%+1% : W%=0% : W1%=0% : V6%=0% : N%=0% 1870 FOR I%=0% TO 2000% : NEXT I% 1880 IF G%=15% G%=1% : G1%=G1%+1% : GOTO 3170 1890 ]7%=]7%+L2% : ; CUR(0%,0%)]7%CHR$(151%); 1900 FOR I%=0% TO 3000% : NEXT I% 1910 GOTO 110 1920 GOSUB 1050 1930 GOSUB 1960 1940 IF G%=11% GOSUB 1500 1950 RETURN 1960 IF W%=4% 1980 1970 IF P1%=49% W%=4% ELSE RETURN 1980 SETDOT 33%,P2% : IF P2%>4% CLRDOT 33%,P2%-3% 1990 IF DOT(33%,P2%+1%) 2020 2000 P2%=P2%+1% : IF P2%=78% W%=0% : FOR I%=P2%-4% TO P2% : CLRDOT 33%,I% : NEXT I% : P2%=2% 2010 RETURN 2020 IF P2%=10% OR P2%=31% OR P2%=52% 2000 2030 D4%=4% : GOTO 2000 2040 GOSUB 1050 2050 GOSUB 1500 2060 RETURN 2070 OUT 6%,5% : FOR I%=0% TO 5000% : NEXT I% : OUT 6%,7% 2080 IF S%=0% S%=7% 2090 ; CUR(S%-1%,M%)' ' 2100 ; CUR(S%,M%)' 9 'CUR(S%+1%,M%)'8~<0'CUR(S%+2%,M%)'%5%'CUR(S%+3%,M%)"`'e "CUR(S%+4%,M%)'u u' 2110 S%=S%+1% : IF S%=19% 2140 2120 FOR I%=0% TO 250% : NEXT I% 2130 GOTO 2090 2140 L4%=L4%-1% : H2%=0% : W%=0% : W1%=0% : V6%=0% : N%=0% : D4%=0% : S%=7% : OUT 6%,0% : IF L4%=0% 2760 ELSE 110 2150 IF DOT(19%,M%*2%+5%) S2%=0% : GOTO 2180 2160 IF S2%=2% AND M%>9% FOR I%=15% TO 26% : SETDOT I%,M%*2%-3% : NEXT I% 2170 GOTO 1240 2180 REM 2190 ; CUR(6%,M%)' 'CUR(7%,M%-1%)' j'CUR(8%,M%-1%)' j 'CUR(9%,M%-2%)' j ' 2200 M%=M%+3% : K%=7% : U5%=-1% 2210 ; CUR(K%,M%-2%)'hk9 'CUR(K%+1%,M%-2%)'"n~<0'CUR(K%+2%,M%-2%)' j=!'CUR(K%+3%,M%)'75 'CUR(K%+4%,M%)'uj0' 2220 GOSUB 1120 2230 FOR I%=0% TO O% : NEXT I% 2240 IF D4%=4% 2070 2250 IF H2%=4% 2290 2260 IF INP(56%)=174% H2%=4% 2270 IF INP(56%)=173% 2360 2280 GOTO 2220 2290 REM 2300 K%=K%+1*U5% 2310 IF K%=3% U5%=1% : ; CUR(K%+5%,M%)' ' : GOTO 2330 2320 IF U5%=1% ; CUR(K%-1%,M%-2%)' j ' 2330 IF U5%=-1% ; CUR(K%+5%,M%)' ' 2340 IF K%=7% H2%=0% : U5%=-1% 2350 GOTO 2210 2360 REM 2370 ; CUR(10,M%)' 'CUR(11%,M%+2%)' ' 2380 M%=M%-3% 2390 GOTO 1190 2400 REM 2410 IF W1%=4% 2430 2420 IF P1%=15% OR P1%=27% W1%=4% ELSE RETURN 2430 SETDOT 20%,P3% : IF P3%<74% CLRDOT 20%,P3%+3% 2440 IF DOT(20%,P3%-1%) 2480 2450 IF G%=12% SETDOT 20%,25% : SETDOT 20%,39% : SETDOT 20%,53% 2460 P3%=P3%-1% : IF P3%=2% FOR I%=3% TO 5% : CLRDOT 20%,I% : NEXT I% : P3%=76% : W1%=0% 2470 RETURN 2480 IF G%<>12% D4%=4% 2490 IF P3%=26% OR P3%=40% OR P3%=54% 2450 ELSE D4%=4% 2500 RETURN 2510 GOSUB 1050 2520 GOSUB 1960 2530 GOSUB 2400 2540 IF G%=13% GOSUB 1500 2550 RETURN 2560 REM 2570 L1%=L1%+1% : IF L1%=10% 2580 ELSE RETURN 2580 L1%=0% : L2%=L2%-10% 2590 ; CUR(0%,0%)' 'CUR(0%,0%)L2%CHR$(151%); 2600 IF L2%=0% D4%=4% 2610 RETURN 2620 O%=300% : L2%=200% : GOTO 270 2630 O%=400% : L2%=200% : GOTO 270 2640 O%=200% : L2%=300% : GOTO 270 2650 O%=150% : L2%=300% : GOTO 270 2660 O%=250% : L2%=300% : GOTO 270 2670 O%=100% : L2%=300% : GOTO 270 2680 O%=300% : L2%=350% : GOTO 270 2690 O%=200% : L2%=400% : GOTO 270 2700 O%=250% : L2%=400% : GOTO 270 2710 O%=300% : L2%=500% : GOTO 270 2720 O%=150% : L2%=400% : GOTO 270 2730 O%=150% : L2%=400% : GOTO 270 2740 O%=150% : L2%=400% : GOTO 270 2750 O%=150% : L2%=500% : GOTO 270 2760 ; CHR$(12%)'********************************************************************************' 2770 ; CUR(20%,0%)'********************************************************************************' 2780 FOR I%=1% TO 19% : ; CUR(I%,0%)'**'CUR(I%,38%)'**' : NEXT I% 2790 ; CUR(3%,14%)'************'CUR(4%,14%)'*HUNCH BACK*'CUR(5%,14%)'************' 2800 ; CUR(7%,4%)'Smit ifr}n borgen, men se upp' 2810 ; CUR(9%,4%)'f|r alla farligheter!' 2820 ; CUR(11%,15%)'STYR MED:' 2830 ; CUR(13%,4%)'X=H|ger .=Hopp -=H|ger-hopp' 2840 ; CUR(16%,7%)'High score:'CUR(18%,7%)'Din po{ng: ' 2850 ; CUR(18%,18%)]7% : IF ]7%>]8% ]8%=]7% 2860 ; CUR(16%,18%)]8% 2870 G1%=0% : L2%=0% : L4%=5% : ]7%=0% : RESTORE 2880 IF INP(56%)>128% 2900 2890 GOTO 2880 2900 ; CHR$(12%) : FOR I%=1% TO 24% : ; : ; CHR$(151%); : NEXT I% 2910 FOR I%=42% TO 68% : SETDOT I%,6% : NEXT I% : FOR I%=7% TO 61% : SETDOT 68%,I% : NEXT I% 2920 FOR I%=24% TO 68% : SETDOT I%,61% : NEXT I% : FOR I%=24% TO 50% : SETDOT I%,69% : NEXT I% 2930 FOR I%=18% TO 53% : SETDOT 33%,I% : NEXT I% 2940 ; CUR(1%,7%)':0'CUR(1%,29%)'7,0'CUR(2%,6%)'`%e'CUR(2%,29%)'=#'CUR(3%,6%)'j,n'CUR(3%,29%)'5' 2950 ; CUR(4%,6%)'j"j `p0`p0`p0`p0`p0`p0jj `ppp' 2960 ; CUR(5%,6%)'j j,7k-7k-7k-7k-7k-7k-5 5=,lk' 2970 ; CUR(6%,6%)'j#k#!"#!"#!"#!"#!"#!"k j#k"{' 2980 ; CUR(7%,6%)'5`o'CUR(7%,27%)'jppz 5`o' 2990 ; CUR(8%,5%)'j jj'CUR(8%,27%)'jh jj :' 3000 ; CUR(9%,4%)'`% 5j'CUR(9%,27%)'j `j!`%' 3010 ; CUR(10%,4%)': j j'CUR(10%,27%)'j "j 6' 3020 ; CUR(11%,3%)"h! 5`'"CUR(11%,27%)'k jj' 3030 ; CUR(12%,3%)'6 : 68,| 8,| 8,| 8,| 8,|j* j5' 3040 ; CUR(13%,3%)'7k h!7kj 7kj 7kj 7kj 7kjj' 3050 ; CUR(14%,4%)'j8-,5j:,5j:,5j:,5j:,5j:n' 3060 ; CUR(15%,4%)'"###!"##!"##!"##!"##!"##' 3070 ; CUR(17%,34%)'6'CUR(18%,33%)':'CUR(19%,32%)'`%'CUR(20%,32%)'6'CUR(21%,31%)'h!'CUR(22%,31%)'6' 3080 ; CUR(19%,13%)"8c'd"CUR(20%,13%)'55 j'CUR(21%,13%)'55 j'CUR(22%,13%)'u% j' 3085 POKE 65013%,0% 3090 READ A%,B% : IF B%=0% OR PEEK(65013%) OUT 6%,0% : GOTO 100 3100 FOR X%=1% TO A% : OUT 6%,0%,6%,121% 3110 FOR I%=1% TO B% : NEXT I% : NEXT X% 3120 FOR I%=0% TO 10% : NEXT I% 3130 GOTO 3090 3140 GOTO 100 3150 DATA 40,63,70,46,35,46,60,46,70,35,80,40,40,46,50,40,65,35,65,46,40,46,60,35,65,29,200,25 3160 DATA 75,25,90,29,60,35,90,35,60,46,70,40,40,46,50,40,70,35,70,46,40,56,45,56,40,63,110,46,0,0 3170 IF G1%>4% G1%=4% 3180 OUT 6%,11% 3190 A1%=0% 3200 ON G1% GOTO 3210,3240,3270,3300 3210 ; CUR(8%,A1%+2%)' 8,,,,u0'CUR(9%,A1%+2%)' "####% ' 3220 FOR I%=0% TO 100% : NEXT I% 3230 A1%=A1%+1% : IF A1%=26% 3330 ELSE 3210 3240 ; CUR(7%,A1%+2%)' `|}t'CUR(8%,A1%+2%)' ##7#!'CUR(9%,A1%+4%)' e$' 3250 FOR I%=0% TO 100% : NEXT I% 3260 A1%=A1%+1% : IF A1%=27% 3330 ELSE 3240 3270 ; CUR(8%,A1%+2%)' (='CUR(9%,A1%+2%)' 6#4'CUR(10%,A1%+2%)' ),!' 3280 FOR I%=0% TO 100% : NEXT I% 3290 A1%=A1%+1% : IF A1%=27% 3330 ELSE 3270 3300 ; CUR(8%,A1%+2%)' 6ipp'CUR(9%,A1%+2%)' )&"*' 3310 FOR I%=0% TO 100% : NEXT I% 3320 A1%=A1%+1% : IF A1%=27% 3330 ELSE 3300 3330 FOR I%=0% TO 4000% : NEXT I% 3340 L4%=L4%+1% 3350 OUT 6%,0% : GOTO 1890