CharPad 2.3 User Manual - Subchrist Software, 2019.
High-resolution character images.
High-resolution character images are 8x8 pixels in size and use a bit-depth of 1 bit-per-pixel.
They can therefore use two colours...
A background colour (0-15), defined in the VIC register at memory address $d021 (53281).
The background colour is the same for all displayed character images.
The colour of an image's set (1) pixels is determined by the image's location on-screen, more specifically the colour (0-15) that has been assigned to the image's screen position in the colour-RAM matrix.
The colour-RAM matrix (a 40x25 byte array, only the low nybbles are usable) is available from memory address $d800 (55296).
Notes:-
In standard character-mode (without using raster tricks), the Commodore 64 can display up to 256 different character images on-screen.
0 pixel = Background colour (defined in the low nybble of address $d021).
1 pixel = Foreground colour (defined in the low nybble of the relevant colour-RAM cell, 55296 + (y * 40) + x).