 
 rem --- Two Player Tron, split screen using display lists - based on One Player Tron 
 rem --- 20170420 remix for Lynn and Brianna to play!
 rem ---init section, runs once: -------------
 m=0:n=120:BITIndex=0:BYTErowoffset=0
 v=10:w=12:rem setup player2 x,y:r=1:p=0:q=0:s=0

 rem vars: f- framecounter, g, game in play indicator, 
 rem vars: t - toggle
 rem vars: e/i/h/j p1 dir, x,y p1 xy
 rem vars: p/q/r/s p2 dir, v,w p2 xy, m,n, BITindex/BYTErowoffset p2 mirror
   
 rem ---gameloop subroutine, runs every frame:    ---
 t=1-t:rem toggle var -----
 rem swap
 if t=0 then c=BITIndex:BITIndex=m:m=c:c=BYTErowoffset:BYTErowoffset=n:n=c:scrollvirtualworldtoggle=35:gosub DLI:scrollvirtualworldtoggle=0:return: rem run this DLI every other frame
 
 
 scrollvirtualworldtoggle=3:gosub DLI:scrollvirtualworldtoggle=0
 

0 if g=0 then for x=18 to 239:virtualworld(x)=0:next x else f=f+1:goto 2:rem ini
1 for x=0 to 9
 if x<4 or x=9 then rowcolors(x)=55 else rowcolors(x)=100
 next x:x=10:y=3:g=1:h=1:i=0:j=0:e=0: rem player 1 x,y and initial dir right
 v=60:w=13:rem setup player2 x,y
 r=0:p=1:q=0:s=0
 m=50:n=72:BITIndex=0:BYTErowoffset=12
  
2 if f<4 then return: rem scrollvirtualworldtoggle=0:return else scrollvirtualworldtoggle=1
3 if joy0left=1 then e=1:h=0:i=0:j=0:AUDC0=8:AUDF0=BITIndex:SUSTAINFORFRAMES=15
4 if joy0right=1 then h=1:e=0:i=0:j=0:AUDC0=6:AUDF0=BITIndex:SUSTAINFORFRAMES=15
5 if joy0down=1 then i=12:e=0:h=0:j=0:AUDF0=y*3:AUDC0=15:SUSTAINFORFRAMES=15
6 if joy0up=1 then j=12:i=0:e=0:h=0:AUDC0=3:AUDF0=y*2:SUSTAINFORFRAMES=15
7 x=x-e:x=x+h:l=i/12:y=y+l:l=j/12:y=y-l:BYTErowoffset=BYTErowoffset+i:rem TRON!!
8 BITIndex=BITIndex-e:BITIndex=BITIndex+h:BYTErowoffset=BYTErowoffset-j: rem f=0
 rem reset?
9 if SWCHB|%11111110<>255 then g=0:COLUBK=0:BYTErowoffset=0:BITIndex=0
10 if vwpixel(x,y,on)>0 then COLUBK=90:SUSTAINFORFRAMES=100:rem Atari VCS

 rem -----------------------------------------------------------------
 rem -----------------------------------------------------------------
 rem ---gameloop2 subroutine, runs every frame:    --
 rem -----------------------------------------------------------------
 if g=0 then return
 if t=1 then scrollvirtualworldtoggle=30:gosub DLI:scrollvirtualworldtoggle=0:return
 
 rem if t=0 then
 scrollvirtualworldtoggle=8:gosub DLI:scrollvirtualworldtoggle=0
 
 rem vars: e/i/h/j p1 dir, x,y p1 xy
 rem vars: p/q/r/s p2 dir, v,w p2 xy, m,n, BITindex/BYTErowoffset p2 mirror

32 if f<4 then c=BITIndex:BITIndex=m:m=c:c=BYTErowoffset:BYTErowoffset=n:n=c:return: rem scrollvirtualworldtoggle=0:return else scrollvirtualworldtoggle=1
33 if joy1left=1 then p=1:q=0:r=0:s=0:AUDC1=8:AUDF1=BITIndex:SUSTAINFORFRAMES=15
34 if joy1right=1 then r=1:p=0:q=0:s=0:AUDC1=6:AUDF1=BITIndex:SUSTAINFORFRAMES=15
35 if joy1down=1 then q=12:p=0:r=0:s=0:AUDF1=w*3:AUDC1=15:SUSTAINFORFRAMES=15
36 if joy1up=1 then s=12:p=0:q=0:r=0:AUDC1=3:AUDF1=w*2:SUSTAINFORFRAMES=15
37 v=v-p:v=v+r:l=q/12:w=w+l:l=s/12:w=w-l:BYTErowoffset=BYTErowoffset+q:rem TRON!!
38 BITIndex=BITIndex-p:BITIndex=BITIndex+r:BYTErowoffset=BYTErowoffset-s:f=0
 rem reset?
39 rem if SWCHB|%11111110<>255 then g=0:COLUBK=0:BYTErowoffset=0:BITIndex=0
 rem vwpixel(v,w,on)
