100 CALL SCREEN(12) :: CALL CLEAR 110 DISPLAY AT(11,11):"G R O F S" 120 CALL MELODY 130 CALL HCHAR(22,3,42,28) :: CALL HCHAR(3,3,42,28) :: CALL VCHAR(3,3,42,20) :: CALL VCHAR(3,30,42,20) 140 FOR A=2 TO 16 :: FOR C=1 TO 10 :: CALL COLOR(2,A,16) :: NEXT C :: NEXT A 150 CALL CLEAR :: CALL SCREEN(12) 200 CALL DELSPRITE(ALL) :: CALL CHARSET :: CALL SCREEN(12) 210 CALL CLEAR 220 PO=16 230 V=0 :: N=0 240 CALL SCREEN(12) 250 CALL CLEAR 260 CALL CHAR(40,"00071F3361F1F1E1B39F1E0F0E1C2C3800E0F8CC86C7C787CDF978F068380000") 270 CALL CHAR(44,"00071F3361E3E3E1B39F1E0F161C000000E0F8CC868F8F87CDF978F07038341C") 280 CALL CHAR(48,"00071F3F7FFCF3CFBF9F1F0F0E1C2C3800E0F8F8FE1FE3FFFDF9F8F068380000") 290 CALL CHAR(52,"00071F3F7FF8C7FFBF9F1F0F161C000000E0F8FCFE3FCFF3FDF9F8F07038341C") 300 CALL CHAR(56,"3F3F3F203F1931797EFC7E733A100D07FCFCFC04FC988C9E7E3F7ECE5C08B0E0") 310 CALL CHAR(60,"C0C0FFC0C0FFC0C0FFC0C0FFC0C0FFC00303FF0303FF0303FF0303FF0303FF03") 320 CALL CHAR(64,"FFFFC0C0C0C0C0C0C0FFFFFFFFFFFFFFFFFF03030303030303FFF9FFFFFFFFFF") 330 CALL CHAR(68,"0000070F191F3F3F3D35283A3A3F3F2A0000E0F098F8FCFCBCAC145C5CFCFC54") 340 CALL CHAR(72,"000C1E33674F7F7F7F7F3F1F0F070301003078FCFEFEFEFEFEFEFCF8F0E0C080") 350 CALL CHAR(76,"FF9292929292929292929292929292FFFF4949494949494949494949494949FF") 360 CALL CHAR(80,"2255882255882255",119,"001838781818183C",120,"003C7EC3037EC0FF") 365 CALL CHAR(121,"003C7EC30F037E3C",122,"00183868F808081C") 370 CALL CHAR(88,"FFFFFFFFFFFFFFFF",124,"0000FF55AAFF0000",125,"0010007C82FE8282") 380 CALL HCHAR(10,1,88,32) :: CALL HCHAR(15,1,88,32) :: CALL HCHAR(20,1,88,32) :: CALL VCHAR(10,1,88,15) :: CALL VCHAR(10,32,88,15) 390 CALL HCHAR(15,28,80,4) :: CALL HCHAR(20,6,80,4) 400 CALL COLOR(7,16,12,10,2,1,11,2,1) 410 CALL SPRITE(#4,44,8,160,10,0,5,#1,56,4,160,50,0,10,#2,56,4,120,60,0,-10,#3,56,4,80,70,0,5) 420 CALL SPRITE(#5,60,2,161,216,#6,60,2,161,72,#7,60,2,121,9,#8,60,2,81,216) :: CALL MAGNIFY(4) 425 DISPLAY AT(1,1):"energi " :: CALL HCHAR(1,10,124,PO) :: CALL HCHAR(1,10+PO,32,20-PO) 426 DISPLAY AT(2,1):"v}ning w av z" 430 CALL JOYST(1,A,B) :: IF A>0 THEN 480 ELSE IF A<0 THEN 510 ELSE IF B<0 THEN 540 ELSE IF B>0 THEN 610 ELSE 440 440 VAG=VAG+1 :: IF VAG<10 THEN 443 ELSE IF VAG>15 THEN VAG=0 ELSE IF VAG>10 THEN 442 441 CALL SOUND(1,-6,4) :: CALL POSITION(#4,Y,X) :: IF X>248 OR X<8 THEN 850 ELSE IF Y>120 THEN 450 ELSE IF Y=120 THEN 460 ELSE IF Y<120 THEN 470 442 CALL COLOR(7,9,12) :: CALL COINC(#4,120,48,16,K) :: IF K=-1 THEN 850 ELSE CALL COINC(#4,80,216,16,K) :: IF K=-1 THEN 850 ELSE 441 443 CALL COLOR(7,2,12) :: GOTO 441 450 CALL POSITION(#4,Y,X) :: CALL COINC(#1,Y,X,16,K) :: IF K=-1 THEN 850 ELSE 430 460 CALL POSITION(#4,Y,X) :: CALL COINC(#2,Y,X,16,K) :: IF K=-1 THEN 850 ELSE 430 470 CALL POSITION(#4,Y,X) :: CALL COINC(#3,Y,X,16,K) :: IF K=-1 THEN 850 ELSE 430 480 CALL POSITION(#4,Y,X) :: IF Y<>120 THEN 500 ELSE 490 490 CALL MOTION(#4,0,0) :: GOTO 440 500 CALL MOTION(#4,0,5) :: GOTO 440 510 CALL POSITION(#4,Y,X) :: IF Y<>120 THEN 530 ELSE 520 520 CALL MOTION(#4,0,-5) :: GOTO 440 530 CALL MOTION(#4,0,0) :: GOTO 440 540 CALL POSITION(#4,Y,X) :: IF Y>120 THEN 550 ELSE IF Y=120 THEN 560 ELSE IF Y<120 THEN 590 550 CALL FALL :: GOTO 850 560 CALL POSITION(#4,Y,X) :: IF X>160 THEN 570 ELSE 580 570 CALL COINC(#5,Y+32,X,16,K) :: IF K=-1 THEN 600 ELSE 850 580 CALL COINC(#6,Y+32,X,16,K) :: IF K=-1 THEN 600 ELSE 850 590 CALL COINC(#7,Y+32,X,16,K) :: IF K=-1 THEN 600 ELSE 850 600 CALL NER :: :: N=N-1 :: DISPLAY AT(2,1):"v}ning "&CHR$(119+N)&" av z" :: GOTO 440 610 CALL MOTION(#4,0,0) :: CALL POSITION(#4,Y,X) :: IF Y>120 THEN 620 ELSE IF Y=120 THEN 650 ELSE IF Y<120 THEN 660 620 IF X>160 THEN 630 ELSE 640 630 CALL COINC(#5,Y,X,16,K) :: IF K=-1 THEN 680 ELSE 850 640 CALL COINC(#6,Y,X,16,K) :: IF K=-1 THEN 680 ELSE 850 650 CALL COINC(#7,Y,X,16,K) :: IF K=-1 THEN 680 ELSE 850 660 CALL COINC(#8,Y,X,16,K) :: IF K=-1 THEN 670 ELSE 850 670 CALL UPPP :: N=N+1 :: DISPLAY AT(2,1):"v}ning "&CHR$(119+N)&" av z" :: GOTO 700 680 CALL UPP :: N=N+1 :: DISPLAY AT(2,1):"v}ning "&CHR$(119+N)&" av z" :: GOTO 440 690 CALL SPRITE(#1,68,16,160,100,0,10,#2,68,16,120,10,0,-10,#3,68,16,80,10,0,5) :: GOTO 440 700 CALL CLEAR :: CALL DELSPRITE(ALL) :: CALL HCHAR(24,11,88,22) :: CALL HCHAR(23,12,88,21) :: CALL HCHAR(22,13,88,20) :: CALL HCHAR(21,14,88,19) 710 CALL SCREEN(12) :: L$="40E070381C0E070301020408080808080000000000000000C0E070381C0E0703" 720 F$="070F1F3F7FFFC8888844241209050301E0F0F8FCFEFF13111122244890A0C080" 730 CALL CHAR(56,L$) :: CALL CHAR(60,F$) :: CALL SPRITE(#1,56,2,128,200,#2,76,2,128,112,#3,72,9,128,112) 740 Y=128 :: X=168 :: CALL SPRITE(#4,40,8,Y,X) 750 CALL LOCATE(#4,Y,X) :: IF X<143 THEN 770 ELSE 760 760 X=X-1 :: GOTO 750 770 CALL MELODY 780 CALL DELSPRITE(#2) :: FOR A=1 TO 500 :: NEXT A 790 CALL PATTERN(#3,60) :: FOR A=-10 TO 5 800 CALL SPRITE(#4,40,8,120,112,A,-10,#3,60,16,88,112,A,-10) :: NEXT A 810 CALL POSITION(#4,Y,X) :: IF Y>159 THEN 820 ELSE 810 820 CALL DELSPRITE(#4,#3,#1) :: CALL CLEAR :: CALL SCREEN(12) 830 CALL CHARSET :: DISPLAY AT(1,5):"Du vann!" :: DISPLAY AT(3,5):"Du har :";PO;" kraft reserver kvar." :: FOR A=1 TO 300 :: NEXT A :: DISPLAY AT(9,1):"Vill du spela igen? " :: ACCEPT AT(10,5):J$ :: IF J$="j" OR J$="ja" OR J$="J" OR J$="JA" THEN 200 840 CALL CLEAR :: DISPLAY AT(12,5):"HEJ DA" :: STOP 850 PO=PO-2 :: CALL HCHAR(1,10,124,PO) :: CALL HCHAR(1,10+PO,32,20-PO) :: IF PO>0 THEN 440 ELSE CALL FALL :: CALL CHARSET :: CALL DELSPRITE(ALL) :: CALL CLEAR :: CALL SCREEN(12) :: DISPLAY AT(1,5):"D U D O G ! ! ! !" :: CALL MELODY 860 DISPLAY AT(4,5):"VILL DU SPELA IGEN " :: ACCEPT AT(6,8):J$ :: IF J$="j" OR J$="ja" OR J$="J" OR J$="JA" THEN 200 ELSE 870 870 DISPLAY AT(12,6)ERASE ALL:"HEJ DA" :: END 890 SUB FALL 900 CALL POSITION(#4,Y,X) :: T=210 910 CALL MOTION(#4,0,0) :: CALL SOUND(-150,T,0) :: CALL LOCATE(#4,Y,X) :: T=T-1 :: Y=Y+1 :: IF Y>159 THEN 930 ELSE 920 920 GOTO 910 930 FOR A=1 TO 30 STEP+10 :: CALL SOUND(-150,110,A) :: NEXT A :: SUBEND 940 SUB NER :: CALL MOTION(#4,0,0) 950 CALL POSITION(#4,Y,X) :: IF Y<120 THEN 960 ELSE 970 960 CALL SOUND(1,110,3) :: CALL PATTERN(#4,48) :: CALL LOCATE(#4,Y,X) :: Y=Y+2 :: S=S+1 :: IF S=2 THEN 980 ELSE IF Y>118 THEN 1000 ELSE 960 970 CALL SOUND(1,110,3) :: CALL PATTERN(#4,48) :: CALL LOCATE(#4,Y,X) :: Y=Y+2 :: S=S+1 :: IF S=2 THEN 990 ELSE IF Y>158 THEN 1010 ELSE 970 980 CALL PATTERN(#4,52) :: S=0 :: CALL SOUND(1,110,3) :: GOTO 960 990 CALL PATTERN(#4,52) :: S=0 :: CALL SOUND(1,110,3) :: GOTO 970 1000 CALL LOCATE(#4,120,X) :: CALL PATTERN(#4,40) :: GOTO 1020 1010 CALL LOCATE(#4,160,X) :: CALL PATTERN(#4,44) :: GOTO 1020 1020 SUBEND 1030 SUB UPP :: CALL MOTION(#4,0,0) :: 1040 CALL POSITION(#4,Y,X) :: IF Y>120 THEN 1050 ELSE IF Y=120 THEN 1080 1050 CALL SOUND(1,110,3) :: CALL PATTERN(#4,48) :: CALL LOCATE(#4,Y,X) :: Y=Y-2 :: S=S+1 :: IF S=2 THEN 1070 ELSE IF Y<118 THEN 1100 ELSE 1050 1070 CALL PATTERN(#4,52) :: S=0 :: CALL SOUND(1,110,3) :: GOTO 1050 1080 CALL SOUND(1,110,3) :: CALL PATTERN(#4,52) :: CALL LOCATE(#4,Y,X) :: Y=Y-2 :: S=S+1 :: IF S=2 THEN 1090 ELSE IF Y=80 THEN 1110 ELSE 1080 1090 CALL PATTERN(#4,48) :: S=0 :: CALL SOUND(1,110,3) :: GOTO 1080 1100 CALL PATTERN(#4,40) :: CALL LOCATE(#4,120,X) :: GOTO 1120 1110 CALL LOCATE(#4,80,X) :: CALL PATTERN(#4,44) :: GOTO 1120 1120 SUBEND 1130 SUB MELODY 1140 CALL SOUND(750,784,4,587,4,392,4) :: CALL SOUND(125,740,4,554,4,349,4) :: CALL SOUND(125,784,4,587,4,392,4) 1150 CALL SOUND(125,880,4,659,4,440,4) :: CALL SOUND(125,784,4,587,4,392,4) :: CALL SOUND(125,740,4,554,4,349,4) 1160 CALL SOUND(125,659,4,494,4,330,4) :: CALL SOUND(500,587,4) :: CALL SOUND(500,440,4) :: CALL SOUND(1000,392,4) :: SUBEND 1170 SUB UPPP :: CALL MOTION(#4,0,0) 1180 CALL POSITION(#4,Y,X) 1190 CALL SOUND(1,110,3) :: CALL PATTERN(#4,52) :: CALL LOCATE(#4,Y,X) :: Y=Y-2 :: S=S+1 :: IF S=2 THEN 1200 ELSE IF Y<=48 THEN 1210 ELSE 1190 1200 CALL PATTERN(#4,48) :: S=0 :: CALL SOUND(1,110,3) :: GOTO 1190 1210 CALL LOCATE(#4,48,X) :: CALL PATTERN(#4,44) :: GOTO 1220 1220 SUBEND