home *** CD-ROM | disk | FTP | other *** search
/ AMOS PD CD / amospdcd.iso / 176-200 / apd184 / cal-maths.bak / cal-maths.amosSourceCode
AMOS Source Code  |  1990-08-11  |  36KB  |  1,192 lines

  1. Set Buffer 90
  2. Screen Open 0,320,500,32,Lowres
  3. Rem***************************** 
  4. '          Cal-Maths           * 
  5. '                              * 
  6. '            1991              *   
  7. '       ______________         *       
  8. '                              * 
  9. '             by               * 
  10. '                              * 
  11. '          M.Watson            * 
  12. '             &                *   
  13. '         T.D.Harris           * 
  14. '                              * 
  15. Rem***************************** 
  16. Get Disc Fonts 
  17. Load Iff "Cal 1",0
  18. Set Font 11
  19. SC$="                                     WELCOME TO ANOTHER PROGRAM FROM THE CREATORS OF SUPERQUIZ.    AGAIN MANY THANKS GO TO 'MANDARIN/JAWX' FOR AMOS THE "
  20. SC$=SC$+"CREATOR.  I HOPE THIS LITTLE MATHS PROGRAM "
  21. SC$=SC$+"MAY HELP YOU TO BRUSH UP ON YOUR MENTAL ARITHMETIC.      "
  22. SC$=SC$+"< PLEASE NOTE----WHEN ANSWERING DIVISION SUM's TO MAKE IT EASIER THE PROGRAM WILL ACCEPT THREE FIGURES AFTER THE DECIMAL POINT. JUST TO SAVE YOU GETTING A HEADACHE!    -PLEASE DO NOT TRY TO ADD MORE, THANK YOU->"
  23. Repeat 
  24.    If Mouse Key<>0 Then Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto ST
  25.    T_SCROLL
  26. Until True=False
  27. Procedure T_SCROLL
  28.    Shared SC$
  29.    Ink 5,0
  30.    Text 48,57,"Shieldsoft (c)"
  31.    Text 38,81,"Mental brush up!"
  32.    SC$=Mid$(SC$,2)+Left$(SC$,1)
  33.    Text 0,215,Left$(SC$,100) : Volume Rnd(8) : Play 86,0
  34.    For T=1 To 3000
  35.    Next T
  36. End Proc
  37. HERE:
  38. Load Iff "Cal 1",0
  39. Set Font 2
  40.    Ink 5,0
  41.    Text 48,57,"Shieldsoft (c)"
  42.    Text 38,81,"Mental brush up!"
  43. ST:
  44. Volume 50
  45. Cls 0,1,200 To 321,250
  46. Global Z,M,E$,D$,F$,E#,D#,F#,NUM,MPRESS,RESULT$,LM$,RM$
  47. Reserve Zone 18
  48. Rem********Main boxes********
  49. 'add 
  50. Set Zone 1,344,56 To 441,77
  51. 'sub 
  52. Set Zone 2,344,83 To 441,105
  53. 'div 
  54. Set Zone 3,344,110 To 441,131
  55. 'multi 
  56. Set Zone 4,344,137 To 441,158
  57. 'quit
  58. Set Zone 5,375,191 To 413,211
  59. 'del 
  60. Set Zone 6,141,204 To 178,223
  61. 'enter 
  62. Set Zone 7,235,203 To 292,223
  63. Rem********Numbers***********
  64. '* 1 * 
  65. Set Zone 8,142,136 To 167,162
  66. '* 2 * 
  67. Set Zone 9,173,136 To 198,162
  68. '* 3 * 
  69. Set Zone 10,204,136 To 229,162
  70. '* 4 * 
  71. Set Zone 11,235,136 To 260,162
  72. '* 5 * 
  73. Set Zone 12,266,136 To 291,162
  74. '* 6 * 
  75. Set Zone 13,142,167 To 167,193
  76. '* 7 * 
  77. Set Zone 14,173,167 To 197,193
  78. '* 8 * 
  79. Set Zone 15,204,167 To 229,193
  80. '* 9 * 
  81. Set Zone 16,236,167 To 260,193
  82. '* 0 * 
  83. Set Zone 17,267,167 To 291,193
  84. '* . * 
  85. Set Zone 18,192,204 To 221,223
  86. Do 
  87.    MCOOD
  88.    If M=1 and Z=1 Then Bell 96 : Goto PLUS
  89.    If M=1 and Z=2 Then Bell 96 : Goto SUB
  90.    If M=1 and Z=3 Then Bell 96 : Goto DIV
  91.    If M=1 and Z=4 Then Bell 96 : Goto MULTI
  92. Loop 
  93. Rem*****Addition************** 
  94. PLUS:
  95. Set Font 2
  96. Ink 0,30
  97. Cls 30,216,41 To 313,62 : Cls 30,216,68 To 313,89 : Cls 30,216,95 To 313,116
  98. Text 251,55,"Easy"
  99. Text 239,83,"Moderate"
  100. Text 251,110,"Hard"
  101. Goto PLUZ
  102. Rem*****Subtraction************
  103. SUB:
  104. Set Font 2
  105. Ink 0,30
  106. Cls 30,216,14 To 313,35 : Cls 30,216,41 To 313,62 : Cls 30,216,68 To 313,89 : Cls 30,216,95 To 313,116
  107. Text 233,30,"Subtraction"
  108. Text 251,55,"Easy"
  109. Text 239,83,"Moderate"
  110. Text 251,110,"Hard"
  111. Goto SUBB
  112. Rem*****Division***************  
  113. DIV:
  114. Set Font 2
  115. Ink 0,30
  116. Cls 30,216,14 To 313,35 : Cls 30,216,41 To 313,62 : Cls 30,216,68 To 313,89 : Cls 30,216,95 To 313,116
  117. Text 245,30,"Division"
  118. Text 251,55,"Easy"
  119. Text 239,83,"Moderate"
  120. Text 251,110,"Hard"
  121. Goto DIVIS
  122. Rem****Multiplication*********** 
  123. MULTI:
  124. Set Font 2
  125. Ink 0,30
  126. Cls 30,216,14 To 313,35 : Cls 30,216,41 To 313,62 : Cls 30,216,68 To 313,89 : Cls 30,216,95 To 313,116
  127. Text 228,30,"Multiplication"
  128. Text 251,55,"Easy"
  129. Text 239,83,"Moderate"
  130. Text 251,110,"Hard"
  131. Goto MULTTI
  132. Rem****Addition***** 
  133. PLUZ:
  134. Cls 0,10,42 To 165,62
  135. Cls 0,10,68 To 165,87
  136. Reset Zone 2
  137. Reset Zone 3
  138. Reset Zone 4
  139. Rem****** Easy ******
  140. Set Zone 2,344,83 To 441,105
  141. Rem**** Advanced ***** 
  142. Set Zone 3,344,110 To 441,131
  143. Rem****** Hard ******
  144. Set Zone 4,344,137 To 441,158
  145. Rem****** New zones for Addition ********* 
  146. Do 
  147.    MCOOD
  148.    If M=1 and Z=2 Then Cls 30,217,69 To 311,88 : Cls 30,217,96 To 311,115 : Bell 96 : Goto SIMP
  149.    If M=1 and Z=3 Then Cls 30,217,42 To 311,61 : Cls 30,217,96 To 311,115 : Bell 96 : Goto MEDE
  150.    If M=1 and Z=4 Then Cls 30,217,42 To 311,61 : Cls 30,217,69 To 311,88 : Bell 96 : Goto HLP
  151. Loop 
  152. Rem*********Addition Easy *************
  153. SIMP:
  154. Ink 5,0
  155. Pen 5 : Paper 0
  156.    BIN:
  157.    A=Rnd(10) : B=Rnd(9)
  158.    If A<1 Then Goto BIN
  159.    If B<1 Then Goto BIN
  160. LM$=Right$("0"+Mid$(Str$(A),1),2)
  161. RM$=Right$("0"+Mid$(Str$(B),1),2)
  162. Text 40,58,"What is "+LM$+" + "+RM$
  163. AGAIN:
  164. MPRESS=10
  165. RESULT$=""
  166. Do 
  167.    MCOOD
  168.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  169.    If M=1 and Z=8 : Shoot 
  170.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  171.       Wait 10 : Inc MPRESS
  172.       RESULT$=RESULT$+"1" : M=0 : Z=0
  173.    End If 
  174.    If M=1 and Z=9 : Shoot 
  175.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  176.       Wait 10 : Inc MPRESS
  177.       RESULT$=RESULT$+"2" : M=0 : Z=0
  178.    End If 
  179.    If M=1 and Z=10 : Shoot 
  180.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  181.       Wait 10 : Inc MPRESS
  182.       RESULT$=RESULT$+"3" : M=0 : Z=0
  183.    End If 
  184.    If M=1 and Z=11 : Shoot 
  185.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  186.       Wait 10 : Inc MPRESS
  187.       RESULT$=RESULT$+"4" : M=0 : Z=0
  188.    End If 
  189.    If M=1 and Z=12 : Shoot 
  190.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  191.       Wait 10 : Inc MPRESS
  192.       RESULT$=RESULT$+"5" : M=0 : Z=0
  193.    End If 
  194.    If M=1 and Z=13 : Shoot 
  195.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  196.       Wait 10 : Inc MPRESS
  197.       RESULT$=RESULT$+"6" : M=0 : Z=0
  198.    End If 
  199.    If M=1 and Z=14 : Shoot 
  200.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  201.       Wait 10 : Inc MPRESS
  202.       RESULT$=RESULT$+"7" : M=0 : Z=0
  203.    End If 
  204.    If M=1 and Z=15 : Shoot 
  205.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  206.       Wait 10 : Inc MPRESS
  207.       RESULT$=RESULT$+"8" : M=0 : Z=0
  208.    End If 
  209.    If M=1 and Z=16 : Shoot 
  210.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  211.       Wait 10 : Inc MPRESS
  212.       RESULT$=RESULT$+"9" : M=0 : Z=0
  213.    End If 
  214.    If M=1 and Z=17 : Shoot 
  215.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  216.       Wait 10 : Inc MPRESS
  217.       RESULT$=RESULT$+"0" : M=0 : Z=0
  218.    End If 
  219.    If M=1 and Z=6 : Boom 
  220.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  221.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto AGAIN
  222.    End If 
  223.    If M=1 and Z=7 Then Bell 96 : Goto ENT
  224. Loop 
  225. ENT:
  226. If A+B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SIMP
  227. If A+B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SIMP
  228. Goto AGAIN
  229. Rem***Addition Moderate *****
  230. MEDE:
  231. Ink 5,0
  232. Pen 5 : Paper 0
  233.    BINIT:
  234.    A=Rnd(25) : B=Rnd(40)
  235.    If A<5 Then Goto BINIT
  236.    If B<10 Then Goto BINIT
  237. LM$=Right$("00"+Mid$(Str$(A),1),2)
  238. RM$=Right$("00"+Mid$(Str$(B),1),2)
  239. Text 37,58,"What is "+LM$+" + "+RM$
  240. ANOTHER:
  241. MPRESS=10
  242. RESULT$=""
  243. Do 
  244.    MCOOD
  245.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  246.    If M=1 and Z=8 : Shoot 
  247.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  248.       Wait 10 : Inc MPRESS
  249.       RESULT$=RESULT$+"1" : M=0 : Z=0
  250.    End If 
  251.    If M=1 and Z=9 : Shoot 
  252.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  253.       Wait 10 : Inc MPRESS
  254.       RESULT$=RESULT$+"2" : M=0 : Z=0
  255.    End If 
  256.    If M=1 and Z=10 : Shoot 
  257.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  258.       Wait 10 : Inc MPRESS
  259.       RESULT$=RESULT$+"3" : M=0 : Z=0
  260.    End If 
  261.    If M=1 and Z=11 : Shoot 
  262.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  263.       Wait 10 : Inc MPRESS
  264.       RESULT$=RESULT$+"4" : M=0 : Z=0
  265.    End If 
  266.    If M=1 and Z=12 : Shoot 
  267.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  268.       Wait 10 : Inc MPRESS
  269.       RESULT$=RESULT$+"5" : M=0 : Z=0
  270.    End If 
  271.    If M=1 and Z=13 : Shoot 
  272.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  273.       Wait 10 : Inc MPRESS
  274.       RESULT$=RESULT$+"6" : M=0 : Z=0
  275.    End If 
  276.    If M=1 and Z=14 : Shoot 
  277.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  278.       Wait 10 : Inc MPRESS
  279.       RESULT$=RESULT$+"7" : M=0 : Z=0
  280.    End If 
  281.    If M=1 and Z=15 : Shoot 
  282.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  283.       Wait 10 : Inc MPRESS
  284.       RESULT$=RESULT$+"8" : M=0 : Z=0
  285.    End If 
  286.    If M=1 and Z=16 : Shoot 
  287.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  288.       Wait 10 : Inc MPRESS
  289.       RESULT$=RESULT$+"9" : M=0 : Z=0
  290.    End If 
  291.    If M=1 and Z=17 : Shoot 
  292.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  293.       Wait 10 : Inc MPRESS
  294.       RESULT$=RESULT$+"0" : M=0 : Z=0
  295.    End If 
  296.    If M=1 and Z=6 : Boom 
  297.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  298.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto ANOTHER
  299.    End If 
  300.    If M=1 and Z=7 Then Bell 96 : Goto EWT
  301. Loop 
  302. EWT:
  303. If A+B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDE
  304. If A+B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDE
  305. Goto ANOTHER
  306. Rem*****Addition Hard***** 
  307. HLP:
  308. Ink 5,0
  309. Pen 5 : Paper 0
  310.    BANIT:
  311.    A=Rnd(150) : B=Rnd(100)
  312.    If A<20 Then Goto BANIT
  313.    If B<20 Then Goto BANIT
  314. LM$=Right$("000"+Mid$(Str$(A),1),3)
  315. RM$=Right$("000"+Mid$(Str$(B),1),3)
  316. Text 23,58,"What is "+LM$+" + "+RM$
  317. ANOTHERONE:
  318. MPRESS=9
  319. RESULT$=""
  320. Do 
  321.    MCOOD
  322.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  323.    If M=1 and Z=8 : Shoot 
  324.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  325.       Wait 10 : Inc MPRESS
  326.       RESULT$=RESULT$+"1" : M=0 : Z=0
  327.    End If 
  328.    If M=1 and Z=9 : Shoot 
  329.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  330.       Wait 10 : Inc MPRESS
  331.       RESULT$=RESULT$+"2" : M=0 : Z=0
  332.    End If 
  333.    If M=1 and Z=10 : Shoot 
  334.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  335.       Wait 10 : Inc MPRESS
  336.       RESULT$=RESULT$+"3" : M=0 : Z=0
  337.    End If 
  338.    If M=1 and Z=11 : Shoot 
  339.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  340.       Wait 10 : Inc MPRESS
  341.       RESULT$=RESULT$+"4" : M=0 : Z=0
  342.    End If 
  343.    If M=1 and Z=12 : Shoot 
  344.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  345.       Wait 10 : Inc MPRESS
  346.       RESULT$=RESULT$+"5" : M=0 : Z=0
  347.    End If 
  348.    If M=1 and Z=13 : Shoot 
  349.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  350.       Wait 10 : Inc MPRESS
  351.       RESULT$=RESULT$+"6" : M=0 : Z=0
  352.    End If 
  353.    If M=1 and Z=14 : Shoot 
  354.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  355.       Wait 10 : Inc MPRESS
  356.       RESULT$=RESULT$+"7" : M=0 : Z=0
  357.    End If 
  358.    If M=1 and Z=15 : Shoot 
  359.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  360.       Wait 10 : Inc MPRESS
  361.       RESULT$=RESULT$+"8" : M=0 : Z=0
  362.    End If 
  363.    If M=1 and Z=16 : Shoot 
  364.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  365.       Wait 10 : Inc MPRESS
  366.       RESULT$=RESULT$+"9" : M=0 : Z=0
  367.    End If 
  368.    If M=1 and Z=17 : Shoot 
  369.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  370.       Wait 10 : Inc MPRESS
  371.       RESULT$=RESULT$+"0" : M=0 : Z=0
  372.    End If 
  373.    If M=1 and Z=6 : Boom 
  374.       Text X Graphic(MPRESS)-8,Y Graphic(10),""
  375.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto ANOTHERONE
  376.    End If 
  377.    If M=1 and Z=7 Then Bell 96 : Goto EUT
  378. Loop 
  379. EUT:
  380. If A+B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HLP
  381. If A+B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 75 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HLP
  382. Goto ANOTHERONE
  383. Rem********* Subtraction ******* 
  384. SUBB:
  385. Cls 0,10,42 To 165,62
  386. Cls 0,10,68 To 165,87
  387. Reset Zone 2
  388. Reset Zone 3
  389. Reset Zone 4
  390. Rem****** Easy ******
  391. Set Zone 2,344,83 To 441,105
  392. Rem**** Moderate ***** 
  393. Set Zone 3,344,110 To 441,131
  394. Rem****** Hard ******
  395. Set Zone 4,344,137 To 441,158
  396. Rem******New zones for subtraction ******* 
  397. Do 
  398.    MCOOD
  399.    If M=1 and Z=2 Then Cls 30,217,69 To 311,88 : Cls 30,217,96 To 311,115 : Bell 96 : Goto SMAL
  400.    If M=1 and Z=3 Then Cls 30,217,42 To 311,61 : Cls 30,217,96 To 311,115 : Bell 96 : Goto MEDY
  401.    If M=1 and Z=4 Then Cls 30,217,42 To 311,61 : Cls 30,217,69 To 311,88 : Bell 96 : Goto HLPP
  402. Loop 
  403. Rem********* Easy Subtration ********
  404. SMAL:
  405. Ink 5,0
  406. Pen 5 : Paper 0
  407.    BUNG:
  408.    A=Rnd(10) : B=Rnd(9)
  409.    If A<1 Then Goto BUNG
  410.    If B<1 Then Goto BUNG
  411.    If B>A Then Goto BUNG
  412.    If B=A Then Goto BUNG
  413. LM$=Right$("00"+Mid$(Str$(A),1),2)
  414. RM$=Right$("00"+Mid$(Str$(B),1),2)
  415. Text 37,58,"What is "+LM$+" - "+RM$
  416. AGAAIN:
  417. MPRESS=10
  418. RESULT$=""
  419. Do 
  420.    MCOOD
  421.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  422.    If M=1 and Z=8 : Shoot 
  423.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  424.       Wait 10 : Inc MPRESS
  425.       RESULT$=RESULT$+"1" : M=0 : Z=0
  426.    End If 
  427.    If M=1 and Z=9 : Shoot 
  428.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  429.       Wait 10 : Inc MPRESS
  430.       RESULT$=RESULT$+"2" : M=0 : Z=0
  431.    End If 
  432.    If M=1 and Z=10 : Shoot 
  433.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  434.       Wait 10 : Inc MPRESS
  435.       RESULT$=RESULT$+"3" : M=0 : Z=0
  436.    End If 
  437.    If M=1 and Z=11 : Shoot 
  438.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  439.       Wait 10 : Inc MPRESS
  440.       RESULT$=RESULT$+"4" : M=0 : Z=0
  441.    End If 
  442.    If M=1 and Z=12 : Shoot 
  443.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  444.       Wait 10 : Inc MPRESS
  445.       RESULT$=RESULT$+"5" : M=0 : Z=0
  446.    End If 
  447.    If M=1 and Z=13 : Shoot 
  448.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  449.       Wait 10 : Inc MPRESS
  450.       RESULT$=RESULT$+"6" : M=0 : Z=0
  451.    End If 
  452.    If M=1 and Z=14 : Shoot 
  453.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  454.       Wait 10 : Inc MPRESS
  455.       RESULT$=RESULT$+"7" : M=0 : Z=0
  456.    End If 
  457.    If M=1 and Z=15 : Shoot 
  458.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  459.       Wait 10 : Inc MPRESS
  460.       RESULT$=RESULT$+"8" : M=0 : Z=0
  461.    End If 
  462.    If M=1 and Z=16 : Shoot 
  463.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  464.       Wait 10 : Inc MPRESS
  465.       RESULT$=RESULT$+"9" : M=0 : Z=0
  466.    End If 
  467.    If M=1 and Z=17 : Shoot 
  468.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  469.       Wait 10 : Inc MPRESS
  470.       RESULT$=RESULT$+"0" : M=0 : Z=0
  471.    End If 
  472.    If M=1 and Z=6 : Boom 
  473.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  474.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto AGAAIN
  475.    End If 
  476.    If M=1 and Z=7 Then Bell 96 : Goto NET
  477. Loop 
  478. NET:
  479. If A-B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SMAL
  480. If A-B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SMAL
  481. Goto AGAAIN
  482. Rem******* moderate Subtraction *******
  483. MEDY:
  484. Ink 5,0
  485. Pen 5 : Paper 0
  486.    BUNGIT:
  487.    A=Rnd(65) : B=Rnd(53)
  488.    If A<20 Then Goto BUNGIT
  489.    If B<15 Then Goto BUNGIT
  490.    If B>A Then Goto BUNGIT
  491.    If B=A Then Goto BUNGIT
  492. LM$=Right$("000"+Mid$(Str$(A),1),3)
  493. RM$=Right$("000"+Mid$(Str$(B),1),3)
  494. Text 28,58,"What is "+LM$+" - "+RM$
  495. AGIN:
  496. MPRESS=10
  497. RESULT$=""
  498. Do 
  499.    MCOOD
  500.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  501.    If M=1 and Z=8 : Shoot 
  502.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  503.       Wait 10 : Inc MPRESS
  504.       RESULT$=RESULT$+"1" : M=0 : Z=0
  505.    End If 
  506.    If M=1 and Z=9 : Shoot 
  507.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  508.       Wait 10 : Inc MPRESS
  509.       RESULT$=RESULT$+"2" : M=0 : Z=0
  510.    End If 
  511.    If M=1 and Z=10 : Shoot 
  512.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  513.       Wait 10 : Inc MPRESS
  514.       RESULT$=RESULT$+"3" : M=0 : Z=0
  515.    End If 
  516.    If M=1 and Z=11 : Shoot 
  517.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  518.       Wait 10 : Inc MPRESS
  519.       RESULT$=RESULT$+"4" : M=0 : Z=0
  520.    End If 
  521.    If M=1 and Z=12 : Shoot 
  522.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  523.       Wait 10 : Inc MPRESS
  524.       RESULT$=RESULT$+"5" : M=0 : Z=0
  525.    End If 
  526.    If M=1 and Z=13 : Shoot 
  527.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  528.       Wait 10 : Inc MPRESS
  529.       RESULT$=RESULT$+"6" : M=0 : Z=0
  530.    End If 
  531.    If M=1 and Z=14 : Shoot 
  532.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  533.       Wait 10 : Inc MPRESS
  534.       RESULT$=RESULT$+"7" : M=0 : Z=0
  535.    End If 
  536.    If M=1 and Z=15 : Shoot 
  537.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  538.       Wait 10 : Inc MPRESS
  539.       RESULT$=RESULT$+"8" : M=0 : Z=0
  540.    End If 
  541.    If M=1 and Z=16 : Shoot 
  542.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  543.       Wait 10 : Inc MPRESS
  544.       RESULT$=RESULT$+"9" : M=0 : Z=0
  545.    End If 
  546.    If M=1 and Z=17 : Shoot 
  547.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  548.       Wait 10 : Inc MPRESS
  549.       RESULT$=RESULT$+"0" : M=0 : Z=0
  550.    End If 
  551.    If M=1 and Z=6 : Boom 
  552.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  553.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto AGIN
  554.    End If 
  555.    If M=1 and Z=7 Then Bell 96 : Goto NEET
  556. Loop 
  557. NEET:
  558. If A-B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDY
  559. If A-B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDY
  560. Goto AGIN
  561. Rem******* Hard Subtraction ********** 
  562. HLPP:
  563. Ink 5,0
  564. Pen 5 : Paper 0
  565.    BLOWIT:
  566.    A=Rnd(125) : B=Rnd(98)
  567.    If A<30 Then Goto BLOWIT
  568.    If B<20 Then Goto BLOWIT
  569.    If B>A Then Goto BLOWIT
  570.    If B=A Then Goto BLOWIT
  571. LM$=Right$("000"+Mid$(Str$(A),1),3)
  572. RM$=Right$("000"+Mid$(Str$(B),1),3)
  573. Text 28,58,"What is "+LM$+" - "+RM$
  574. AGINI:
  575. MPRESS=9
  576. RESULT$=""
  577. Do 
  578.    MCOOD
  579.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  580.    If M=1 and Z=8 : Shoot 
  581.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  582.       Wait 10 : Inc MPRESS
  583.       RESULT$=RESULT$+"1" : M=0 : Z=0
  584.    End If 
  585.    If M=1 and Z=9 : Shoot 
  586.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  587.       Wait 10 : Inc MPRESS
  588.       RESULT$=RESULT$+"2" : M=0 : Z=0
  589.    End If 
  590.    If M=1 and Z=10 : Shoot 
  591.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  592.       Wait 10 : Inc MPRESS
  593.       RESULT$=RESULT$+"3" : M=0 : Z=0
  594.    End If 
  595.    If M=1 and Z=11 : Shoot 
  596.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  597.       Wait 10 : Inc MPRESS
  598.       RESULT$=RESULT$+"4" : M=0 : Z=0
  599.    End If 
  600.    If M=1 and Z=12 : Shoot 
  601.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  602.       Wait 10 : Inc MPRESS
  603.       RESULT$=RESULT$+"5" : M=0 : Z=0
  604.    End If 
  605.    If M=1 and Z=13 : Shoot 
  606.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  607.       Wait 10 : Inc MPRESS
  608.       RESULT$=RESULT$+"6" : M=0 : Z=0
  609.    End If 
  610.    If M=1 and Z=14 : Shoot 
  611.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  612.       Wait 10 : Inc MPRESS
  613.       RESULT$=RESULT$+"7" : M=0 : Z=0
  614.    End If 
  615.    If M=1 and Z=15 : Shoot 
  616.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  617.       Wait 10 : Inc MPRESS
  618.       RESULT$=RESULT$+"8" : M=0 : Z=0
  619.    End If 
  620.    If M=1 and Z=16 : Shoot 
  621.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  622.       Wait 10 : Inc MPRESS
  623.       RESULT$=RESULT$+"9" : M=0 : Z=0
  624.    End If 
  625.    If M=1 and Z=17 : Shoot 
  626.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  627.       Wait 10 : Inc MPRESS
  628.       RESULT$=RESULT$+"0" : M=0 : Z=0
  629.    End If 
  630.    If M=1 and Z=6 : Boom 
  631.       Text X Graphic(MPRESS)-8,Y Graphic(10),""
  632.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto AGINI
  633.    End If 
  634.    If M=1 and Z=7 Then Bell 96 : Inc MPRESS : Goto SWEET
  635. Loop 
  636. SWEET:
  637. If A-B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HLPP
  638. If A-B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HLPP
  639. Goto AGINI
  640. Rem******** Division  *********
  641. DIVIS:
  642. Cls 0,10,42 To 165,62
  643. Cls 0,10,68 To 165,87
  644. Reset Zone 2
  645. Reset Zone 3
  646. Reset Zone 4
  647. Rem****** Easy ******
  648. Set Zone 2,344,83 To 441,105
  649. Rem**** Advanced ***** 
  650. Set Zone 3,344,110 To 441,131
  651. Rem****** Hard ******
  652. Set Zone 4,344,137 To 441,158
  653. Rem****** New zones for Addition ********* 
  654. Do 
  655.    MCOOD
  656.    If M=1 and Z=2 Then Cls 30,217,69 To 311,88 : Cls 30,217,96 To 311,115 : Bell 96 : Goto DSIMMP
  657.    If M=1 and Z=3 Then Cls 30,217,42 To 311,61 : Cls 30,217,96 To 311,115 : Bell 96 : Goto MHY
  658.    If M=1 and Z=4 Then Cls 30,217,42 To 311,61 : Cls 30,217,69 To 311,88 : Bell 96 : Goto HILP
  659. Loop 
  660. Rem******** Division  Easy ********* 
  661. DSIMMP:
  662. Ink 5,0
  663. Pen 5 : Paper 0
  664.    BLAWIT:
  665.    D#=Rnd(10) : F#=Rnd(8)
  666.    If D#<1 Then Goto BLAWIT
  667.    If F#<1 Then Goto BLAWIT
  668.    If F#>D# Then Goto BLAWIT
  669.    If F#=D# Then Goto BLAWIT
  670. E#=D#/F#
  671. E$=Mid$(Str$(E#),2)
  672. E=Instr(E$,".")
  673. E$=Left$(E$,E+3)
  674. LM$=Right$("00"+Mid$(Str$(D#),1),2)
  675. RM$=Right$("00"+Mid$(Str$(F#),1),2)
  676. Text 35,58,"What is "+LM$+" / "+RM$
  677. GAIN:
  678. MPRESS=8
  679. E=Instr(RESULT$,".")
  680. RESULT$=Left$(RESULT$,E+3)
  681. RESULT$=""
  682. Do 
  683.    MCOOD
  684.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  685.    If M=1 and Z=8 : Shoot 
  686.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  687.       Wait 10 : Inc MPRESS
  688.       RESULT$=RESULT$+"1" : M=0 : Z=0
  689.    End If 
  690.    If M=1 and Z=9 : Shoot 
  691.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  692.       Wait 10 : Inc MPRESS
  693.       RESULT$=RESULT$+"2" : M=0 : Z=0
  694.    End If 
  695.    If M=1 and Z=10 : Shoot 
  696.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  697.       Wait 10 : Inc MPRESS
  698.       RESULT$=RESULT$+"3" : M=0 : Z=0
  699.    End If 
  700.    If M=1 and Z=11 : Shoot 
  701.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  702.       Wait 10 : Inc MPRESS
  703.       RESULT$=RESULT$+"4" : M=0 : Z=0
  704.    End If 
  705.    If M=1 and Z=12 : Shoot 
  706.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  707.       Wait 10 : Inc MPRESS
  708.       RESULT$=RESULT$+"5" : M=0 : Z=0
  709.    End If 
  710.    If M=1 and Z=13 : Shoot 
  711.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  712.       Wait 10 : Inc MPRESS
  713.       RESULT$=RESULT$+"6" : M=0 : Z=0
  714.    End If 
  715.    If M=1 and Z=14 : Shoot 
  716.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  717.       Wait 10 : Inc MPRESS
  718.       RESULT$=RESULT$+"7" : M=0 : Z=0
  719.    End If 
  720.    If M=1 and Z=15 : Shoot 
  721.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  722.       Wait 10 : Inc MPRESS
  723.       RESULT$=RESULT$+"8" : M=0 : Z=0
  724.    End If 
  725.    If M=1 and Z=16 : Shoot 
  726.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  727.       Wait 10 : Inc MPRESS
  728.       RESULT$=RESULT$+"9" : M=0 : Z=0
  729.    End If 
  730.    If M=1 and Z=17 : Shoot 
  731.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  732.       Wait 10 : Inc MPRESS
  733.       RESULT$=RESULT$+"0" : M=0 : Z=0
  734.    End If 
  735.    If M=1 and Z=18 : Shoot 
  736.       Text X Graphic(MPRESS),Y Graphic(10),"."
  737.       Wait 10 : Inc MPRESS
  738.       RESULT$=RESULT$+"." : M=0 : Z=0
  739.    End If 
  740.    If M=1 and Z=6 : Boom 
  741.       Text X Graphic(MPRESS)-8,Y Graphic(10),""
  742.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto GAIN
  743.    End If 
  744.    If M=1 and Z=7 Then Bell 96 : Goto WEET
  745. Loop 
  746. WEET:
  747. If E$=(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto DSIMMP
  748. If E$<>(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto DSIMMP
  749. Goto GAIN
  750. Rem******** Division  Moderate ********* 
  751. MHY:
  752. Ink 5,0
  753. Pen 5 : Paper 0
  754.    CHUKIT:
  755.    D#=Rnd(50) : F#=Rnd(20)
  756.    If D#<10 Then Goto CHUKIT
  757.    If F#<5 Then Goto CHUKIT
  758.    If F#>D# Then Goto CHUKIT
  759.    If F#=D# Then Goto CHUKIT
  760. E#=D#/F#
  761. E$=Mid$(Str$(E#),2)
  762. E=Instr(E$,".")
  763. E$=Left$(E$,E+3)
  764. LM$=Right$("00"+Mid$(Str$(D#),1),2)
  765. RM$=Right$("00"+Mid$(Str$(F#),1),2)
  766. Text 28,58,"What is "+LM$+" / "+RM$
  767. RGAIN:
  768. MPRESS=8
  769. E=Instr(RESULT$,".")
  770. RESULT$=Left$(RESULT$,E+3)
  771. RESULT$=""
  772. Do 
  773.    MCOOD
  774.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  775.    If M=1 and Z=8 : Shoot 
  776.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  777.       Wait 10 : Inc MPRESS
  778.       RESULT$=RESULT$+"1" : M=0 : Z=0
  779.    End If 
  780.    If M=1 and Z=9 : Shoot 
  781.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  782.       Wait 10 : Inc MPRESS
  783.       RESULT$=RESULT$+"2" : M=0 : Z=0
  784.    End If 
  785.    If M=1 and Z=10 : Shoot 
  786.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  787.       Wait 10 : Inc MPRESS
  788.       RESULT$=RESULT$+"3" : M=0 : Z=0
  789.    End If 
  790.    If M=1 and Z=11 : Shoot 
  791.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  792.       Wait 10 : Inc MPRESS
  793.       RESULT$=RESULT$+"4" : M=0 : Z=0
  794.    End If 
  795.    If M=1 and Z=12 : Shoot 
  796.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  797.       Wait 10 : Inc MPRESS
  798.       RESULT$=RESULT$+"5" : M=0 : Z=0
  799.    End If 
  800.    If M=1 and Z=13 : Shoot 
  801.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  802.       Wait 10 : Inc MPRESS
  803.       RESULT$=RESULT$+"6" : M=0 : Z=0
  804.    End If 
  805.    If M=1 and Z=14 : Shoot 
  806.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  807.       Wait 10 : Inc MPRESS
  808.       RESULT$=RESULT$+"7" : M=0 : Z=0
  809.    End If 
  810.    If M=1 and Z=15 : Shoot 
  811.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  812.       Wait 10 : Inc MPRESS
  813.       RESULT$=RESULT$+"8" : M=0 : Z=0
  814.    End If 
  815.    If M=1 and Z=16 : Shoot 
  816.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  817.       Wait 10 : Inc MPRESS
  818.       RESULT$=RESULT$+"9" : M=0 : Z=0
  819.    End If 
  820.    If M=1 and Z=18 : Shoot 
  821.       Text X Graphic(MPRESS),Y Graphic(10),"."
  822.       Wait 10 : Inc MPRESS
  823.       RESULT$=RESULT$+"." : M=0 : Z=0
  824.    End If 
  825.    If M=1 and Z=17 : Shoot 
  826.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  827.       Wait 10 : Inc MPRESS
  828.       RESULT$=RESULT$+"0" : M=0 : Z=0
  829.    End If 
  830.    If M=1 and Z=6 : Boom 
  831.       Text X Graphic(MPRESS)-7,Y Graphic(10),""
  832.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto RGAIN
  833.    End If 
  834.    If M=1 and Z=7 Then Bell 96 : Goto TWEET
  835. Loop 
  836. TWEET:
  837. If E$=(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MHY
  838. If E$<>(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"Incorrect" : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MHY
  839. Goto RGAIN
  840. Rem******** Division  Hard ********* 
  841. HILP:
  842. Ink 5,0
  843. Pen 5 : Paper 0
  844.    CHUKITAWAY:
  845.    D#=Rnd(1000) : F#=Rnd(100)
  846.    If D#<50 Then Goto CHUKITAWAY
  847.    If F#<25 Then Goto CHUKITAWAY
  848.    If F#>D# Then Goto CHUKITAWAY
  849.    If F#=D# Then Goto CHUKITAWAY
  850. E#=D#/F#
  851. E$=Mid$(Str$(E#),2)
  852. E=Instr(E$,".")
  853. E$=Left$(E$,E+3)
  854. LM$=Right$("000"+Mid$(Str$(D#),1),3)
  855. RM$=Right$("000"+Mid$(Str$(F#),1),3)
  856. Text 24,58,"What is "+LM$+" / "+RM$
  857. RAGAIN:
  858. MPRESS=8
  859. E=Instr(RESULT$,".")
  860. RESULT$=Left$(RESULT$,E+3)
  861. RESULT$=""
  862. Do 
  863.    MCOOD
  864.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  865.    If M=1 and Z=8 : Shoot 
  866.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  867.       Wait 10 : Inc MPRESS
  868.       RESULT$=RESULT$+"1" : M=0 : Z=0
  869.    End If 
  870.    If M=1 and Z=9 : Shoot 
  871.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  872.       Wait 10 : Inc MPRESS
  873.       RESULT$=RESULT$+"2" : M=0 : Z=0
  874.    End If 
  875.    If M=1 and Z=10 : Shoot 
  876.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  877.       Wait 10 : Inc MPRESS
  878.       RESULT$=RESULT$+"3" : M=0 : Z=0
  879.    End If 
  880.    If M=1 and Z=11 : Shoot 
  881.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  882.       Wait 10 : Inc MPRESS
  883.       RESULT$=RESULT$+"4" : M=0 : Z=0
  884.    End If 
  885.    If M=1 and Z=12 : Shoot 
  886.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  887.       Wait 10 : Inc MPRESS
  888.       RESULT$=RESULT$+"5" : M=0 : Z=0
  889.    End If 
  890.    If M=1 and Z=13 : Shoot 
  891.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  892.       Wait 10 : Inc MPRESS
  893.       RESULT$=RESULT$+"6" : M=0 : Z=0
  894.    End If 
  895.    If M=1 and Z=14 : Shoot 
  896.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  897.       Wait 10 : Inc MPRESS
  898.       RESULT$=RESULT$+"7" : M=0 : Z=0
  899.    End If 
  900.    If M=1 and Z=15 : Shoot 
  901.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  902.       Wait 10 : Inc MPRESS
  903.       RESULT$=RESULT$+"8" : M=0 : Z=0
  904.    End If 
  905.    If M=1 and Z=16 : Shoot 
  906.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  907.       Wait 10 : Inc MPRESS
  908.       RESULT$=RESULT$+"9" : M=0 : Z=0
  909.    End If 
  910.    If M=1 and Z=17 : Shoot 
  911.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  912.       Wait 10 : Inc MPRESS
  913.       RESULT$=RESULT$+"0" : M=0 : Z=0
  914.    End If 
  915.    If M=1 and Z=18 : Shoot 
  916.       Text X Graphic(MPRESS),Y Graphic(10),"."
  917.       Wait 10 : Inc MPRESS
  918.       RESULT$=RESULT$+"." : M=0 : Z=0
  919.    End If 
  920.    If M=1 and Z=6 : Boom 
  921.       Text X Graphic(MPRESS)-7,Y Graphic(10),""
  922.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto RAGAIN
  923.    End If 
  924.    If M=1 and Z=7 Then Bell 96 : Goto TWEETI
  925. Loop 
  926. TWEETI:
  927. If E$=(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HILP
  928. If E$<>(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto HILP
  929. Goto RAGAIN
  930. Rem******* Multiplication ******** 
  931. MULTTI:
  932. Cls 0,10,42 To 165,62
  933. Cls 0,10,68 To 165,87
  934. Reset Zone 2
  935. Reset Zone 3
  936. Reset Zone 4
  937. Rem****** Easy ******
  938. Set Zone 2,344,83 To 441,105
  939. Rem**** Moderate ***** 
  940. Set Zone 3,344,110 To 441,131
  941. Rem****** Hard ******
  942. Set Zone 4,344,137 To 441,158
  943. Rem******New zones for subtraction ******* 
  944. Do 
  945.    MCOOD
  946.    If M=1 and Z=2 Then Cls 30,217,69 To 311,88 : Cls 30,217,96 To 311,115 : Bell 96 : Goto SMALA
  947.    If M=1 and Z=3 Then Cls 30,217,42 To 311,61 : Cls 30,217,96 To 311,115 : Bell 96 : Goto MEDYUM
  948.    If M=1 and Z=4 Then Cls 30,217,42 To 311,61 : Cls 30,217,69 To 311,88 : Bell 96 : Goto LPPIT
  949. Loop 
  950. Rem********Multiplication easy ******* 
  951. SMALA:
  952. Ink 5,0
  953. Pen 5 : Paper 0
  954.    CHUCKITAWAY:
  955.    A=Rnd(8) : B=Rnd(10)
  956.    If A<1 Then Goto CHUCKITAWAY
  957.    If B<1 Then Goto CHUCKITAWAY
  958.    If B>A Then Goto CHUCKITAWAY
  959.    If B=A Then Goto CHUCKITAWAY
  960. LM$=Right$("00"+Mid$(Str$(A),1),2)
  961. RM$=Right$("00"+Mid$(Str$(B),1),2)
  962. Text 35,58,"What is "+LM$+" x "+RM$
  963. RAGAINT:
  964. MPRESS=10
  965. RESULT$=""
  966. Do 
  967.    MCOOD
  968.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  969.    If M=1 and Z=8 : Shoot 
  970.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  971.       Wait 10 : Inc MPRESS
  972.       RESULT$=RESULT$+"1" : M=0 : Z=0
  973.    End If 
  974.    If M=1 and Z=9 : Shoot 
  975.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  976.       Wait 10 : Inc MPRESS
  977.       RESULT$=RESULT$+"2" : M=0 : Z=0
  978.    End If 
  979.    If M=1 and Z=10 : Shoot 
  980.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  981.       Wait 10 : Inc MPRESS
  982.       RESULT$=RESULT$+"3" : M=0 : Z=0
  983.    End If 
  984.    If M=1 and Z=11 : Shoot 
  985.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  986.       Wait 10 : Inc MPRESS
  987.       RESULT$=RESULT$+"4" : M=0 : Z=0
  988.    End If 
  989.    If M=1 and Z=12 : Shoot 
  990.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  991.       Wait 10 : Inc MPRESS
  992.       RESULT$=RESULT$+"5" : M=0 : Z=0
  993.    End If 
  994.    If M=1 and Z=13 : Shoot 
  995.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  996.       Wait 10 : Inc MPRESS
  997.       RESULT$=RESULT$+"6" : M=0 : Z=0
  998.    End If 
  999.    If M=1 and Z=14 : Shoot 
  1000.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  1001.       Wait 10 : Inc MPRESS
  1002.       RESULT$=RESULT$+"7" : M=0 : Z=0
  1003.    End If 
  1004.    If M=1 and Z=15 : Shoot 
  1005.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  1006.       Wait 10 : Inc MPRESS
  1007.       RESULT$=RESULT$+"8" : M=0 : Z=0
  1008.    End If 
  1009.    If M=1 and Z=16 : Shoot 
  1010.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  1011.       Wait 10 : Inc MPRESS
  1012.       RESULT$=RESULT$+"9" : M=0 : Z=0
  1013.    End If 
  1014.    If M=1 and Z=17 : Shoot 
  1015.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  1016.       Wait 10 : Inc MPRESS
  1017.       RESULT$=RESULT$+"0" : M=0 : Z=0
  1018.    End If 
  1019.    If M=1 and Z=6 : Boom 
  1020.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  1021.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto RAGAINT
  1022.    End If 
  1023.    If M=1 and Z=7 Then Bell 96 : Goto TWIITI
  1024. Loop 
  1025. TWIITI:
  1026. If A*B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SMALA
  1027. If A*B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto SMALA
  1028. Goto RAGAINT
  1029. Rem******** Multiplication moderate *****
  1030. MEDYUM:
  1031. Ink 5,0
  1032. Pen 5 : Paper 0
  1033.    CHUCKITINABIN:
  1034.    A=Rnd(12) : B=Rnd(30)
  1035.    If A<5 Then Goto CHUCKITINABIN
  1036.    If B<5 Then Goto CHUCKITINABIN
  1037.    If B>A Then Goto CHUCKITINABIN
  1038.    If B=A Then Goto CHUCKITINABIN
  1039. LM$=Right$("00"+Mid$(Str$(A),1),2)
  1040. RM$=Right$("00"+Mid$(Str$(B),1),2)
  1041. Text 28,58,"What is "+LM$+" x "+RM$
  1042. RAGA:
  1043. MPRESS=10
  1044. RESULT$=""
  1045. Do 
  1046.    MCOOD
  1047.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  1048.    If M=1 and Z=8 : Shoot 
  1049.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  1050.       Wait 10 : Inc MPRESS
  1051.       RESULT$=RESULT$+"1" : M=0 : Z=0
  1052.    End If 
  1053.    If M=1 and Z=9 : Shoot 
  1054.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  1055.       Wait 10 : Inc MPRESS
  1056.       RESULT$=RESULT$+"2" : M=0 : Z=0
  1057.    End If 
  1058.    If M=1 and Z=10 : Shoot 
  1059.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  1060.       Wait 10 : Inc MPRESS
  1061.       RESULT$=RESULT$+"3" : M=0 : Z=0
  1062.    End If 
  1063.    If M=1 and Z=11 : Shoot 
  1064.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  1065.       Wait 10 : Inc MPRESS
  1066.       RESULT$=RESULT$+"4" : M=0 : Z=0
  1067.    End If 
  1068.    If M=1 and Z=12 : Shoot 
  1069.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  1070.       Wait 10 : Inc MPRESS
  1071.       RESULT$=RESULT$+"5" : M=0 : Z=0
  1072.    End If 
  1073.    If M=1 and Z=13 : Shoot 
  1074.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  1075.       Wait 10 : Inc MPRESS
  1076.       RESULT$=RESULT$+"6" : M=0 : Z=0
  1077.    End If 
  1078.    If M=1 and Z=14 : Shoot 
  1079.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  1080.       Wait 10 : Inc MPRESS
  1081.       RESULT$=RESULT$+"7" : M=0 : Z=0
  1082.    End If 
  1083.    If M=1 and Z=15 : Shoot 
  1084.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  1085.       Wait 10 : Inc MPRESS
  1086.       RESULT$=RESULT$+"8" : M=0 : Z=0
  1087.    End If 
  1088.    If M=1 and Z=16 : Shoot 
  1089.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  1090.       Wait 10 : Inc MPRESS
  1091.       RESULT$=RESULT$+"9" : M=0 : Z=0
  1092.    End If 
  1093.    If M=1 and Z=17 : Shoot 
  1094.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  1095.       Wait 10 : Inc MPRESS
  1096.       RESULT$=RESULT$+"0" : M=0 : Z=0
  1097.    End If 
  1098.    If M=1 and Z=6 : Boom 
  1099.       Text X Graphic(MPRESS)-9,Y Graphic(10),""
  1100.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto RAGA
  1101.    End If 
  1102.    If M=1 and Z=7 Then Bell 96 : Goto WITI
  1103. Loop 
  1104. WITI:
  1105. If A*B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDYUM
  1106. If A*B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto MEDYUM
  1107. Goto RAGA
  1108. Rem******** Multiplication hard *****
  1109. LPPIT:
  1110. Ink 5,0
  1111. Pen 5 : Paper 0
  1112.    INABIN:
  1113.    A=Rnd(200) : B=Rnd(80)
  1114.    If A<50 Then Goto INABIN
  1115.    If B<15 Then Goto INABIN
  1116.    If B>A Then Goto INABIN
  1117.    If B=A Then Goto INABIN
  1118. LM$=Right$("000"+Mid$(Str$(A),1),3)
  1119. RM$=Right$("000"+Mid$(Str$(B),1),3)
  1120. Text 28,58,"What is "+LM$+" x "+RM$
  1121. RATI:
  1122. MPRESS=9
  1123. RESULT$=""
  1124. Do 
  1125.    MCOOD
  1126.    If M=1 and Z=5 Then Bell 96 : Goto HERE
  1127.    If M=1 and Z=8 : Shoot 
  1128.       Text X Graphic(MPRESS),Y Graphic(10),"1"
  1129.       Wait 10 : Inc MPRESS
  1130.       RESULT$=RESULT$+"1" : M=0 : Z=0
  1131.    End If 
  1132.    If M=1 and Z=9 : Shoot 
  1133.       Text X Graphic(MPRESS),Y Graphic(10),"2"
  1134.       Wait 10 : Inc MPRESS
  1135.       RESULT$=RESULT$+"2" : M=0 : Z=0
  1136.    End If 
  1137.    If M=1 and Z=10 : Shoot 
  1138.       Text X Graphic(MPRESS),Y Graphic(10),"3"
  1139.       Wait 10 : Inc MPRESS
  1140.       RESULT$=RESULT$+"3" : M=0 : Z=0
  1141.    End If 
  1142.    If M=1 and Z=11 : Shoot 
  1143.       Text X Graphic(MPRESS),Y Graphic(10),"4"
  1144.       Wait 10 : Inc MPRESS
  1145.       RESULT$=RESULT$+"4" : M=0 : Z=0
  1146.    End If 
  1147.    If M=1 and Z=12 : Shoot 
  1148.       Text X Graphic(MPRESS),Y Graphic(10),"5"
  1149.       Wait 10 : Inc MPRESS
  1150.       RESULT$=RESULT$+"5" : M=0 : Z=0
  1151.    End If 
  1152.    If M=1 and Z=13 : Shoot 
  1153.       Text X Graphic(MPRESS),Y Graphic(10),"6"
  1154.       Wait 10 : Inc MPRESS
  1155.       RESULT$=RESULT$+"6" : M=0 : Z=0
  1156.    End If 
  1157.    If M=1 and Z=14 : Shoot 
  1158.       Text X Graphic(MPRESS),Y Graphic(10),"7"
  1159.       Wait 10 : Inc MPRESS
  1160.       RESULT$=RESULT$+"7" : M=0 : Z=0
  1161.    End If 
  1162.    If M=1 and Z=15 : Shoot 
  1163.       Text X Graphic(MPRESS),Y Graphic(10),"8"
  1164.       Wait 10 : Inc MPRESS
  1165.       RESULT$=RESULT$+"8" : M=0 : Z=0
  1166.    End If 
  1167.    If M=1 and Z=16 : Shoot 
  1168.       Text X Graphic(MPRESS),Y Graphic(10),"9"
  1169.       Wait 10 : Inc MPRESS
  1170.       RESULT$=RESULT$+"9" : M=0 : Z=0
  1171.    End If 
  1172.    If M=1 and Z=17 : Shoot 
  1173.       Text X Graphic(MPRESS),Y Graphic(10),"0"
  1174.       Wait 10 : Inc MPRESS
  1175.       RESULT$=RESULT$+"0" : M=0 : Z=0
  1176.    End If 
  1177.    If M=1 and Z=6 : Boom 
  1178.       Text X Graphic(MPRESS)-8,Y Graphic(10),""
  1179.       Wait 10 : Cls 0,10,68 To 165,87 : M=0 : Z=0 : Goto RATI
  1180.    End If 
  1181.    If M=1 and Z=7 Then Bell 96 : Goto FED_UP
  1182. Loop 
  1183. FED_UP:
  1184. If A*B=Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 67,82,"correct" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto LPPIT
  1185. If A*B<>Val(RESULT$) Then Cls 0,10,68 To 165,87 : Text 64,82,"incorrect" : Wait 50 : Cls 0,10,42 To 165,62 : Cls 0,10,68 To 165,87 : Goto LPPIT
  1186. Goto RATI
  1187. Procedure MCOOD
  1188.    Z=Zone(X Mouse,Y Mouse)
  1189.    X=X Mouse
  1190.    Y=Y Mouse
  1191.    M=Mouse Key
  1192. End Proc