Changes

V9990

153 bytes added, 16:21, 23 February 2019
/* CMMC */
==== CMMC ====
* Data written by CPU is byte by byte and it is 1 bit per pixel. Each byte therefore represents 8 pixels. If the value of a bit is 0 then background colour register is used for pixel, if bit is 1 then foreground colour register is used for pixel. Data is used bit 7 first, 6 is next, all the way down to bit 0.
* Font is defined left to right, top to bottom, line by line. It doesn't follow the same form as Kanji ROM.
* If NX is not a multiple of 8, then unused bits are used on the next line. i.e. the command uses all 8 bits until they are exhausted at which point another byte is fetched and so on.
* Pixels appear to be are written according to physical vram. e.g. in 8bpp mode, x=0, bit has value 1, then foreground low byte is written, x = 1 and bit has value is 1, then foreground high byte is written and so on. Therefore to fill  * To draw a font in the same colour ensure the same colour is repeated through for all pixels in FC(i.e. for 8 bit mode set FC upper and lower byte to the same, and set BC upper and lower byte to the same.)
* For LOP, SC comes from background colour or foreground colour depending on the value of the bit.
2,541
edits