Home  Articles  Programs 

Butterfield Reports: The 8032

Commodore's newest 8000 series computers -- the CBM models 8016 and 8032 -- are noticeably different from earlier models. The most obvious change is the width of the screen, which now allows 80-character lines. Yet it's a gentle upgrade in many ways; users will be relieved to find that there's a great deal of compatibility with previous PET/CBM devices.

Some users will dislike any change, of course. Others would like to see Commodore boldly scrap previous architecture and introduce radical changes. But for most of us, the new design looks like healthy evolution: improvements are being introduced without losing continuity.


Physical Appearance

The screen is bigger, of course, increased to 12 inches across the diagonal as compared to 9 inches on previous models. The computer itself hasn't gained appreciably in size, however. The keyboard housing has been lowered, so the overall height of the 8000 is only about an inch higher than the original PET. The width hasn't changed at all, although the new machine appears less 'tapered' because of the larger screen.

Commodore seem to view the 8000 series as strictly business machines, and all models I have seen are equipped with the business keyboard. This is a standard ASCII keyboard plus a numeric pad. Users with experience on other machines will find it quite standard. Programmers who have been spoiled on PET's graphic keyboard will need some adjustment time: it seems hard, somehow, to have to shift for such popular characters as quotation marks, brackets, asterisk, or the question mark. I find it harder in an instructional environment: you can't reach over a user's shoulder and tap in a correction quite as easily. But the business keyboard is an industry standard, and we might as well get used to it. There are interesting new keys: REPEAT, TAB and ESC (escape), which I'll talk about later.

Edge connectors are unchanged from the previous 16K and 32K models: they are all there.

General appearance and quality is comparable to earlier models. Characters are quite readable on the green screen; resolution is good. Text mode (upper/lower case) is the standard power-on condition, but you can get graphics if you want them. Lower-case characters are identical to earlier models, and descenders on characters like y, g, or p still look a little uncomfortable.


Keyboard Features

Cursor movement keys, Insert/Delete, and SPACE automatically repeat if you hold them down. There's an initial pause of a half a second, and then the cursor takes off at a rate of about ten steps per second. The other keys don't repeat unless you hold down the REPEAT key; then they take off right away, with no initial pause. All very handy.

Screen tabulation is built in. Pressing Shift/TAB sets or clears the tab stop wherever the cursor happens to be. After that, pressing TAB takes you to the next tabulation stop in that line; if there isn't one, you'll go to the end of the line. Since Shift/TAB doesn't tell you whether you're setting or clearing the tab, a little care is needed in programming this. Tabulation is very useful for screen tables, but doesn't help for the printer.

The ESC key does a very simple job. It takes you out of the programmed-cursor mode (sometimes called the 'quotes' mode). A minor help for existing activities; but it turns out you'll also need it to invoke some of the clever new screen features that are built into the system.

The RVS key no longer slows down the display when things are printing at a fast clip. This job is now down by the left-arrow key. As usual, the slowdown applies only during screen scrolling.

A new and very handy feature allows screen output to be stopped and then resumed. The colon key freezes the display immediately after a screen scroll. Pressing the left-arrow allows output to continue. This is useful for both freezing program listings and stopping lengthy output runs; it allows the data to be examined before it disappears.


The Bell

The system contains an electronic bell which chimes on power-up, on request, and whenever you near the end of a line. On the models I have seen, there is no speaker or sounding device, but this may be added in final production versions. At any rate, the bell signal can be heard on the CB2 line of the Parallel User Port; a simple amplifier/speaker system will do the trick.

The chiming of the bell interrupts other activities momentarily. If you're repeating characters at high speed on the screen, you'll see a brief pause when you reach the point near end-of-line where the bell sounds. If this is a problem, the chime can easily be shortened or eliminated entirely.


Screen Graphics

The screen still holds 25 lines of text, but each line is 80 characters wide. This would make the characters look tall and skinny if the original screen arrangement were kept. Commodore has restored the proportion of the characters by inserting a strip of empty space between each line.

This looks good, but it means that characters cannot touch above and below; and this in turn would cause odd-looking chopped up graphics. A special arrangement is needed to make graphics look good.

When you go to graphics mode, the screen closes up the empty space so that characters can touch. The effect is rather like Cinemascope: the overall height of the display shrinks to less than five inches, while the width remains unchanged at about eight inches. In this mode, graphics from earlier PET/CBM machines look quite good.

