Commodore 128D User Manual Page 3

  • Download
  • Add to my manuals
  • Print
  • Page
    / 31
  • Table of contents
  • BOOKMARKS
  • Rated. / 5. Based on customer reviews
Page view 2
1 Some basics
This article describes two memory expansions: an expansion that adds two new memory banks to the Commodore 128,
doubling its memory space, and another expansion which expands each bank to 256 kilobytes, quadrupling the memory
space. The former is the 256 kB expansion, from here on the MMU expansion, and the latter is the 512 kB expansion,
or the PIA expansion. Combining these two expansions gives you four banks of 256 kilobytes each, that is 1024
kilobytes.
When I made the 256 kB expansion to my Commodore 64, I renamed the computer to 2564 — 256 kB C64. The
first three digits specify the amount of memory, whereas the last two ones tell the machine type number. A logical
choice for the name of a 512 kB C128 is 5128 — the first three digits tell the amount of memory in kilobytes, and the
last three expose the original machine type. Unfortunately the 256 kB and 1024 kB expansions for the C128 cannot
be named so nicely. I have baptized my C128D to C1028D, though.
The subsections 1.1 through 1.4 of this section apply for the PIA expansion. You can skip them, if you want to
save some trouble and money and are going to expand your machine only to 256 kilobytes. Similarly, the section 1.5
can be skipped if you aim only to the 512 kilobyte expansion.
1.1 Expansion memory in 16 kB blocks
The processor of Commodore 128, MOS 8502, has an 8-bit data bus, and its address bus is 16 bits wide. Like other
8-bit processors, it can address only 64 kB of memory at a time. In most 8-bit computers, the memory is limited to
these 64 kilobytes. How could one add memory above this limit?
The solution is simple: the memory is divided into banks of no more than 64 kB, which are switched on and off.
Some processors have been added a special circuit for this purpose, in which case the executing program can be in its
own 64 kB bank and the processed data in another bank. For example, MOS 6509, a fellow processor of MOS 8502,
works in this way, enabling access to one megabyte. The Commodore 128 uses a sophisticated chip, MOS 8722 MMU
(Memory Management Unit), which lets you to activate one 64 kB memory bank of a total of two memory banks at a
time.
The PIA expansion expands each C128 memory bank to 256 kilobytes. The extended memory is divided to sixteen
blocks of sixteen kilobytes each. The processor can address up to four of them at a time. Every four 16 kB segment of
the address space can be mapped to any 16 kB block. Figure 1 shows the mapping right after startup.
However, the video chip VIC-IIe MOS 8566
2
retrieves its data from the memory outside the normal bus. The
internal address registers of VIC-IIe are 14 bits wide, so it can address only 16 kB without external logic. The required
two extra bits for accessing the whole 64 kB video bank are provided from the second CIA chip, and the video bank
is selected by the MMU. Our extra logic provides additional two address bits for accessing the whole 256 kB of the
selected video memory bank.
1.2 Memory chips
Commodore 128 uses 64 kb dynamic RAM chips of JEDEC standard. In 1982, when the Commodore 64 was in-
troduced, they were most modern technology, they needed only one operating voltage supply instead of traditional
three.
The semiconductor memories have developed fast, however, and now a chip in a DIP of equal size can hold 256
kilobits. The pinout of these 256 kb chips differs minimally from the 64 kb ones. The smaller 64 kb chips, at least the
ones used in C64 and C128, have one unused contact. The address line to handle three times bigger memory is tied to
this pin. In the DRAMs the address lines are multiplexed: two address bits use the same pin successively.
In the MikroBITTI article Pekka wrote that 256 kb chips are rather cheap, and the price would lower as the
production rate increases. Nowadays the production must have almost stopped. When Pekka bought his chips between
March and April of 1986, they costed about 50 FIM each. When the original article was published, they costed less
than 20 FIM. After that the prices rose due to a memory shortage. But nowadays the chips don’t cost practically
anything, if you’re lucky. Many users of IBM PC compatibles want to upgrade their system memory with 1 Mb chips
or alike and would like to get rid of their old 256 kb chips. I bought eight second-hand chips with total 35 FIM, and
later 36 chips with 117 FIM, including shipping. The lowest price of unused chip I encountered was 13 FIM a piece
and the highest was 30 FIM, almost 10 times the price I paid!
2
8564 for NTSC
3
Page view 2
1 2 3 4 5 6 7 8 ... 30 31

Comments to this Manuals

No comments