Am1 is here!

48 views
Skip to first unread message

Bill E

unread,
Dec 18, 2025, 4:13:13 PM (3 days ago) Dec 18
to [PiDP-1]
Say what? Yes, (yet) another macro assembler for the PDP-1. Before you yawn, this is a full-featured assembler that understands extended memory, has cross-bank support built in, has local symbols, uses cpp, and far more. See the doc, the list of features is early on.

So why does anyone need this? Nostalgia is fine, but I've been churning out a lot of pdp-1 assembler code and after the 'nostalgic experience', I'm much more interested in productivity. This makes many things so much easier, and actually has error checking.
Oh, and it also comes with a tool to convert existing macro1 source to am1 source, 
including convering the macro1 defines to cpp #defines. And it's documented.

I've successfully converted, am1 assmbled, and run several of the usual programs including snowflake, spacewar, and pong.

If you got this far, it's implementing using modern(ish) tools, flex and bison. Internally, it generates a parse tree so whatever codegen you want to do can be easily added. As it comes, it can produce valid, assembleable macro1 source, or if you want extended memory support, rim-loadable tape images. It has its own loader that rim bootstraps to handle extended memory.

It's in my repo, https://github.com/wjenh/pidp1-mods.git in the Tools dir.
UsingAM1.pdf

Matthias Barthel

unread,
Dec 18, 2025, 4:18:37 PM (3 days ago) Dec 18
to Bill E, [PiDP-1]
Bill, this sounds awesome 👌 i take a closer look and test your new tool tomorrow.

Matthias 

--
You received this message because you are subscribed to the Google Groups "[PiDP-1]" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-1+un...@googlegroups.com.
To view this discussion visit https://groups.google.com/d/msgid/pidp-1/f379ae98-5b7f-4679-92fe-7733937c8bban%40googlegroups.com.

Bill E

unread,
Dec 18, 2025, 4:20:33 PM (3 days ago) Dec 18
to [PiDP-1]
Excellent, thanks. I've done pretty extensive testing, but I'm sure there are bugs to be found.
Bill

Glenn Babecki

unread,
Dec 18, 2025, 5:09:53 PM (3 days ago) Dec 18
to Bill E, [PiDP-1]
Wow, you just keep cranking this stuff out!  I feel like a slacker.

On Thu, Dec 18, 2025, 4:20 PM Bill E <wjegr...@gmail.com> wrote:
Excellent, thanks. I've done pretty extensive testing, but I'm sure there are bugs to be found.
Bill

--
You received this message because you are subscribed to the Google Groups "[PiDP-1]" group.
To unsubscribe from this group and stop receiving emails from it, send an email to pidp-1+un...@googlegroups.com.

Bill E

unread,
Dec 18, 2025, 6:54:57 PM (2 days ago) Dec 18
to [PiDP-1]
I haven't written this much code in at least a decade. Working with C again is so refreshing. I was completely fed up with programming in the Java world, just turned into a competition to see how many fad tools and libs one could use. Our product distribution was multi-gigs. And Java seems to be well down the throw-in-every-language-feature-anyone-ever-dreamed-of path.
It turns out the -1 is actually fun to program for. Limited, yes, but that's part of the fun. Up to a point, hence am1.
Bill

Bill E

unread,
Dec 19, 2025, 7:00:56 AM (2 days ago) Dec 19
to [PiDP-1]
And of course I found a bug. It has to do with the way cpp puts line markers in the code. Fix coming soon. But, it will work if #define expansions are on a line by themselves.
Bill

Bill E

unread,
Dec 20, 2025, 11:01:44 PM (7 hours ago) Dec 20
to [PiDP-1]
Bug fixed but not posted. I was debugging running the web intf over Delta's in-plane wifi and vpn to my home network, then vnc to my dev box. It all worked. Slowly. Sometimes tech is impressive. I'll post soon, but probably after I get home. CHM guys expressed interest in my assembler, so I guess I need to get this done.
Reply all
Reply to author
Forward
0 new messages