Jump to content

Contest - write an Atari 2600 game in 10 lines of BASIC

Recommended Posts



The classic home computer BASIC programming contest is accepting entries for the Atari 2600 again this year!


Eligible categories are 10 lines of 120 characters and 10 lines of 256 characters. 


Atari Flashback BASIC and SuperCharger BASIC both support an old-school mode where you can write classic BASIC programs, hope some retro gamers are inspired to write a BASIC 10 line game! :)


There's more info and an example of my entry last year into the 10x80 category (that category has stricter entrance guidelines this year that exclude the VCS) along with the Flashback BASIC manual and download link.


The contest deadline is in 3 weeks!


BASIC is cool because of the amazing things that can be done in just 10 lines of code; check out some of the some of the amazing 10 line BASIC games from last year:





Share this post

Link to post
Share on other sites

Wow...10 lines of BASIC code for a 2600 game?  Is that even possible?  It takes a LOT just to get that machine to do a little.


Yes, BASIC is so simple it makes it easy to write a fun Atari game in just 10 lines of code! :)


Flashback BASIC and SuperCharger BASIC have familiar classic BASIC graphics commands including semigraphics and sprite commands and also a soft blitter chip like the Niintendo PPU that you can use to scroll the screen around.


Take a look at my entry in the 10 lines x 120 characters category from 2016, 9lineBlitzII:


0 data city 1,4,2,5,3,2,3,1,4,1,1,1,5,2,2,3,1,4,1,4,3,1,4,4,1,1,2,2,3,1,3,4,5,4,4,3,4,5,1,2,4,1,5,2,2,3,1,3,1,1,4,1

1 if g=0 then for j=0 to 7:player1(j)=189:player0(j)=pl(j):next j:BYTErowoffset=120:COLUPF=$50:COLUP0=$b4 else goto 3

2 for j=20 to 71:k=j-20:k=city(k)+14:for i=k to 19:vwpixel(j,i,on):next i,j:player0y=96:player0x=84:COLUP1=$74:y=21:g=1

3 COLUBK=0:AUDV0=0:scrollvirtualworldtoggle=1:BITIndex=BITIndex+1:missile0x=missile0x+2:data pl 0,224,127,231,252,192

4 if joy0fire=1 and y>18 then AUDF0=6:AUDC0=8:AUDV0=15:x=BITIndex+9:y=11:i=96-player0y:i=i/10:y=y+i:data P 128,0

5 if y<19 then vwpixel(x,y,bindplayer1):j=y-10:y=y+1:COLUP1=M(j) else player1y=0:data M $64,$54,$b4,$a4,$32,$44,$c4,$94

6 if y<20 and vwpixel(x,y,poll)>0 then vwpixel(x,y,flip):player1x=0:player1y=0:AUDC0=y:y=21:AUDF0=4:AUDV0=15:data N $f4

7 if BITIndex>71 then BITIndex=0:player0y=player0y-2 else missile1x=missile1x+1:missile1y=missile1y+3:data O $54,66,$42

8 if CXP0FB>126 then CXCLR=0:g=0:for i=0 to 255:AUDF0=i:AUDV0=i:COLUBK=$34:next i else missile0y=missile0y+2





Share this post

Link to post
Share on other sites

Here's another 10 line game GATES, just wrote it on Sunday, it's in the 10x120 character category but has space for more features still (about 60% full):


0 if joy0up=1 then player0y=player0y+1:t=1-t else player0y=player0y-t:t=1-t: rem ** GATES, Atari 2600 10 lineBASIC Game!
1 if joy0left=1 then player0x=player0x-1 else player0x=player0x+2
2 if g=0 then BYTErowoffset=120:for j=0 to 3:player0(j)=pl(j):player0colors(j)=p2(j):next j:g=1 else goto 4
3 for x=20 to 70 step 10:for y = 0 to 19:vwpixel(x,y,on):next y,x:player0x=52:player0y=50:data pl 240,255,127,240
4 if e>7 then e=0:BITIndex=BITIndex+1:missile1x=missile1x+3:missile1y=missile1y+1 else e=e+1:return
5 if l<20 then l=l+1 else l=0:data p2 $36,$64,$76,$36:data R 3,8,2,0,3,8,8,5,3,0,3,5,8,8,5,5,8,5,3,0,2
6 scrollvirtualworldtoggle=1:AUDV0=0:COLUBK=0:x=BITIndex/10:rem get remainder!
7 if b=0 then x=x*10:x=x+10:vwpixel(x,R(l)+10,flip):vwpixel(x,R(l)+11,flip)
8 if  CXP0FB>127 then CXCLR=0:COLUBK=$34:AUDC0=4:AUDF0=l:AUDV0=31:g=0:BITIndex=0
9 if BITIndex>71 then BITIndex=0 else for j=0 to 9:rowcolors(j)=rowcolors(j)+2:next j


Here are the binaries for the SuperCharger and the Flashback Portable, also check out the incredible Defender II clone a few posts above in the 10x256 character category:



Share this post

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now