RetroBrew Computers Forum
Discussion forum for the RetroBrew Computers community.

Home » RBC Forums » General Discussion » Building an Apollo Guidance Computer
Building an Apollo Guidance Computer [message #9973] Sat, 18 June 2022 21:29 Go to next message
Andrew B is currently offline  Andrew B
Messages: 467
Registered: October 2015
Location: Near Redmond, WA
Senior Member
Administrator
As I'm sure many of noticed, I've been "out of the game" for the last ~2.5 years as far a projects - between being super busy at my prior job, the pandemic, changing jobs, moving across the country, and my spouse going through some challenging and still ongoing chronic illness stuff, there hasn't been a lot of time or energy.

However there is one project that's in the back of my mind, and this summer I am hoping to start making some progress on this - and that is to build a working Apollo Guidance Computer, implemented with 7400 series logic.

I will say - this is a huge undertaking, and I'll post updates here to share with the group, but I am unlikely to have a lot of spare energy to share Gerbers/support other builders/that sort of thing. Maybe when it's 'working', and I can publish a 'known good' configuration.

I first started thinking about this back in 2013, but at that point I had yet to even built a Zeta yet, so a project this daunting was out of my depth. Also, not all of the schematics were available at that point in time. And in 2013, the last time anyone booted up an AGC was probably the late 70s when they used them for a fly-by-wire research project using a modified F-8 fighter at NASA Edwards, or maybe when the last Deep Submergence Rescue Vehicle was retired (the DSRV used some AGG derived hardware to maintain precision positioning over seafloor while conducting rescue missions - although there is not a lot of public information on this system, just a couples sentences in books on the AGC).

But now, in 2022 I can stand on the shoulders of giants:
-Over the last few years a group of AGC enthusiasts has gone to the national archives and scanned and digitized an enormous amount of data on the AGC (1800+ pages). Gate level schematics are now available for the entire machine, along with several iterations of different AGC software. These can be seen at https://www.ibiblio.org/apollo/AgcDrawingIndex.html.
-One of those very smart people, Mike Stewart, created KiCAD schematics for the AGC. He also annotated those schematics with extra metadata such that the schematics could be directly converted into a FPGA of the same exact gates - allowing the schematics to be validated before making them as hardware. Those efforts are documented at https://github.com/virtualagc/agc_hardware and https://github.com/virtualagc/agc_simulation
-Following on from the work to create the KiCAD schematics and the FPGA AGC implementation validating those schematics - Mike and an 'A-Team' of vintage computer experts restored an actual AGC to functionality for the 50th anniversary of the Apollo 11 landing. There is an entire video series on that at this YouTube Playlist
--As part of that effort, code and FPGA interface hardware was created to interface a real AGC to a modern PC running the Orbiter Space Flight Simulator, so the actual Apollo 11 landing could be flown with the real AGC talking to the simulated Lunar Module.
So, these other wonderful people have done 95% of the work here in terms of creating the tools and documentation needed to build an AGC and hook it into Orbiter and use it to run simulated missions with real Apollo era software. All I had to do was wait for other people to do most of the work for me. I had a chance to meet and chat with them at the 2019 VCF West, where they gave a demo with an FPGA AGC.

Thing left to do:
-Get the KiCAD projects for the modules ported from KiCAD 4 to the new KiCAD 6 library standards
-Route and fabricate ~27 modules with ~1500 or so 7400 series chips
-Create KiCAD schematics, route and fabricate a backplane (no backplane schematics are in the currently available KiCAD projects)
-Replicate the FPGA interface board to allow the AGC to be interfaced to a modern PC, debugged
-Get the whole thing to work!

The main action I've taken thus far is to order a kit for building a reflow oven. My intent is to use surface mount components + reflow oven for these modules, mostly so that I can save myself time and learn a new fabrication skill.

The backplane is probably the hardest part - the AGC did not use any kind of bus, it was all point to point wiring between the different modules. The original was a crazy wire wrapped 1960s backplane. I have concerns about FreeRouting actually being able to route it, and it may have to be a 4 or 6 layer board. So I'm going to get all of the module KiCAD projects updated to KiCAD 6, so I can grab the backplane portions from each and drop all those into a backplane schematic and try to run that through FreeRouting.

[Updated on: Sat, 18 June 2022 21:31]

Report message to a moderator

Re: Building an Apollo Guidance Computer [message #9989 is a reply to message #9973] Sat, 25 June 2022 11:23 Go to previous messageGo to next message
rcini is currently offline  rcini
Messages: 64
Registered: October 2015
Location: Long Island, NY
Member
That is absolutely awesome. I've watched a ton of the videos from CuriousMarc with the original artifacts and the FPGA interface. I would really love to build one, but I don't have a LEM to put it in Smile

Apollo has a special place in my heart living near Bethpage, NY. My dad worked at Grumman at the time, as an engineer fresh out of school, doing thermal engineering for the LEM (heat dissipation of the internal components).

Rich


Rich Cini
Re: Building an Apollo Guidance Computer [message #9991 is a reply to message #9989] Sun, 26 June 2022 06:23 Go to previous messageGo to next message
will is currently offline  will
Messages: 213
Registered: October 2015
Senior Member
Andrew

Sounds like a fun challenge!

I would love to build one too, sadly I suspect a 1,500 chip 27 board project probably lowers the Wife Approval Factor below my practically maintainable threshold :)

What are you planning to use for the memory -- silicon SRAMs, or something more exotic?

I read the Don Eyles book "Sunburst and Luminary: An Apollo Memoir" a couple of years ago and enjoyed it. I wish it had included large-ish extracts of the most interesting parts of the AGC programs interspersed with his commentary on how it worked, other techniques they had tried, etc.

I did find the scans of the Luminary source code and it was really interesting to read parts of them and try to piece together how the whole machine worked.

Good luck and keep us posted on your progress!

Will
Re: Building an Apollo Guidance Computer [message #10028 is a reply to message #9973] Fri, 22 July 2022 16:32 Go to previous messageGo to next message
Andrew B is currently offline  Andrew B
Messages: 467
Registered: October 2015
Location: Near Redmond, WA
Senior Member
Administrator
Mike Stewart designed a replacement RAM/ROM module that uses tandard SRAM and EEPROM chips, so I plan to follow his schematic for that.

So far I've imported all of the schematics into KiCAD 6 and totaled up the chip count - 1469 chips.

Next is to get started on a backplane schematic since that wasn't part of the original package.
Re: Building an Apollo Guidance Computer [message #10029 is a reply to message #9973] Sun, 24 July 2022 07:59 Go to previous message
tomstorey is currently offline  tomstorey
Messages: 7
Registered: January 2022
Junior Member
Do a wire wrapped backplane for that bit of "factor". Smile

Will save having to order a large, many layer PCB for it at least.
Previous Topic: MSX2 Compatible Computer Project
Next Topic: VGA3 warbled text with MSDOS setup disk


Current Time: Sat Mar 15 20:58:55 PDT 2025

Total time taken to generate the page: 0.00649 seconds