Classic Computer Magazine Archive CREATIVE COMPUTING VOL. 11, NO. 4 / APRIL 1985 / PAGE 116

Commodore's port; the Commodore 128PC. (evaluation) Sheldon Leemon.

The new Commodore 128 is a powerful upgrade of the highly successful Commodore 64. In it's attempt to serve the broad range of needs found among users of low-end personal computers, Commodore has actually created three computers in one. The 128 has all of the features of the 64 and can emulate it exactly. In addition, it has a 128K super-64 mode, with over 119K of RAM accessible to Basic programmers, a new Basic interpreter that fully supports the machine's sound and graphics capabilities, an extended keyboard, and an 80-column color or monochrome display capability built in. Finally, there is a separate Z80 processor, which allows the use of standard CP/M software (the machine comes equipped with CP/M Plus Version 3.0). This new machine also improves the slow disk drive access time that plagued the 64, and made it less than satisfactory for business use. When used with the new 1571 disk drive, the 128 will perform Commodore-style disk I/O five times faster than the 64, and is over ten times faster in CP/M mode.

Physically, the 128 is a sleek machine with a low profile and an attractive, dramatically styled white case. It is a little wider than the 64, not quite as high, and almost twice as deep. The backplane extends so far back beyond the keyboard that it is almost possible to stand a monitor on it. The core of the new keyboard is a 66-key duplicate of the 64 keyboard. Off to the right side is a 14-key numeric pad, and along the top row are groupings of new keys, including separate cursor, ESC, TAB, ALT, CAPS LOCK, HELP, LINE FEED, 40/80 DISPLAY, and NO SCROLL keys. On the right side of the unit are two joystick ports, the on/off switch, and a reset button. The port connectors on the 64, with the addition of a second video output, to be used for the new 80-column display to either an RGBI or high-resolution monochrome monitor.

To get an idea of the capabilities of this new machine, let's examine its three modes. First is the Commodore 64 mode. Since by this time the features of the 64 are fairly well known, there is no need to go into much detail here except to say that when the 128 is in 64 mode, the machine is 100% compatible with the 64. How compatible is it? So compatible that you can't even switch back to 128 mode without turning the computer off, since when in 64 mode it has no access whatever to the memory management chip (which of course is not present on a real 64). So compatible that when in 64 mode the computer cannot read the additional keyboard keys.

Compatibility may be reduced somewhat when the machine is used with the new 1571 drives. Though the drive behaves as closely as possible to a 1541, there may be slight differences that will confuse some of the more exotic copy protection schemes. Commodore has stated that it will help manufacturers cure even these rare cases of disk incompatibility. In short, unless a program is doing something incredibly bizarre, it will load, and if it loads, it will certainly run.

Next, we move on to 128 mode. This is the mode in which we find the machine on power up. The first thing you see is a message telling you that Basic version 7.0 has 122365 bytes free. In this mode, all of the features of the 64 are retained, but there are several new features as well. First of all, in this mode the entire extended keyboard is operative, and since the key assignment table is stored in RAM, any or all of the keys can be redefined. The C128 has a greatly expanded 48K ROM Operating System (three times as big as that of the 64). Of this, approximately 16K consists of the Kernal Input/Output and advanced screen editor routines, and 32K is devoted to the Basic language and a full machine language monitor. Many of the new features are very similar to those found in the ill-fated Plus/4 and the B128, such as an advanced screen editor (which includes such features as line insertion, line deletion, and margins at the top, bottom, and sides of the screen).

The Basic interpreter, version 7.0, has all of the features of every previous Commodore Basic and then some. It features the full range of disk commands supported by Basic 4.0 found on the CBM business computers and all of the music, hi-res, and sprite graphics commands found in the Super Expander cartridge. To these, it adds a number of miscellaneous commands from Basic 3.5 on the Plus/4, including Basic utilities such as automatic line numbering, renumbering, and block deletion, a powerful PRINT USING command for formatting output, and some structured programming constructs, such as BEGIN, BEND, DO, LOOP, WHILE, UNTIL, and EXIT.

In at least one respect, however, the C128 differs from every previous Commodore machine. Upon power-up, the computer checks the disk drive to see if it contains a special auto-booting disk. If it does, it will load and run the program (either a named file or a range of sectors of the disk) that is indicated in the boot sector of the disk. This feature, previously found on almost every other home computer, allows the creation of applications programs that can be easily used by those unfamiliar with the operation of a computer. Similarly, the Basic command RUN has been changed so that the command RUN "PROGRAM" will load and automatically run the named program.

