← Back to Downloads

Einstein Disc Tools

Six Python scripts for creating, reading, converting and checking Tatung Einstein disc images. Standard library only, so they run on any modern Mac, Windows or Linux machine.
Modern Dev Tool
2026
1.1
42 KB
Cross Platform
Last Updated
September 10, 2026
Einstein Disc Tools: six Python scripts for Tatung Einstein disc images

About

Einstein Disc Tools is a set of six small Python 3 scripts for working with Tatung Einstein floppy disc images on a modern computer. They create blank .dsk images, put files on them, pull files off them, make a disc boot straight into a program, convert between the .dsk format and MAME's .mfi flux format, turn a Greaseweazle or SuperCard Pro dump of a real disc into something MAME can boot, and diagnose damaged images. They use nothing beyond the Python standard library, so they run anywhere Python 3.8 or later does.

Why This Matters

Almost every existing tool for Einstein disc images dates from the 1990s or early 2000s and only runs on old versions of Windows, often needing a virtual machine or a spare PC just to move a file onto a disc image. That has been a real barrier for anyone wanting to develop for the Einstein, preserve its software, or simply try a game in an emulator. These scripts remove it. They run natively on macOS, Windows and Linux, and slot straight into a modern workflow with MAME.

What Is in the Set

  • einstein_dsk creates a blank disc image, adds files or whole folders, deletes files, and with --boot makes the disc auto run a .COM program at power on, no DOS required.
  • einstein_dsk_extract lists the files on a disc image and extracts one or all of them to your computer.
  • dsk2mfi converts a .dsk to a MAME .mfi flux image. MAME keeps changes written to an .mfi but silently discards anything written to a .dsk, so this is how you keep what a DOS session saves.
  • mfi2dsk converts the other way, decoding the flux with a port of MAME's own phase locked loop, so files a DOS wrote in MAME come back out as a normal .dsk.
  • scp2mfi turns a Greaseweazle or SuperCard Pro .scp dump of a real disc into an .mfi that boots in MAME, which has no SCP reader of its own.
  • dskcheck examines any .dsk, .mfi or .scp and reports container damage, flux CRC failures, geometry, the boot header, directory faults, and exactly which bytes of which files sit on unreadable sectors.

How They Were Made

These tools came out of the same approach that produced the site's Z80 Assembly Course. The Einstein has never been well documented, and what does exist is scattered across old manuals that sometimes disagree with each other. So rather than trusting any single source, the format was studied from the original Tatung material and then tested, one claim at a time, by running experiments on a live machine in MAME. A blank disc was formatted, a file was written with a known name and contents, and the resulting image was read back byte by byte until the geometry, the directory layout and the block allocation were all confirmed against what a real DOS actually did.

Each confirmed fact was recorded in a growing reference that Claude Code works from, so the accuracy of that knowledge base was built up experiment by experiment before a single line of tool code was written. Sixteen numbered experiments stand behind this release. They cover the container format MAME really expects, the sector numbering, writing a directory entry from scratch and having a real DOS list it correctly, boot sector behaviour, the size limit that turned out to be wrong in the first draft, a round trip of every test disc through .mfi and back, two real disc dumps from a Greaseweazle, and a damaged image sent in by an early tester.

The result is a set of tools where every behaviour was checked against real Einstein discs and a live DOS rather than assumed, which is why we are confident enough to hand them out.

Using Them

Unzip the archive into one folder and keep the scripts together, since they find each other by name. Each one prints its own help with --help and its version with --version. A typical session puts a program on a fresh disc and boots it in MAME:

python3 einstein_dsk_v1.1.py create work.dsk --boot PROG.COM
python3 dsk2mfi_v1.1.py work.dsk

Then mount work.mfi in MAME's Einstein driver. When you are done, mfi2dsk brings the disc back to a .dsk and einstein_dsk_extract gets the files out.

These tools are new, and disc images of commercial software can have quirks the experiments never met. If one refuses an image, run dskcheck on it first and send us the output through the Contact page.

Screenshots

No items found.

Publisher

TatungBytes
Read about the publisher ➔
FILE downloads
.ZIP
ZIP Package

Get the Newsletter

New guides, disk images and community finds, roughly once a quarter. No spam, we promise, this isn't Tatung's marketing department.
Your subscription could not be saved. Please try again.
Your subscription has been successful.

Newsletter

Subscribe to our newsletter and stay updated.