# Cromemco Bytesaver

The Bytesaver, introduced by Cromemco in 1976, was the first programmable memory board for the MITS Altair and S-100 bus microcomputer systems. The Bytesaver had sockets for 8 UV-erasable EPROMs providing up to 8 Kbytes of storage. The EPROMs could be programmed by the Bytesaver, or read as computer memory. In the history of microcomputer systems, the Bytesaver was the first viable alternative to the use of punched paper tape for storing programs, and has been called “a great advance in microcomputer technology”.

## Background

The Altair 8800, which began the personal computer revolution, was introduced in January 1975 with no hardware or software support for floppy disk or hard disk storage. When Paul Allen travelled to the MITS factory in Albuquerque, New Mexico to demonstrate what would become Microsoft BASIC, he brought with him a punched paper tape of the code that he and Bill Gates had developed. According to Allen, the 7168 byte program took 7 minutes to load from a Teletype Model 33 paper tape reader.
To reduce the time required to load software, and to support a more convenient storage medium than paper tape, Cromemco developed the first programmable solid-state storage system for the Altair microcomputer. Cromemco called it the "Bytesaver" and introduced it in the February 1976 issue of Byte magazine. With the Bytesaver the time to load Microsoft 8K Basic was reduced from 7 minutes to less than one second.

## Technology

The Bytesaver used solid-state UV erasable EPROMS that provided up to 8K bytes of program or data storage. The original Bytesaver could support either the type 2704 or 2708 EPROM. The Bytesaver came with one 2704 EPROM containing a program called “Bytemover” to facilitate EPROM programming. The EPROMS to be programmed were selected from the front panel switches of the Altair computer.
A switch on the Bytesaver card was used to turn on or off the EPROM programming voltage. With this switch off there was no chance for accidental programming of the memory. Once programmed the information was retained in the EPROMS, but the memory chips could be erased by removing them from the Bytesaver and placing them under an ultraviolet light.
Cromemco also offered a 3K Control Basic interpreter, developed by Li-Chen Wang. This very compact Basic was supplied on three 2708 EPROMS that could plug into the Bytesaver.

## Product family

The original Bytesaver, introduced in 1976, was called the 8K Bytesaver since it could store up to 8K bytes of information using eight 2708 EPROMS. One limitation of early S-100 bus microcomputer systems was the 64 Kbyte address space. Cromemco introduced the concept of bank-switching to the S-100 bus which allowed memory to be place in one of 8 banks of 64 Kbytes, thus expanding the effective address space to 512 Kbytes. The Bytesaver II succeeded the 8K Bytesaver in 1978, and supported memory bank switching.
For applications that required a ROM memory card, but did not require the ability to program the EPROMS, Cromemco also introduced a 16K ROM card. This card was named the 16KPR and was introduced in 1977.
When the 2716 EPROM was introduced, with twice the storage capacity of the 2708, Cromemco designed the 32K Bytesaver to support that chip. Unlike earlier Bytesavers that had 8 EPROM sockets, the 32K Bytesaver had 16 sockets to provide up to 32K bytes of programmable memory.
Cromemco Bytesaver Product Family :
| Model | Year Introduced | EPROM type | Programmer | Bank-switching | Maximum Capacity |
| 8K Bytesaver | 1976 | 2704/2708 | yes | no | 8 kB |
| 16KPR | 1977 | 2704/2708 | no | yes | 16 kB |
| Bytesaver II | 1978 | 2704/2708 | yes | yes | 8 kB |
| 32K Bytesaver | 1979 | 2716 | yes | yes | 32 kB |