# IBM System/360 Model 30

The IBM System/360 Model 30 was a low-end member of the IBM System/360 family. It was announced on April 7, 1964, shipped in 1965, and withdrawn on October 7, 1977. The Model 30 was designed by IBM's General Systems Division in Endicott, New York, and manufactured in Endicott and other IBM manufacturing sites outside of U.S.

## History

The Model 30 was a popular IBM mainframe which was announced in 1964 as the least powerful of the System/360s. The System/360 series was the first line of computers in the world to allow machine language programs to be written that could be used across a broad range of compatible machines of different sizes. It was the smallest model that had the full System/360 instruction set (unlike the Model 20) and served as a stand-alone system, communications system or as a satellite processor of a larger system.
The first delivery of the 360/30 was in June 1965 to McDonnell Aircraft.
Along with the 360/40, these were the two largest revenue producing System/360 models, accounting for over half the System/360 units sold.

## Models

Four models of the 360/30 were initially offered. They vary by the amount of core memory with which the system was offered. The C30, D30, E30 and F30 were respectively configured with 8K, 16K, 32K and 64K of core memory.$^{:Fig.5,p.9}$
It was little publicized that there were two versions of the Model 30,$^{:pp.2,8,9}$ known (on the rare occasions when they were distinguished at all) as the 30-1 and the 30-2. The original 30-1 had a 2.0 microsecond storage cycle. Later, after the first 1000 30-1 were shipped, it was replaced by the 1.5-microsecond 30-2, although the 30-1 was silently retained in the sales catalog. The two were cosmetically different; the 30-1 looked like other System/360 models, with indicator lamps exposed on the front panel and labeled, but the 30-2 took a retrograde design step, putting the lights behind a stencil, as they had been on pre-360 machines like the IBM 1401.
The (faster) 30-2 had an additional model, DC30, with 24K of memory.$^{:Fig.4,p.9}$
The 7th edition of IBM System/360 Basic Operating System Programmer's Guide, dated September 1967, lists first among major changes support for "an intermediate storage size (24K) for System/360 Model 30."

### 96K upgrade

In response to competitive pressures, IBM introduced a memory upgrade option, allowing 96K on a 360/30. It seems, based on the system's front panel, that a provision for supporting more than 64K had been pre-planned.

## Microcode

The Model 30 CPU used an 8-bit microarchitecture with only a few hardware registers; everything that the programmer saw was emulated by the microprogram. Handling a 4-byte word took (at least) 6 microseconds, based on a 1.5 microsecond storage access cycle time.$^{:pg.1–4}$
The microcode was stored in CCROS (Card Capacitor Read-Only Storage) developed in Endicott. The Model 30 and Model 40 were originally supposed to share the transformer read-only storage (TROS) being developed at IBM Hursley, but CCROS was cheaper to manufacture. This system used Mylar cards the size and shape of a standard IBM punched-card, so the microcode could be changed using a keypunch. Each card held 720 bits, and the total microcode consisted of 4032 60-bit words. The Mylar "encased copper tabs and access lines." A hole punched at a specific location removed the copper tab and encoded a zero, unpunched locations were read as ones.

## System configuration

A typical, early, basic Model 30 system had the following configuration: :
| Model 30 processor | IBM 2030 Central Processing Unit *32 KB storage *storage protection feature *standard instruction set *decimal instruction set *one multiplexor channel *one selector channel *interval timer |
| Operator console | IBM 1052 Typewriter-Keyboard (usually assigned to 01F hexadecimal address) |
| Unit record device | IBM 2540 Reader-Punch (00C & 00D) |
| Line printer | IBM 1403 Printer (00E) |
| Disk storage | two IBM 2311 Magnetic Disk Drives (190 & 191) 5 MB each |
| Tape storage | two IBM 2415 Magnetic Tape Units (180 & 181) |
To keep costs down, CPU features such as the interval timer and storage-protection feature were optional.

## System software

Operating System choices:
* BPS - Basic Programming Support
* BOS - Basic Operating System
* TOS - Tape Operating System
* DOS - Disk Operating System
BPS (Basic Programming Support) did not require a disk drive or tape drive. It was introduced in 1965, and has been described as "primarily a set of utilities and compilers (that) existed on cards only."$^{:pages10,18}$
BOS (Basic Operating System) required a disk drive, but, like BPS, could run on the smallest 360/30, the 8K model C30.$^{:pp.9,10}$
The minimum memory needed to run DOS or TOS was 16 KB.
TOS (Tape Operating System), as the name suggests, required a tape drive but no disk. It shared most of the code base and some manuals with IBM's DOS/360 and went through 14 releases. TOS was discontinued when disk drives became more affordable.
DOS (Disk Operating System) was a popular choice for the Model 30.
The smaller BOS had a spooling system for queued printing,$^{:p.9}$ whereas DOS did not$^{:page18}$ until the arrival in the late 1960s of "an add-on component called POWER."$^{:page16}$

## Programming languages

Programming was mostly in the COBOL, RPG and Assembler languages for the commercial applications which were the predominant uses of this computer. Fortran could also be used for the scientific and engineering applications, and a PL/I subset compiler PL/I(D) was available. COBOL programs for other computers could be run after recompiling on the System/360, except that the INPUT-OUTPUT SECTION had to be re-written to describe to the System/360 device assignments.

## Compatibility features

The ability to continue running programs designed for earlier systems was crucial to selling new hardware. Although the instruction set of System/360 was not backward compatible with earlier systems, IBM provided emulators for the earlier systems.

### IBM 1400 series emulation

With the additional Compatibility Feature hardware and Compatibility Support software under DOS/360, the IBM 1401/1440/1460 object programs could be run in the emulation mode, with little or no reprogramming. Many installations included the compatibility feature, allowing older programs to be run.

### IBM 1620 emulation

Although the 360/30 could be configured to emulate an IBM 1620,$^{:p.11}$ two factors made it less crucial than the above IBM 1400 series emulation:
* The IBM 1130 was the preferred successor to the IBM 1620.
* Fortran accounted for a significant part of how the 1620 was used, and IBM 1620 Fortran programs could be converted to run on System/360.