[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]

System Specification for C65Fred BowenMarch 1, 1991

    palette             palette
    addresses           outputs
    ---------   ------------------------
    
    BBBBBBBB
    PPPPPPPP    RRRR    GGGG    BBBB
    76543210    3210    3210    3210    FGBG
    
    00000000    0000    0000    0000    0
    00000001    1111    1111    1111    0
    00000010    0000    0000    0000    0
    00000011    1111    1111    1111    0
    00000100    0000    0000    0000    1
    00000101    1111    1111    1111    1
    00000110    0000    0000    0000    1
    00000111    1111    1111    1111    1
    00001000    0000    0000    0000    0
    00001001    1111    1111    1111    0
    00001010    0000    0000    0000    0
    00001011    1111    1111    1111    0
    00001100    0000    0000    0000    1
    00001101    1111    1111    1111    1
    00001110    0000    0000    0000    1
    00001111    1111    1111    1111    1

Since BP7 is low, the early pixel matters. Only care about BPO data, since it supplies the early data. Notice how the RGB output is all 119 only when BP0 is a 1, regardless of what the other BP's are doing. This is how you program the palette to ignore certain bitplanes.

Did you see how FGBG is a 1 only when BP3 is a 1 regardless of other BPs?

    10000000    0000    0000    0000    0
    10000001    0000    0000    0000    0
    10000010    1111    1111    1111    0
    10000011    1111    1111    1111    0
    10000100    0000    0000    0000    1
    10000101    0000    0000    0000    1
    10000110    1111    1111    1111    1
    10000111    1111    1111    1111    1
    10001000    0000    0000    0000    0
    10001001    0000    0000    0000    0
    10001010    1111    1111    1111    0
    10001011    1111    1111    1111    0
    10001100    0000    0000    0000    1
    10001101    0000    0000    0000    1
    10001110    1111    1111    1111    1
    10001111    1111    1111    1111    1
Now BP7 is high. The late pixels are being output. Now, the RGB output is all l's only when BP1 (the late BP) is a 1, regardless of what the other BPs are doing. This is how to time multiplex between planes.

Notice, now, that FGBG is still a 1 only if BP3 is a 1, regardless of the other Bps, like before. This makes FGBG immune to the mutiplexing. It also shows how you can mix modes on the same screen!

Note that BP4, BP5, and BP6 will be zero unless I specifically ask them to be set to 1 in the Bitplane Complement register. So if they are zero, I do not need to program the rest of the palette. But I can program the other parts of the palette, and use the bitplane complements for BP4, BP5, and BP6 to switch between sub-palettes!


[Prev] [Next] [Contents] [Commodore] [New] [Search] [Home]
This page has been created by Sami Rautiainen.
Read the small print. Last updated April 11, 2006.