30 if vwpixel(v,w,on)>0 then COLUBK=64:SUSTAINFORFRAMES=100: rem goto 36:rem Atari VCS
 rem ---swap back to player1 cam:
 c=BITIndex:BITIndex=m:m=c:c=BYTErowoffset:BYTErowoffset=n:n=c:rem swap them cam back



 
 rem return: rem run this DLI every other frame

 
 rem -----------------------------------------------------------------
 rem ---KITCHENSINK subroutine, runs when scrollvirtualworldtoggle=1
 rem -----------------------------------------------------------------
 rem -----------------------------------------------------------------

 data textdata    "Atari2600 BASIC"
 data textdata9   "programming is "
 data textdata8   "fun player!    "
 data textdata7   "focus your mind"

 data textdata6   "write some code"
 data textdataB   "build a game   "
 data textdataC   "download the   "
 data textdatad   "BASIC from site"
 
 data textdataaa  "relationalframe"
 data textdataa9  "work dot com   "
 data textdataa8  "Concentrate and"
 data textdataa7  "make fun games!"

 data textdataa6  "Have you played"
 data textdataaB  "Atari today!msg"
 data textdataaC  "easter-egg fun!"
 data textdataad  "I love writing "
 data textdataae  "BASIC games!U2?"

 data atextdata    "Atari2600 BASIC"
 data atextdata9   "programming is "
 data atextdata8   "fun player!    "
 data atextdata7   "focus your mind"

 data atextdata6   "write some code"
 data atextdataB   "build a game   "
 data atextdataC   "download the   "
 data atextdatad   "BASIC from site"
 
 data atextdataaa  "relationalframe"
 data atextdataa9  "work dot com   "
 data atextdataa8  "Concentrate and"
 data atextdataa7  "make fun games!"

 data batextdata    "Atari2600 BASIC"
 data batextdata9   "programming is "
 data batextdata8   "fun player!    "
 data batextdata7   "focus your mind"

 data batextdata6   "write some code"
 data batextdataB   "build a game   "
 data batextdataC   "download the   "
 data batextdatad   "BASIC from site"
 
 data batextdataaa  "relationalframe"
 data batextdataa9  "work dot com   "
 data batextdataa8  "Concentrate and"
 data batextdataa7  "make fun games!"


 data ctextdata    "Atari2600 BASIC"
 data ctextdata9   "programming is "
 data ctextdata8   "fun player!    "
 data ctextdata7   "focus your mind"

 data ctextdata6   "write some code"
 data ctextdataB   "build a game   "
 data ctextdataC   "download the   "
 data ctextdatad   "BASIC from site"
 
 data ctextdataaa  "relationalframe"
 data ctextdataa9  "work dot com   "
 data ctextdataa8  "Concentrate and"
 data ctextdataa7  "make fun games!"



virtualworld
xx..xxxx..x..xxx.x...xxx...x..x.x.x.xxx.x.x.x.x..xx..xx..xx.x.x.x.x.x..xxxx.x.xxx..xx.xx.xx.
xxx..x.xx..xx.x.xx.x.xx.x.xx.x.x.x.x.x.x.x.x.xxx.x.x.x.x.x.x.x..x.xxx.x..x.xxxx.xx..xxxx....
.......................................................................xxxx.................
......................................................................x..x..................
.......................................................................xxxx.................
......................................................................x..x..................
.......................................................................xxxx.................
......................................................................x..x..................
.......................................................................xxxx.................
......................................................................x..x..................
............................................................................................
............................................................................................
............................................................................................
............................................................................................
............................................................................................
............................................................................................
............................................................................................
............................................................................................
.......................................................................xxxx.................
......................................................................x..x..................

sprites
........
........
.XXXXXX.
.X....X.
xXXXXXX.
XX....X.
XX....X.
XX....X.

........
........
..xxx...
.x.x.x..
xxxxxxx.
x.xxx.x.
.x...x..
..xxx...


chiptunes
8, 24, 8, 20, 8
10,24, 10, 20, 8
6, 5, 4, 12, 5
12, 9, 12, 7, 4
8, 24, 8, 20, 8
10,24, 10, 20, 15
8, 24, 8, 20, 8
10,24, 10, 20, 8

8, 24, 8, 20, 4
10,24, 10, 20, 4
8, 24, 8, 20, 4
10,24, 10, 20, 4
8, 24, 8, 20, 4
10,24, 10, 20, 4
8, 24, 8, 20, 2
10,24, 10, 20, 2
8, 24, 8, 20, 15
10,24, 10, 20, 2
8, 24, 8, 20, 2
10,24, 10, 20, 2
8, 24, 8, 20, 2
1,0, 0, 0, 10
0,0, 0, 0, 7
0,0, 0, 0, 7
0,0, 0, 0, 7
0,0, 0, 0, 7
0,0,0,0,0

                                        