5748330 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$ cat -n ball1.bas
   1: DECLARE SUB sleepB (T!)
   2: DECLARE SUB PAUSE (A!, T!)
   3: DECLARE SUB PAUSEA (A!, SM!, CM!)
   4: DECLARE SUB frame4 ()
   5: DECLARE SUB frame52u ()
   6: DECLARE SUB frame12218 ()
   7: DECLARE SUB Sleepa (T!)
   8: DECLARE SUB frame3 ()
   9: DECLARE SUB frame1 ()
  10: DECLARE SUB frame2 ()
  11: X% = 60
  12: SCREEN 12
  13: CLS
  14: FOR asx = 1 TO 5
  15: frame1
  16: Sleepa .1
  17: frame2
  18: Sleepa .1
  19: frame3
  20: Sleepa .1
  21: frame4
  22: Sleepa .1
  23: frame52u
  24: Sleepa .1
  25: frame12218
  26: Sleepa .41
  27: CLS
  28: NEXT asx
  29: FOR axa = 1 TO 5
  30: FOR AAA = .001 TO 1 STEP .01
  31: CIRCLE (320, 240), X%, , , , AAA
  32: sleepB .03
  33: CIRCLE (320, 240), X%, 1, , , AAA
  34: NEXT AAA
  35: CIRCLE (320, 240), X%, , , , 1
  36: X% = X% + 1
  37: FOR BBB = 1 TO .001 STEP -.01
  38: CIRCLE (320, 240), X%, , , , BBB
  39: sleepB .03
  40: CIRCLE (320, 240), X%, 0, , , BBB
  41: NEXT BBB
  42: CIRCLE (320, 240), X%, , , , .001
  43: NEXT axa
  44: CIRCLE (320, 240), X%, 0, , , .001
  45: 
  46: SUB frame1
  47: CIRCLE (320, 240), 60
  48: PSET (320, 260): PSET (321, 260): PSET (322, 260): PSET (323, 260): PSET (324, 260): PSET (325, 260): PSET (326, 260): PSET (327, 260): PSET (328, 260): PSET (329, 260): PSET (330, 260): PSET (319, 260): PSET (318, 260): PSET (317, 260): PSET (316, 260)
  49: PSET (315, 260): PSET (314, 260): PSET (313, 260): PSET (312, 260): PSET (311, 260): PSET (310, 260): CIRCLE (290, 210), 5: CIRCLE (350, 210), 5
  50: END SUB
  51: 
  52: SUB frame12218
  53: CIRCLE (290, 210), 5, 0, , , .09: CIRCLE (290, 210), 5, , , , .1: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .1: CIRCLE (290, 210), 5, , , , .2: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .2: CIRCLE (290, 210), 5, , , , .3: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .3: CIRCLE (290, 210), 5, , , , .4: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .4: CIRCLE (290, 210), 5, , , , .5: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .5: CIRCLE (290, 210), 5, , , , .6: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .6: CIRCLE (290, 210), 5, , , , .7: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .7: CIRCLE (290, 210), 5, , , , .8: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .8: CIRCLE (290, 210), 5, , , , .9: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .9: CIRCLE (290, 210), 5, , , , 1
  54: END SUB
  55: 
  56: SUB frame2
  57: PRESET (311, 260): PSET (311, 259): PRESET (310, 260): PSET (310, 259): PRESET (329, 260): PSET (329, 259): PRESET (330, 260): PSET (330, 259)
  58: END SUB
  59: 
  60: SUB frame3
  61: PRESET (310, 259): : PSET (310, 258): PRESET (330, 259): PSET (330, 258)
  62: END SUB
  63: 
  64: SUB frame4
  65: CIRCLE (290, 210), 5, 0
  66: CIRCLE (290, 210), 5, , , , .9
  67: END SUB
  68: 
  69: SUB frame52u
  70: CIRCLE (290, 210), 5, 0, , , .9
  71: CIRCLE (290, 210), 5, , , , .8
  72: sleepB .0075
  73: CIRCLE (290, 210), 5, 0, , , .8: CIRCLE (290, 210), 5, , , , .7: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .7: CIRCLE (290, 210), 5, , , , .6: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .6: CIRCLE (290, 210), 5, , , , .5: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .5: CIRCLE (290, 210), 5, , , , .4: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .4: CIRCLE (290, 210), 5, , , , .3: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .3: CIRCLE (290, 210), 5, , , , .2: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .2: CIRCLE (290, 210), 5, , , , .1: sleepB .0075: CIRCLE (290, 210), 5, 0, , , .1: CIRCLE (290, 210), 5, , , , .09
  74: END SUB
  75: 
  76: SUB PAUSE (A, T)
  77: IF T < 60 THEN TMUN$ = "seconds ": G = T: H = 1
  78: IF T > 59 AND T < 3600 THEN TMUN$ = "minutes  ": G = T / 60: H = 60
  79: IF T > 3599 AND T < 86400 THEN TMUN$ = "hours  ": G = T / 3600: H = 3600
  80: G = G - 1
  81: FOR gg = G TO 0 STEP -1
  82: LOCATE A, 1: PRINT "Program will resume in"; G + 1; TMUN$
  83: Sleepa H: G = G - 1
  84: NEXT gg
  85: LOCATE A, 1: PRINT "                                       "
  86: END SUB
  87: 
  88: SUB PAUSEA (A, SM, CM)
  89: IF CM = 0 THEN CM = 15
  90: IF SM = 0 GOTO 54465
  91: SCREEN 0
  92: 54465 COLOR 15, 0: LOCATE A, 1: PRINT "Press any key to continue...": COLOR 23, 0: LOCATE A, 30: PRINT "_": SLEEP
  93: IF SM = 0 THEN GOTO 99999 ELSE SCREEN SM
  94: 99999 COLOR CM: LOCATE A, 1: PRINT "                             ": LOCATE A, 30: PRINT " "
  95: END SUB
  96: 
  97: SUB PAUSEB (A, T, U$)
  98: IF U$ = "H" THEN T = T * 3600
  99: IF U$ = "M" THEN T = T * 60
 100: IF U$ = "S" THEN T = T * 1
 101: IF U$ = "h" THEN T = T * 3600
 102: IF U$ = "m" THEN T = T * 60
 103: IF U$ = "s" THEN T = T * 1
 104: IF T < 60 THEN TMUN$ = "seconds ": G = T: H = 1
 105: IF T > 59 AND T < 3600 THEN TMUN$ = "minutes  ": G = T / 60: H = 60
 106: IF T > 3599 AND T < 86400 THEN TMUN$ = "hours  ": G = T / 3600: H = 3600
 107: G = G - 1
 108: FOR gg = G TO 0 STEP -1
 109: LOCATE A, 1: PRINT "Program will resume in"; G + 1; TMUN$
 110: Sleepa H: G = G - 1
 111: NEXT gg
 112: LOCATE A, 1: PRINT "                                       "
 113: END SUB
 114: 
 115: SUB Sleepa (T)
 116: A = TIMER + T
 117: 9 IF TIMER > A THEN GOTO 10 ELSE GOTO 9
 118: 10 END SUB
 119: 
 120: SUB sleepB (T)
 121: DO UNTIL A > T
 122: A = A + .0003
 123: LOOP
 124: END SUB
 125: 
5748331 [rkeene@sledge /home/rkeene/devel/archive/quickbasic]$

Click here to go back to the directory listing.
Click here to download this file.
last modified: 2000-05-09 20:59:45