View Single Post
Old 13 November 2019, 16:25   #4
agermose
Registered User
 
Join Date: Nov 2019
Location: Odense / Denmark
Posts: 220
Small update:

1942 arcade has a 256x512 pixels tile screen buffer of which 224x256 is shown. Tiles are 16x16 pixels. There are 512 background tiles.
On top of this is the 256x256 character layer of which 224x256 is shown, and the HW sprites. Sprites are also ordered in 16x16 pixels, 512 in all. Bigger enemies are composed of multiple blocks.

I will run a 224x256 Amiga screen using 16x16 tiles for the background. This will make it easy to reuse the arcade gfx.
The sprites will be done using SW sprites (Bobs).
The arcade sprites need to be recomposed for Amiga, which can use sprites in other sizes than 16x16.
Still thinking about how to do the character layer.
Hw sprites may be used for parts of the character layer, e.g. score, lives, loops.

I will need 32 colours to get the right look of the arcade, so 5 bitplanes.
2 colours will have to be reserved for propeller animation.

Game should run in 50 fps, on OCS.

Progress:
I have set up a dual buffer system for a 320x256x5 interleaved screen. This way I only need to do one blit per tile/sprite.
The background is scrolled using a "barrel" scroll, so each buffer is actually 320x272x5.
The extra (hidden) tile row is blitted into from the restore buffer every 16 frames.
The restore buffer is constructing a new tile row from the map every 16 frames.
This buffer is used to restore background data (the hidden buffer) every frame.

Sprites are blitted on top of the background (the hidden buffer) every frame.
When sprites go across the "barrel split" they are blitted (and restored) in 2 parts. This part took some time to get right :-)

Next up is getting the palette sorted out.

Last edited by agermose; 13 November 2019 at 17:23.
agermose is offline  
 
Page generated in 0.04541 seconds with 11 queries