1802 Membership Card Loader

So I built Lee Hart’s slick little 1802 Membership Card and its Front Panel card. Next I wanted to load some programs onto it! There was that nice DB-25 connector all ready to connect to my PC’s parallel port. However… I’ve got a Mac, and haven’t seen a computer parallel port in perhaps a decade.

My solution to this problem was to create my own interface hardware based on an Arduino. I considered using a Spark Core to allow doing things wirelessly via WiFi, but decided that for this purpose the Arduino was something more people were likely to have, and it was just a somewhat simpler solution.

The final design uses an Arduino, a 16-line I2C port expander chip, and some software. The software consists of the Arduino program and a Python program that runs on my Mac. Since it’s Python, it should also run on a Windows system, a Linux box, etc.
You can also forego the Python side of things and directly control the Arduino loader from a terminal, or from your own software if you prefer.

Why go to all this trouble? Just a fun little project!

It’s been a good mental exercise and a nice trip down memory lane.

Here is the Git repository with the source code and documentation

1802 Loader Documentation

Coming up next – an 1802 Emulator


5 responses

  1. Nice work. “Coming up next ā€“ an 1802 Emulator”.
    What kind of an emulator?
    There are many emulators and simulators around.


  2. Wow, very cool simulator on your site.

    The emulator I’m working on is for the Mac and mainly designed to let me run FIG-Forth. Will probably never be very polished, but I do plan to release the source and maybe a binary at some point.

    I have seen several of the very well-done emulators out there, so I don’t think mine brings much to the party. Written as much as a fun exercise as anything. šŸ™‚

  3. Just for your information, non-backwards compatible changes has been implemented in the python bincopy module with the intention to make it easier to use. A few minor changes to mcard.py are required to make it work with the latest version.

    File File class has been renamed to BinFile and the add_xxx() functions does not take a file like object as argument, but a string instead. There are new add_xxx_file()-functions that takes a filename as argument.

    Documentation: http://bincopy.readthedocs.io/en/latest/

    Sorry for the inconvenience.

    1. Erik, thanks for the info. I’ll add making those updates to my to-do list. And thanks for such a useful module!

    2. Changes needed for the new bincopy version have been made. Nice API changes IMHO – I got to eliminate some code! šŸ™‚

Leave a 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 )

Twitter picture

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

Facebook photo

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

Google+ photo

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

Connecting to %s

%d bloggers like this: