The Singer System Ten was a small-business computer manufactured by the Singer Corporation. The System Ten, introduced in 1970, featured an early form of logical partitioning. The System Ten was a character-oriented computer, using 6-bit BCD characters and decimal arithmetic.

In the early 1960s, The Singer Sewing Machine Company had a dominant share of the world market in domestic and small industrial sewing machines. By 1962, its chain of retail stores were selling their machines, fabrics, haberdashery and patterns – everything for the housewife who made clothes and furnishings. There were 175 retail stores in the U.S., and many in Europe as well. Like many chains of small retail stores with a wide product range, stock control and stock swapping were critical to cash flow and profits. Under the leadership of its CEO, Donald P Kircher, Singer therefore approached several computer manufacturers, inviting them to bid for the design and manufacture of computers which could connect to the several tills in each store, and act as the central point for collecting real-time information on stocks and sales. IBM and NCR, then the world’s largest computer companies, rejected the offer to bid, and so did some others. The only company to take up the challenge was Friden, an American company based in San Leandro, California which made desktop calculators and accounting machines based on punched paper tape. Singer accepted Friden’s bid.

Singer System Ten

In 1965, Singer bought out Friden, setting it up as Singer Business Machines. It then designed a computer, originally called the Business Data Processor (BDP) and soon renamed the System Ten. In 1969, Singer Business Machines created a subsidiary, the Advanced Systems Division, in each Western European country to launch and market the Singer System Ten. Newly appointed Managers and Directors were trained in the technology and the marketing strategy, and the Singer System Ten was launched throughout Europe on 2 April 1970.

Singer System Ten

The design of the System Ten was revolutionary, because of the special requirements of what are now called "point of sale" systems. The machine had no operating system that scheduled the use of the processor: instead, it would have up to 20 'partitions' each of which had dedicated memory of up to 10 kilobytes, and a common area that all partitions could access, limited initially to 10K in the earlier models but expanded up to 100K in later ones. The system was called the System Ten because it performed all of its computations in decimal, as opposed to its counterparts which operated in binary. (It was never called "System 10", with or without a hyphen, although many countries tried to rename it. In Spain, the complaint was that "System Ten" means "Hold the system!").

Singer System Ten

Each partition in turn would handle up to 10 I/O devices, depending on the partition type. For devices such as terminals, printers, card readers and punches, a Multi-Terminal IOC (input-output channel) was installed, which ran at about 20 kbit/s. The partition would respond to CPU I/O instructions to retrieve and transfer data in bursts from terminal devices to main memory, there were no small or single character transfers of data to reduce the demand for access to the processor memory. The processor would cycle through each partition in turn, bypassing those that had an I/O instruction in progress, and executing instructions in the others until either a new I/O was posted or 16.7ms (20ms in Europe) had elapsed and a successful branch instruction was encountered. Theoretically it was possible to "hog" the processor if a successful branch or I/O instruction was never encountered.

There were several other types of partitions that could be installed, for the retail terminals an MD (multi-data IOC) was used, which could control up to 10 of them. These devices buffered an entire transaction which was sent in a burst as a speed of 1200 bits per second. As all transfers were made directly from the partition into memory, it was only possible to have one active transmission per terminal at a time, which could cause some devices to 'time out' during transmission on a busy system. In addition, three types of serial communications controllers were available, a synchronous communications adapter, which was capable of emulating the IBM 2780 terminal of the day, however in ASCII, not in EBCDIC, and an asynchronous version of the same was also available, but both were limited to line speeds of no more than 2400 bit/s, the maximum dial-up rate of the day. Another serial controller called the Asynchronous Terminal Adapter (ATA), enable a character-oriented terminal to be interconnect, at a maximum speed of 300 bit/s.