The 1130 was also used as an intelligent front-end for attaching an IBM 2250 Graphics Display Unit, or as remote job entry (RJE) workstation, connected to a System/360 mainframe.The total production run of the 1130 has been estimated at 10,000.
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 disk drive)[3] and well-balanced feature set enabled interactive "open shop" program development.
The IBM 1132 printer relies on the 1130 processor rather than internal logic to determine when to fire the print wheels as they rotated.
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.
It adds many Fortran Iv features not supported by the IBM compiler, including the LOGICAL data type, six-letter variable names, and enhanced diagnostics.
Since the 1130 was aimed primarily at the scientific market, scientific and engineering programs predominated: The 1130 also occupied a niche as a data processing machine for smaller organizations: There is also special-purpose software: Batch operation of the 1130 is directed by control records in the primary input stream (card or paper tape reader).
If the copy of the system software on disk is modified, it can be restored by reloading it from about 4000 binary-coded punched cards (approximately two boxes).
DIPR is a Standalone program, which is loaded from cards or paper tape, and accepts the cartridge id from the system console.
It is invoked by the job control // DUP card, followed by one or more control cards:[24] Other commands, mainly for use by the system administrator, define or expand the Fixed Area, delete the FORTRAN compiler and/or Assembler from the system, and restore correct sector addresses to Working Storage if they have been modified.
Programs can be converted to a faster-loading format with the STORECI command, which invokes Core Image Builder (DM2's counterpart to the 360's Linkage Editor).
The following control card instructs DUP to take the current contents of working storage and move it to the user area naming it PROGM.
Conditional transfers are based on (a) the current contents of the accumulator, or (b) the carry and overflow indicators set by a preceding operation.
Placing the return address in-line was a common technique of computers at that time, such as the Hewlett-Packard HP 2100,[30] the DEC PDP-8,[31] and the Scientific Data Systems SDS 920.
As shown, a subprogram's entry point is DC *-*, an assembler pseudo operation that is used to Define a Constant (occupying one word of storage) with the value specified by the expression.
Writing this rather than 0 provides a visually distinctive note that a meaningful value (the return address) will be placed there at run time.
The convention of coding 0 as the initial value at the entry point means that if a programming error leads to SIMPL returning before the first time it was ever called, execution would jump to memory location 0.
The 1130 would be stuck at location 0, and the IAR lights on the console would be entirely dark, making it clear the program had failed.
LIBF routines, unlike CALL subprograms, do not start with a DC directive to hold the return address (it is in the transfer vector) but with actual code, as follows: Placing the address of SIMPL's transfer vector at SIMPL+2 leaves room for a one-word instruction to save the chosen index register, here XR1.
Then the indirect LDX instruction points XR1 not at the transfer vector, but through it to the return address, or to any parameters stored in-line after the BSI.
A LIBF routine that declined to restore the original value of XR1 could omit the above steps and return with a simple B 1 n to skip n in-line parameters.
On subsequent calls to the Fortran subprogram, the table of references to parameters would be in error and SUBIN would patch the wrong word, in this case placing the new address of I over the OR operation code.
Each LOCAL subprogram is an overlay; it is part of the disk-resident executable program but is only loaded into core memory (if not already there) during the time it is called.
If source changes were needed the programmer would duplicate the cards to obtain a deck with columns 1-20 blank ready for the next run through the assembler.
However, the example program makes no attempt to overlap input and output using buffers even though it has two separate work areas; it simply loops back to CIMP to test afresh.
After CARD0 has sensed the card reader's operation-complete interrupt, it returns one word further on, thus skipping the jump back to CIMP and leaving the loop.
A Fortran program could not complete even the simplest input processing in time, and so could not read cards at full speed.
One common Fortran DO loop to read cards made the motor stop and start so frequently as to accelerate wear.
In the same year as the 1130's introduction, Digital Equipment Corporation introduced the smaller, cheaper, and better-selling 12-bit PDP-8, recognized as the first successful minicomputer.
In contrast, generic coding, which began in the late 1960s, uses descriptive tags (for example, "heading", rather than "format-17").Out of an estimated 10,000 systems produced, the following are known to exist as of 2025: Speculation on why the product was given the number 1130 centered on the following possibilities: Others have speculated that the existence of the IBM 1130 explains why no computer designated "11/30" ever appeared in the PDP-11 family of machines.