10 hiscore=0:set_char_set
20 f_level
30 MODE 8
40 draw_main_screen
50 draw_power
60 initialse
90 REPeat game
100 event_1:screen
110 IF NOT qualify THEN end_routine:GO TO 20
120 event_2:screen
130 IF NOT qualify THEN end_routine:GO TO 20
140 event_3:screen
150 IF NOT qualify THEN end_routine:GO TO 20
160 event_4:screen
170 IF NOT qualify THEN end_routine:GO TO 20
180 event_5:screen
190 IF NOT qualify THEN end_routine:GO TO 20
200 next_level
210 IF NOT qualify THEN end_routine:GO TO 20
215 level=level+.5
220 END REPeat game
700 DEFine PROCedure hi_scores(value,type)
705 LOCal i
707 hi(event,0)=value
708 hi$(event,0)=a$
710 IF value>hi(event,1) XOR type THEN wr=wr+1
720 FOR i=0 TO 2
730 IF hi(event,i)<hi(event,i+1) XOR type THEN EXIT i
740 swap=hi(event,i):swap$=hi$(event,i)
750 hi(event,i)=hi(event,i+1):hi$(event,i)=hi$(event,i+1)
760 hi(event,i+1)=swap:hi$(event,i+1)=swap$
780 END FOR i
790 END DEFine 
800 DEFine PROCedure reset
810 STRIP #3,7,0
820 AT #3,1,8:PRINT #3,"                 "
830 INK #3,2:STRIP #3,7
840 AT #3,1,36:PRINT #3,"00 "
850 END DEFine 
900 DEFine PROCedure time(type)
920 IF type=0 THEN ft=DATE:RETurn 
930 ut=DATE-ft:ut$=DATE$(ut)
942 CSIZE 2,0
946 AT 8,35:PRINT ut$(19 TO);".00"
948 CSIZE 2,1
950 END DEFine 
1000 DEFine PROCedure event_1
1005 event=1:CLS #7:draw_shot:reset
1006 qual=0
1007 INK #3,7:FOR i=2 TO 4:AT #4,i,14:PRINT  #4,"00.00"
1009 FOR pos=2 TO 4
1010 PAPER 0:INK 5
1011 foul=0
1015 CSIZE 2,1
1020 x=8:y=3:power=8
1025