<<
would appear vertically on the screen, right? Kind of
like positioning a foosball soccer man with the metal
stick. :)
The way the designers of the Atari 2600 solved this dilemma in the Atari
400/800 was to devote a strip of memory to sprites for the entire screen and
to move the sprite up and down you move the memory up and down the strip of
RAM. So there is no conditional logic involved for the kernel, which in the
400/800 is automatically handled by ANTIC/GTIA.
I believe you can change the starting address pointer for Player Missile
graphics (PMBASE) but since all the sprite RAM is stored in a block, in
order to move sprites vertically independently of one another you still have
to move blocks of RAM up and down.
On the 2600 everything is done manually so you wouldn't have to move bytes
up and down so you could leave it in ROM and have separate start addresses
for each strip. You could pad a strip of ROM with zeroes. But in order to
move it up and down you'd have to have a maximum of 192+8 bytes above and
below the player. In my game I only have 88 scanlines (actually scanline
pairs) so I could store the whole thing in one page of ROM.
The problem with this approach is that it's extremely wasteful of ROM in
most cases. If the sprite needs to be taller than 8 pixels the ROM
requirements keep on growing if you want the sprite to be able to scroll off
screen. You can only store one frame of animation padded with zeroes. If
you had a 16K or 32K banked ROM you could probably get away with it.
This approach would work really well, however, with the Supercharger. You
could devote a page of RAM for all five graphics objects if necessary,
taking up 1.5K of space. Then you could copy the current frame of animation
from ROM during VBLANK.
But then if you wanted to reposition sprites or change their color values
and stuff, RAM usage would increase even more. You'd need a color table and
a horizontal positioning table. What you'd be doing is building what
amounts to an a display list in Supercharger RAM.
_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp
-
Archives (includes files) at http://www.biglist.com/lists/stella/archives/
Unsub & more at http://www.biglist.com/lists/stella/