Megamarc, I am always wondering this... I'm sure the information may be out there in some form but it'd be good to just get a straight answer;
Retro game systems use tile based backgrounds - the bitmap data for each tile is just stored somewhere once.
My question is what happens when it's time to draw that on the screen (and I assume whatever the answer is, Tilengine will work this way too)
Is there an area of VRAM big enough for the screen (and a bit bigger) that filled with tiles using blitting, and then after that, the screen is scrolled very fast by shifting the bytes along in VRAM (which I understand is a very quick process) and then the next column of tiles are blitted to the new area of blank backround left behind
OR
is it even more memory conservative, and as the scanline draws down the screen, each relevant tile is accessed to draw the scan line (this would require a lot of jumping around in RAM)
Or is it a mix of these approaches depending on the hardware?
I know the Atari 2600 has the CPU doing the later (but no tiles per se), and it has to take a break and actually run game code, so you get these black short lines on the left of the screen where it was too busy working on the actual game processes to tell the rasteriser what colour pixels to draw!
And regarding the SNES and its multiple layers, would these be separate areas of VRAM for each layer?
Retro game systems use tile based backgrounds - the bitmap data for each tile is just stored somewhere once.
My question is what happens when it's time to draw that on the screen (and I assume whatever the answer is, Tilengine will work this way too)
Is there an area of VRAM big enough for the screen (and a bit bigger) that filled with tiles using blitting, and then after that, the screen is scrolled very fast by shifting the bytes along in VRAM (which I understand is a very quick process) and then the next column of tiles are blitted to the new area of blank backround left behind
OR
is it even more memory conservative, and as the scanline draws down the screen, each relevant tile is accessed to draw the scan line (this would require a lot of jumping around in RAM)
Or is it a mix of these approaches depending on the hardware?
I know the Atari 2600 has the CPU doing the later (but no tiles per se), and it has to take a break and actually run game code, so you get these black short lines on the left of the screen where it was too busy working on the actual game processes to tell the rasteriser what colour pixels to draw!
And regarding the SNES and its multiple layers, would these be separate areas of VRAM for each layer?