The Canola SE-600 programmable calculator from 1971 probably represents the ultimate development of the second-generation DTL-SSI calculator technology.
As a keyboard-driven desk calculator, the SE-600 is little more than a basic 4-function machine with square root and two memory registers. It has an internal dot-matrix printer which records all entries, operations, and results, but there is no immediate numeric display.
As a programmable machine, its power comes from its computer-like ability to execute conditional branching and nested subroutines, and from its enormous (for the time) complement of one hundred memory registers, each capable of holding a 16-digit BCD number or 6 program steps.
Programming the SE-600 is carried out off-line by flowcharting and mnemonic coding, followed by hand-assembly into numeric opcodes and addresses, and manual transfer into BCD or binary form on pre-perforated IBM cards. Multiple programs or sub-routines can then be loaded into memory through the internal card reader and executed from the keyboard.
Although it has no inbuilt mathematical functions, the calculator was supplied with extensive subroutine libraries on punched cards. These included trig and hyperbolic functions in degrees and radians, Bessel functions, logs and exponentials, powers and roots, complex numbers, and coordinate transformations.
Additional program libraries for the SE-600 were developed and sold by third parties. The machine illustrated was originally used in a surveyor's office, and has an extensive library of survey calculations on punched cards. The programs were developed by a firm of engineering consultants in Melbourne, "with the assistance of many surveyors throughout Australia".
The circuitry of the SE-600 uses almost 400 DTL ICs from the standard Texas Instruments families, with a small number of TTL and "special" chips. The mechanical delay-line memory of the earlier machines has been replaced with a solid-state version using Intel 1404 1024-bit MOS shift registers. The machine runs from a 2-phase clock at 1.3MHz, and calculates a square root in around 40mS.
General arrangement
The calculator is constructed on a pressed and welded steel baseplate about 450mm (18") square and 2mm thick. The outer cabinet is mainly aluminium, and is built up in four separate layers. There are double-skin panels, corner gussets, and extensive welded joints. The keyboard escutcheon panel is 3mm aluminium, and the front panel is a full 4mm thick. It takes 26 screws to disassemble the case.
The 14 double-sided circuit boards are mounted vertically in the card cage at the rear of the machine. The power supply board is screwed to the back of the card cage. The punched card reader is at the front right of the machine. In the foreground (ie, on the left of the machine) are the cooling fan, fuse panel, transformer, main rectifier, and the printer. The keyboard uses glass reed switches operated by moving magnets attached to the bottoms of the keys. The space under the keyboard is empty.
The power supply produces +200, +15, +9, +5, -5, -15, -23, and -100 volts DC from five separate windings on the main transformer. The mains input can be wired for 110/120/220/240VAC and is rated at 78W.
Circuit boards
The SE-600 is built on a set of 14 double-sided circuit boards, each with a component area of 280 x 120mm (11" x 4-3/4"). Each board has a 2x28 and a 2x22-way edge connector, which plug into the horizontal backplane. The keyboard, printer, and card reader also plug in to sockets on the backplane.The processor circuitry is built primarily from 14-pin SSI ICs from the Texas Instruments SN39xx, 45xx, and 158xx DTL series. There are a few chips from the (then-new) SN74xx TTL series, and a small number of Intel and Toshiba chips. In total, there are around 385 separate chips on the 14 boards. There are about 360 diodes, and 60 discrete transistors.
Board 14 (illustrated) at the rear of the card cage carries the master clock generator and the solid-state delay-line memory. (Canon's earlier calculators used mechanical (ie, acoustic) delay line memories). The memory is organised as one hundred 72-bit words, and is implemented using seven Intel 1404 1024-stage dynamic shift registers in the metal-can packages at the lower left. Readers will observe that 7 x 1024 is only 7168 bits - the missing 32 bits were provided by adding two 7491 8-stage TTL shift registers to each end of the 1404 (MOS) chain. These chips are located directly above the 1404s. The two-phase master clock is generated by the DTL/TTL chips and 3 trimmer capacitors at the upper right, and is buffered by a 7440 and the 6 metal-can transistors in the centre of the board. The clock runs at around 1.3MHz, giving a memory cycle time of about 5mS for the 7,200 bits. At the lower right are on-board +5V and -10V regulators and filters to isolate the memory from the main power supplies.Board 7
Board 7 shows the typical chip and track density on the remaining boards, and contains the only large-package device in the machine - a Texas Instruments TMS-4134-NC MOS-LSI chip in a 28-pin package. The MOS device is interfaced to the DTL logic levels with a set of 18 discrete-transistor drivers.
The card reader mechanism.
The optical reader for the IBM-standard punched cards is located at the front right-hand corner of the machine, with the card entry tray set into the keyboard escutcheon. The card is illuminated from above by five miniature incandescent lamps in the assembly just behind the feed roller, and the 12-channel photocell assembly is in the corresponding position underneath. The face of the card is printed with bit values to assist in coding, while the back is blackened to reduce reflections in the read head.
The cards are fed in one at a time by hand, and are drawn through by a DC motor and ejected vertically into a small hopper. The motor and lamps are controlled directly by microswitches on the infeed and outfeed chutes. Each card takes about 3 seconds to pass through the reader.
A circuit board mounted under the reader contains the 12 photocell amplifiers, along with data latches and synchronising circuits.
Pre-punched card detail.
The SE-600 uses 40-column pre-perforated cards that are intended to be prepared by hand. The cards are the same size (3-1/4" x 7-3/8") and have the same punch spacings as the standard 80-column cards, except that every odd-numbered column is omitted (ie, column n on the Canon card is in position 2n on the standard card).The illustration shows a small portion of a program card with the pre-perforated punch outlines clearly visible on the printed grid. The calculator user could simply press out the chads with a suitable tool in the positions where a hole was required.
The portable card punch.
The more serious programmers from the 1960s would most likely have been equipped with a device like this IBM "Port-a-Punch".IBM Port-a-Punch detail.
The "Port-a-Punch" holds the card securely around the edges and supports it on a series of lengthwise rubber strips, allowing the chads to be pressed through into the channels below. The end cover can be removed to empty the remains. A tray in the base of the unit holds a supply of blank cards ready for punching.The printer mechanism.
The rotary dot-matrix printer mechanism is about 115mm square and 150mm high, and is located near the front left corner of the machine. It prints about 4 lines per inch, and 3 lines per second, on 70mm "electro-sensitive" paper.
The paper is coated with a layer of carbon and covered by a thin aluminised film, giving it a silver-grey appearance. As the printer pins sweep across the film they are fed with short 100-volt pulses, which vaporise the aluminium layer and allow a black dot of carbon to show through.
The small circuit board contains only the motor and clutch drivers, the pin driver, and the synchronising circuits. The control logic and character generation circuits are in the main card cage.
The print head and paper transport.
The printer mechanism uses a rotary print head about 75mm in diameter, with four single pins attached at 90° intervals in the same horizontal plane. The head is driven at a nominal 600RPM by a small DC motor. A slotted disk and two photocells provide timing signals to synchronise the start of each pin scan and the start of each character position, ensuring that the character spacing remains constant even if the motor speed varies.
The paper transport is geared directly to the rotation of the print head, thus setting the spacing between the scan lines (and resulting in a slightly helical scan). Specially shaped guides and tapered rollers are used to form the paper into a precise circular arc.
A dynamic brake on the motor brings the mechanism quickly to a halt on completion of printing.
The printer pins.
The printer pins are located in tiny tubular guides attached to screwed brackets on the rotating disk, and are held forward against the paper by the even tinier hairsprings. A collar prevents the pins moving too far forward after they have passed the trailing edge of the paper.
The printer generates 5x7 characters in an 11x15 matrix, with two scan lines above and below used for thousands separators and decimal points. There are 16 numeral positions and 5 symbol positions, giving a total of 231 dots per line. At 600RPM, each pin has 25mS to complete a scan, requiring a dot clock rate of about 9kHz. The drive pulses for each dot are -100VDC and about 90μS duration.
Sample printout.
This sample printout shows 16-digit precision, thousands separators, and floating decimal points. The annotations to the right mean that the buffer register B was transferred to memories 01 and 02.
Printer parts.
The printer mechanism consists of about 50 components and sub-assemblies. It was disassembled in order to replace the O-ring drive belt for the upper feed rollers, and to remove dried grease and oil from the gear train.
To be continued...