Albert is a Windows emulator for the Tatung Einstein TC01, written by Stephen Dobbs. It is the easiest way to get an Einstein running on a Windows machine: there is no installer, no registry use and no runtime to chase down. Unzip it and run it.
It is built against Ric Hohne's commented disassemblies of MOS 1.2 and XtalDOS 1.31 and 2.02 rather than guesswork, and it models the peripherals the firmware itself documents: the TMS9129 video in all four modes with sprites and the fifth sprite flag, AY-3-8910 sound, the FD1770 floppy controller with real rotational timing, the Z80 CTC and PIO, the 8251 serial port, the ADC0844 and the 80 column card. MOS 1.21 runs as well.
If you are on macOS or Linux, or you want the machine MAME models, see Setting Up MAME to Emulate the Tatung Einstein instead. The two are complementary: Albert is quicker to get going on Windows and has a debugger built around the annotated firmware sources; MAME runs anywhere and writes changes back to MFI disc images.
Albert is on GitHub: github.com/dobbo2k/albert-einstein-emulator. Download albert-windows-x64.zip, about 2.5 MB, unzip it anywhere you like and run albert.exe.
The folder holds the executable, SDL3.dll (which has to stay beside it) and a roms folder. Nothing else is needed. Our Albert entry in Downloads points at the same release.
Albert needs an Einstein MOS ROM to be a machine at all. The 8 KB MOS 1.2 image is the one everything in the project is written against, and it is in our library as Einstein System ROM (MOS 1.2 and 1.21).
Put it in the roms folder. If it is called einstein.rom it is loaded first; otherwise Albert checks every file ending .rom and uses the first one that really is an Einstein ROM. The name does not matter, because the contents are hashed to identify it. You can also pass a path on the command line, or use File then Open.
From a command prompt:
albert.exe --disk mygame.dsk
Some discs boot straight into the program. Others boot XtalDOS to a 0: prompt, where DIR lists what is on the disc and you type the program's name to start it.
To put a disc in while Albert is already running, use Media, then Drive 0, then Insert, or simply drop the file onto the window.
A disc you insert after starting will not boot on its own. Use Machine, then Boot disc. This is the machine's behaviour rather than the emulator's: MOS looks at the drive once, at reset, so a disc put in later has to be asked for. A disc already in the drive when Albert starts boots by itself.
The Einstein's special keys sit on the nearest Windows equivalents.
| Einstein | Windows |
|---|---|
| ALPHA | Caps Lock |
| GRAPH | Alt |
| CONTROL | Ctrl |
| BREAK | Pause |
Ctrl and Pause together, which is what a real Einstein wants for a warm start, cannot work on Windows. Holding Ctrl turns Pause into a different key and the keystroke never reaches the program. Use Ctrl and End instead; it does the same job.
The menu is driven with the mouse, and Alt does not open it. That is forced rather than chosen: Alt is the Einstein's GRAPH key, and the arrows, Enter, Space and Escape are all keys on the Einstein's own keyboard, so they belong to the machine.
| Key | Does |
|---|---|
| F9 | Run or pause |
| F11 | Full screen |
| F12 | Show or hide the debugger |
Options, then Joysticks. Joystick 1 defaults to the numeric keypad, which is the one part of a Windows keyboard the Einstein's own keyboard does not use, so it costs the machine no keys.
The Einstein had two joystick interfaces and software uses one or the other, so Albert drives both at once: the analogue sticks read through the ADC, and a digital stick on the PIO. You should not have to work out which one a game expects.
F12 opens it. It disassembles against named, annotated firmware source, has memory and video RAM inspectors, breakpoints on both address and I/O port, and save states. The annotated sources it reads ship in the roms folder.
Albert writes albert.cfg and albert-layout-v3.ini beside the executable the first time it runs. Delete them to go back to defaults.
The Einstein firmware is Tatung's copyright and commercial disc images belong to their publishers. Albert itself is separate from both.
From the Albert project's own documentation and the notes that ship inside the release, checked against the files in the download. It has not been run here, because Albert is a Windows program and this machine is not. If you spot something that does not match the emulator in front of you, tell us and we will fix it.