` Speed Racer LBFN 5/27/07 sync on : sync rate 42 randomize timer() gosub INIT_GAME gosub LOAD_SCREENS hide mouse gosub INTRO_MENU current_track = 1 qualifying_time = 22 gosub DP_TRACK1 sprite 1,car(1),car(2),car(7) gosub MOVE_MAP gosub DP_MAIN_SCREEN sync gosub READY_SET_GO speed_delay = 30 accel_timer=timer() + (speed_delay*7) decel_timer=timer() + (speed_delay*2) turn_timer = timer() + (speed_delay*6) track_timer=timer() ` MAIN LOOP &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& do gosub USER_INPUT gosub MOVE_MAP `gosub DP_DEBUG gosub DP_TIME if finish_line = 1 if sprite exist(1)=1 then delete sprite 1 if time <= qualifying_time gosub WAVE_FLAG play_again = 0 : gosub CONGRATS if current_track<2 then inc current_track,1 if play_again=1 gosub PLAY_IT_AGAIN_SAM else finish_line=0 sprite 1,car(1),car(2),car(7) endif else ink rgb(255,255,255),0 x=(screen width()-350)/2 y=(screen height()-200)/2 box x,y,x+350,y+200 ink rgb(0,180,32),0 box x+10,y+10,x+340,y+190 ink rgb(220,23,23),0 set text size 48 text x+55,y+20,"Sorry!" set text size 14 text x+68,y+80,"You did not qualify." text x+23,y+110,"Press {RETURN} to try again." text x+57,y+150,"Press {SPACE} to quit." sync do play_again = returnkey() if len(inkey$())>0 or play_again=1 then exit sync loop if play_again=1 gosub PLAY_IT_AGAIN_SAM endif endif endif if damage=0 then gosub CRASHED if spacekey()=1 or finish_line=1 then exit sync loop set display mode scr_wid,scr_hgt,scr_dpt show mouse end ` MAIN LOOP &&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&& INIT_GAME: lives = 5 score=0 dim high_score_initials$(5) dim high_score$(5) : dim HSV(5) : dim temp(5) dim car(10) maxx=487 : maxy=487 dim map(500,500) finish_line = 0 grass = 0 time = 0 damage=150 ink rgb(255,255,255),0 set current bitmap 0 restore T5data for i=1 to 5 for g=1 to 8 read char high_score$(i)=high_score$(i)+chr$(char) HSV(i)=(val(right$(high_score$(i),3))-1) next g next i return LOAD_SCREENS: scr_wid = screen width() scr_hgt = screen height() scr_dpt = screen depth() set display mode 800,600,32 create bitmap 1,800,600 create bitmap 2,800,600 create bitmap 3,800,600 set current bitmap 0 gosub MAKE_IMGS return USER_INPUT: ` check to see if car ran into something a1=map(xptr+7,yptr+7) : a2=map(xptr+8,yptr+7) b1=map(xptr+7,yptr+8) : b2=map(xptr+8,yptr+8) gcount=0 if a1=200 then inc gcount,1 if a2=200 then inc gcount,1 if b1=200 then inc gcount,1 if b2=200 then inc gcount,1 if car(4)>0 and gcount>=2 and grass = 0 if car(4)>8 car(4)=8 grass = 1 else if car(4)<=2 car(4)=0 grass=1 else car(4)=car(4)/2 grass=1 endif endif endif if gcount=0 then grass=0 dontding=0 : if on_planter=1 then dontding=1 chk=0 if (a1>=206 and a1<=213) or (a1=215 or a1=216) then on_planter=1 : chk=1 if (a2>=206 and a2<=213) or (a2=215 or a2=216) then on_planter=1 : chk=1 if (b1>=206 and b1<=213) or (b1=215 or b1=216) then on_planter=1 : chk=1 if (b2>=206 and b2<=213) or (b2=215 or b2=216) then on_planter=1 : chk=1 if chk=0 then on_planter=0 if on_planter=1 if dontding=0 damage=damage-car(4) : if damage<0 then damage=0 gosub DP_DAMAGE endif if car(4)<=2 then car(4)=0 if car(4)>8 car(4)=8 else car(4)=car(4)/2 endif endif if a1<>214 and a2<>214 and b1<>214 and b2<>214 then hit_brick=0 if a1=214 or a2=214 or b1=214 or b2=214 if hit_brick=0 hit_brick=1 damage=damage-(2*car(4)) if damage<0 then damage=0 gosub DP_DAMAGE car(4)=0 else car(4)=0 endif endif ` check to see if player is at the finish line if a1=250 or a2=250 or b1=250 or b2=250 if current_track = 1 and xptr > 80 then finish_line = 1 if current_track = 2 and xptr < 20 then finish_line = 1 endif oldx = car(1) : oldy = car(2) if (rightkey() = 1 or joystick right()=1) and timer() > turn_timer if car(3) = 8 car(3) = 1 car(7)= car(3) + 100 sprite 1,car(1),car(2),car(7) turn_timer = timer() + (speed_delay*6) else car(3) = car(3) + 1 car(7) = car(3) + 100 sprite 1,car(1),car(2),car(7) turn_timer = timer() + (speed_delay*6) endif endif if (leftkey() = 1 or joystick left()=1) and timer() > turn_timer if car(3) = 1 car(3) = 8 car(7)= car(3) + 100 sprite 1,car(1),car(2),car(7) turn_timer = timer() + (speed_delay*6) else car(3) = car(3) - 1 car(7)= car(3) + 100 sprite 1,car(1),car(2),car(7) turn_timer = timer() + (speed_delay*6) endif endif if (upkey()=1 or joystick up()=1) and timer() > accel_timer if car(4)>0 and car(4)<16 then car(4)=car(4)*2 : accel_timer = timer()+(speed_delay*7) if car(4)=0 then car(4)=2 : accel_timer = timer() + (speed_delay*7) endif if (downkey()=1 or joystick down()=1) and timer() > decel_timer if car(4)>0 if car(4)<=2 car(4)=0 else car(4)=car(4)/2 decel_timer=timer()+(speed_delay*2) endif endif endif move_it = 0 if car(3)>=2 and car(3)<=4 and xptr<maxx and car(4)>0 inc xoffset,car(4) if xoffset>=32 xoffset=0 inc xptr endif move_it = 1 endif if car(3)>=6 and car(3)<=8 and (xptr>1 or (xptr=1 and xoffset>0)) and car(4)>0 if xoffset>0 dec xoffset,car(4) if xoffset<0 then xoffset=0 else dec xptr xoffset=28 endif move_it = 1 endif if (car(3)=8 or car(3)<=2) and (yptr>1 or (yptr=1 and yoffset>0)) and car(4)>0 if yoffset>0 dec yoffset,car(4) if yoffset<0 then yoffset=0 else dec yptr yoffset=28 endif move_it = 1 endif if car(3)>=4 and car(3)<=6 and yptr<maxy and car(4)>0 inc yoffset,car(4) if yoffset>=32 yoffset=0 inc yptr,1 endif move_it = 1 endif if move_it = 1 then gosub MOVE_MAP return MOVE_MAP: ftsx=xptr-1 ftsy=yptr-1 set current bitmap 3 cls mapx=ftsx : mapy=ftsy for y = 0 to 18 for x = 0 to 16 if map(mapx,mapy)>0 then paste image map(mapx,mapy),x*32,y*32 inc mapx next x mapx=ftsx inc mapy next y get image 12,0+xoffset,0+yoffset,(16*32)+xoffset,(17*32)+yoffset set current bitmap 0 paste image 12,16,16 return DP_TRACK1: rem tile 6 screens X 3 screens with grass for i = 0 to 53 for g = 0 to 111 map(g,i) = 200 next g next i restore TRACK1 for track=0 to 5 for y=18 to 35 for x=0 to 15 read map(x+(track*16),y) next x next y next track restore TRACK1_SUPP for track=0 to 4 read xadd,yadd for y=yadd to yadd+17 for x=xadd to xadd+15 read map(x,y) next x next y next track xptr = 1 yptr = 18 xoffset = 0 yoffset = 0 car(1) = 247 : ` x car(2) = 264 : ` y car(3) = 3 : ` direction (1-8, clockwise) car(4) = 0 : ` speed (0, 2, 4, 8, 16) car(5) = 2 : ` x add car(6) = 0 : ` y add car(7) = 103 : ` image # org_xptr=1 org_yptr=18 org_dir=car(3) org_pat=car(7) return TRACK2: cls 0 if sprite exist(1)=1 then delete sprite 1 rem tile 6 X 6 screens with grass for i = 0 to 107 for g = 0 to 95 map(g,i) = 200 next g next i restore TRACK2_DATA for track = 1 to 4 for y = 18 to 35 for x = 0 to 15 read map(x+(track*16),y) next x next y next track for track = 1 to 4 for y = 36 to 53 for x = 0 to 15 read map(x+(track*16),y) next x next y next track for track = 1 to 4 for y = 54 to 71 for x = 0 to 15 read map(x+(track*16),y) next x next y next track for track = 1 to 4 for y = 72 to 89 for x = 0 to 15 read map(x+(track*16),y) next x next y next track xptr = 48 yptr = 36 org_xptr=48 org_yptr=36 xoffset = 0 yoffset = 0 car(1) = 247 : ` x car(2) = 264 : ` y car(3) = 7 : ` direction (1-8, clockwise) car(4) = 0 : ` speed (0, 2, 4, 8, 16) car(5) = 0 : ` x add car(6) = 0 : ` y add car(7) = 107 : ` image # qualifying_time=(val(right$(high_score$(5),3))-1) org_dir=car(3) org_pat=car(7) sprite 1,car(1),car(2),car(7) return PLAY_IT_AGAIN_SAM: finish_line = 0 grass = 0 time = 0 damage=150 xptr=org_xptr yptr=org_yptr car(3)=org_direction car(7)=org_pat if current_track=1 gosub DP_TRACK1 else gosub TRACK2 endif gosub DP_MAIN_SCREEN gosub MOVE_MAP gosub DP_TIMER_BOX gosub DP_TIME sprite 1,car(1),car(2),car(7) sync gosub READY_SET_GO accel_timer=timer() + (speed_delay*7) decel_timer=timer() + (speed_delay*2) turn_timer = timer() + (speed_delay*6) track_timer=timer() return MAKE_IMGS: rem angle car rem main body set current bitmap 3 cls rgb(255,255,255) get image 998,0,0,screen width()-1,screen height()-1 cls 0 ink rgb(255,0,0),0 x=100 : y=100 for i=0 to 29 line x+8+i,y+59+i,x+67+i,y+i line x+8+i+1,y+59+i,x+67+i+1,y+i line x+8+i,y+59+i+1,x+67+i,y+i+1 next i rem rear tires ink rgb(5,5,5),0 for i=0 to 10 rem driver side line x+i,y+46+i,x+17+i,y+29+i line x+i+1,y+46+i,x+17+i+1,y+29+i line x+i,y+46+i+1,x+17+i,y+29+i+1 rem passenger side line x+40+i,y+86+i,x+57+i,y+69+i line x+40+i+1,y+86+i,x+57+i+1,y+69+i line x+40+i,y+86+i+1,x+57+i,y+69+i+1 next i rem front tires for i=0 to 6 rem driver side line x+42+i,y+12+i,x+54+i,y+i line x+42+i+1,y+12+i,x+54+i+1,y+i line x+42+i,y+12+i+1,x+54+i,y+i+1 rem passenger side line x+78+i,y+48+i,x+90+i,y+i+36 line x+78+i+1,y+48+i,x+90+i+1,y+i+36 line x+78+i,y+48+i+1,x+90+i,y+i+1+36 next i rem back window ink rgb(128,128,128),0 for i=0 to 19 line x+28+i,y+49+i,x+34+i,y+43+i line x+28+i+1,y+49+i,x+34+i+1,y+43+i line x+28+i,y+49+i+1,x+34+i,y+43+i+1 next i rem top of car ink rgb(176,0,0),0 for i=0 to 19 line x+35+i,y+43+i,x+49+i,y+29+i line x+35+i+1,y+43+i,x+49+i+1,y+29+i line x+35+i,y+43+i+1,x+49+i,y+29+i+1 next i rem windshield #1 ink rgb(162,162,162),0 for i=0 to 4 line x+50+i,y+29-i,x+69+i,y+48-i line x+50+i+1,y+29-i,x+69+i+1,y+48-i line x+50+i,y+29-i+1,x+69+i,y+48-i+1 next i rem windshield #2 & #3 for i=0 to 3 rem #2 ink rgb(177,177,177),0 line x+57+i,y+24,x+74,y+41-i line x+56+i,y+25,x+73,y+42-i rem #3 ink rgb(192,192,192),0 line x+61+i,y+24,x+74,y+37-i next i rem headlights ink rgb(255,255,32),0 rem driver side line x+70,y+3,x+70,y+5 line x+71,y+4,x+71,y+5 dot x+72,y+5 rem pass side line x+91,y+24,x+91,y+26 line x+92,y+25,x+92,y+26 dot x+93,y+26 rem brake lights ink rgb(128,0,0),0 rem driver's side line x+10,y+62,x+13,y+65 line x+10,y+63,x+12,y+65 line x+10,y+64,x+11,y+65 rem pass side line x+31,y+83,x+34,y+86 line x+31,y+84,x+33,y+86 line x+31,y+85,x+32,y+86 get image 102,x,y,x+97,y+97 cls 0 sync sprite 7,-200,-200,102 hide sprite 7 sprite 7,x,y,102 flip sprite 7 paste sprite 7,x,y get image 104,x,y,x+97,y+97 cls 0 sync `sprite 7,-200,-200,102 `hide sprite 7 sprite 7,x,y,102 mirror sprite 7 paste sprite 7,x,y sync get image 106,x,y,x+97,y+97 cls 0 sync flip sprite 7 paste sprite 7,x,y get image 108,x,y,x+97,y+97 sync delete sprite 7 `set current bitmap 3 rem horizontal car cls 0 rem main body ink rgb(255,0,0),0 box x+3,y+13,x+88,y+52 rem tires ink rgb(5,5,5),0 box x+5,y+1,x+26,y+12 box x+63,y+4,x+82,y+12 box x+5,y+53,x+26,y+64 box x+63,y+53,x+82,y+61 rem tail lights ink rgb(128,0,0),0 box x+1,y+17,x+2,y+20 box x+1,y+45,x+2,y+48 rem head lights ink rgb(255,255,32),0 box x+87,y+17,x+88,y+20 box x+87,y+45,x+88,y+48 rem back window ink rgb(128,128,128),0 box x+23,y+19,x+30,y+46 rem top of car ink rgb(176,0,0),0 box x+31,y+19,x+62,y+46 rem windshield #1 ink rgb(162,162,162),0 box x+55,y+19,x+62,y+46 rem windshield #2 ink rgb(177,177,177),0 box x+63,y+21,x+64,y+44 rem windshield #3 ink rgb(192,192,192),0 box x+65,y+23,x+66,y+42 get image 103,x,y,x+97,y+97 sync `There is an error within DB, as 2 syncs are required here sync sprite 7,-200,-200,102 hide sprite 7 sprite 7,x+200,y,103 cls sync mirror sprite 7 sync paste sprite 7,x,y sync get image 107,x,y,x+97,y+97 sync `cls 0 delete sprite 7 sync rem vertical car `set current bitmap 3 cls 0 rem main body ink rgb(255,0,0),0 box x+14,y+1,x+53,y+86 rem tires ink rgb(5,5,5),0 box x+2,y+63,x+13,y+84 box x+5,y+7,x+13,y+26 box x+54,y+63,x+65,y+84 box x+54,y+7,x+62,y+26 rem tail lights ink rgb(128,0,0),0 box x+18,y+87,x+21,y+88 box x+46,y+87,x+49,y+88 rem head lights ink rgb(255,255,32),0 box x+18,y+1,x+21,y+2 box x+46,y+1,x+49,y+2 rem back window ink rgb(128,128,128),0 box x+20,y+59,x+47,y+66 rem top of car ink rgb(176,0,0),0 box x+20,y+35,x+47,y+58 rem windshield #1 ink rgb(162,162,162),0 box x+20,y+27,x+47,y+34 rem windshield #2 ink rgb(177,177,177),0 box x+22,y+25,x+45,y+26 rem windshield #3 ink rgb(192,192,192),0 box x+24,y+23,x+43,y+25 get image 101,x,y,x+97,y+97 sync `There is an error within DB, as 2 syncs are required here ` don't ask me why sync sprite 7,-200,-200,102 hide sprite 7 sprite 7,x+200,y,101 cls 0 sync flip sprite 7 sync paste sprite 7,x,y sync get image 105,x,y,x+97,y+97 sync cls 0 delete sprite 7 sync set current bitmap 3 rem green square 200 cls 0 ink rgb(0,255,0),0 box 0,0,31,31 get image 200,0,0,32,32 cls 0 ink rgb(128,128,128),0 box 0,0,31,31 get image 201,0,0,32,32 ink rgb(0,255,0),0 for i=0 to 30 line 0,i,30-i,i next i get image 202,0,0,32,32 cls 0 paste image 200,0,0 ink rgb(128,128,128),0 for i=0 to 30 line 0,i,30-i,i next i get image 203,0,0,32,32 cls 0 paste image 201,0,0 ink rgb(0,255,0),0 for i=0 to 31 line 0,i,i+1,i next i get image 204,0,0,32,32 cls 0 paste image 200,0,0 ink rgb(128,128,128),0 for i=0 to 31 line 0,i,i+1,i next i get image 205,0,0,32,32 cls rgb(5,5,5) ink rgb(255,255,255),0 for i=0 to 24 step 8 for t=0 to 24 step 8 box t,i,t+3,i+3 next t next i for i=4 to 28 step 8 for t=4 to 28 step 8 box t,i,t+3,i+3 next t next i get image 250,0,0,32,32 cls 0 ink rgb(0,128,0),0 box 0,0,31,31 ink rgb(206,47,6),0 box 0,0,31,1 box 0,0,1,31 box 3,3,31,4 box 3,3,4,31 get image 206,0,0,32,32 sync cls 0 sync sprite 7,-200,-200,102 hide sprite 7 sprite 7,0,0,206 sync flip sprite 7 sync paste sprite 7,0,0 get image 207,0,0,32,32 sync cls 0 sync ink rgb(0,128,0),0 box 0,0,31,31 ink rgb(206,47,6),0 box 0,0,31,1 box 0,3,31,4 get image 208,0,0,32,32 sync cls 0 sync sprite 7,0,0,208 sync mirror sprite 7 sync paste sprite 7,0,0 get image 209,0,0,32,32 sync cls 0 sync sprite 7,0,0,206 sync flip sprite 7 sync paste sprite 7,0,0 get image 210,0,0,32,32 sync cls 0 sync flip sprite 7 sync paste sprite 7,0,0 get image 211,0,0,32,32 sync cls 0 delete sprite 7 sync paste image 206,0,0 ink rgb(206,47,6),0 box 0,30,31,31 box 3,27,31,28 ink rgb(0,128,0),0 line 3,29,4,29 get image 212,0,0,32,32 sync cls 0 sync sprite 7,-200,-200,102 hide sprite 7 sprite 7,0,0,212 sync mirror sprite 7 sync paste sprite 7,0,0 get image 213,0,0,32,32 sync cls 0 delete sprite 7 sync paste image 201,0,0 ink rgb(206,47,6),0 box 1,1,10,7 box 12,1,21,7 box 23,1,31,7 box 0,9,4,15 box 6,9,15,15 box 17,9,26,15 box 28,9,31,15 line 0,17,0,23 box 2,17,11,23 box 13,17,22,23 box 24,17,31,23 box 0,25,7,31 box 9,25,18,31 box 20,25,29,31 line 31,25,31,31 get image 214,0,0,32,32 sync cls 0 sync paste image 206,0,0 ink rgb(206,47,6),0 box 3,3,28,4 box 3,3,4,31 box 27,3,28,31 box 30,0,31,31 get image 215,0,0,32,32 cls 0 paste image 207,0,0 ink rgb(206,47,6),0 box 3,0,4,28 box 3,27,28,28 box 27,0,28,28 box 30,0,31,31 get image 216,0,0,32,32 cls 0 ink rgb(255,0,0),0 print "Ready" get image 217,0,0,90,14 cls 0 ink rgb(255,255,0),0 print " Set " get image 218,0,0,90,14 cls 0 ink rgb(0,225,0),0 print " Go! " get image 219,0,0,90,14 cls 0 paste image 250,3,0 ink rgb(255,255,0),0 box 0,0,2,95 get image 251,0,0,36,96 cls 0 paste image 250,64,3 box 0,0,95,2 get image 252,0,0,96,36 cls 0 sync set current bitmap 0 remstart print "Here are the images:" paste image 206,0,100 paste image 207,35,100 paste image 208,70,100 paste image 209,105,100 paste image 210,140,100 paste image 211,175,100 paste image 212,210,100 paste image 213,245,100 paste image 214,270,100 : paste image 214,292,100 paste image 214,270,132 : paste image 214,292,132 sync wait key remend cls 0 sync return DP_DEBUG: ink rgb(1,1,1),0 box 600,0,739,90 ink rgb(255,255,255),0 set cursor 600,0 print "dir =";car(3) set cursor 600,20 print "a1=";a1 set cursor 600,40 print "a2=";a2 set cursor 600,60 print "b1=";b1 set cursor 600,80 print "b2 = ";b2 return DP_TIME: time = (timer() - track_timer)/1000 paste image 999,615,493 set text size 36 a$=str$(time) if len(a$)=1 then a$="00"+str$(time) if len(a$)=2 then a$="0"+str$(time) ink rgb(255,255,0),0 if time>(qualifying_time-5) then ink rgb(255,0,0),0 text 616,494,a$ set text size 14 return DP_MAIN_SCREEN: ink rgb(255,255,255),0 box 529,0,799,447 ink rgb(0,100,200),0 box 534,5,799,194 ink rgb(255,86,0),0 set text font "good times" set text to italic set text to bold set text size 40 text 559,30,"Speed" text 559+40,70,"Racer" set text to normal set text font "Arial" set text size 20 text 624,120,"by" text 610,145,"LBFN" ink rgb(255,255,32),0 box 534,204,794,300 ink rgb(128,64,0),0 text 589,220,"DAMAGE" get image 997,589,240,742,262 gosub DP_DAMAGE gosub DP_TIMER_BOX return DP_DAMAGE: paste image 997,589,240 set text font "good times" set text size 14 if damage<=20 and damage>0 ink rgb(255,0,0),0 box 589,242,589+damage,260 endif if damage>20 ink rgb(255,0,0),0 box 589,242,608,260 ink rgb(128,64,0),0 box 609,242,609+(damage-20),260 endif return WAVE_FLAG: wave_count = 0 sprite 3,300,50,251 scale sprite 3,400 sync repeat wait 250 if sprite image(3)=251 sprite 3,150,250,252 else sprite 3,300,50,251 endif inc wave_count,1 sync until wave_count = 10 delete sprite 3 return READY_SET_GO: sprite 2,(screen width()/2)-90,(screen height()/2)-7,217 for i = 110 to 1000 step 20 scale sprite 2,i sync next i sprite 2,(screen width()/2)-90,(screen height()/2)-7,218 for i = 110 to 1000 step 20 scale sprite 2,i sync next i sprite 2,(screen width()/2)-90,(screen height()/2)-7,219 for i = 110 to 1000 step 20 scale sprite 2,i sync next i delete sprite 2 return DP_TOP_RACERS: ink rgb(0,128,128),0 x=((screen width()-350)/2) : y=((screen height()-300)/2) box x,y,x+349,y+299 ink rgb(128,64,0),0 box x,y+100,x+349,y+299 ink rgb(255,255,0),0 line x,y,x+349,y line x+349,y,x+349,y+299 line x,y,x,y+299 line x,y+299,x+349,y+299 line x,y+100,x+349,y+100 set text size 36 set text font "good times" text x+18,y+13," Top" text x+18,y+59,"Racers" sprite 101,x+249,y+6,101 set text size 26 set text font "Arial" if poz=1 then ink rgb(255,0,0),0 text x+56,120+y,"1. "+left$(high_score$(1),5) text x+200,120+y,right$(high_score$(1),3) if poz=1 then ink rgb(255,255,0),0 if poz=2 then ink rgb(255,0,0),0 text x+56,150+y,"2. "+left$(high_score$(2),5) text x+200,150+y,right$(high_score$(2),3) if poz=2 then ink rgb(255,255,0),0 if poz=3 then ink rgb(255,0,0),0 text x+56,180+y,"3. "+left$(high_score$(3),5) text x+200,180+y,right$(high_score$(3),3) if poz=3 then ink rgb(255,255,0),0 if poz=4 then ink rgb(255,0,0),0 text x+56,210+y,"4. "+left$(high_score$(4),5) text x+200,210+y,right$(high_score$(4),3) if poz=4 then ink rgb(255,255,0),0 if poz=5 then ink rgb(255,0,0),0 text x+56,240+y,"5. "+left$(high_score$(5),5) text x+200,240+y,right$(high_score$(5),3) ink rgb(255,255,0),0 set text size 14 text x+105,y+264,"Press {RETURN} to try again." text x+120,y+280,"Press {SPACE} to quit." repeat sync play_again=returnkey() until len(inkey$())>0 if sprite exist(101) then delete sprite 101 return CONGRATS: ink rgb(128,0,128),0 x=((screen width()-500)/2) : y=((screen height()-150)/2) bw=449 : bh=116 if current_track=2 then bh=150 box x,y,x+bw,y+bh ink rgb(255,255,255),0 set text font "Good times" set text size 24 text x+63,y+10,"Congratulations!" set text size 14 a=time hund=int(a/100) tens=int((a-(hund*100))/10) ones=int(a-(hund*100)-(tens*10)) a$=str$(time) if len(a$)=1 then a$="00"+str$(time) if len(a$)=2 then a$="0"+str$(time) if current_track=1 set text size 20 text x+130,y+40,"Good driving!" set text size 14 text x+20,y+70,"You have qualified for the main event!" text x+82,y+94,"Press any key to continue." sync repeat sync until len(inkey$())>0 gosub TRACK2 gosub DP_MAIN_SCREEN gosub DP_TIMER_BOX gosub MOVE_MAP sync sprite 1,car(1),car(2),car(7) gosub READY_SET_GO accel_timer=timer() + (speed_delay*7) decel_timer=timer() + (speed_delay*2) turn_timer = timer() + (speed_delay*6) track_timer=timer() endif if current_track=1 then return if current_track=2 ` calculate position poz=5 for i=5 to 1 step-1 if time<HSV(i) then poz=i temp(i)=0 next i if poz=5 hsv(poz)=time else for i=4 to poz step-1 HSV(i+1)=HSV(i) high_score$(i+1)=high_score$(i) next i hsv(poz)=time endif set text font "Arial" set text size 18 text x+20,y+30,"You have the prestigous honor of being" if poz>1 text x+20,y+50,"one of the top five racers in the WORLD!" else text x+20,y+50,"the CHAMPION RACE CAR DRIVER OF THE WORLD!" text x+20,y+70,"The roar of applause is deafening as you" text x+20,y+90,"accept your rightful place in the racing" text x+20,y+110,"hall of fame." endif set cursor x+20,y+130 : input "Enter your name (5 char max)";name$ if len(name$)=0 then name$="Dufus" if len(name$)<5 then name$=name$+" " if len(name$)>5 then name$=left$(name$,5) high_score$(poz)=name$+a$ cls gosub DP_MAIN_SCREEN gosub MOVE_MAP gosub DP_DAMAGE gosub DP_TIMER_BOX sync gosub DP_TOP_RACERS endif return CRASHED: if sprite exist(1)>0 then delete sprite 1 ink rgb(200,0,0),0 a=screen width() : b=screen height() box a/4,b/4,(a*3)/4,(b*3)/4 ink rgb(255,255,255),0 set text size 30 text (a/4)+10,(b/4)+10,"You've Crashed!" set text size 14 text (a/4)+10,(b/4)+50,"Your vehicle has had too many" text (a/4)+10,(b/4)+70,"accidents and is beyond repair." text (a/4)+10,(b/4)+90,"Better luck next time." text (a/4)+60,((b*3)/4)-40,"Press {return} to play again." text (a/4)+60,((b*3)/4)-20,"Press {space} to quit." sync do play_again = returnkey() if len(inkey$())>0 or play_again=1 then exit sync loop if play_again=1 finish_line = 0 grass = 0 time = 0 gosub DP_MAIN_SCREEN damage=150 gosub DP_DAMAGE gosub DP_TIMER_BOX xptr=org_xptr yptr=org_yptr car(3)=org_dir car(7)=org_pat gosub MOVE_MAP sprite 1,car(1),car(2),car(7) gosub READY_SET_GO accel_timer=timer() + (speed_delay*7) decel_timer=timer() + (speed_delay*2) turn_timer = timer() + (speed_delay*6) track_timer=timer() endif return DP_TIMER_BOX: ` make timer box ink rgb(255,255,255),0 box 529,448,799,559 ink rgb(0,128,128),0 box 541,460,787,547 get image 999,615,493,725,530 ink rgb(255,255,0),0 set text font "good times" set text size 26 set text to italic text 608,470,"Timer" set text to normal set text size 36 a$=str$(time) if len(a$)=1 then a$="00"+str$(time) if len(a$)=2 then a$="0"+str$(time) text 616,494,a$ set text size 14 set text to bold text 551,532,"Qualifying time: "+str$(qualifying_time) set text to normal return INTRO_MENU: set current bitmap 3 set text font "Times" set text to italic set text to bold set text size 96 cls rgb(128,128,128) ink rgb(255,86,0),0 text 0,0,"Speed" text 0,200,"Racer" get image 295,0,0,224,105 get image 296,0,200,224,283 cls set current bitmap 0 cls rgb(0,166,83) ink rgb(128,128,128),0 box 0,190,screen width()-1,115 box 0,350,screen width()-1,465 sprite 4,-100,200,103 sprite 5,scr_wid+100,360,107 for i=1 to (screen width()/2) step 6 cls rgb(0,166,83) ink rgb(128,128,128),0 box 0,190,(screen width()-1),305 box 0,350,(screen width()-1),465 sprite 4,sprite x(4)+8,sprite y(4),sprite image(4) paste image 295,sprite x(4)-224,sprite y(4)-10 sprite 5,sprite x(5)-8,sprite y(5),sprite image(5) paste image 296,sprite x(5)+100,sprite y(5)-10 sync next i ink rgb(0,64,128),0 box 200,7,500,108 ink rgb(255,255,255),0 set text to normal set text size 20 text 350,10,"MENU" set text size 18 text 210,35,"1. Read game rules and info." text 210,50,"2. Race!" text 210,90,"Enter your choice and press {RETURN}" sync okay=0 repeat set cursor 470,90 input a$ if asc(a$)=49 copy bitmap 0,3 hide sprite 4 : hide sprite 5 set current bitmap 0 ink rgb(0,150,0),0 cls rgb(151,151,0) restore GAME_TEXT for i=1 to 24 if i=2 then ink rgb(255,0,0),0 if i=8 then ink rgb(128,64,0),0 if i=13 then ink rgb(128,72,255),0 read a$ : print a$ next i print "Press any key to continue." sync wait key copy bitmap 3,0 show sprite 4 : show sprite 5 sync endif if asc(a$)=50 okay=1 endif sync until okay=1 cls 0 delete sprite 4 delete sprite 5 return T5data: data 80,111,109,98,121,48,52,54,83,104,97,119,110,48,53,48 data 77,105,108,111,32,48,53,51,76,97,116,99,104,48,53,54 data 76,66,32,32,32,48,54,51 GAME_TEXT: data "SPEED RACER was programmed using Dark Basic Classic by LBFN" data "You are a race car driver in pursuit of the title of being" data "the greatest race car driver in the WORLD. Before you can" data "enter in to the big race, you must first qualify on the" data "beginner's track. Once you have qualified, you pit your" data "driving skills against the clock and against the best of " data "the best." data "Use the up directional arrow to speed up and the down arrow" data "to put on the brakes. Use the left/right arrows to turn." data "The controls are a little tricky, as they are based upon" data "the direction you are heading. Your car turns fast, especially" data "at slower speeds." data "You will encounter obstacles to maneuver around. Safely drive" data "around them and you will be rewarded with a quicker time." data "There are many brick walls that you must be careful to avoid." data "Running into them damages your car. Too much damage and you're" data "kaput! Be sure to check your damage meter regularly." data "HINT: Do whatever it takes to get off the bricks! Even" data "if it means going the opposite way. The bricks (and some " data "obstacles) will REALLY slow you down, wasting precious seconds." data "Driving through the grass slows you down a little, too. The " data "faster you are driving when you run into an obstacle/brick the" data "more damage you will take." data "Good luck, and drive safe!" TRACK1: rem screen 1 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,250,250,201,201,201,201,201,201,201 data 214,214,200,200,200,200,200,250,250,201,201,201,201,201,201,201 data 214,214,200,200,200,200,200,250,250,201,201,201,201,201,201,201 data 214,214,200,200,200,200,200,250,250,201,201,201,201,201,201,201 data 214,214,200,200,200,200,200,250,250,201,201,201,201,201,201,201 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 rem screen 2 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 201,201,201,205,200,200,200,200,200,200,200,200,200,200,200,200 data 201,201,201,201,205,200,200,200,200,200,200,200,200,200,202,201 data 201,201,201,201,201,205,200,200,200,200,200,200,200,202,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,204,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,200,204,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,200,200,204,201,201,201,201,201,201,201,201,201,203,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,200,200 rem screen 3 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,202 data 200,200,200,200,202,201,201,201,201,201,201,201,201,201,201,201 data 200,200,200,202,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,203,200,200,200,200,200,200,200,200 data 201,201,201,201,201,201,203,200,200,200,200,200,200,200,200,200 data 201,201,201,201,201,203,200,200,200,214,214,214,214,214,214,214 data 201,201,201,201,203,200,200,200,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,214,214,200,200,200,200,200,200,200 data 200,200,200,200,200,214,214,214,200,200,200,200,200,200,200,200 data 214,214,214,214,214,214,214,200,200,200,200,200,200,200,200,200 data 214,214,214,214,214,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 rem screen 4 data 200,200,200,202,201,201,201,201,201,201,201,201,201,201,201,201 data 200,200,202,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,202,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 202,201,201,201,201,201,201,201,201,201,201,201,201,201,212,213 data 201,201,201,201,203,200,200,200,200,204,201,201,201,201,201,201 data 201,201,201,203,200,200,200,200,200,200,204,201,201,201,201,201 data 201,201,203,200,214,214,214,214,214,214,200,200,200,200,200,200 data 201,203,200,214,214,214,214,214,214,214,214,200,200,200,200,200 data 203,200,214,214,200,200,200,200,200,200,214,214,214,214,214,214 data 200,214,214,200,200,200,200,200,200,200,200,214,214,214,214,214 data 214,214,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 214,200,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,214,214,214 rem screen 5 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,205 data 201,201,201,201,201,201,212,213,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,200,200,200,200,200,200,200,200,200,204,201,201,201,201,201 data 214,214,214,214,214,214,214,214,214,214,214,201,201,201,201,201 data 214,214,214,214,214,214,214,214,214,214,214,201,201,201,201,201 data 200,200,202,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,202,201,201,201,201,201,201,201,201,201,201,201,201,201,203 data 202,201,201,201,201,201,201,201,201,201,201,201,201,201,203,200 data 201,201,201,201,201,201,201,201,201,201,201,201,201,203,200,214 data 201,201,201,201,201,201,201,214,214,214,214,214,214,214,214,214 data 201,201,201,201,201,201,201,214,214,214,214,214,214,214,214,200 data 204,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,204,201,201,201,201,201,201,201,201,201,201,201,201,201,201 rem screen 6 data 200,200,214,214,200,202,201,201,201,201,201,201,201,201,205,214 data 205,200,214,214,202,201,201,201,201,201,201,201,201,201,201,214 data 201,205,214,214,201,201,201,201,203,200,204,201,201,201,201,214 data 201,201,214,214,201,201,201,201,200,200,214,201,201,201,201,214 data 201,201,214,214,204,201,201,201,200,200,214,201,201,201,201,214 data 201,201,214,214,200,201,201,201,205,200,214,201,201,201,201,214 data 201,201,214,214,200,201,201,201,201,200,214,201,201,201,201,214 data 201,201,200,214,214,201,201,201,201,200,214,201,201,201,201,214 data 201,201,200,214,214,201,201,201,201,200,214,201,201,201,201,214 data 201,203,200,214,214,201,201,201,201,200,214,201,201,201,201,214 data 203,200,214,214,214,201,201,201,201,200,214,201,201,201,201,214 data 200,214,214,214,200,201,201,201,201,200,214,201,201,201,201,214 data 214,214,214,200,200,201,201,201,201,200,214,201,201,201,201,214 data 214,200,200,200,202,201,201,201,201,214,214,201,201,201,201,214 data 200,202,201,201,201,201,201,201,201,214,214,201,201,201,201,214 data 202,201,201,201,201,201,201,201,203,214,201,201,201,201,201,214 data 201,201,201,201,201,201,201,203,214,214,250,250,250,250,250,214 data 201,201,201,201,203,200,200,200,214,214,250,250,250,250,250,214 TRACK1_SUPP: rem format is the same as the other tracks, except that XADD and YADD rem are used to calculate where on the map the data is to be placed rem track above track 4 rem xadd, yadd data 48,0 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,214,214,214,214,200,200,200,200,200,200,200,200,200,200 data 200,214,214,214,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,202,201,201,201,201,201,201,201,201,201,201 data 214,214,200,200,202,201,201,201,201,201,201,201,201,201,201,201 rem second supplemental track rem track above track 5 data 64,0 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,214,214,214,214,214,214,214,214,200,200,200,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,200 data 200,200,200,200,200,200,200,200,200,200,200,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,214 data 201,205,200,200,202,201,201,201,201,201,205,200,200,200,200,200 data 201,201,205,202,201,201,201,201,201,201,201,201,201,201,205,200 rem third supplemental track rem track above track 6 data 80,0 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,214,214,214,214,214,200,200,200 data 200,200,200,200,200,200,200,214,214,214,214,214,214,214,200,200 data 214,200,200,200,200,200,214,214,200,200,200,200,200,214,214,200 data 214,214,200,200,200,214,214,200,200,200,200,200,200,200,214,214 data 200,214,214,214,214,214,200,202,201,201,201,201,205,200,200,214 data 200,200,214,214,214,200,202,201,201,201,201,201,201,205,200,214 rem fourth supplemental track rem track below track 5 data 64,36 data 214,214,200,204,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,200,200,204,201,201,201,201,201,201,201,201,201,201,201 data 200,214,214,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,214,214,214,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,214,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 rem fifth supplemental track rem track below track 6 data 80,36 data 201,201,201,203,200,200,200,200,214,214,214,214,214,214,214,214 data 201,201,203,200,200,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,214,214,214,214,200,200,200,200,200,200,200,200 data 200,200,200,214,214,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,214,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 TRACK2_DATA: ` screen 1 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,250,250,250,201,201,201,201,201,201,201,201,201,201,201 data 214,214,250,250,250,201,201,201,201,201,201,201,201,201,201,201 data 214,214,250,250,250,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,206,210,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,207,211,201,201,201,201,201,201,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,203,200,200 data 214,214,201,201,201,201,201,201,201,201,201,201,203,200,200,200 data 214,214,201,201,201,201,200,214,214,214,214,214,214,214,214,214 data 214,214,201,201,201,201,200,214,214,214,214,214,214,214,214,214 ` screen 2 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 206,210,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 207,211,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,206,210,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,207,211,201,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 201,201,201,201,201,201,201,201,201,201,201,205,200,200,200,200 data 201,201,201,201,201,201,201,201,201,201,201,201,205,200,200,200 data 201,201,201,201,201,201,201,201,201,201,201,201,201,205,200,200 data 200,200,200,200,200,200,200,204,201,201,201,201,201,201,200,200 data 200,200,200,200,200,200,200,200,204,201,201,201,201,201,200,214 data 214,214,214,214,214,214,214,214,214,204,201,201,201,201,200,214 data 214,214,214,214,214,214,214,214,214,214,204,201,201,201,200,214 ` screen 3 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,206 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,207 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,212,213,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,212,213,201,201,201,201,201,206,208,208,210 data 214,214,201,201,201,201,201,201,201,201,201,201,207,209,209,211 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 ` screen 4 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 210,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 211,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,206,208,208,210,201,201,201,201,201,201,214,214 data 201,201,201,201,207,209,209,211,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,206,208,208,210,201,201,201,201,201,214,214 data 201,201,201,201,201,207,209,209,211,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,214,214,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,214,214,201,201,201,201,201,201,201,201,201,201,214,214 ` screen 5 data 214,214,201,201,201,201,200,214,214,200,200,200,200,202,201,201 data 214,214,201,201,201,201,200,214,214,200,200,200,202,201,201,201 data 214,214,201,201,201,201,200,214,214,200,200,202,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,202,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,203,200 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,215,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,216,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,200,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,205,214 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,201,205 ` screen 6 data 201,201,201,205,200,200,200,200,200,200,200,201,201,201,200,214 data 201,201,201,201,205,200,200,200,200,200,200,201,201,201,200,214 data 201,201,201,201,201,205,200,200,200,200,200,201,201,201,200,214 data 201,201,201,201,201,201,200,200,200,200,200,201,201,201,200,214 data 201,201,201,201,201,201,200,200,200,200,202,201,201,201,200,214 data 200,204,201,201,201,201,200,200,200,202,201,201,201,201,200,214 data 214,200,201,201,201,201,200,200,202,201,201,201,201,201,200,214 data 214,200,201,201,201,201,205,202,201,201,201,201,201,203,214,214 data 214,200,201,201,201,201,201,201,201,201,201,201,203,200,214,214 data 214,200,204,201,201,201,201,201,201,201,201,203,200,214,214,202 data 214,200,200,204,201,201,201,201,201,201,203,200,214,214,202,201 data 214,200,200,200,204,201,201,201,201,203,200,200,214,214,201,201 data 214,200,200,200,200,204,201,201,203,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,201,201 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,201,201 ` screen 7 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 214,200,200,202,201,201,201,201,250,250,250,200,214,214,201,201 data 214,200,202,201,201,201,201,201,250,250,250,200,214,214,201,201 data 200,202,201,201,201,201,201,201,250,250,250,200,214,214,201,201 data 202,201,201,201,201,201,201,201,250,250,250,200,214,214,201,201 data 201,201,201,201,203,200,200,200,200,200,200,200,214,214,201,201 data 201,201,201,203,200,200,200,200,200,200,200,214,214,214,201,201 data 201,201,203,200,214,214,214,214,214,214,214,214,214,214,201,201 data 201,201,200,200,214,214,214,214,214,214,214,214,214,201,201,201 data 201,201,200,214,214,201,201,201,201,201,201,201,201,201,201,201 data 201,201,200,214,214,201,201,201,201,201,201,201,201,201,201,201 data 201,201,200,214,214,201,201,201,201,201,201,201,201,201,201,214 data 201,201,200,214,214,201,201,201,201,201,201,201,201,201,201,214 data 201,201,200,214,214,201,201,201,201,201,201,201,201,201,201,214 ` screen 8 data 201,201,214,214,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,214,214,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,214,214,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,214,214,214,214,214,214,214,214,201,201,201,201,214,214 data 201,201,214,214,214,214,214,214,214,214,201,201,201,201,214,214 data 201,201,214,214,200,200,200,200,214,214,201,201,201,201,214,214 data 201,201,214,214,200,200,200,200,214,214,201,201,201,201,214,214 data 201,201,214,214,200,200,200,200,214,214,201,201,201,201,214,214 data 201,201,214,214,200,200,200,200,214,214,201,201,201,201,214,214 data 201,201,214,214,214,214,214,214,214,214,201,201,201,201,214,214 data 201,201,214,214,214,214,214,214,214,214,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,200,200,200,200,200,200,200,200,200,200,200,200,200,214,214 ` screen 9 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,204,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,200,204,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,200,200,204,201,201,201 data 214,214,215,201,201,201,200,214,214,200,200,200,200,200,200,200 data 214,214,216,201,201,201,200,214,214,200,200,200,200,200,200,200 data 214,214,201,201,201,201,214,214,214,214,214,214,214,214,214,214 data 214,214,201,201,201,201,214,214,214,214,214,214,214,214,214,214 data 214,214,201,201,201,201,200,214,214,200,200,200,200,200,200,200 data 214,214,201,201,201,201,200,214,214,200,200,200,200,200,200,200 data 214,214,201,201,201,201,200,214,214,202,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,201,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,201,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,201,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,201,201,201,203,200,200,200 data 214,214,201,201,201,215,200,214,214,201,201,201,214,200,200,200 data 214,214,201,201,201,216,200,214,214,201,201,201,214,214,200,200 ` screen 10 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,203 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 200,200,200,200,200,200,200,200,200,200,200,200,214,214,201,201 data 201,201,201,201,201,201,205,200,200,200,200,214,214,201,201,201 data 201,201,201,201,201,201,201,200,200,200,200,214,214,201,201,201 data 201,201,201,201,201,201,201,200,200,200,200,214,214,201,201,201 data 201,201,201,201,201,201,201,200,200,200,200,214,214,201,201,201 data 200,200,204,201,201,201,201,200,200,200,200,214,214,201,201,201 data 200,200,200,201,201,201,201,200,200,200,200,214,214,201,201,201 data 200,200,200,201,201,201,201,200,200,200,200,214,214,201,201,201 ` screen 11 data 201,201,200,200,214,214,201,201,201,201,201,201,201,201,201,214 data 201,201,200,200,214,214,201,201,201,201,201,201,201,201,201,214 data 201,203,200,200,214,214,201,201,201,201,201,201,201,201,201,214 data 203,200,200,200,214,214,201,201,201,214,214,201,201,201,201,214 data 200,200,200,200,214,214,201,201,201,214,214,201,201,201,201,214 data 200,200,200,200,214,214,201,201,201,214,214,201,201,201,201,214 data 200,200,200,200,214,214,201,201,201,214,214,201,201,201,201,214 data 214,214,214,214,214,214,201,201,201,214,214,201,201,201,201,214 data 214,214,214,214,214,214,201,201,201,214,214,201,201,201,201,214 data 201,201,201,201,201,201,201,201,201,214,214,201,201,201,201,214 data 201,201,201,201,201,201,201,201,201,214,214,201,201,201,201,214 data 201,201,201,201,201,201,201,201,201,214,214,201,201,201,201,214 data 206,210,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 207,211,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 ` screen 12 data 214,200,200,200,200,200,200,200,200,200,200,200,200,200,214,214 data 214,200,202,201,201,201,201,201,201,201,201,201,201,201,214,214 data 214,200,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 214,200,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 214,200,201,201,201,201,201,203,200,200,204,201,201,201,214,214 data 214,200,201,201,201,201,201,200,214,214,200,201,201,201,214,214 data 214,200,201,201,201,201,201,200,214,214,200,201,201,201,214,214 data 214,200,201,201,201,201,201,200,214,214,200,201,201,201,214,214 data 214,200,201,201,201,201,201,200,214,214,200,201,201,201,214,214 data 214,200,204,201,201,201,203,200,214,214,200,201,201,201,214,214 data 214,214,214,201,201,201,214,214,214,214,200,201,201,201,214,214 data 214,214,214,201,201,201,214,214,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 data 201,201,201,201,201,201,201,201,214,214,200,201,201,201,214,214 ` screen 13 data 214,214,201,201,201,201,200,214,214,201,201,201,200,214,214,200 data 214,214,201,201,201,201,200,214,214,201,201,201,200,200,214,214 data 214,214,201,201,201,201,200,214,214,201,201,201,200,200,200,214 data 214,214,201,201,201,201,200,214,214,201,201,201,205,200,200,200 data 214,214,201,201,201,201,200,214,214,201,201,201,201,205,200,200 data 214,214,201,201,201,201,200,214,214,201,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,204,201,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,204,201,201,201,201,201 data 214,214,201,201,201,201,200,214,214,200,200,200,204,201,201,201 data 214,214,201,201,201,201,200,214,214,200,200,200,200,204,201,201 data 214,214,201,201,201,201,200,214,214,200,200,200,200,200,201,201 data 214,214,201,201,201,201,205,214,214,200,200,200,200,202,201,201 data 214,214,201,201,201,201,201,205,200,200,200,200,202,201,201,201 data 214,214,204,201,201,201,201,201,201,201,201,201,201,201,201,201 data 214,214,200,204,201,201,201,201,201,201,201,201,201,201,201,203 data 214,214,200,200,204,201,201,201,201,201,201,201,201,201,203,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 ` screen 14 data 200,200,200,201,201,201,201,200,200,200,200,214,214,214,214,214 data 200,200,200,201,201,201,201,200,200,200,200,214,214,214,214,214 data 214,200,200,201,201,201,201,200,200,200,200,200,200,200,200,200 data 214,214,200,201,201,201,201,205,200,200,200,200,200,200,200,200 data 200,214,214,204,201,201,201,201,205,200,200,200,200,200,200,200 data 205,200,214,214,204,201,201,201,201,205,200,200,200,200,200,200 data 201,205,200,214,214,204,201,201,201,201,205,200,200,200,200,200 data 201,201,200,200,214,214,204,201,201,201,201,201,201,201,201,201 data 201,201,200,200,200,214,214,204,201,201,201,201,201,201,201,201 data 201,201,200,200,200,200,214,214,204,201,201,201,201,201,201,201 data 201,201,200,200,200,200,200,214,214,204,201,201,201,201,201,201 data 201,201,200,200,200,200,200,200,214,214,200,200,200,200,200,200 data 201,203,200,200,200,200,200,200,200,214,214,200,200,200,200,200 data 203,200,200,200,200,200,200,200,200,200,214,214,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,214,214,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,214,214,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 ` screen 15 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,202,201,201,201,201,201,201,201 data 200,200,200,200,200,200,200,202,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,201,201 data 200,200,200,200,200,200,200,204,201,201,206,210,201,201,201,201 data 200,200,200,200,200,200,200,200,204,201,207,211,201,201,201,201 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,200,200 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 ` screen 16 data 214,214,214,214,214,214,214,214,214,214,200,201,201,201,214,214 data 214,214,214,214,214,214,214,214,214,214,200,201,201,201,214,214 data 200,200,200,200,200,200,200,200,200,200,200,201,201,201,214,214 data 200,200,200,200,200,200,200,200,200,200,202,201,201,201,214,214 data 200,200,200,200,200,200,200,200,200,202,201,201,201,201,214,214 data 201,201,201,201,201,201,206,210,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,207,211,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,201,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,201,203,214,214 data 201,201,201,201,201,201,201,201,201,201,201,201,203,200,214,214 data 201,201,201,201,201,201,201,201,201,201,201,203,200,200,214,214 data 201,201,201,201,201,201,201,201,201,201,203,200,200,200,214,214 data 201,201,201,201,201,201,201,201,201,203,200,200,200,200,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,214,214 data 200,200,200,200,200,200,200,200,200,200,200,200,200,200,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214 data 214,214,214,214,214,214,214,214,214,214,214,214,214,214,214,214