Overview
An emulator for the Texas Instruments TMS1100, the 4-bit microcontroller from 1975 whose family powered countless late-70s/80s electronics -; from Simon to the controller in the Speak & Spell. The project wraps the chip in a recreation of the Radio Shack Science Fair Microcomputer Trainer: hex keyboard, speaker, seven binary LEDs, and a 7-segment display.
This one's personal -; Josh spent many hours with the real kit as a kid and still has a working one. It's a fun way to play with machine code, and a nice hands-on door into an important chapter of computing history.
Background
The TMS1000 series was the first microcontroller cheap enough to put inside a toy. Before it (1974), “a computer” meant a machine you went to; after it, computers started hiding inside things and nobody called them computers anymore. The trainer was a kit built around exactly that chip, designed to teach people to program it directly -; no app, no language, no operating system, just you and the silicon.
How It Works
The chip core (src/tms1100.js) is a dependency-free ES module that runs in
both Node and the browser. It models the genuinely weird internals: the LFSR program
counter (so addresses aren't sequential), the micro-instruction datapath, status logic,
page/chapter branching, a one-level subroutine stack, K inputs, R-output latches, and the
O-output PLA. Around it, a trainer module wires up the 5×4 scanned keyboard, the
binary LEDs, the speaker (which shares a line with an LED bit, just like the real kit), and
the 7-segment display.
Run npm start and browse to a front panel with a working keypad, LEDs,
7-segment, sound, ROM/PLA loading, and save/load. Without the original ROM files it still
runs a built-in demo (an LED chaser; the hex keys beep), so you can try it without hunting
down the mask ROM. With the real mp1312 monitor ROM in place, the built-in
programs work -; press RESET, a digit, then RUN to reach the Electronic Organ,
Automatic Tunes, a Simon-style guessing game, Rat Bashing, Tennis, a timer, and a Morse
player.
Current Status
Working and tested, with the front panel and built-in programs all functional.
- 54 tests cover documented chip edge cases (bit-reversed operand fields, status persistence, call-within-call corruption, chapter transfer in call mode) plus the board wiring, the demo ROM, and the PLA parser.
- When the real ROM files are present, integration tests run against the actual MP1312 monitor.
- Five pilot lessons (binary counting, your first program, loops & swaps, machine decisions, multi-digit values) pair with the emulator as a computer-history teaching unit.