One hardware difference between the 128 and the 64 is the memory management chip that enables switching between the various modes of operation. It also allows the use of 128K of RAM and up to 112K of ROM memory by a microprocessor that can access only 64K at a time. In fact, the memory management system can handle up to 512K of RAM, although the extra 384K can be used only as a super-fast RAM disk. Such a RAM disk add-on unit was hinted at by Commodore officials, though they made no actual product announcement.

Unlike a simple bank selection process that allows the software to flip between two banks of 64K at a time, the new chip allows you to do such things as select common areas of memory that will be shared by the different memory banks. The memory management chip also allows you to designate more than one color RAM area. This makes it easier to keep multiple screens of display data in memory and flip from screen to screen.

Machine language programmers will appreciate the fact that this chip will allow them to set up multiple zero page and stack segments. In addition to the built-in ROM and RAM, the memory management allows up to two 32K application programs in ROM. Such ROM programs can be added as special 128 cartridges. These cartridges operate like the Plus/4 "function key" cartridges. On power-up, the computer checks to see if any such cartridges are present, and if any are, they can take control briefly and hook themselves up to one of the function keys, which can then be used to start the cartridge program.

The engineers demonstrating the new computer at the Consumer Electronics Show in Las Vegas said that the machine also has an empty IC socket that could be filled with up to 32K of application program or system ROM, making that application or system program available to the user on power-up. Proposed uses for that ROM space include advanced DOS support, drivers for a mouse controller, and RAM disk software to support proposed memory extension modules. As of this writing, the question of what ROM will be added is not yet settled, but it seems fairly certain that some little "goodie" will be thrown in.

In addition to the 40-column VIC display chip found on the 64, the C128 has an entirely separate 80-column display controller chip, similar to the one used by the IBM PC. This chip provides output for a full 80-column RGBI 16-color display with 640 x 200 resolution. This display can also be viewed on a high-resolution monochrome monitor. Since the 40-column and 80-column display systems are completely separate, it is quite possible for a program to generate two completely different displays at once.

Or, it is possible to shut off the VIC chip completely, and only use the 80 column display. When this is done, the clock speed of the system is doubled to 2 MHz, because unlike the VIC chip, the new CRT controller does not share RAM with the processor. It has its own 16K of memory, which the processor can access only via the video chip. All of the text characters on the 80-column screen are in effect bit-mapped, using a standard character set that is downloaded to its screen memory. Since the character data are in RAM, an unlimited variety of user-defined characters can be downloaded and displayed on the 80-column screen. This makes its possible to display high-resolution graphics in a 640 x 200 format, as well as text. The major limitation is speed since the main processor cannot read display memory directly, but must go through the display controller chip. While this probably lets out hi-res animation, quality business graphics are perfectly feasible.

There are two other minor, albeit very useful hardware additions to the Plus/4. The first is a Reset button located on the right side of the case next to the on/off switch. This allows you to recover from a software crash without disturbing the contents of memory. The other change is to the serial port, which is now connected to the CIA chip hardware serial register. This means that while the disk drive still uses a serial, rather than a faster parallel connection, at least the C128 does not have to rely on slow software handshaking for its serial transfer. The older 1541 disk drive can still be used with the 128, but the computer cannot make use of the faster transfer rate when connected to it.

If these were the only additional features that the C128 had to distinguish it from the 64, it would still be a distinct step up. But on top of all of these new features, the 128 is a complete CP/M machine. Using a Z80A microprocessor, the 128 runs CP/M Plus Version 3.0, which is supplied with the computer. The clock speed of the Z80 is given as 4 MHz, but the engineers state that the effective speed of the system is probably closer to 2 MHz. Although the 80-column display is more in keeping with the requirements of most CP/M programs, the Z80 also has control of the VIC chip with its colorful sprite graphics, and the musical capabilities of the SID chip.

The system boots CP/M from a Commodore formatted disk, but once activated it can use the 1571 disk drive to load programs and read data in standard IBM System 34 format (used by computers like the Kaypro and Osborne). Under software control, the drive can also emulate other CP/M formats. In CP/M mode, the 1571 drive stores up to 410K of data and has a transfer rate almost 12 times as fast as the 64 drive. Thus, the machine provides access to the entire CP/M software library, without requiring you to convert the software to any particular disk format.

With the C128, Commodore seems to have addressed all of the deficiencies of the 64 that might have disqualified that machine as a serious, general purpose computer. A faster disk drive with greater storage capacity has been added, and an 80-column display provided. To the already massive home software library of the 64, this machine adds the enormous CP/M library, which features time-tested software for every type of business application. Thus, in its versatility this machine rivals, and perhaps surpasses the Apple II, at a price very close to the current level of the 64.

Products: Commodore 128 PC (computer)