A Little Atari 810 Disk Drive

A tiny working model of a retro computing icon offers a blend of nostalgia and sillyness.

 

Booting

My first computer was an Atari 400. My first disk drive was the magnificent Atari 810. Overwhelmed by a recent wave of nostalgia from playing Zork for the first time in 30 years I have built a working model of an Atari 810 that uses 8Gig microSD cards instead of 5 1/4 inch floppies to emulate up to 8 drives. Maintaining the relative dimensions of drive to media, the model is somewhat smaller than the original.

Ontop
Relativesizes

Some numbers

The original 810 managed 90k per disk and had a volume of about 30,000 cm3. Assuming a 8Gig card the new version can store about 90,000 disks and at 5 cm3 only takes up 0.000167 times as much space. So it is a lot bigger and a lot smaller. Progress eh?

How it works

The Atari 810 (and subsequent 1050) drives are “smart” serial peripherals. The Atari OS communicates drives, printers, modems and devices using the SIO (“Serial Input/Output”) protocol. SIO devices connected to the Atari with a chunky 13 pin connector.

Sio

The Atari addresses 5 bytes commands to peripherals by lowering pin 7 (Command) and transmitting 19200 baud asynch serial on pin 5 (Data Out). If the peripheral recognises the command (‘1′,’R’,1,0 for a read from disk 1, for example) it acknowleges the command and responds with data on pin 3 (Data In) at a pokey 19200 baud by default. Pin 10 can supply 50ma of 5v.

Sioread

Hardware

The hardware is pretty simple: a LPC1114 microcontroller, a microSD slot, a 3v3 regulator, a led and some caps. I used the 1114 because they are cheap and I had them lying around after building the Wikipedia reader: just about any 3v3 micro with SPI and a UART would also work fine.

Schematic
Boardandcase
Beforepainting

The enclosure is a 3D print from Shapeways. This is the first time I have used them and I have to say I was delighted bt the experience. My inexperience in 3D modeling is evident but Shapeways sent me a lovely collection of little enclosures in various materials. I tried to make it as small as possible and still accomodate the microSD card. Testors enamel completed the look (make sure you mix in some olive with the light tan and cream).

Model

Software

The microcontroller code emulates up to 8 Atari drives. At power on it checks for a microSD card, mounts a Fat16 or Fat32 file system and scans the card for .ATR and .XFD disk image files commonly used with Atari emulators. It also looks for XEX files which are Atari executables, another emulator mainstay. The code then “inserts”  the BOOT.RUR image into drive 1 and waits for the Atari to start sending commands during bootup.

BOOT.RUR is a UI app written in C and compiled with cc65. Because the drive has no input or display we use this app running on the Atari to select disk images or applications. Cursor keys select the image or xex application, moving off the left or the right edge of the screen will page the list. Keys ‘1’ …’8′ will insert the selected item into drives ‘1’..’8′. The space bar will eject the disk, the return key will boot the selected image or xex. If an xex is selected, the firmware will synthesize a kboot disk image to load and execute it.

Incontext
Screen

It is electrically possible to write an Atari app that can reflash the firmware but so far this is left as an exercise to the reader. The board pinout happens to be the same as a FTDI serial cable so inital firmware downloads can happen through FlashMagic.

As noted earlier, 19200 baud is pretty pokey by modern standards. Other drive and dos vendors came up with various tricks to make the serial run at 38400 or 57600 or beyond. This board supports a common 57600 baud mode so if you tire of the nostalgic thweep-thweep-thweep you can speed things up a bit by using MyPicodos or similar.

There are lots of good commercial and open source emulators and serial cables that are much more complete (and a little more practical) than this one. I am amazed at the continuing innovation on this platform: check out Yoomp and Crownland and compare them to titles released in the 80s.

3D model, PCB, schematics, NXP and Atari code on github shortly.

3D model, PCB, schematics, NXP and Atari code at https://github.com/rossumur/littleatari810

Until next time,

Rossum

 

 

Advertisement

