In 1984 when the Atari ST hardware was being finalized, there was a need to get an operating system on it. Atari realized that with their short timeframe they could not possibly create an OS for it on their own, so they looked around for other vendors to see what was available for an OS with a graphic user interface (GUI).
Atari actually talked with Microsoft about Windows, but those talks ended quickly when Microsoft revealed that Windows was nowhere near completion.
That’s probably for the best, because Atari ended up going with Digital Research and their GEM software. Although not yet released, it was nearly complete and (I think) had a much better look and feel than Windows would have had at that time.
Although the x86 version of GEM was “almost complete”, Atari needed a version for the 68000 CPU. In the fall of 1984, Atari programmers working with Digital Research ported GEM from x86 code to 68000. This was mostly C, but some parts were written in assembly.
GEM also released for PCs in 1985, but mostly went nowhere. GUIs on PCs did not get traction until Windows 3 around 1990. But just imagine if GEM had been the winner on PCs instead…
Originally the thought was that CP/M-68K, a product that Digital Research already had, would be used as the file system OS underneath GEM. But CP/M was largely out-of-date by this point and Digital Research was already working on its replacement, called GEMDOS.
The ST computers Atari showed at January 1985 CES were running CP/M, but shortly afterwards Atari made the decision to switch to the new GEMDOS instead as it was much more capable with a hierarchical file system and better support for hard drives. This was definitely a wise decision.
GEMDOS, as its name might suggest, was very similar to PC-DOS. Its APIs were similar, but more importantly the disk format was identical. This meant that the Atari ST used the same format as PC disks!
At the time, this was not commonly known because the ST used 3.5” disks and PCs generally were still using 5.25” floppies. Plus there was a slight incompatibility with disks formatted by the ST Desktop — they could not be read by a PC. Disks formatted by a PC could be read by the ST. Other tools on the ST could format PC-compatible disks and later versions of the ST OS (TOS) would also format PC-compatible disks.
Having a compatible disk format made file transfer between PCs and STs trivially easy: just copy stuff onto and then from a floppy. For a short while there was a market for external 5.25” drives for the ST, but PCs soon also switched to 3.5” disks making things even easier. The Amiga and Macintosh used their own formats and thus needed conversion tools to be able to read and write to PC disks.
This decision to go with GEMDOS even bears fruit to this day. I can very easy download files from the internet on my Mac, copy them onto a 3.5” disk using a USB drive and then stick that disk in an ST and copy the files off of it. I do this all the time from my Mac to my Mega STE. I have a used LaCie USB disk drive that I picked up on eBay because I read somewhere that older drives worked better with 720K disks.
Using disks is not perfect as the Mac likes to put hidden files on the disk that tend to confuse the ST, but I just tell it to ignore them and all is well. Things would probably go better if I copied the files from an actual PC with Windows onto the disk.
Really the only tricky bit is that for most STs you have to use 720K double-density disks. Only the Falcon030 and late-model TTs and Mega STEs can use high-density floppy disks.
Going back to DOS, in the 80s the Atari ST was a wonder-computer that excelled at emulation due to its speedy 8Mhz 68000 CPU. In particular it was able to run DOS programs with the help of 3rd party software, the most famous of which was pc-ditto (released in 1987) to great acclaim.
Although pc-ditto did run DOS and many DOS programs, because it was a software emulator it was slow. An 8Mhz ST ran at about half the speed of the original 4.77Mhz IBM PC. This was acceptable for some application programs, but obviously useless for any games.
I happen to have a Mega STE which runs at 16Mhz and perhaps somewhat surprisingly, pc-ditto does work on it. Here’s a quick look.
I booted with the pc-ditto disk and switched to Medium resolution. There are several files in the STPROGRA folder on the disk.
The PCD_MENU.PRG program lets you adjust the settings, such as the default drives, the IBM video mode, minor keyboard settings, ST colors to use in PC mode and mouse emulation. I didn’t bother changing anything.
I then ran the program PC_DITTO.PRG. The launch screen appeared and prompted for an MS-DOS disk.
I inserted an MS-DOS 3.3 disk that I had prepared and pressed enter. After some clunking and whirring, the DOS prompt appeared asking for the date and time.
Alas, it appears DOS 3.3 is not Y2K compliant so I had to give it a fake date. Then the classic A> prompt appeared.
I typed dir *.exe to see what programs I could run and saw the there was BASIC.EXE. I typed basic at the prompt and GW-BASIC 3.22 loaded.
I typed in a quick program and pressed F2 to run it.
This simple program is an infinite loop, but unfortunately I could find no way to stop it. Supposedly Control-Break on a PC should break the program. And according to the pc-ditto docs, the / key on the number pad is the break key. But pressing Control-/ did not break the program. Nor did any other key combination I tried, so I had to turn off the computer, which to be fair was often a common thing you had to do when programming back then.
There’s obviously no practical reason to use pc-ditto these days, but it was briefly fun to get it working again. I remember you could even set it up to work with a hard drive partition so you could more easily run PC programs such as Lotus or Turbo Pascal. I think I just used it with floppy disks back then.