Re: [cc65] C64 graphic formats and so on

Date view Thread view Subject view

From: Stephan Lesch (slesch_at_studcs.uni-sb.de)
Date: 2002-05-28 16:21:51


> > I know this may sound stupid, but anyway. Could anyone tell me how
> > graphics images are loaded on a c64?

I assume you mean bitmap images? Then there are two variants:
a hires bitmap image consists of an 8000 byte bitmap, along with a 1000 byte
color memory. A multicolor bitmap image has an additional 1000 nybbles of 
color information.

The 64 has got 64 k of Ram, all of which can be reached by the video chip.
However, it only has a 14 bit address bus, and the missing two address bits
(the two most significant ones) are generated by programmable i/o ports.
This means that all graphics data the video chip should read at a time must
be located in a 16 k block, so the bitmap can be in the upper or lower half
of the current 16 k area, and the 1000 byte color memory should be put into
one of the eight kilobyte-sized areas in the other half.
In case of multicolor bitmaps, we have an additional 1000 nybbles of color
data which go into an additional 1000x4 static ram, which is located at $d800
if the i/o area is mapped in.

There are some ram areas which are unusable for graphics data:
0000-01ff processor port, zero page and stack
1000-1fff in this area, the video chip doesn't access the ram, but the 
          character rom, which means it can't display graphics data from here
9000-9fff ditto (or was that d000-dfff? Groepaz?)

Do you need more info on how bitmaps are organized or how the base addresses
are configured in the video chip?

Regards,
Dizzy
----------------------------------------------------------------------
To unsubscribe from the list send mail to majordomo_at_musoftware.de with
the string "unsubscribe cc65" in the body(!) of the mail.


Date view Thread view Subject view

This archive was generated by hypermail 2.1.3 : 2002-05-28 16:22:18 CEST