34 thoughts on “A Little Atari 810 Disk Drive

  1. idknow

    I bow to your ingenuity, cleverness, tilted thinking and sheer audacity to do the miniture…

    AWESoMMMMMMMMMMMMMME!!! 🙂

    invokage to godlyhood NOT to be inferred! tyvm. 🙂

    Reply
  2. idknow

    I bow to your ingenuity, cleverness, tilted thinking and sheer audacity to do the miniture…

    AWESoMMME!!! 🙂

    invokage to godlyhood NOT to be inferred! tyvm. 🙂

    Reply
  3. atari800

    Seriously, I need to buy one of these, as a kit or preferably built complete, and so do a lot of people over on Atariage.com

    Reply
  4. Anonymous

    verrry nice job done 😉
    im jealous, the atari 400 was my first drug too,
    and i always wanted to bild a small sd-emu over the last couple of years 🙂

    Im sure, the old 8bit hardware will last forever – compared to all the new hardware stuff we now have… so the only topic to solve are these old floppy drives.

    Thanx for your short & good documentation!
    i loooove your enclosure desing 😉

    Still looking for a good FPGA port for the atari8.
    So it would be possible to build the “main machine” with the same shrink-factor as your floppy design 😉

    Reply
  5. mike-montana

    WOW! I would like to purchase one from you too! I can do without the enclosure if thats a limiting issue for you. MikeMontana @ hotmail . com

    Reply
  6. ekoblentz

    This is great. Any chance you’re located in the northeast / mid-Atlantic parts of the USA? If so then I’d like to ask you some questions — please email me; evan (at) snarc.net — thank you.

    Reply
  7. scottinnh

    Eagerly awaiting the schematics drop.

    Please feel free to elaborate with more details about development, testing, debugging etc. This is fascinating stuff to read, and hardware development is just beyond the reach of many nostalgia computer users.

    What is the approximate build cost per board?

    Did you hand solder this or is this a reflow job? Or is that a stock target board?

    Thanks for this..

    Reply
  8. Anonymous

    A really nice piece of tech. Please let me know if you ever decide to produce/sell these, I would love to get one for my Atari 800 XL (which has a broken floppy AND tape deck :/ ) fishguy876 [at] cvgm.net Thanks!

    Reply
  9. Jackson Cristofer

    It’s a very nice blog you share. i am very impress on you. really you done a great job here. Thank you very much….
    Cheap Viagra

    Reply
  10. bradehog

    I have seen and visited your blog which contain useful information about a tiny retro mdel of computer.Also i shared this information to my friends.

    Order generic viagra

    Reply
  11. Anonymous

    Great going! Thanks for sharing the another informative post.I think this is the info which I am looking??Keep sharing such a informative post again.

    Generic Viagra Soft Tabs Online

    Reply
  12. Anonymous

    Would this work with a 1040 ST ?

    I have one in great working condition, bought primarily to run a fantastic program called Notator (music sequencer)

    Mike

    Reply
  13. nerotik

    This is ingenious Rossum, Is there any chance you could make me one of these? The Atari 400 was also my first ever computer system & am presently about to purchase one. This would really make a great addition & save me from having to pay for expensive 5.25″ Floppies. I really like the nostalgia & teh to scale replica of the Atari 810 5.25″ Drive. This is awesome !

    Reply
  14. Julios

    hello, after 3 years of your posting, I have a question for you… do you have this little great piece of hardware to sell? (I hope so) please let me know! thank you!

    Reply
      1. claycowgill2015

        Just a friendly ping to see if you had any luck excavating the project? (Can’t tell I’m eager to mess with it or anything.) 😉 TIA!

  15. AL

    Hi,

    I found your commits from https://github.com/rossumur/littleatari810. I am trying to build one, and got the LPC1114 flashed with the .bin file, but nothing happens when the device is connected to the Atari 800XL’s SIO port. So, I am trying to do debugging by blinking the status LED. For that I have to recompile the code.

    What IDE/compiler toolchain did you use? Thanks!

    Reply
  16. AL

    Don’t bother or waste your time to build from the source code hosted on the github site with NXP’s IDE, folks. It won’t compile, because of the below undefined SYSTICKCLKDIV symbol.

    LPC_SYSCON->SYSTICKCLKDIV = 0x02;

    I think the author (Rossum) created this, like his other projects, but will not give technical support/answers.

    I made a board, and am not able to get it to work.

    Reply

Leave a Reply to Julios Cancel reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s