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

System Specification for C65Fred BowenMarch 1, 1991

Limitations of the C4567R6 and How to Avoid Them

Watch carefully, when particular mode changes take effect. You may change PAL, H1280, V400, BPM, ATTR, and H640 modes anytime. However, the new mode selection will not take effect until after the last line of the current character row. This is intended to simplify split-screen programming. But, if you are using the DAT to access bitmaps or bitplanes, you must wait long enough after selecting a new H640 or V400 mode to guarantee that the C4567R6 is in the mode you intended before doing.any DAT accesses. The DAT uses these bits to determine how to draw the image.

If you want to use all four 640x4OO bitplanes, you will be limited to a maximum of 5 sprites having unique data. You can have more sprites, if they are permitted to share data. This limitation is due to the fact that'sprite pointers and data must be fetched from the 16K video matrix which must also be shared with one of the bitplanes. The bitplane will use 16000 of the 16384 bytes. This leaves 384 bytes, which would support 6 sprite data blocks of 64 bytes, each. But the sprite pointers must come out of the highest addressed block, thus leaving only 5 sprite data blocks available.

if you really need 8 unique sprites, you can use four 640x384 pixel bitplanes. This is done by setting the row select bit to 24 row mode. This will give you a total of 16 blocks of 64. This is more than enough, so you can even have alternate sprite data blocks.

Note that Sprites and Sprite coordinates are unaffected by screen resolution, meaning that in 640x4OO screens, for example, the sprites are still the same size on the screen and are still positioned as if the display map were 320x2OO. In an 80-column text, or 640-wide bitplane, screen a "dot" on a sprite will cover 2 pixels.

Note also that, in bitplane.mode, sprites will only collide with "background" data which has bits "on" in bitplane 2. All other bitplanes will NOT cause a sprite-to-background-data collision.

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