afaik, each bit of the color code is on a separate bitplane. so pixel (x,y) has its data at 0xa000 + (x+y*640)/8, on the 7-(x%8) th bit.beyond infinity wrote: I 'm still figuring out how this mode 12 drawing stuff has to be done and this goes slooooooow - I'm low on coffee *yawn*
imho, the best approach for a transparent behaviour would be to provide a virtual buffer in which you'll use 1 byte per pixel, and then periodically probing the "dirty" bit on those pages and refreshing the appropriated video pages by producing the right video values at once.
it's a bit ugly, but at least it gives the programs the feeling that they're dealing with a regular pixmap, not with a weird multi-plane stuff where protected ports must be used to switch bitplanes.