The FACOM 128A, which was completed in 1956, was the first domestically produced relay-based business computer. Developed by Fuji Tsushinki Manufacturing Corporation (today, Fujitsu), the first machine was delivered to the Ministry of Education’s Institute of Statistical Mathematics in September 1956.
The 128A was based on experiences with the FACOM 100, but the circuit behavior and the calculation methods were redesigned from the ground up, giving the new computer two to five times the calculation speed of the FACOM 100 and much more memory capacity. The upgraded FACOM 128B was completed in May 1958 based on the usage experiences of the 128A. A FACOM 128B machine is on display at the Toshio Ikeda Memorial Hall at Fujitsu’s Numazu Plant. It is thought to be the world’s oldest computer still in working condition.
- 1.FACOM 128A
- The FACOM 128A was initially called the FACOM 128, but this was later changed to the FACOM 128A. The basic feature set that would later be incorporated in the FACOM 128B was already present in the FACOM 128A. The following describes the characteristics of the FACOM 128A.
- （1）Hardware overview
- Asynchronous control circuitry At the time, when circuit complexity was much lower than today, this circuit put an emphasis on processing speed.
- Memory units The 128A used a crossbar switch, which was just beginning to be used in telephone switchboards at the time. The general-purpose memory space for calculations was 180 words. One word consisted of 69 bits, which included a redundant section for self-checks. Besides the general-purpose memory space, there was tape memory, print memory, special memory, and other memory spaces. For example, the tape memory, which consisted of four words, was used as a memory space for sequential processing, as each word represented a paper-tape punch and reader pair.
- Non-stored programs Programs were supplied to the computer via paper tape or paper cards (Fuji Cards).
- Index registers On the FACOM 128A, a memory space equivalent to three registers was assigned to what was called the address modification unit.
- Self-check function and auto re-execution function The 128A was equipped with a self-check function for calculation results and an auto re-execution function to ensure the reliability of calculations.
- （2）Numeric codes and numeric precision
- Decimal calculations and bi-quinary codes Calculations were done in decimal form to take advantage of the computer’s capabilities, but numbers were expressed as bi-quinary coded decimals, consisting of seven bits to make use of the self-check ability.
- Floating-point representation with eight significant digits to the ±19th power One number (one word) was represented as a signed decimal with eight significant digits to the ±19th power (this representation was called moving decimal point at the time). Thus, one number (one word) consisted of 69 bits, which included a redundancy section for self-checks.
- （3）Programming assistance functions
- Mathematical constant memory unit This memory unit stored mathematical constants frequently used in programs. The memory unit used a simple format that could not be rewritten. It held about 50 constants, including the numbers 0 to 10, the fraction 1/10, -1, π, sin 15, log (e) to base 10, and log (10) to base e. The mathematical constant memory unit had a capacity of 85 words, but some were left blank for future expansion.
- Embedded instruction unit This unit hardwired frequently used subroutines. It used the same simple method as the mathematical constant memory unit. Embedded subroutines included finding the product, quotient, and square root of complex numbers, logarithms, and some trigonometric functions and inverse trigonometric functions. The embedded instruction unit could hold 50 subroutine entries including blank entries for future expansion.
- The following are some additional notes on several of the above characteristics that are particularly distinctive. Fujitsu engineers learned from the FACOM 100, the company’s first relay-based computer, that the advantage of a computer lay not only in its calculation speed but also in the fact that it made no mistakes. Following this design philosophy, relays were used as logic elements instead of vacuum tubes precisely because of their higher reliability, and all models after the FACOM 100 included self-check error-checking functions and auto re-execution functions to handle relay contact failures and other mechanical problems.
The FACOM 128A performed its calculations in bi-quinary coded decimals, instead of the binary codes that would become nearly universal in later computers, as a result of balancing the efficiency of the self-check function and the speed of calculations. If binary notation were used internally, conversions to decimal notation would be needed for each I/O operation for external use, which would lower the overall performance. At the same time, to perform the self-checks quickly, numbers had to be represented in a way that simplified the checking for errors in each number. Taking both of these factors into account, the FACOM 128A used bi-quinary coded decimals consisting of seven bits for its numeric code.
- 2.FACOM 128B
- The FACOM 128B, which was completed in May 1958, included the following performance and usability upgrades based on usage experiences with the FACOM 128A.
- （1）Performance enhancements due to circuitry and other improvements
- Partial performance comparison of the FACOM 128A and the FACOM 128B
Calculation Type FACOM 128A Performance FACOM 128B Performance Addition and subtraction 0.15 seconds 0.1 to 0.2 seconds Multiplication 0.15 to 0.4 seconds 0.1 to 0.35 seconds Division and square roots 0.2 to 1.0 seconds 0.1 to 1.4 seconds Multiplication of complex numbers 1.8 seconds 1.6 seconds Log x to base 10 5 seconds 3.5 seconds 16-digit addition or subtraction n/a 0.6 seconds
- 16-digit additions and subtractions This capability was added for better performance in precision calculations.
- Partial performance comparison of the FACOM 128A and the FACOM 128B
- （2）Better usability
- Addition of user-configurable mathematical constants The mathematical constant memory was rethought for the 128B. The 50 or so fixed constants on the 128A were narrowed down to about 20 fixed constants. At the same time, two mathematical constant card readers were supplied so that users could configure up to 40 pairs of mathematical constants. This gave the computer more flexibility.
- Provision of a user manual Today, it is a given that computers come with a user manual but that was not the case in the 1950s. The manual supplied with the FACOM 128B was pragmatic and to-the-point and was written in a detailed fashion to address the needs of many kinds of users.
- The FACOM 128B, with its improved performance and usability as noted above, was used in a multitude of numeric calculation fields such as multi-order simultaneous equations, higher-order algebraic equations, eigenvalue problems, differential equations, integral equations, statistical analyses, and Monte Carlo methods. It was also used as a practical business machine. In industry, it was widely used for such applications as camera lens design, design of the YS-11 domestically produced passenger airplane, and calculation services.*
*Japan’s first for-fee calculation service was started by the Yurin Denki Seiki company in 1956 using a FACOM 128A.