At this point the 64K bytes of RAM in the Commodore 64 are accessible by the built-in 6510 central processor, OR 48K bytes of RAM are available for the Z-80 central processor. You can shift back and forth between these two processors, but you can NOT use them at the same time in a single program. This is possible because of your Commodore 64's sophisticated timing mechanism.
Below is the memory address translation that is performed on the Z-80 cartridge. You should notice that by adding 4096 bytes to the memory locations used in CP/M® $1000 (hex) you equal the memory addresses of the normal Commodore 64 operating system. The correspondence between Z-80 and 6510 memory addresses is as follows:
| Z-80 ADDRESSES | 6510 ADDRESSES | ||
|---|---|---|---|
| DECIMAL | HEX | DECIMAL | HEX |
| 0000-4095 | 0000-0FFF | 4096-8191 | 1000-1FFF |
| 4096-8191 | 1000-1FFF | 8192-12287 | 2000-2FFF |
| 8192-12287 | 2000-2FFF | 12288-16383 | 3000-3FFF |
| 12288-16383 | 3000-3FFF | 16384-20479 | 4000-4FFF |
| 16384-20479 | 4000-4FFF | 20480-24575 | 5000-5FFF |
| 20480-24575 | 5000-5FFF | 24576-28671 | 6000-6FFF |
| 24576-28671 | 6000-6FFF | 28672-32767 | 7000-7FFF |
| 28672-32767 | 7000-7FFF | 32768-36863 | 8000-SFFF |
| 32768-36863 | 8000-8FFF | 36864-40959 | 9000-9FFF |
| 36864-40959 | 9000-9FFF | 40960-45055 | A000-AFFF |
| 40960-45055 | A000-AFFF | 45056-49151 | B000-BFFF |
| 45056-49151 | B000-BFFF | 49152-53247 | C000-CFFF |
| 49152-53247 | C000-CFFF | 53248-57343 | D000-DFFF |
| 53248-57343 | D000-DFFF | 57344-61439 | E000-EFFF |
| 57344-61439 | E000-EFFF | 61440-65535 | F000-FFFF |
| 61440-65535 | F000-FFFF | 0000-4095 | 0000-0FFF |
| This page has been created by Sami Rautiainen. | |
| Read the small print. | Last updated November 06, 1998. |