The Bell Laboratories MAC Tutor
for the BELLMAC-8 Microprocessor

The Bell Laboratories MAC Tutor featuring the BELLMAC-8 Microprocessor
Plenty of self-paced instruction manuals
MAC Tutor specs, MAC-8 registers
Just the memo cover sheets

This is pre-divestiture, so it still has the genuine Bell logo!
Before divestiture (the phone company "break up"), AT&T was a "regulated monopoly" whose primary business was phone service. But internally they had Bell Labs and the world's best technology in order to provide that service (and revenue).

The Bellmac-8 CPU was an important milestone because it demonstrated that AT&T could design and manufacture their own CPUs, which led to bigger things such as the Bellmac-32 CPU and the 3B2 Unix computers from AT&T Information Systems (their computer division).

What's so neat about the MACTUTOR Bellmac-8 trainer?
  1. The name. Everyone's now conditioned to think "Apple" for anything starting "MAC" or "i-".
  2. It's nearly identical to the KIM (see footnote_1)
    with 8: 7 segment displays that are segment mapped (so they can display anything just like the Heathkit 6800 trainer)
    and an ever-bouncing membrane keypad (see, it was NOT just the Sinclair ZX-80!)
  3. A built in PROM programmer (EPROMS or FLASH were not yet available)
  4. single step via front panel
  5. The assembler looks JUST LIKE "C" (which was already a mature language by the late 70s)
    so b4=*d0 copies the 16 bit word from the address in b0 into b4
    a0 >>> 2 is rotate right the 8 bit register a0 by 2 bits

Despite being an 8 bit processor similar to the Z80,
the architecture and assembler were influenced by the "C" programming language (particularly register windowing).
Like most embedded systems, it is not self sufficient. It requires a Unix host system for program compiling & linking

Most registers are 16 bits wide so it directly addresses 64k memory.
The trainer has ROM in low memory, RAM in upper memory.
The 16 general purpose registers b0-b15 are 16 bits wide but are also accessible as 8 bit registers (see the register map)

There are only 4 "real" registers
The 16 general purpose registers are in RAM.
The "RP" register points to the block of registers
In short, a very capable processor compared to others.

Footnote 1: similar training kits
This says it well:
MOS KIM-1 History:Commodore MOS / CSG KIM1

In August 1974 eight Motorola employees including Bill Mensch and Chuck Peddle quit and went to work for a small chip manufacturer called MOS Technologies. By June of 1975 they had developed samples of the 6502 processor and wanted a system to demonstrate it's power. The chip was only US$25 at a time when the lesser Motorola 6800 was selling for $200.

In 1976 MOS build the worlds first single board computer the KIM-1. Of course it used the 6502 (clocked at 1 Mhz) and it came with 1K RAM, built in ROM, Hex Keypad, LED Display, 15 bidirectional input/output ports and a Cassette Interface. These machines came fully assembled although they lacked a power supply.

The SYM-1 is a comparable evaluation single board system to the Mactutor.

I'm tempted to label some of our rooms "NO Intel Inside!" to emphasize how there used to be many more CPU sources and architectures.

Footnote 2
Several other computers have registers residing in memory: That's kind-of a "cheat" since it uses external memory with the consequence of the RAM access delay
whereas "true" registers are high speed and work totally internal to the CPU or co-processor.

In-core registers are normally used as non-overlapping blocks to save/restore ALL registers such as for handling interrupts
(although some processors have an alternate register set to facilitate that).

The BUMP and DEBUMP instructions allow for incrementing or decrementing the RP (register pointer)
for register windowing where the registers intentionally overlap for argument passing for function calls.

other resources

Rolf Levenbach donated the Bell Laboratories MAC Tutor.