Implement a more generic "rasters" mode for CPC

This is similar to mode 5, but with less constraints:
- All inks can have split rasters
- Split rasters have a min width of 32 pixels

Note that this is nowhere near enough to make sure the image will be
renderable (number of colors should be limited, unless there is a span
without rasters allowing to reload registers with new colors, and
moving from one pen to another also has a cost). The goal is to offer no
over-restriction (everything that can be shown on the real machine is
drawable). Additional constraints may be checked from a lua script that
will generate the code and data for displaying the picture.
This commit is contained in:
Adrien Destugues
2018-06-29 11:02:34 +02:00
parent 1d71a0759f
commit 9d46d1e90f
6 changed files with 138 additions and 59 deletions

View File

@@ -345,7 +345,8 @@ void Remap_image_highlevel(byte * conversion_table)
// Remap the flatenned image view
if (Main.backups->Pages->Image_mode != IMAGE_MODE_ANIMATION
&& Main.backups->Pages->Image_mode != IMAGE_MODE_MODE5)
&& Main.backups->Pages->Image_mode != IMAGE_MODE_MODE5
&& Main.backups->Pages->Image_mode != IMAGE_MODE_RASTER)
{
Remap_general_lowlevel(conversion_table,Main.visible_image.Image,Main.visible_image.Image,
Main.image_width,Main.image_height,Main.image_width);