> I've looked into PNG more, and it is actually realistic to 
> use exactly that algorithm on a Sam (albeit that there's no 
> need to be identical in byte streams) - it's just a linear 
> predictor and LZ77 + Huffman on the end. With that in mind, 
> I've downloaded some of the classic Dizzy maps from those 
> places that tile screenshots to produce game maps (in their 
> Amiga versions) and they're all sub 400kb. Most would even 
> fit into 256kb.

Andrew did a DEFLATE implementation worth looking at for PNG:

http://sourceforge.net/projects/samflate/

It could be worth-wile to look at some variant of modified Huffman RLE.  
Speed-wise it should be faster, but with an pre-optimised tree could also quite 
possibly be smaller given the low bit depth.

:

> How about two pages for the current screen, each filled with 
> the same data by the screen decompressor, which is (in order):
> 
> 24576 bytes; normal screen image
> 6144 bytes; mask image - bit set = that pixel is in front of 
> the character sprites, bit clear = that pixel is behind, same 
> bit layout as a Mode 2 screen
> 768 bytes; collision tile map. 32x24 entries, each a byte in 
> length, linear left-to-right, top-to-bottom as per Mode 1 
> attributes. Just use 0 = empty, 1 = solid for now?

Never liked the Dizzy games myself, hence I haven't played them much, but 
shouldn't the collision detecion be more finely grained than that?
 
 -Frode

Reply via email to