ET-3400 Microprocessor Trainer · Volume 4
The EE-3401 Course and Using the Trainer
The ET-3400 was sold as half of a pair. The other half was EE-3401 Microprocessors, a home-study course in binders, audio-visual flip charts and records (later cassettes), with a bag of parts for the experiments. The course taught number systems, the 6800 and its instruction set, and then interfacing, and every experiment was done on the trainer. This volume describes the course as Heath sold it, then how the trainer is used from its keypad (the monitor’s commands, entering a program, breakpoints and single step), and finally the ETA-3400 accessory, which turned the trainer into a small computer with a terminal, a cassette recorder and BASIC.

4.1 The course as sold
The Christmas 1977 launch page described a “three phase approach”. Phase I, in eight lessons of “concise self-study texts”, covered number systems and codes, microcomputer basics, computer arithmetic, an introduction to programming, the 6800 (two parts) and interfacing the microprocessor (two parts). Phase II added six audio-visual lessons on programming, designing with microprocessors and semiconductor memories. Phase III was “19 informative experiments” on the trainer, “divided into programming and interfacing applications”. The course came with “62 electronic components including two 2112 256X4 RAM’s, 1406 digital-to-analog converter, 7401 and 301 op amps, and a variety of other microprocessor oriented devices”, so that “no additional components are necessary to carry out the experiments” (Christmas 1977, p. 100).
From 1978 the catalogue described the same material as ten units (Fall 1978, p. 88):
Table 1 — From 1978 the catalogue described the same material as ten units ([Fall 1978, p. 88](https://www.worldradiohistory.com/Archive-Catalogs/Heathkit-Catalogs/Heathkit-1978-Fall.pdf))
| Unit | Title | Content (catalogue wording, shortened) |
|---|---|---|
| 1 | Number Systems and Codes | decimal, binary, octal, hexadecimal; conversions; binary codes |
| 2 | Microcomputer Basics | terms and conventions, computer words, executing a program, addressing |
| 3 | Computer Arithmetic | binary arithmetic, two’s complement, Boolean operations |
| 4 | Introduction to Programming | branching, conditional branching, algorithms |
| 5 | The 6800 Microprocessor, Part 1 | architecture, instruction set, addressing modes |
| 6 | The 6800 Microprocessor, Part 2 | stack, subroutines, input/output, interrupts |
| 7 | Interfacing, Part 1 | interfacing fundamentals, RAM, displays |
| 8 | Interfacing, Part 2 | switches; the Peripheral Interface Adapter (PIA) |
| 9 | Programming Experiments | binary/decimal and hexadecimal training programs, straight-line programs, arithmetic and logic, branches, addressing modes, stack, subroutines |
| 10 | Interfacing Experiments | memory, clock, address decoding, data output and input, the PIA, audio output, key matrix, parallel-to-serial, D/A and A/D conversion |
The parts kit was listed as including “two 2112 256x4-bit RAM’s, 6820 PIA interface chip, 1406 digital to analog converter, 741 and 301 op amps”. It assumed “a knowledge of electronics equivalent to Heath’s Digital Techniques Program”, which is the ET-3200’s course. An optional final examination with a pass mark of 70 per cent earned 8.0 Continuing Education Units and a Certificate of Achievement. Optional 35 mm slides (EE-3401-1, $60.00) or a filmstrip (EE-3401-2, $20.00) duplicated the flip charts for a classroom (Fall 1978, p. 88).

The whole 1977 course survives in one Internet Archive scan: the trainer manual followed by the ten unit books, each a separate Heath publication with its own part number and “Copyright © 1977” (Unit 1, Number Systems and Codes, is 595-2039-02) (Internet Archive, ET-3400 manual and training). Each unit follows the same pattern, which the catalogue summarised as “introduction, unit objectives, activity guide, experiment, examination and examination answers”. The optional final examination came as a separate kit.



4.1.1 Later versions of the course
By 1981 the catalogue called it “our prize-winning Microprocessor Course” and showed a badge reading “WINNER, International Award, Society for Technical Communicators” (Winter 1981–82, p. 76). The Winter 1991 catalogue, by then for the revised EE-3401-A, said it was the “winner of an international award from the Society for Technical Communication” (Winter 1991, p. 53). The year of the award is not given in either source.
The classroom edition was sold as EB-6401. Its textbook, Microprocessors (EB-6401A, part 595-3429-07, “Copyright © 1978, 1985”, tenth printing 1988), combines Books 1 and 2 of the revised course: Units 1 to 6, ten programming experiments, the unit examinations and a tear-out 6800/6808 programming card. Its introduction explains that “there are two trainers that can be used with this course”, the ET-3400 with the 6800 and the ET-3400A with the 6808, and that “both trainers operate in essentially the same manner”; the interfacing half of the course was a separate Student Workbook (Microprocessors, EB-6401A).


Around the ET-3400A Heath added further courses that used the same trainer: EE-3402 Microprocessor Interfacing (6809 and 68000, the 6850 ACIA, EPROM programming, the 6840 timer), EE-3403 Voice Synthesis (“When you finish this course, you’ll be able to make the ET-3400-A Microprocessor Trainer talk”), EE-3404 Advanced Microprocessor (6809, with an adapter module), and EE-3405 Microprocessor Applications (Fall 1986; Fall 1987, p. 64; Education History, volume 3). In Winter 1991 all three remaining microprocessor courses still listed the ET-3400-A as “Material Required” (Winter 1991, p. 53).

4.2 A first experiment
The programming experiments start gently. In Experiment 3, “Straight Line Programs”, the student enters a five-byte program at address 0000 that loads accumulator A with 21 (hex), adds 17, and stops; then a seven-byte version that adds two numbers held in memory and stores the sum; then writes one of their own to multiply 4 by 4 by repeated addition, “until it produces a final result of 10₁₆ (which is 16₁₀) in the accumulator” (Microprocessors, EB-6401A, Experiment 3, pp. 23–31). Each step is single-stepped, and the student records the accumulator and program counter after every instruction.
The experiments call the instruction 3E “HLT”, “Stop all operations”. On the 6800, 3E is WAI, wait for interrupt: it saves the registers and stops the processor until an interrupt arrives. The course used it as a halt, and the text warns that the trainer “loses control of the single-step function when the halt instruction is implemented” and that the student “must press RESET to return control to the keyboard” (EB-6401A, Experiment 3). The emulator in volume 5 treats 3E the same way, and its self-test runs these three Experiment 3 programs and checks their stated results.


4.3 Using the trainer from the keypad
After RESET the display shows CPU UP and the monitor waits for a command key (manual, pp. 45–48):
Table 2 — After RESET the display shows CPU UP and the monitor waits for a command key ([manual, pp. 45–48](https://archive.org/details/manualsplus11737))
| Key | Command | What it does |
|---|---|---|
| 1 | ACCA | show accumulator A as “Acca.4A”; CHAN then changes it |
| 2 | ACCB | show accumulator B |
| 3 | PC | show the program counter (“Pc.0040”); CHAN changes it |
| 4 | INDEX | show the index register (“In.FDF4”) |
| 5 | CC | show the condition codes as six bits under H I N Z V C |
| 6 | SP | show the stack pointer (cannot be changed) |
| 7 | RTI | resume the user program from the program counter |
| 8 | SS | single-step one instruction and show the next one |
| 9 | BR | enter a breakpoint address (up to four) |
| A | AUTO | enter an address, then key in bytes; the address advances after each |
| B | BACK | show the previous address and its contents |
| C | CHAN | replace the displayed value |
| D | DO | enter a start address and run from it |
| E | EXAM | enter an address and show its contents |
| F | FWD | show the next address and its contents |
| RESET | — | return to the monitor; clears breakpoints; memory is kept |

A program goes in one of two ways. With AUTO, the student types the start address (four hex keys) and then the program’s bytes, two keys each; the display shows each address with a prompt and advances by itself. AUTO does not accept FWD, BACK or CHAN, so a mistake means pressing RESET and AUTO again at the bad address. With EXAM and CHAN, the student opens an address, presses CHAN, types the byte, and presses FWD for the next. The manual recommends checking the last address afterwards “to be sure that you have not omitted or double entered data” (manual, pp. 48–50).

DO runs a program at full speed. The display goes blank, and the program runs “until a display is called for, until it comes to a breakpoint, or until you press the reset key”. At a breakpoint, or after a single step, the display shows the address of the next instruction and its op code; the student can then examine any register or memory location, change any of them except the stack pointer, and continue with SS or RTI, provided the program counter is not changed (manual, pp. 47 and 52).
The manual teaches debugging by walking through Sample Program 1 with breakpoints and single steps, telling the student what each display should show. It also shows the traps. Single-stepping into a monitor subroutine is slow and changes the monitor’s own working bytes; the manual’s advice is to set a breakpoint just after the JSR and press RTI to run the subroutine at full speed. Because the display pointer DIGADD and the single-stepper share RAM, single-stepping a display program puts wrong values in DIGADD, and the walkthrough explains the wrong value the student will see (C10F instead of C15F) and why (manual, pp. 52–54).
4.4 The ETA-3400 accessory: a trainer becomes a computer
In 1979 Heath added the ETA-3400 Memory and Input/Output Accessory, a flat box the trainer sat on, connected by a 40-pin ribbon cable to the expansion connector of volume 3. Its software manual (595-2271-01, “Copyright © 1979”) lists what it added (ETA-3400 manual, p. 3):
- 1024 bytes of RAM, “expandable to 4K” with the ETA-3400-1 chip set;
- “a 2K ROM MONITOR”, the Heath/Wintek FANTOM II monitor, which worked through a video terminal;
- “a 2K ROM Tiny BASIC interpreter”, Heath/Pittman Tiny BASIC, after Tom Pittman’s Tiny BASIC;
- an audio cassette interface and a serial port for a video terminal or a 20 mA teletypewriter;
- its own power supply.
FANTOM II displayed and changed registers and memory, displayed program instructions, moved blocks of memory, set breakpoints and single-stepped, and saved and loaded programs on cassette. The manual recommends 300 baud for tapes, “the recommended rate”, so that a tape could be read either from the terminal or from the trainer’s keypad: a routine in the accessory’s ROM, started with DO from the keypad, saves and loads blocks of memory using only the trainer’s keys and displays, with no terminal at all (ETA-3400 manual, pp. 18–19). An appendix reprints articles from Kilobaud magazine on Tiny BASIC, including one by Tom Pittman, with permission.


Fitting the accessory changed the trainer. Parts “to modify the Trainer are also included”, and “since this modification changes the clock frequency of the Trainer, the experiments in the Microprocessor Program using timing loops will be changed”, so Heath recommended “that all of the EE-3401 experiments be completed before adding this modification kit” (Fall 1979, p. 69). The course book later gave two versions of its one-second delay for the two speeds: about 500 kHz unmodified, 1 MHz modified (EB-6401A, Experiment 8). The modification pages bound into the 595-2021-06 trainer manual show a partial schematic of the clock section and the extra wiring to the accessory connector (595-2021-06).
The pair made a cheap complete computer. In Fall 1979 Heath offered ETS-349, “for ET-3400 owners only”: an H9 video terminal, the accessory, the 3K chip set and BASIC programming, for $628.00, a saving of $120.95 (Fall 1979, p. 69).
Sources
- Heath Company. Heathkit Manual for the Microprocessor Trainer, Model ET-3400, 595-2021-03, © 1977. https://archive.org/details/manualsplus_11737 ; 595-2021-06: https://archive.org/details/HeathkitManualForTheEt-3400MicroprocessorTrainer
- Heath Company. EE-3401 Microprocessors, Units 1–10, © 1977, bound with the trainer manual. Internet Archive. https://archive.org/details/HeathkitET3400MicroprocessorTrainermanualTraining
- Heathkit Educational Systems. Microprocessors, EB-6401A, 595-3429-07, © 1978, 1985. https://archive.org/details/6800-Microprocessors-Book-1and-2-Heathkit-1985
- Heath Company. Software Reference Manual for the Memory and Input/Output Accessory for the ET-3400 Trainer, Model ETA-3400, 595-2271-01, © 1979. https://archive.org/details/manualzilla-id-5640664
- Heathkit catalogues: Christmas 1977, Fall 1978, Fall 1979, Winter 1981–82, Fall 1986, Fall 1987, Winter 1991. World Radio History. https://www.worldradiohistory.com/Archive-Catalogs/Heathkit_Catalogs.htm
- Education History, volume 3.
- DigiBarn Computer Museum. https://www.digibarn.com/collections/systems/heathkit-microprocessor-learning-kit/
Comments (0)