The IBM 1130 Computing System, introduced in 1965, was IBM's least expensive computer at that time. A binary 16-bit machine, it was marketed to price-sensitive, computing-intensive technical markets, like education and engineering, succeeding the decimal IBM 1620 in that market segment. Typical installations included a 1 megabyte disk drive that stored the operating system, compilers, and object programs, with program source generated and maintained on punched cards. Fortran was the most common programming language used, but several others, including APL, were available.
The 1130 was also used as an intelligent front-end for attaching an IBM 2250 Graphics Display Unit or as a remote job entry (RJE) workstation connected to a System/360 mainframe.
Description
The total production run of the 1130 has been estimated at 10,000. The 1130 holds a place in computing history because it (and its non-IBM clones) gave many people their first direct interaction with a computer. Its price-performance ratio was good, and it notably included inexpensive, removable disk storage, with reliable, easy-to-use software that could be in several high-level languages. The low price (from around $32,000 or $41,000 with a disk drive) and well-balanced feature set enabled interactive "open shop" program development.
The IBM 1130 uses the same electronics packaging, called Solid Logic Technology (SLT), that was used in System/360. It has a 16-bit binary architecture, as do later minicomputers like the PDP-11 and Data General Nova.
The address space is 15 bits, limiting the 1130 to words () of memory. The 1130 uses magnetic-core memory, which the processor addresses on word boundaries, using direct, indirect, and indexed addressing modes.
Models IBM implemented five models of the 1131 central processing unit, the primary processing component of the IBM 1130. Model 1 through Model 5 describe the core memory cycle time, as well as the model's ability to have disk storage. A letter A through D appended to the model number indicates the amount of core memory installed.
The IBM 1131 Central Processing Unit weighs about 760/1050 lb (345/477 kg).760 lb: models 1A, 1B, 2A, 2B, 4A and 4B 1050 lb: models 1C, 1D, 2C, 2D, 3B, 3C, 3D, 5B, 5C and 5D
Memory cycle time Core memory 3.6 μs,no internal disk 3.6 μs,plus disks 2.2 μs,plus disks 5.9 μs(3.6 μs: see below),single disk 2.2 μs,no internal disk 4096 words Model 1A Model 2A Model 4A 8192 words Model 1B Model 2B Model 3B Model 4B Model 5B 16,384 words Model 1C Model 2C Model 3C Model 5C 32,768 words Model 1D Model 2D Model 3D Model 5D
The Model 4 was a lower-priced product with a 5.9 μs cycle time. Some purchasers of performance upgrades observed that the field adjustment to achieve the improvement was surprisingly trivial.
The IBM 1132 printer relies on the 1130 processor rather than internal logic to determine when to fire the print wheels as they rotate. Printers for the Model 4 run more slowly, but the slower processor still cannot keep up with it. The hardware manual discloses that when the Model 4 was servicing the two highest-level interrupts (the level 0 card-reader column interrupt or the level 1 printer interrupt), it ran at the faster 3.6 μs cycle time. Some users of the Model 4 would write a phony printer driver that did not dismiss the printer interrupt in order to benefit from the higher processor speed. However, lower-level interrupts are disabled during this interval, even the end-of-card interrupt (level 4) from the 1442 card reader.
Chronology February 11, 1965 – IBM introduces the 1130 (Models 1A, 1B, 2A, and 2B). Also announced is the IBM 1132 printer, the lowest-cost online computer printer ever announced by IBM at that time. Fourth quarter 1965 – First customer shipments begin from the San Jose plant. March 31, 1966 – IBM introduces the IBM 1500 educational system. April 1966 – IBM 1800 ships. August 9, 1966 – IBM rolls out the 1130 synchronous communications adapter, which permits the small 1130 system to be connected by regular leased telephone lines to, and function as a communications terminal for, any model of the IBM System/360. April 17, 1967 – A four-way expansion of the 1130 is announced (Models 2C, 2D, 3B, 3C, and 3D), involving: Five times the disk storage and four times the core memory; An additional processing speed almost 40 percent faster than previously available; More and faster peripheral equipment, including an optical mark reader; An improved commercial programming package. January 1968 – First shipments begin of the 1130 Models 2C, 2D, 3B, 3C, and 3D. July 1968 – The Boca Raton plant begins shipping the 1130. July 22, 1971 – 1130 Models 4A and 4B are introduced at new levels of economy. September 1971 – First customer shipments begin of the 1130 Model 4. May 31, 1972 – Models 1C, 1D, 5B, 5C and 5D are announced. 1973—The Xerox 530 was marketed as a possible successor to IBM 1130 customers. Orders for the Xerox 530 were deemed "encouraging" as of January 1974.
Software To maximize speed and conserve space, the operating system and compilers are written entirely in assembly language and employ techniques that are rare today, including intermixing code and data as well as self-modifying code.
Much user programming is done in Fortran. The 1130 Fortran compiler can run on a machine with only 4,096 words of core—though the compiled program might not fit on such a machine. In this multi-pass compiler, each "phase" processes the entire source program and takes it another step toward machine code. For example, the first phase reads the source statements into memory, discards comment lines, removes spaces except in text literals, concatenates continuation lines, and identifies labels. The compiler is available in a disk-resident version as well as on eight-channel punched paper tape or punched cards.
The most widely used operating system for the 1130 is the Disk Monitor System Version 2 (DM2) introduced in 1967. DM2 is a single-task batch-oriented system. It requires a system with at least 4 KB of core memory and one integrated 2310 disk drive for system residence. The Supervisor is tiny by modern standards, containing assorted system details such as first-level interrupt routines, called Interrupt Level Subroutines, plus the disk driver and routines to load the interpreter of job control commands and the card reader driver. Device drivers for other I/O devices required by a job are incorporated as part of the loading of that job, which might also include the replacement of the basic disk driver by a more advanced driver. During the execution of a job, only a resident monitor, called the Skeleton Supervisor, resides in memory. This Supervisor requires just 1020 bytes, so a task's first available memory starts with address (hexadecimal) or word 510. When the job ends or is aborted, the supervisor loads the Monitor Control Record Analyzer (MCRA) to read the job control for the next. While the job is running, the Supervisor is inactive. Aside from device drivers and interrupt processing, all CPU time is entirely devoted to the job's activities. Other programs distributed as part of the operating system are a core dump utility, DUMP, and the Disk Utility Program, DUP.
A Card/Paper Tape Programming System was available to support systems without a disk.
There is a hierarchy of device drivers: those with names ending in Z are for Fortran, such as DISKZ, while assembler programmers might use DISK0, and DISK1 was even faster at reading multiple disk sectors. But DISKZ starts its sector addressing with the first available unused sector, while the others start with sector zero of the disk, making it possible for a programmer unfamiliar with disk organization to inadvertently overwrite the bootstrap loader.
Other programming languages available on the 1130 include APL, BASIC, COBOL,for which there was an IBM compiler FORTH, PL/I (in the form of the SL/1 interpreter),SL/1: references to Student Language/One, Student Language/1 and Subset Language/1 exist and RPG.an IBM Program Product
There is even a French language ALGOL compiler, in which for example "Debut ...Fin;" take the place of "Begin ... End;". All its messages are in French, so "Bonne compilation" is the goal.
Eastern Michigan University developed a Fortran IV compiler for the 1130, known as Fortran-EMU, as an alternative to the Fortran IV (subset) compiler provided by IBM. It adds many Fortran IV features not supported by the IBM compiler, including the LOGICAL data type, six-letter variable names, and enhanced diagnostics. The Fortran-EMU compiler was distributed as a deck of punched cards in a disk image file format with all the remaining system area deleted to prevent copying other modules that would normally reside on the same disk, such as the assembler or compilers.
Oklahoma State University developed an ALGOL 68 compiler, written in ANSI Fortran 1966.
A FOCAL interpreter was developed at the University of Michigan.
IBM also distributed a large library of programs, both IBM-supported (Type I and II) and unsupported (Type III and IV).
Since the 1130 was aimed primarily at the scientific market, scientific and engineering programs predominated: Scientific Subroutine Package Draw and Plot Subroutines Electric Power System Load Flow Program Multiple Regression Calculation of Electrical Distribution System Fault Currents Pipe Analysis COGO coordinate geometry Continuous System Modeling (CSMP) Linear Programming Mathematical optimization Subroutine System Structural Engineering System Solver (STRESS) Statistical System
The 1130 also occupied a niche as a data processing machine for smaller organizations: 1130 Commercial Subroutine Package Student Information System CPM/PERT
There is also special-purpose software: Remote Job Entry (RJE) Typesetting
Job control Batch operation of the 1130 is directed by control records in the primary input stream (card or paper tape reader). There are two types of control records, monitor control records and supervisor control records.
Monitor control records Monitor control records are identified by //␢ followed by a "pseudo-operation code" in columns 4–7. "␢" represents a single blank. + 1130 Monitor Control Records Control record Function //␢* comments Provides a comment to be printed in the job listing in columns 5 thru 80 //␢JOB Identifies the start of a job //␢ASM Invokes the Assembler //␢FOR Invokes the FORTRAN compiler //␢PAUS Stops the system until the console START key is pressed //␢TYP Switches from the printer to the console for control record input and output //␢TEND Cancels the effect of //␢TYP //␢DUP Invokes the Disk Utility Program //␢XEQ Reads and transfers control to a mainline program
The JOB record can have a "T" in column 8 to indicate that any files added to the User Area by this job should be deleted at the end. Columns 11 thru 15 can contain a cartridge label; the system verifies that the specified cartridge is mounted before proceeding.
The XEQ record may contain the name of the program to be run in columns 8 thru 12. If this is omitted, the program currently in Working Storage will be executed. If column 14 contains "L", and the program is in Disk System Format (not core-image) a core map will be printed by the Core Load Builder. If this statement is followed by LOCAL NOCAL, or FILES Supervisor Control Records, columns 16 and 17 contain the count of these records. Column 19 optionally indicated which disk driver routine is to be linked. "0", "1", or "N", request DISK1, DISK2, or DISKN, any other character, including blank, requests DISKZ, the FORTRAN disk routine.
Supervisor control records