This shrinking and expanding of the screen is accomplished with a new type of chip called a 'CRT Controller'. The 8000 delivers a lengthy list of desired screen characteristics (o this controller chip, which takes over the job of arranging things on the screen as desired. Although Commodore have only two types of setup for the screen -- text mode and graphics mode -- it looks as if the controller chip could be used in many other ways for special effects.


New Screen Controls

A number of useful screen features arc included in the 8000 machines. They promise to add greater convenience and versatility to screen usage.

SCROLL DOWN and SCROLL UP move the entire screen up or down one line. A blank line is left at the top or bottom as appropriate.

INSERT LINE AND DELETE LINE arc almost self-explanatory. They move the screen from the cursor line, adding a blank line at the appropriate place.

ERASE BEGIN and ERASE END each clear part of a screen line. ERASE BEGIN clears from the beginning of the cursor line up to but not including the cursor position. ERASE END clears from the cursor to the end of line, inclusive; it's a good way to clear a line just before printing on it.


Definable Windows

A dramatic new feature of the 8000 screen is the capability of restricting screen activity to a 'window' area. Once a window is defined, all normal activities are confined within it. Text will go into the window area only; cursor movements will stay within the area; and scrolling, clearing, inserts and deletes will all take effect only within the bounds of the window area.

A window is defined by moving the cursor to the desired upper left location and giving a SET TOP command; then moving the cursor to the desired lower right location and giving a SET BOTTOM command. Only one window may exist at a time; but since they are easy to set up, windows can be switched in and out as desired and the effect of simultaneous windows can be easily achieved.

The window is cleared -- or, more precisely, set to the full screen -- by giving two HOME commands in succession. This means that a user can always get out of a window with a couple of keystrokes -- even if the programmer would rather he couldn't.

The variable window system is nicely done, and careful attention has been given to seeing that all systems interact properly. For example, a user responding to a Basic INPUT statement with a preset window won't have his entered value confused with any adjacent out-of- window data that may be nearby. The bell is even adjusted so that it rings five characters from the end of the window you happen to be in.


Special Programmed Characters

Most users are familiar with existing programmed cursor characters; for example, the reverse-q for cursor down. The new 8000 features have been implemented as additional programmed characters. They appear as reverse field characters within a print string. The new programmed characters can be summarized as follows:

Character Lower Case Upper Case
g Ring Bell
i Tabulate Set/Clear Tab
n Set Text Mode Set Graphics
o Set Top  Set Bottom
u Delete Line Insert Line
v Erase End Erase Begin
y Scroll up Scroll down

There's a small trick to creating these new reversed characters. Unlike the more familiar programmed cursor characters, these functions don't appear as keys on the keyboard. To create them within a quote-enclosed string, you need to press ESC (which takes you out of programmed cursor mode); then RVS followed by one of the above characters. It works well, but takes a little getting used to.


Software

The current 8000 units are fitted with Basic 4.0. This is the familiar Upgrade ROM with disk operators added to Basic, and with an improved garbage collection routine.

Garbage collection is much faster: a hesitation is visible, but all collections take place within a second or so. The penalty paid by the user for this is a relatively slight one: two more bytes are used for each dynamic string.

The 8000's ROM set is larger. Basic now starts at hexadecimal B000 rather than C000, meaning that users now have an 18K ROM system rather than 14K.

The disk commands are English language equivalents to the commands already available with the DOS or 'wedge' system. At first glance, they don't seem to do anything new. However, they are much easier to use for newcomers; and they strengthen the PET's excellent human interface. It's a great convenience to be able to press Shift and Run/Stop to get the first program from a disk. Another advantage of these commands is that they can be embedded in a program. We can now write 100 SCRATCH "OLD-FILE" and gain ease and simplicity of coding.

The disk commands appear to be written with the new Disk system in mind. This is a new set of ROMs for disk which will enhance its ease of use greatly. No hardware changes are needed: fit the new ROMs, and you have a new disk system. This system doesn't need an explicit Initialize command -- it's automatic when a new disk is inserted. There are several attractive features of the new disk system, including an APPEND command and a new style of relative or direct access file; the 8000 commands are geared to support all this.

A brand new disk unit, the 8050, is being introduced by Commodore. Its characteristics are identical to those of the enhanced 2040 unit, except for its huge capacity. With 77 tracks of data and more sectors on each track, a mini-floppy can now hold in excess of two thousand blocks of data. This gives a capacity of over one megabyte of data for the two drives. Many commercial and data storage applications will now fall within the scope of the PET/CBM.

The 8050 dual floppy unit has a similar size and appearance to the well-known 2040. It has a power-on indicator: the center LED now shines green for power applied, and red for errors. Diskette insertion is slightly different. The high-precision drive mechanism requires precise centering; the simple 'tab' door has been replaced with a more elaborate assembly.

Communications between the PET/CBM and the 8050 unit are the same as for the 2040, Most disk programs will be fully compatible unless they use some of the more esoteric advanced commands. You can't read an 8050 disk on a 2040 unit, or vice versa, but Commodore has developed a utility program which will copy files from one to the other. It's interesting to note that the (Commodore program seems to be able to change the 8050 device number on the IEEE bus via software.

Compatibility between the two styles of 2040 system -- the original and the upgrade -- exists in part. Each type of unit can read the other's data, but cannot write to a disk that was new-ed on the other machine. A quick COPY will fix up any problems in this area, but the user should keep in mind that there are six less blocks available on the new style of 2040.


Machine Language Considerations

The various subroutines in Basic ROM have moved around, of course: that's unavoidable. Machine language programmers will be happy to know that the vital zero page locations are virtually unchanged. Adapting existing programs shouldn't be loo hard.

The second cassette buffer is now used in two ways. The lower addresses are used for tin: disk commands; and higher addresses (hex 03FF and up) are used for tabulating TAB positions. Greater care will need to be exercised in using the buffer for staging small machine language jobs.

The Machine Language Monitor is unchanged. It can still be extended with extra commands; and 'uncrashing' is accomplished in the same manner as for previous models.

Some of page zero has been released, Since screen lines no longer need to be linked together into 'double' lines, the fairly lengthy screen-wrap table isn't needed.

Serious programmers will be delighted to find that special vectors are provided for input and output. Now they will be able to link their own I/O routines directly into the system.


Summary

It's still distinctively a PET/CBM style machine. It retains its friendly personality, and the new features look good.

The 80 character line screen will make many new applications possible -- especially those involving columns of figures. Basic hasn't changed at all, and most changes are gentle, so as not (o obsolete old machines or programs -- or old programmers, for that matter.

---

This definitive look at the 8032 was prepared by Jim "on assignment" for the June issue of PRINTOUT, a PET publication in England. Thanks Jim, for sharing it with us. One p.s.: It 's my understanding that production models do have a small "bell" built-in. RCL

reference: "Butterfield Reports: The 8032", Jim Butterfield, Toronto, July-August 1980, Compute, Issue 5, pp.69-72

Jim Butterfield
01.06.1980

Keywords: Commodore PET, Hardware, Commodore, CBM


C64 Projects Twitter Page

İlker Fıçıcılar's CBM Page