A Commodore 64 game I made for the Reset 64 4KB
Craptastic Game Competition.
Which can be found on the compilations disk:
The game was a small experiment in trying to show enough moving bullet objects to reproduce the feeling of a bullet hell game. The C64 can usually only show 8 moving sprites per raster row, so instead of using sprites I had a go at drawing the bullets in bitmap mode.
By using something similar to what's usually called the unlimited BOBs effect, I'm able to create the illusion of up to 64 moving bullets.
The radial bullet patterns are created using trigonometric tables combined with some fast multiplications based on the fact that A*B = exp(ln(A)+ln(B)).
The tricky part was getting it all to fit into a
4 kilobyte file.
The game does this by generating all the tables using calls to BASIC 2.0 trigonometric functions at startup. If you're lucky enough to own something like a C128, Turbo Chameleon or Ultimate 64, the game will toggle $D030 at this point to speed this up. (It takes around 45 seconds on a stock C64)
I was quite proud of the music routine which
plays a 2 voice tune + sound effects in
378 bytes, while using only around 8 raster rows of CPU time
In the end I think had more fun making this than anyone will ever have playing it