ROM Expansion For The Commodore PET
F. Arthur Cochrane
E. I. du Pont de Nemours & Co., Inc.
Savannah River Laboratory
Aiken, SC 29808
This paper was prepared in connection with work under Contract No. DE-AC09-76SR00001 with the U.S. Department of Energy.
Summary
The Commodore PET is a low-cost personal computer housed in a self-contained unit complete with keyboard and a video display screen. The PET is portable and can sit on a desk or tabletop and operates on normal household current. The PET is simply plugged in and turned on to activate its BASIC interpreter. The BASIC interpreter is a computer program that is permanently built into every PET. In contrast, a program loaded from a tape, disk, or the keyboard is placed into Read/Write memory (RAM) and is lost when the PET is turned off.
The PET has three empty sockets for expansion read-only memory units (ROMs) which have memory addresses 36864 ($9000) through 49151 (JBFFF). A method for using single-supply, erasable, programmable, read-only memories (EPROMs) with the Commodore PET microcomputer has been developed. These EPROMs will allow the development of special-purpose firmware for the PET that does not have to be reloaded each time the PET is turned on and will permit an inexperienced operator to use the PET.
Current Firmware For The Pet
There are several ROMs available for the PET:
- Commodore's WordPro-2 is a 4K ROM for addresses $B000-$BFFF.
- Commodore's WordPro-3 is a 4K ROM for addresses $A000-$AFFF.
- The BASIC Programmer's Toolkit™ is a 2K ROM for addresses $B000-$B7FF.
- The Database Management System (United Software of America, New York, N.Y.) is a 2K ROM for addresses $A000-$A7FF.
- The Keyed Random Access Method (KRAM 1.0; United Software of America) is a 2K ROM for addresses $A800-$AFFF.
- The Monjana/1 CBM™ Monitor (Elcomp Publishing, Inc., Chino, Calif.) is a new 2K monitor ROM which is addressed for $9000-$97FF.
- The Jinsam™ database is a 2K ROM for $9000-$97FF.
The Spacemaker™ allows two ROMs to be plugged in at the same time; a single-pole switch selects one or the other of the ROMs. The Database Management and KRAM 1.0 ROMs can thus be put on a Spacemaker. Better yet, a small wirewrap board could be built with three 24-pin sockets wired in parallel: the first socket for a ribbon cable input; the second, for the Database ROM; and the third socket for the KRAM ROM. A Spacemaker could then be, used with these two ROMs and with another ROM such as the WordPro-3 ROM.
Use Of Eproms
The three empty sockets for ROM expansion are 4K sockets connected as shown in Figure 1.
FIGURE 2. Pin Configuration and Pin Names of the Intel 2716 2K EPROMThere are three EPROMs, the Intel™ 2716 (2K, Figure 2), the TI™ 2516 (2K, Figure 2), and the TI™ 2532 (4K, Figure 3), which can be plugged into the PET sockets with no problems. The 2K EPROMs are enabled for the lower 2K of the 4K socket address because Address Bit 11 acts as a chip select. However, these EPROMs can't be used with the Spacemaker because it uses Socket Pin 21, a high-enable chip select on 2K and 4K ROMs, to select one of its two sockets.
FIGURE 1. Schematic Diagram of PET ROM Modification FIGURE 3. Block Diagram of the TI 2532 EPROMWe have developed circuitry to overcome these difficulties and allow combinations of EPROMs with the Spacemaker. The circuits described provide a full 12K of expansion ROM space.
Intel also makes the 2732 EPROM 4K (Figure 4) which can't be used directly with either the PET or Spacemaker; however, with the switch of a wire and an inverter, the 2732 EPROM can be used with both the PET and Spacemaker. To use the 2732 EPROM, connect from Socket Pin 18 to Socket Pin 21 of the 2732, which connects All. Then go from Socket Pin 21 through an inverter to Socket Pin 18 of the 2732, which allows use with the Spacemaker. See Figure 5 for a schematic diagram.
FIGURE 4. Block Diagram of the Intel 2732 EPROMThe TI 2532 eprom can be used with the Spacemaker by connecting Socket Pin 20 through an inverter to a NAND gate, connecting Socket Pin 21 to the same NAND gate, and finally, the output of the NAND gate to Socket Pin 20 of the TI 2352. Also Socket Pin 21 (Vpp) of the TI 2532 must be connected to a 5-volt supply (Socket Pin 24). See Figure 6 for a schematic diagram.
The 2716 and 2516 2K EPROMs can't be used directly with the Spacemaker, so a small board has to be built that includes enough decoding to allow one 2K EPROM for the lower 2K of the 4K available from the socket, and another 2K EPROM for the upper 2K address space. A three-to-eight decoder is used by Decoding Pin 21 (the high chip select from the Spacemaker), Pin 20 (the low chip select from the PET), and Pin 18 (Address Bit 11). Pins 18 and 20 of the EPROMs are connected together (as both are chip selects) and are connected to the decoder output as given in Table 1. Figure 7 shows a PC board with (from left to right) the ribbon cable input, the BASIC Programmer's Toolkit, a 2716 ROM, and the 3-to-8 decoder.
FIGURE 5. Schematic Diagram of the Intel 2732 EPROM FIGURE 6. Schematic Diagram of the TI 2532 EPROMTable 1 Truth Table for Decoder | |||
C | B | A | |
(21) | (20) | (18) | |
0 | 0 | 0 | |
0 | 0 | 1 | |
0 | 1 | 0 | |
0 | 1 | 1 | |
1 | 0 | 0 | Select lower 2K 2716 |
1 | 0 | 1 | Select upper 2K 2716 |
1 | 1 | 0 | |
1 | 1 | 1 | |
C (21) is the high chip select from the Spacemaker. | |||
B (20) is the low chip select from the PET. | |||
A (18) is Address Bit 11 from the PET. |
Additional Space Available
The PET has four ROMs (three 4K ROMs and one 2K ROM) for its 14K operating system. The 2K ROM is addressed from $E000 to $E7FF. The PET uses $E800 to $E8FF for the keyboard scan chip (6520), the IEEE interface (6520), and the USER PORT (6522) chips.
The address space $E900 to $EFFF is not used and is available for expansion. It can be used with a modification of the method for 2K EPROMs and a 2716 EPROM. The method is the same as that described above, except that the 2716 EPROM is not enabled for the first 256-bytes of its address space. This can be done with the 3-to-8 decoder enabling one of the chip selects and Address Lines 8, 9, and 10 through a three-input NOR gate. This enables the other chip select. Using the NOR gate will disable the EPROM for the first 256 bytes of the 2K range (Figure 8).
FIGURE 8. Schematic Diagram of the $E900 Address Space FIGURE 9. Interior of the Commodore PETFigure 9 shows the inside of a PET with two Spacemakers (the vertical boards in the $A000 and $B000 ROM socket, and a PC board modified to use $E900-$EFFF.
All the boards mentioned in this article are connected to the PET or Spacemaker socket with a 24-pin dip socket to dip socket ribbon cable. The extra circuitry is powered from Pin 24 (5 V) and from Pin 12 (ground).
Conclusions
We have programmed an EPROM which includes the PET disk operating system (DOS), the support program (the WEDGE), a screen print routine, an expansion for the machine language monitor, and a routine for repeat keys for the PET. This EPROM is enabled into the system with one SYS command.
Acknowledgements
The following company trademarks are acknowledged:
PET and CBM - Trademarks of Commodore Business Machines, Inc., Norristown, Pa.
Toolkit - Trademark of Palo Alto ICs, a division of Nestar Systems, Palo Alto, Calif.
Jinsam - Trademark of Jini Micro-Systems, Inc., Bronx, N.Y.
Spacemaker - Trademark of CGRS Microtech, Inc., Langhorne, Pa.
Intel - Trademark of TM Corporation, Santa Clara, Calif.
TI - Trademark of Texas Instruments, Houston, Texas.
REFERENCES
1. Component Data Catalog, Intel Corp., Santa Clara, California (1979).
2. The MOS Memory Data Book, Texas Instruments inc., Dallas, Texas (1979).
3. Logic Diagram Dynamic PET ROMs, Commodore Business Machines Inc., Norristown, Pennsylvania (1980 rev.).
FIGURE 7. PC Board layout