More archeology: Atari MadMac assembler sources

Digging through some old disks I found the source to an old version of MadMac, a fast assembler I wrote just before I left Atari. It needed some TLC ( some of the tables were missing, and I had to recreate them). It needs more.

It compiles under Ubuntu, though not without errors. There are makefiles for MSDOS and the ST, but they almost certainly do not work. I have not done much testing other than to make sure that the included, simple files assemble without errors (I didn’t check the output). This version is almost certainly missing some fixes that Alan Pratt made after I left Atari. If any work was done on MadMac to support (say) Jaguar or the 68020 then that work will not be reflected here.

I suspect that maybe two or three people on the planet will find this interesting. Frankly, I’m embarrassed by the poor quality of the code. If you find this useful, that’s great. I might be able to answer questions, but mostly I’ll probably say things like:

“Yup, that looks broken.”

(pregnant pause)

“Nope, I’m not going to fix it.”


[Edit: Looks like “.rept” is broken, and I’ll bet that macros are, too.  Assembling clear.s, you can see that the “.rept 8” block of movem instructions isn’t expanded.  I’m unlikely to do anything with this, so that’ll be one of the first things you’ll need to fix… Have fun! 🙂 ]

Author: landon

My mom thinks I'm in high tech.

11 thoughts on “More archeology: Atari MadMac assembler sources”

  1. Thanks for sharing. I know that we all have embarrassments when we look back at some of our early works. But many of your early works affected the lives of others in a very positive way even if indirectly.

    I’m happy when I know that our backup product saved a customer who lost their data. But we don’t have the impact on the large (and nostalgic) scale you have had.

  2. Don’t sell yourself short.. My roommate in college 13 years ago was writing a c64 game in c64 asm. So there are still a number of folks out there, who either for the emulator homebrew, or still own the actual hardware, would like your code.

  3. Thanks London. Next excellent post for 8bit fans. Believe me, there are much more than two or three people interesting in this. In Poland where I come from, we have quite active Atari community. Same in Czech Republic and Germany. From time to time we got new games, demos and utilities… Moreover there are few amazing hardware extensions such as VBXE…
    Yes, it is a niche but pretty lively.

  4. A great code base, many thanks. The rept and macro issues are easily fixed as they involved a couple of good’ol pointer issues. Updating this source for the Jaguar is actually pretty straight forward, just needs a little work – the foundation is more than adequate 🙂 🙂 🙂

  5. Yes, Landon, MADMAC was indeed updated for Jaguar. I think Eric Smith worked on that and probably the guys at Brainstorm did a few changes after him.

    It had been reasonably stable for awhile at the point I left Atari in Sept. ’95. Maybe a few bug fixes but I doubt much else was done to it. I probably have source code for that version on a CDROM somewhere, buried on storage.

  6. Here’s a Christmas demo written using rmac (MADMAC’s continuation), distributed in source format only (no binary, you have to assemble the source in order to see it!): (Youtube for the lazy:

    The assembler itself is still being worked on: Yesterday I took my first shy steps towards adding 68030/40/60 support (and I guess 68881/2 as well). If that goes well, 56001 support which is more demanding of course.

    It’s quite cool how madmac is faster and more bug free then other cross assemblers out there (some of my timings showed a 7x speed difference from others). So many thanks Landon for creating it and releasing its source!

Leave a Reply

Your email address will not be published.