10 REM +++++++++++++++++++++++++++++++++ 11 REM ! Program .... QWERTY 12 REM ! Utg}va 1.3 1981-12-06 13 REM ! av (c) Stefan Svensson 14 REM ! Minne 16 Kbytes 15 REM +++++++++++++++++++++++++++++++++ 16 REM 17 REM ----VARIABELLISTA--------------- 18 REM A% Koordinat f|r bollen 19 REM A1% Hastighet f|r bollen 20 REM A2% F|rra koordinaten f|r bollen 21 REM A$ Tillf{llig str{ng 22 REM B Koordinat f|r bollen 23 REM B1 Hastighet f|r bollen 24 REM B2 F|rra koordinaten f|r bollen 25 REM B$ CHR$(151) 26 REM B1$ CHR$(135) 27 REM C% Boll nr 28 REM D% B|rjan p} paddeln 29 REM E% L{ngd p} paddeln 30 REM E1% Paddelstorlek 31 REM F% Styrning 32 REM G% Murtjocklek 33 REM G1% Murstorlek 34 REM H% R{kning av antal tegelstenar 35 REM I% Tillf{llig variabel 36 REM J% Tillf{llig variabel 37 REM K% Tillf{llig variabel 38 REM L% Tillf{llig variabel 39 REM N% >0 om bollen {r "ute" 40 REM P% INP(56) 41 REM S% Justering av hastighet 42 B$=CHR$(151%) : B1$=CHR$(135%) 43 GOSUB 105 : REM ***INSTRUKTIONER*** 44 REM *********NOLLST[LLNING********* 45 C%=0% : D%=39%-(E%/2%) : S%=30% 46 REM **********GRAFISK MOD********** 47 ; CHR$(12%) : FOR I%=1% TO 23% : ; CUR(I%,0%)B$; : NEXT I% 48 REM ********INITIERA BR[DET******** 49 FOR I%=5% TO 70% : SETDOT I%,2% : SETDOT I%,78% : NEXT I% 50 FOR I%=2% TO 78% : SETDOT 4%,I% : IF I%<5% OR I%>75% SETDOT 70%,I% 51 NEXT I% 52 REM *********RITA PADDELN********* 53 FOR I%=D% TO D%+E% : SETDOT 71%,I% : NEXT I% 54 REM **********RITA MUREN********** 55 FOR I%=8% TO 8%+G% : FOR J%=3% TO 77% : SETDOT I%,J% : NEXT J% : NEXT I% 56 REM *KONTROLLERA OM BR[DET [R TOMT* 57 H%=0% : FOR I%=8% TO 8%+G% STEP 3% : FOR J%=3% TO 77% STEP 5% 58 IF DOT(I%,J%)=-1% H%=H%+1% 59 NEXT J% : NEXT I% : IF H%=0% 126 60 N%=0% : C%=C%+1% : IF C%>10% 126 61 REM ***INFALLSVINKEL F\R BOLLEN*** 62 A%=70% : A1%=-1% 63 RANDOMIZE : B=INT(30%+RND*19%) 64 RANDOMIZE : B1=INT(RND*7%+1%)/4%-1% 65 IF B1>-.5 AND B1<.5 THEN 64 66 ; CUR(0%,1%)"BOLL NR:"C% 67 REM ************BOLLEN************ 68 A%=A%+A1% : B=B+B1 69 IF B<3% B=3% : B1=-B1 : ; CHR$(7%); 70 IF B>77% B=77% : B1=-B1 : ; CHR$(7%); 71 IF A%<5% A%=5% : A1%=1% : ; CHR$(7%); 72 IF DOT(A%,B) AND (A%<>A2% OR INT(B)<>INT(B2)) GOTO 82 : REM ******KONTROLLERA TR[FF****** 73 IF A%>70% CLRDOT A2%,B2 : N%=1% : GOTO 76 74 SETDOT A%,B : CLRDOT A2%,B2 : A2%=A% : B2=B 75 REM ***********STYRNING*********** 76 F%=0% : P%=INP(56%)-128% : IF P%>95% P%=P%-32% 77 IF P%=65% F%=-1% : GOSUB 91 78 IF P%=83% F%=1% : GOSUB 94 79 IF N%>0% N%=N%+1% : FOR I%=0% TO 60%+S% : NEXT I% : IF N%=100% 57 ELSE 76 80 FOR I%=0% TO S% : NEXT I% : GOTO 68 81 REM ****KONTROLLERA PADDELTR[FF**** 82 ; CHR$(7%); : IF A%=71% 97 ELSE IF A%=70% 103 83 REM ********TEGELSTENSTR[FF******** 84 IF A1%>0% A1%=-1% ELSE A1%=1% 85 REM *****TA BORT EN TEGELSTEN***** 86 K%=(A%-8%)/3% : L%=(B+2%)/5% 87 FOR I%=3%*K%+8% TO 3%*K%+10% 88 FOR J%=L%*5%-2% TO L%*5%+2% 89 CLRDOT I%,J% : NEXT J% : NEXT I% : GOTO 73 90 REM ********PADDEL V[NSTER******** 91 IF D%<5% RETURN 92 CLRDOT 71%,D%+E% : D%=D%-1% : SETDOT 71%,D% : RETURN 93 REM *********PADDEL H\GER********* 94 IF D%+E%>75% RETURN 95 CLRDOT 71%,D% : D%=D%+1% : SETDOT 71%,D%+E% : RETURN 96 REM *********STUDS,PADDEL********* 97 IF B1>0% AND F%=1% B1=1% : GOTO 103 98 IF B1<0% AND F%=-1% B1=-1% : GOTO 103 99 IF B1>0% AND F%=-1% B1=-.55 : B=B-1% : GOTO 103 100 IF B1<0% AND F%=1% B1=.55 : B=B+1% : GOTO 103 101 IF B1<=-1% B1=RND*(-.25)-.5 102 IF B1>=1% B1=RND*.25+.5 103 A%=A%-2% : A1%=-1% : GOTO 73 104 REM *********INSTRUKTIONER********* 105 ; CHR$(12%)CUR(6%,1%)"QWERTY g}r ut p} att med en boll skjuta"; 106 ; "bort s} m}nga tegelstenar som m|jligt ur"; 107 ; "en mur. Du ska tr{ffa bollen med paddeln"; 108 ; "som du styr med tangenterna ""A"" och ""S""."; 109 ; " Du har endast 10 bollar p} dig." : ; 110 ; " V{lj storlek p} paddeln (1-9)?" : ; 111 ; " V{lj storlek p} muren (1-9)?" : ; : ; 112 ; " Lycka till!!!" 113 K%=30% : FOR J%=0% TO 10% 114 ; CUR(2%,J%)CHR$(151%)"7########"TAB(30%-J%)"#######k " 115 ; CUR(3%,J%)CHR$(151%)"5 Q W E "TAB(30%-J%)"R T Y j " 116 ; CUR(4%,J%)CHR$(151%)'-,,,,,,,,'TAB(30%-J%)",,,,,,,. " 117 FOR I%=1% TO 125% : NEXT I% : NEXT J% 118 REM ***INPUTDATA PADDELSTORLEK*** 119 ; CUR(12%,32%); : GET A$ : ONERRORGOTO 119 120 E1%=VAL(A$) : IF E1%=0% 119 : ; A$ : E%=(E1%*3%+1%)/2%+3% 121 REM *****INPUTDATA MURSTORLEK***** 122 ; CUR(14%,30%); : GET A$ : ONERRORGOTO 122 123 G1%=VAL(A$) : IF G1%=0% 122 : ; A$ : G%=G1%*3%-1% 124 FOR I%=1% TO 4000% : NEXT I% : RETURN 125 REM ********PO[NGBED\MNING******** 126 ; CUR(15%,2%)B1$"Du fick"B$; 127 REM **KONTROLLERA ANTAL TEGELSTENAR SOM [R KVAR** 128 H%=0% : FOR I%=8% TO 8%+G% STEP 3% : FOR J%=3% TO 77% STEP 5% 129 IF DOT(I%,J%)=0% H%=H%+1% 130 NEXT J% : NEXT I% 131 REM L{gsta m|jliga po{ng {r ca 68 132 REM H|gsta m|jliga po{ng {r 1111 133 I%=(7.875-(E1%/8)+((11%-C%)*.048))*H% 134 ; CUR(15%,10%)I%" po{ng."B$; 135 A$="Du {r v{rldsm{stare p} QWERTY!!!!!!" 136 IF I%<=1093% A$="Super fantastiskt bra!!!!!" 137 IF I%<=1050% A$="Rekord bra!!!!" 138 IF I%<=1000% A$="Fantastiskt bra!!!" 139 IF I%<=950% A$="Fenomenalt bra!!" 140 IF I%<=850% A$="J{ttebra!" 141 IF I%<=750% A$="J{ttebra." 142 IF I%<=650% A$="Bra!" 143 IF I%<=550% A$="Bra." 144 IF I%<=450% A$="Ganska bra." 145 IF I%<=350% A$="Godk{nt." 146 IF I%<=250% A$="D}ligt." 147 IF I%<=200% A$="D}ligt!" 148 IF I%<=150% A$="J{tted}ligt!!" 149 IF I%<=100% A$="Urkasst!!!" 150 ; CUR(13%,2%)B1$A$B$; 151 ; CUR(17%,2%)B1$"Ett spel till?"B$; : GET A$ 152 IF A$="j" OR A$="J" ; "JA" : FOR I%=1% TO 5000% : NEXT I% : GOTO 43 153 IF A$="n" OR A$="N" ; "NEJ" ELSE 151 : FOR I%=1% TO 5000% : NEXT I% : ; CHR$(12%) : END