A downloadable game

3/20/2022 INTERNATIONAL BASIC 10 LINER CONTEST 

https://BASIC10Liner.com

Game Program

Jupiter SS Firestorm GAMMA

Atari 2600 Video Computer System, SuperCharger BASIC

----------------------------------------------------

Jump Fjords on Jupiter to catch Shooting Stars! 

Special Move: You Turn into a Firestorm like the Human Torch!

Controls: Left and Right

Zero G physics Tip: It's much easier to Catch the Stars on you're way up than coming down.

Play Jupiter SS Firestorm Gamma in Javatari online here:

https://javatari.org/?ROM=http://relationalframework.com/Jupiter_SS_Firestorm_GA...


About:

------

Program Design from RelationalFramework, download more examples of 10 line games and SuperCharger BASIC:

http://relationalframework.com/Atari2600gamesonline.htm


Features:

---------

This game includes parallex scrolling and color cycling in BASIC with five algorithmic interactive chiptunes that can be mixed with the gameplay.

Some interesting BASIC intrinsics used:

print %11111110(virtualworld,x)

This prints the binary string to the virtualworld, which is much larger than the screen.

A for next loop is used to cover the territory in the setup initialization section, lines 1 and 2.

Note: print can be overloaded like the BIN$ BASIC function:

print 254(virtualworld,x) 

This will print the same binary string, like the BIN$ function. 

(Thank you AMSDOS on AtariAge for sharing this interesting function and the example!)

Character animation frame compression technique:  

data F "H88<88,<088888,<0$<<88,<DD$8^8,<Cd<<<8,<6d<Z<8<<Cb<Z<0<<0($<<<8<0x8888,<DD$8^8,<088888,<0$<<88,<DD$8^8,<Cd<<<"

7-bit ASCII data is stored for the sprite animation allowing many more frames than otherwise possible.

The 7-bit subset requires approximations for all 8-bit patterns. 

Animation for the Firestorm:

This already was built into the program and is read back when the 7-bit pseudo graphics frames complete.

Layered Sprite animation technique:

Sprite layering animation takes 8 frames to change a sprite instead of changing the sprite in a single frame.


Program Listing:

----------------

0 data F "H88<88,<088888,<0$<<88,<DD$8^8,<Cd<<<8,<6d<Z<8<<Cb<Z<0<<0($<<<8<0x8888,<DD$8^8,<088888,<0$<<88,<DD$8^8,<Cd<<<"
1 if g>0 then goto 3 else g=1:e=1:player0y=30:player0x=30:NUSIZ0=16:NUSIZ1=16:COLUP1=99: rem Smart method 
2 for x=50 to 120:print %11111110(virtualworld,x):for y=4 to 9:rowcolors(y)=y*16:player0colors(y)=y*48:next x,y
3 if player0y=8 then e=1:t=t+16 else scrollvirtualworldtoggle=1:rem Play as the Torch, Flame on!Jump Fjords,catch Stars!
4 if f<8 then player0(f)=F(n):rowcolors(f)=rowcolors(f)+16:n=n+1:f=f+1:return else f=0:COLUBK=t:SUSTAINFORFRAMES=7
5 if e=1 and player0y<94 then AUDC0=11:AUDC1=player0y:AUDF1=n:player0y=player0y+4 else e=0:player0y=player0y-1:rem ID
6 if joy0right=1 and player0x<156 then player0x=player0x+1:REFP0=0:AUDF0=n:AUDC0=3:AUDF1=f*4:BITIndex=BITIndex+1
7 if joy0left=1 and player0x> 8 then player0x=player0x-2:REFP0=8:AUDF0=player0x/3:AUDC0=6:BITIndex=BITIndex-1:rem doh,
8 missile1x=missile1x+1:missile1y=missile1y+3:missile0x=missile0x+2:missile0y=missile0y+1::rem dohdoh That's all folks!
9 if CXM0P&64=64 or CXM1P&128=128 then CXCLR=0:COLUBK=64:AUDC1=7:AUDF1=20:AUDF0=30:missile1y=0:missile0x=0:rem end of 9

Download

Download
Jupiter_SS_Firestorm_GAMMA.bin 8.2 kB
Download
Jupiter_SS_Firestorm_GAMMA_Instructions_and_program_design_20220320.txt 3.2 kB
Download
BASIC10Liner2022Jupiter_Pseudo_Hi_Res_GAMMA.txt 1.1 kB

Leave a comment

Log in with itch.io to leave a comment.