Skip to content

Implement 8bpp chunky raster ops #5

@kelihlodversson

Description

@kelihlodversson

The only major VDI feature missing still is rendering of raster blocks.
In bitplane modes this is handled by complicated and optimized 68k assembly.

vro_cpyfm and vrt_cpyfm:

For our purposes the 8bpp packed pixel implementation can be implemented in straightforward C.
We need to support the following situations:

  • blit 1bpp source to 8bpp packed pixel with fg color.
  • blit 8bpp to 8bpp

And we may need one or both of these (FVDI seems to not support these.)

  • 4bpp (packed pixel - two pixels in a byte) to 8bpp.
  • 2bpp (packed pixel - 4 pixels per byte) to 8bpp.

vr_trnfm:

For converting MFDBs from standard to device specific format (and vice versa), we need to support:

  • 8 planes to/from 8bpp packed pixel
  • 1bpp is the same in both packed and standard format, so it's a no-op/pure memcpy

In case we implement the 4 and 2bpp blits above, vr_trnfm needs to additionally support these:

  • 4 planes to/from 4bpp packed pixel
  • 2 planes to/from 2bpp packed pixel

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions