Singer System 10
The Singer System 10 was a small-business computer manufactured by the Singer Corporation. The System 10, introduced in 1970, featured an early form of logical partitioning.
The System 10 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.

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 10. In 1969, Singer Business Machines created a subsidiary, the Advanced Systems Division, in each Western European country to launch and market the Singer System 10. Newly appointed Managers and Directors were trained in the technology and the marketing strategy, and the Singer System 10 was launched throughout Europe on April 2, 1970.

The design of the System 10 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 10 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 10" means "Hold the system!").

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 or 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.

Strictly speaking, it was not 10K, but 10,000 characters per partition as the System 10’s memory consisted of 6-bit characters. It took 10 characters to make up one instruction, so each partition was only able to accommodate 1,000 instructions. The instruction set was extremely small, simple and powerful. The original processor, the model 20, had only 13 instructions, but its successor, the model 21 had 16 instructions, and it was mostly programmed in assembler language. Although relatively simplistic in its syntax, the assembler had a built-in macro language that was extremely powerful and complex, based on a string matching and parsing language. No machine language translator since has come anywhere close to this level of complexity, probably as few understood it, and the processing time for even the smallest programs could be prohibitively long.

The machine had a longer history in North America than in the UK, which started when the Singer Business Machines division was bought by ICL in 1976. At the time of the sale ICL estimated that there were 8,000 System 10s in use around the world. ICL continued to market the system as the ICL System 10, but also attempted to wean customers off it and onto their mainstream product offering, the 2900 series, by introducing a transition machine called the ME/29. When this strategy failed, they turned to a division of Singer which made intelligent terminals, to re-engineer the system and bring it up the then modern day standards and considerable reduce its size and power consumption, and the model 25, the last iteration of the machine, was then created.

In the UK, the marketing strategy was that customers would be trained in the assembler, and would write their own programs.  This was the only serious strategic error Singer made. Some European Singer Business Machines companies ignored this strategy, and set up small internal software houses to write customers' applications. Within two years, some of these software houses were independent of Singer, and specialized in supporting their national System 10 customers. In North America, several other languages had appeared, including a "table processor" approach to computing which was simple to learn, and an RPG/RPGII compiler which was later added with the advent of a second generation assembler that included a linker, a program which could bind several assembled modules together into a single executable. There were also tools called lpgc and Super Opus (from Safe Computing Ltd.), which used a data layout from the ICL tool for updating the files to define the layout of the data. LPGC was a report tool mostly though you could accept data at the start or if you patched the machine code you could do it in flight.

Singer also created software packages for retail applications, which grew out of its installed customer base, the largest of which was at the Wanamaker's department store in Philadelphia. New installations were facilitated by only having to make customizations to the original code rather than having to re-write it from scratch each time, enabling larger installations to be turned up quickly. In England, Welwyn Department Store in Welwyn Garden City (now a branch of John Lewis & Partners) was the first to implement the System 10 as originally planned, and this became a flagship installation.

Despite its major thrust as a retail backroom machine, it was still sold as a general purpose business computer, as it did support the common peripherals of the day such as video terminals, punched cards, printers and, later, disk and magnetic tape storage for sales, stock and accounting applications. It eventually faded into history with the end of the minicomputer era, when the PC became the more popular computing platform.

References

External links
 Pages from the System 10 Programmer's Reference
 System 10 description

Minicomputers
ICL minicomputers