home *** CD-ROM | disk | FTP | other *** search
/ 8bitfiles.net/archives / archives.tar / archives / genie-commodore-file-library / C64Educational / BASIC-MATH (.txt) < prev    next >
Encoding:
Commodore BASIC  |  2019-04-13  |  9.8 KB  |  357 lines

  1. 10 REM ********************************
  2. 15 REM *                              *
  3. 20 REM *        BASIC MATH            *
  4. 25 REM *            BY                *
  5. 30 REM *       FRAN BLOOMER           *
  6. 35 REM *       UPLOADED  TO           *
  7. 40 REM *       PUBLIC DOMAIN          *
  8. 45 REM *                              *
  9. 50 REM ********************************
  10. 100 POKE52,63:POKE56,63:CLR
  11. 110 POKE53281,1:POKE53280,6:PRINT"[147]":DIMN$(19)
  12. 120 VC=53248:SP=2040:SA=16128:PV=SA/64AND255:H=RND(-TI)
  13. 130 FORX=SATO(SA+(64*4)-1):READD:POKEX,D:NEXT
  14. 140 POKEVC+16,63:POKEVC+28,1:POKEVC+39,2:POKEVC+40,2:POKEVC+37,3:POKEVC+38,6
  15. 150 POKEVC+41,0:POKEVC+42,0:POKEVC+43,0
  16. 160 POKEVC+0,40:POKEVC+1,0:POKEVC+2,30:POKEVC+3,10:POKEVC+4,40:POKEVC+5,15
  17. 170 POKEVC+6,40:POKEVC+7,50:POKEVC+8,40:POKEVC+9,50:POKEVC+10,40:POKEVC+11,40
  18. 180 POKEVC+23,61:POKEVC+29,2
  19. 190 POKESP+0,PV:POKESP+1,PV+3:POKESP+2,PV+2:POKESP+3,PV+2:POKESP+4,PV+2
  20. 200 POKESP+5,PV+2
  21. 205 SD=54272
  22. 206 FORW=SDTOSD+23:POKEW,0:NEXT:POKESD+24,15
  23. 210 L$="":G$="[145][145][145][145][145]"
  24. 220 A0$="[169]  [223][157][157][157][157]  [157][157][157][157]  [157][157][157][157]  [157][157][157][157]  [157][157][157][157][146][223]  [146][169]"
  25. 230 A1$=" [157] [157] [157] [157] [157] "
  26. 240 A3$="[169]  [223][157][157][157][157]  [157][157][169][146][169][157][157][223][223][157][157][157][157]  [157][157][157][157][146][223]  [146][169]"
  27. 250 A2$="[169]  [223][157][157][157][157]  [157] [157][157][169][146][169][157][157][157][169][146][169][157][157][157][169]   "
  28. 260 A4$=" [157]  [157][157][157]  [157][157][157]  [157][157][157]    [157][157] "
  29. 270 A5$="    [157][157][157][157] [157]   [223][157] [157][157][157][157]  [157][157][157][157][146][223]  [146][169]"
  30. 280 A6$="[169]  [223][157][157][157][157]  [157][157][157][157] [157]   [223][157][157][157][157]  [157][157][157][157][146][223]  [146][169]"
  31. 290 A7$="    [157] [157] [157] [157] [157] "
  32. 300 A8$="[169]  [223][157][157][157][157]  [157][157][157][157][146][223]  [146][169][157][157][157][157][169]  [223][157][157][157][157]  [157][157][157][157][146][223]  [146][169]"
  33. 310 B1$=" [157][157]   [157][157] ":B2$="   ":B3$="      ":B4$="   [157][157][157]   ":B5$="[159] [209]"
  34. 320 A9$="[169]  [223][157][157][157][157]  [157][157][157][157][146][223]   [157] [157][157][157][157]  [157][157][157][157][146][223]  [146][169]":B6$="[144]X"
  35. 330 C$=A1$+G$:C0$=C$+A0$:C1$=C$+A1$:C2$=C$+A2$:C3$=C$+A3$:C4$=C$+A4$
  36. 340 C5$=C$+A5$:C6$=C$+A6$:C7$=C$+A7$:C8$=C$+A8$
  37. 350 N$(10)=C0$:N$(11)=C1$:N$(12)=C2$:N$(13)=C3$:N$(14)=C4$
  38. 360 N$(15)=C5$:N$(16)=C6$:N$(17)=C7$:N$(18)=C8$
  39. 370 L1$=LEFT$(L$,2):L2$=LEFT$(L$,9):L3$=LEFT$(L$,16):L4$=LEFT$(L$,12)
  40. 380 L5$=LEFT$(L$,5):L6$=LEFT$(L$,18):L7$=LEFT$(L$,20)
  41. 390 N$(0)=A0$:N$(1)=A1$:N$(2)=A2$:N$(3)=A3$:N$(4)=A4$:N$(5)=A5$
  42. 400 N$(6)=A6$:N$(7)=A7$:N$(8)=A8$:N$(9)=A9$
  43. 410 GOTO1950
  44. 420 PRINT"[147]"
  45. 430 FORY=1TO15
  46. 440 PRINTL2$TAB(11)"A D [158]D [156]I [159]T I [154]O [150]N":FORX=1TO100:NEXT
  47. 450 PRINTL2$TAB(11)"A D [158]D [156]I [159]T I [154]O [150]N":FORX=1TO100:NEXT
  48. 460 NEXT
  49. 470 PRINT"[147]"
  50. 480 PRINTL5$TAB(15)"PICK LEVEL":PRINT
  51. 482 PRINTTAB(13)"1. FACTS TO 10":PRINT
  52. 485 PRINTTAB(13)"2. FACTS 10 TO 18":PRINT
  53. 490 POKE198,0
  54. 495 GOSUB3000
  55. 500 GETZ$:IFZ$=""THEN500
  56. 510 IFZ$="1"THENV=0:GOTO540
  57. 520 IFZ$="2"THENV=1:GOTO540
  58. 530 PRINT"PRESS 1[146] OR 2[146] ONLY":GOSUB3150:GOTO500
  59. 540 PRINT"[147]"L5$TAB(10)"DO YOU WANT COUNTERS?":PRINT
  60. 545 PRINTTAB(19)"Y[146]/N[146]":PRINT
  61. 550 POKE198,0
  62. 555 GOSUB3000
  63. 560 GETZ$:IFZ$=""THEN560
  64. 570 IFZ$="Y"THENP=1:GOTO600
  65. 580 IFZ$="N"THENP=0:GOTO600
  66. 590 PRINT"PRESS Y[146] OR N[146] ONLY":GOSUB3150:GOTO550
  67. 600 PRINT"[147]"L5$TAB(6)"ENTER THE NUMBER OF PROBLEMS":PRINTTAB(14)"PRESS RETURN"
  68. 605 GOSUB3000:PRINT:PRINTTAB(17);:INPUTF
  69. 610 PRINT"[147]"
  70. 620 PRINTL5$TAB(4)"TYPE YOUR NAME AND PRESS RETURN":PRINT:PRINTTAB(4);
  71. 630 INPUTW$
  72. 640 PRINT"[147]"
  73. 650 PRINTL5$TAB(15)"THANK YOU,":PRINT
  74. 653 PRINTTAB(20-INT(LEN(W$)/2))W$:PRINT
  75. 655 PRINTTAB(15)"LET'S GO!"
  76. 660 FORX=1TO2000:NEXT
  77. 670 PRINT"[147]"
  78. 680 FORT=1TOF
  79. 690 R1=INT(RND(0)*10):R2=INT(RND(0)*10):C=INT(RND(0)*14)+2
  80. 700 SUM=R1+R2
  81. 710 IFV=0ANDSUM>10THEN690
  82. 720 IFV=1ANDSUM<10THEN690
  83. 730 PRINT"[147]"
  84. 740 PRINTL1$TAB(9)""N$(R1)
  85. 750 PRINTL2$TAB(9)""N$(R2)
  86. 760 PRINTL3$TAB(8)""B3$
  87. 770 PRINTL4$TAB(5)""B1$
  88. 780 IFSUM<10THENPRINTL7$TAB(11)"?"
  89. 790 IFSUM>9THENPRINTL7$TAB(8)"? [160]  ?"
  90. 800 IFP=0THEN830
  91. 810 IFR1<>0THENPRINTL5$:FORX=1TOR1:PRINTTAB(14)B5$;:GOSUB3200:NEXT
  92. 820 IF R2<>0THENPRINTL4$:FORX=1TOR2:PRINTTAB(14)B5$;:GOSUB3200:NEXT
  93. 830 PRINTLEFT$(L$,25)TAB(13)"ENTER ANSWER"
  94. 840 POKE198,0
  95. 845 GOSUB3000
  96. 850 GETAN$:IFAN$=""THEN850
  97. 860 IFASC(AN$)<48ORASC(AN$)>57THEN850
  98. 870 AN=VAL(AN$):K1=AN*10
  99. 880 IFSUM<10THENPRINTL7$TAB(11)" ":PRINTL6$TAB(9)"[156]"N$(AN):GOTO900
  100. 890 PRINTL7$TAB(8)" ":PRINTL6$TAB(6)"[156]"N$(AN)
  101. 900 IFSUM>9THEN940
  102. 910 IFAN<>SUMTHENPRINTL6$TAB(15)"SORRY!":GOSUB3150:GOTO930
  103. 920 IFAN=SUMTHENSC=SC+1:GOSUB2280
  104. 930 GOTO1000
  105. 938 POKE198,0
  106. 939 GOSUB3000
  107. 940 GETAN1$:IFAN1$=""THEN940
  108. 950 IFASC(AN1$)<48ORASC(AN1$)>57THEN940
  109. 960 AN1=VAL(AN1$)
  110. 970 PRINTL7$TAB(13)" ":PRINTL6$TAB(10)"[156]"N$(AN1)
  111. 980 IFK1+AN1<>SUMTHENPRINTL6$TAB(15)"SORRY":GOSUB3150:GOTO1000
  112. 990 IFK1+AN1=SUMTHENSC=SC+1:GOSUB2280
  113. 1000 POKEVC+21,0:POKEVC+3,0
  114. 1010 FORX=1TO1000:NEXT
  115. 1020 NEXT
  116. 1030 SC=INT(SC/F*100)
  117. 1040 IFSC<75THEN1110
  118. 1050 PRINT"[147]":PRINTL2$TAB(10)"GOOD WORK, "W$"."
  119. 1060 PRINT:PRINTTAB(10)"YOUR SCORE IS"SC"PERCENT"
  120. 1070 PRINTLEFT$(L$,23)TAB(12)"PRESS RETURN[146]"
  121. 1080 POKE198,0
  122. 1090 GETZ$:IFZ$<>CHR$(13)THEN1090
  123. 1100 RETURN
  124. 1110 PRINT"[147]":PRINTL2$TAB(10)"YOU SCORE IS LESS THAN":PRINT
  125. 1120 PRINTTAB(15)"75 PERCENT.":PRINT
  126. 1130 PRINTTAB(10)"YOU NEED MORE PRACTICE."
  127. 1140 PRINTLEFT$(L$,23)TAB(12)"PRESS RETURN[146]"
  128. 1150 POKE198,0
  129. 1160 GETZ$:IFZ$<>CHR$(13)THEN1160
  130. 1170 RETURN
  131. 1180 PRINT"[147]"
  132. 1190 FORY=1TO15
  133. 1200 PRINTL2$TAB(9)"S U B [159]T [156]R [150]A [153]C [154]T [159]I [156]0 N":FORX=1TO100:NEXT
  134. 1210 PRINTL2$TAB(9)"S U B [159]T [156]R [150]A [153]C [154]T [159]I [156]O N"
  135. 1220 FORX=1TO100:NEXT
  136. 1230 NEXT
  137. 1240 PRINT"[147]"
  138. 1242 PRINTL5$TAB(15)"PICK LEVEL":PRINT
  139. 1244 PRINTTAB(12)"1. TO 10 MINUS 9":PRINT
  140. 1245 PRINTTAB(12)"2. TO 18 MINUS 9":PRINT
  141. 1250 POKE198,0
  142. 1255 GOSUB3000
  143. 1260 GETZ$:IFZ$=""THEN1260
  144. 1270 IFZ$="1"THENV=0:GOTO1300
  145. 1280 IFZ$="2"THENV=1:GOTO1300
  146. 1290 PRINT"PRESS 1[146] OR 2[146] ONLY":GOSUB3150:GOTO1260
  147. 1300 PRINT"[147]"L5$TAB(10)"DO YOU WANT COUNTERS?":PRINT
  148. 1305 PRINTTAB(19)"Y[146]/N[146]":PRINT
  149. 1310 POKE198,0
  150. 1315 GOSUB3000
  151. 1320 GETZ$:IFZ$=""THEN1320
  152. 1330 IFZ$="Y"THENP=1:GOTO1360
  153. 1340 IFZ$="N"THENP=0:GOTO1360
  154. 1350 PRINT"PRESS Y[146] OR N[146] ONLY":GOTO1310
  155. 1360 PRINT"[147]"L5$TAB(6)"ENTER THE NUMBER OF PROBLEMS":PRINTTAB(14)"PRESS RETURN"
  156. 1365 GOSUB3000:PRINT:PRINTTAB(17);:INPUTF
  157. 1370 PRINT"[147]"
  158. 1380 PRINTL5$TAB(4)"TYPE YOUR NAME AND PRESS RETURN":PRINT:PRINTTAB(4);
  159. 1382 INPUTW$
  160. 1385 PRINT"[147]"
  161. 1390 PRINTL5$TAB(15)"THANK YOU,":PRINT
  162. 1395 PRINTTAB(20-INT(LEN(W$)/2))W$:PRINT
  163. 1397 PRINTTAB(15)"LET'S GO!"
  164. 1400 FORX=1TO2000:NEXT
  165. 1410 FORT=1TOF
  166. 1420 PRINT"[147]"
  167. 1430 R1=INT(RND(0)*18)+1:R2=INT(RND(0)*10):DF=R1-R2
  168. 1440 IFR1<R2THEN1430
  169. 1450 IFDF>9THEN1430
  170. 1460 IFV=0ANDR1>10THEN1430
  171. 1470 IFV=1ANDR1<10THEN1430
  172. 1480 IFR1>9THENPRINTL1$TAB(5)""N$(R1):GOTO1500
  173. 1490 PRINTL1$TAB(9)""N$(R1)
  174. 1500 PRINTL2$TAB(9)""N$(R2)
  175. 1510 PRINTL3$TAB(8)""B3$
  176. 1520 PRINTL4$TAB(5)""B2$
  177. 1530 PRINTL7$TAB(11)"?"
  178. 1540 IFP=0THENGOTO 1690
  179. 1550 IFR1<>0THENPRINTL5$
  180. 1560 FORX=1TOR1:PRINTTAB(14)B5$;:GOSUB3200
  181. 1570 IFX=9THENPRINTTAB(14)"[157][157][157][157][157][157][157][157][157]"
  182. 1580 NEXT
  183. 1590 REMIFR2=0THENGOTO760
  184. 1600 PRINTLEFT$(L$,25)"   PRESS RETURN[146] TO SUBTRACT THE [159][209]'S"
  185. 1610 POKE198,0
  186. 1615 GOSUB3000
  187. 1620 GETZ$:IFZ$=""THEN1620
  188. 1625 IFZ$<>CHR$(13)THENGOSUB3150:GOTO1620
  189. 1630 IFR2=0THEN1690
  190. 1640 FORZ=1TOR2*2STEP2
  191. 1650 PRINTL5$
  192. 1660 PRINTTAB(12+(Z+2))B6$;:GOSUB3250
  193. 1670 FORQ=1TO100:NEXT
  194. 1680 NEXT
  195. 1690 PRINTLEFT$(L$,25)"              ENTER ANSWER          "
  196. 1698 POKE198,0
  197. 1699 GOSUB3000
  198. 1700 GETAN$:IFAN$=""THEN1700
  199. 1710 IFASC(AN$)<48ORASC(AN$)>57THEN1700
  200. 1720 AN=VAL(AN$)
  201. 1730 PRINTL7$TAB(11)" "
  202. 1740 PRINTL6$TAB(9)"[156]"N$(AN)
  203. 1750 IFAN<>DFTHENPRINTL6$TAB(15)"SORRY!":GOSUB3150:GOTO1770
  204. 1760 IFAN=DFTHENSC=SC+1:GOSUB2280
  205. 1770 POKEVC+21,0:POKEVC+3,0
  206. 1780 FORY=1TO1000:NEXT
  207. 1790 NEXT
  208. 1800 SC=INT(SC/F*100)
  209. 1810 IFSC<75THEN1880
  210. 1820 PRINT"[147]":PRINTL2$TAB(10)"GOOD WORK, "W$"."
  211. 1830 PRINT:PRINTTAB(10)"YOUR SCORE IS"SC"PERCENT"
  212. 1840 PRINTLEFT$(L$,25)TAB(12)"PRESS RETURN[146]"
  213. 1850 POKE198,0
  214. 1860 GETZ$:IFZ$<>CHR$(13)THEN1860
  215. 1870 RETURN
  216. 1880 PRINT"[147]":PRINTL2$TAB(10)"YOUR SCORE IS LESS THAN":PRINT
  217. 1890 PRINTTAB(15)"75 PERCENT.":PRINT
  218. 1900 PRINTTAB(10)"YOU NEED MORE PRACTICE."
  219. 1910 PRINTL$TAB(12)"PRESS RETURN"
  220. 1920 POKE198,0
  221. 1930 GETZ$:IFZ$<>CHR$(13)THEN1930
  222. 1940 RETURN
  223. 1950 REM
  224. 1960 PRINT"[147]";
  225. 1970 PRINTLEFT$(L$,4)TAB(8)"[215][209][215][158][209][215][209][215][159][209][215][156][209][215][154][209][215][150][209][215][153][209][215][158][209][215][159][209][215][156][209][215][209][215]"
  226. 1980 PRINTTAB(8)"[159][209][215]"TAB(31)"[159][209][215]"
  227. 1990 PRINTTAB(8)"[158][209][215]"TAB(31)"[158][209][215]"
  228. 2000 PRINTLEFT$(L$,7)TAB(8)"[209][215]"TAB(16)"B A [158]S [156]I [159]C"TAB(31)"[209][215]"
  229. 2010 PRINTTAB(8)"[156][209][215]"TAB(31)"[156][209][215]"
  230. 2020 PRINTTAB(8)"[150][209][215]"TAB(31)"[150][209][215]"
  231. 2030 PRINTTAB(8)"[159][209][215]"TAB(31)"[159][209][215]"
  232. 2040 PRINTLEFT$(L$,11)TAB(8)"[209][215]"TAB(11)"A [159]R I T [158]H [150]M [154]E [159]T [156]I [158]C [209][215]"
  233. 2050 PRINTTAB(8)"[209][215]"TAB(31)"[209][215]":PRINTTAB(8)"[209][215]"TAB(31)"[209][215]"
  234. 2060 PRINTTAB(8)"[158][209][215]"TAB(31)"[158][209][215]":PRINTTAB(8)"[154][209][215]"TAB(31)"[154][209][215]"
  235. 2070 PRINTLEFT$(L$,16)TAB(8)"[150][209][215]"TAB(16)"[156]F A [158]C T [159]S"TAB(31)"[150][209][215]"
  236. 2080 PRINTTAB(8)"[209][215]"TAB(31)"[209][215]":PRINTTAB(8)"[156][209][215]"TAB(31)"[156][209][215]"
  237. 2090 PRINTTAB(8)"[158][209][215]"TAB(31)"[158][209][215]":PRINTTAB(8)"[159][209][215]"TAB(31)"[159][209][215]"
  238. 2100 PRINTTAB(8)"[156][209][215]"TAB(13)"[150]BY[150]FRANBLOOMER[146]"TAB(31)"[156][209][215]"
  239. 2110 PRINTTAB(8)"[158][209][215]"TAB(31)"[158][209][215]"
  240. 2120 PRINTTAB(8)"[215][209][215][158][209][215][156][209][215][159][209][215][209][215][154][209][215][150][209][215][153][209][215][156][209][215][209][215][159][209][215][209][215]"
  241. 2124 POKESD+5,8:POKESD+6,240:POKESD+4,17
  242. 2125 FORW=1TO150:R3=INT(RND(1)*230)+14
  243. 2130 POKESD+1,R3:FORQ=1TO20:NEXT
  244. 2135 NEXT:POKESD+4,16
  245. 2140 PRINT"[147]":SC=0
  246. 2150 PRINT:PRINT:PRINTTAB(9)"PRESS THE KEY WITH THE"
  247. 2160 PRINTTAB(7)"SAME NUMBER AS YOUR CHOICE":PRINT
  248. 2170 FORX=1TO39:PRINT"[164]";:NEXT
  249. 2180 PRINT:PRINT:PRINTTAB(8)"1.  ADDITION FACTS":PRINT
  250. 2190 PRINTTAB(8)"2.  SUBTRACTION FACTS":PRINT
  251. 2200 PRINTTAB(8)"3.  QUIT"
  252. 2210 PRINT
  253. 2220 POKE198,0
  254. 2225 GOSUB3000
  255. 2230 GETZ$:IFZ$=""THEN2230
  256. 2240 IFASC(Z$)<49ORASC(Z$)>52THEN:GOSUB3150:GOTO2230
  257. 2250 IFZ$="3"THENPRINT"[147]":PRINTL4$TAB(18)"BYE!":FORX=1TO1000:NEXT:SYS64738
  258. 2260 ONVAL(Z$)GOSUB420,1180
  259. 2270 GOTO2140
  260. 2279 REM CORRECT RESPONSE
  261. 2280 FORW=SDTOSD+23:POKEW,0:NEXT
  262. 2285 POKESD+5,8:POKESD+6,240:POKESD+4,33
  263. 2290 POKEVC+21,PEEK(VC+21)OR(2^1)
  264. 2300 FORY=10TO42:POKEVC+3,Y:FORW=1TO5:NEXT
  265. 2310 POKEVC+21,PEEK(VC+21)OR(2^0)
  266. 2320 FORY=0TO50:POKEVC+1,Y:POKEVC+3,42+Y
  267. 2325 NEXT
  268. 2330 POKEVC+21,PEEK(VC+21)OR(2^2):POKESP+0,PV+1
  269. 2340 FORY=10TO50
  270. 2350 POKEVC+5,Y:POKEVC+1,40+Y:POKEVC+3,82+Y
  271. 2355 NEXT
  272. 2360 POKEVC+21,PEEK(VC+21)OR(2^3):POKESP+0,PV
  273. 2370 FORY=0TO41
  274. 2380 POKEVC+3,132+Y:POKEVC+1,90+Y:POKEVC+5,50+Y:POKEVC+7,Y+10
  275. 2390 NEXT
  276. 2400 POKEVC+21,PEEK(VC+21)OR(2^4):POKESP+0,PV+1
  277. 2410 FORY=0TO41
  278. 2420 POKEVC+3,173+Y:POKEVC+1,131+Y:POKEVC+5,91+Y:POKEVC+7,50+Y
  279. 2430 NEXT
  280. 2440 POKEVC+21,PEEK(VC+21)OR(2^5):POKESP+0,PV
  281. 2450 FORY=0TO15
  282. 2460 POKEVC+3,214+Y:POKEVC+1,172+Y:POKEVC+5,132+Y:POKEVC+7,91+Y:POKEVC+9,50+Y
  283. 2470 NEXT
  284. 2473 FORJ=50TO250STEP5:POKESD+1,J:NEXT
  285. 2475 FORJ=100TO250STEP5:POKESD+1,J:NEXT
  286. 2477 FORJ=250TO50STEP-5:POKESD+1,J:NEXT
  287. 2478 POKESD+4,32
  288. 2480 FORY=0TO15
  289. 2490 POKEVC+1,187-Y:POKEVC+5,147-Y:POKEVC+7,106-Y:POKEVC+9,65-Y
  290. 2500 NEXT
  291. 2510 POKESP+0,PV+1
  292. 2520 FORY=0TO41
  293. 2530 POKEVC+1,172-Y:POKEVC+5,132-Y:POKEVC+7,91-Y
  294. 2540 NEXT
  295. 2550 POKEVC+21,PEEK(VC+21)AND(255-2^5)
  296. 2560 FORY=0TO41
  297. 2570 POKEVC+1,131-Y:POKEVC+5,91-Y:POKEVC+7,50-Y
  298. 2580 NEXT
  299. 2590 POKEVC+21,PEEK(VC+21)AND(255-2^4):POKESP+0,PV
  300. 2600 FORY=0TO40
  301. 2610 POKEVC+1,90-Y:POKEVC+5,50-Y
  302. 2620 NEXT
  303. 2630 POKEVC+21,PEEK(VC+21)AND(255-2^3):POKESP+0,PV+1
  304. 2640 FORY=0TO50:POKEVC+1,50-Y:NEXT
  305. 2645 REMPOKESD+4,32
  306. 2650 POKEVC+21,PEEK(VC+21)AND(255-2^2):POKEVC+21,PEEK(VC+21)AND(255-2^0)
  307. 2660 RETURN
  308. 2670 REM SPRITE DATA
  309. 2680 DATA000,080,000,000,080,000,000,060
  310. 2690 DATA000,000,060,000,000,010,000,000
  311. 2700 DATA010,000,000,001,064,000,001,064
  312. 2710 DATA000,000,240,000,000,240,000,002
  313. 2720 DATA128,000,002,128,000,005,000,000
  314. 2730 DATA005,000,000,060,000,000,060,001
  315. 2740 DATA000,010,004,000,010,016,000,001
  316. 2750 DATA080,000,001,068,000,001,065,113
  317. 2760 DATA000,005,000,000,005,000,000,060
  318. 2770 DATA000,000,060,000,000,160,000,000
  319. 2780 DATA160,000,001,064,000,001,064,000
  320. 2790 DATA015,000,000,015,000,000,002,128
  321. 2800 DATA000,002,128,000,000,080,000,000
  322. 2810 DATA080,000,000,060,000,064,060,000
  323. 2820 DATA016,160,000,004,160,000,005,064
  324. 2830 DATA000,017,064,000,065,064,000,113
  325. 2840 DATA000,024,000,000,024,000,000,024
  326. 2850 DATA000,000,024,000,000,024,000,000
  327. 2860 DATA024,000,000,024,000,000,024,000
  328. 2870 DATA000,024,000,000,024,000,000,024
  329. 2880 DATA000,000,024,000,000,024,000,000
  330. 2890 DATA024,000,000,024,000,000,024,000
  331. 2900 DATA000,024,000,000,024,000,000,024
  332. 2910 DATA000,000,024,000,000,024,000,052
  333. 2920 DATA100,185,239,148,165,009,148,165
  334. 2930 DATA009,132,165,009,132,165,009,132
  335. 2940 DATA165,009,132,165,009,132,165,009
  336. 2950 DATA132,165,009,132,165,009,100,185
  337. 2960 DATA206,020,161,009,020,161,009,020
  338. 2970 DATA161,009,020,161,009,020,161,009
  339. 2980 DATA020,161,009,020,161,009,148,161
  340. 2990 DATA009,148,161,009,099,033,233,065
  341. 2999 REM SUBROUTINES
  342. 3000 FORW=SDTOSD+23:POKEW,0:NEXT
  343. 3010 POKESD+5,8:POKESD+6,136:POKESD+1,25:POKESD+4,33
  344. 3120 FORW=1TO50:NEXT:POKESD+4,32:RETURN
  345. 3149 REM
  346. 3150 FORW=SDTOSD+23:POKEW,0:NEXT
  347. 3160 POKESD+5,8:POKESD+6,136:POKESD+1,8:POKESD+4,33
  348. 3170 FORW=1TO100:NEXT:POKESD+4,32:RETURN
  349. 3199 REM
  350. 3200 FORW=SDTOSD+23:POKEW,0:NEXT
  351. 3210 POKESD+5,8:POKESD+6,0:POKESD+1,100:POKESD+4,33
  352. 3220 FORW=1TO50:NEXT:POKESD+4,32:RETURN
  353. 3249 REM
  354. 3250 FORW=SDTOSD+23:POKEW,0:NEXT
  355. 3260 POKESD+5,8:POKESD+6,0:POKESD+1,50:POKESD+4,129
  356. 3270 FORW=1TO50:NEXT:POKESD+4,128:RETURN
  357.