Slashdot Mirror


Apollo On Board Computer Emulator

frankk74 writes "For those of you interested in Historical Computing and the Apollo manned spaceflights Ron Burkey has created a open source emulation of the Apollo Guidance Computer called vAGC. I use it as my desktop clock of choice. Note it only keeps mission time so after 24 hours you have reset the time :-). P.S. Another cool Apollo toy free and payware can be found here."

30 of 166 comments (clear)

  1. Slashdotted by dreamer8815 · · Score: 5, Funny

    In three two one... Huston, we have a problem.

    --
    "It is a miracle that curiosity survives formal education." - Albert Einstein
    1. Re:Slashdotted by Metteyya · · Score: 4, Insightful

      I have a lot of respect for all the admins and webmasters for not banning their sites/servers from people-coming-thx-to-slashdot.

  2. Warning by poofyhairguy82 · · Score: 4, Interesting
    From site: For Win32 users, it's much more work to get your computer set up to build Virtual AGC than it is in Linux, and the steps needed will be less familiar.

    That made me feel good seeing as how this is the first week I've tried linux.

  3. very simple processor by ndevice · · Score: 5, Interesting

    Took a quick scan at the architecture of the machine, and I'm suprised that it's so simple.

    People say over and over again that simple handheld calculators are more powerful than that thing, and it seems that the oft-parroted line is more accurate than they realize.

    Add to that: RTL (before TTL) and magnetic core memory bring up the nostalgic value.

    1. Re:very simple processor by thhamm · · Score: 5, Interesting

      some of the "moon hoaxers" think thats why they could never get to the moon at all.
      "though much faster, my pentium can barely run [insert 3d shooter here] at good FPS. how could it fly to the moon? so they never did."

      logic?
      clavius explanations.

    2. Re:very simple processor by RedWizzard · · Score: 4, Insightful
      People say over and over again that simple handheld calculators are more powerful than that thing, and it seems that the oft-parroted line is more accurate than they realize.
      Or perhaps they repeat it because it's accurate and they know it?
    3. Re:very simple processor by Edward+Teach · · Score: 5, Interesting

      In the Apollo 11 descent to the moon, you hear someone say "twelve oh one alarm." This was the alarm that told the LM crew that the computer reset because it ran our of memory.

      --

      Setting his threshold to 5, Sparky eliminated most of the trolls on /.

    4. Re:very simple processor by TheHawke · · Score: 4, Interesting

      Eh, Brute force. They needed the AGC to be as simple, yet programmable with all the steps necessary to get the boys on the moon and back.
      So they took the PDP8 and squeezed it down into the size of a early 80's era Kaypro portable (now that's saying something about my age) and managed to get it to draw as much power as your coffeemaker.
      THEORETICALLY, they could have done it with a sextant and a good clock, BUT! Their navigation skills had to be dead-bang on every time to the fraction of a minute.
      So it was easier to shoehorn this colossus into the spacecraft and let it do the driving.

      --
      First rule of holes; When in one, stop digging.
    5. Re:very simple processor by oogoliegoogolie · · Score: 4, Funny

      ...the computer reset because it ran our of memory.

      That's because when the LM was being designed some engineer decided "640 Bytes should be enough for anyone."

    6. Re:very simple processor by Speare · · Score: 4, Insightful

      But somehow a few rafts colonized the polynesian islands. Somehow a compass, a sextant and a bunch of canvas guided boats across the Atlantic for centuries.

      --
      [ .sig file not found ]
    7. Re:very simple processor by Archibald+Buttle · · Score: 4, Insightful

      The hoaxers are dicks.

      It is of course completely irrelevant that their pentium is a heap of crap, as you imply. These are the kind of idiots that don't believe that you could have a 3d game on a 20 year old 8bit micro - showing them Elite blows their minds.

      They think that because a computer is slow it's worthless. Well, that's what Microsoft and Intel keep telling us so it must be true. Also their 3d shooter is damn slow. That's gotta be proof.

      Conversely those of us with brains, real software development knowledge, and an appreciation of physics realise that you hardly need any computing power at all for an Apollo space craft. Indeed it's arguable that the computer they did have was overkill - a computer-less solution could have been engineered.

  4. Simulation - emulation environment by Anonymous Coward · · Score: 5, Interesting

    What I would like to see is a complete Apollo computing system simulator, consisting of the hardware simulator, where you could realistically simulate the effects of increased core voltage, heat, power surges, fluctuations, etc. coupled with the hardware emulator capable of running native Apollo code, just like vAGC.

    Do they have this at NASA? For them it must be easier and more reliable to just use an identical environment for testing purposes, but some Apollo enthusiasts would enjoy tinkering with such a combined simulation-emulation environment (SEE).

  5. Re:12-bit Instruction set by Rosco+P.+Coltrane · · Score: 4, Insightful

    A quick inspection also shows that a PDP8 weighs as much as the Saturn V rocket, and weight is the last thing they needed to haul stuff on the moon...

    --
    "A door is what a dog is perpetually on the wrong side of" - Ogden Nash
  6. Re:12-bit Instruction set by kfg · · Score: 5, Funny

    A quick inspection of an Apollo capsule reveals why they didn't just use a PDP8.

    Think of three fat guys trying to move one of those things in a Mini Cooper.

    KFG

  7. How do they get to the moon... by Purifier · · Score: 5, Funny

    ...without having a "Start" button? ;)

  8. Slingshot by Hypharse · · Score: 5, Funny

    I tried to use this to run games. It didn't work at first, there just wasn't enough power. Then I used the gravitational pull of my neighbor's house as a slingshot and was running Doom 3 in no time.

  9. Game anyone? by NewtonsLaw · · Score: 4, Funny

    Does someone have a copy of that old favourite: "Lunar Lander" which runs on this emulator? :-)

    Hell, even my Texas Instruments card-programmable calculator played that game!

  10. Re:12-bit Instruction set by hughk · · Score: 4, Informative

    Not really, and it had an excellent reputation for real-time work. The thing is when NASA were shopping for processors a long time before the landing, the PDP-8 didn't exist in the compact form. By the time of the first landing it certainly did, but it was already too late. The PDP-8 and later the PDP-11 then just swept through the world of real-time computing.

    --
    See my journal, I write things there
  11. Orbiter by 0123456 · · Score: 4, Informative

    "then integrate the whole thing into Orbiter."

    Already being worked on:

    http://mysite.wanadoo-members.co.uk/marui/orbite r_ agc.jpg

  12. Space Shuttle computers by Veteran · · Score: 4, Interesting

    An engineer I work with at JSC has an actual - legally obtained Space Shuttle flight computer. The government declared it surplus, and he bought it from the surplus section, so he has the paperwork documenting that he is the legal owner. His box is an actual flight unit, which was in space, not a ground test unit or engineering sample. He has the paperwork documenting its complete history.

    Every once in a while you can find some incredible things in government surplus.

  13. Not comparable in any way to calculators by panurge · · Score: 4, Interesting
    This machine is optimised for the acquisition of fairly real-time data; read the architectural description. Multiple channel counters are implemented in hardware, partly because in the days of discrete logic this was relatively easy to do (and, of course, the tube calculators with which people had gained experience used lots of counters, because it is relatively easy to make a counter tube, while binary tube logic is very hardware inefficient.)

    Calculators have absolutely minimal I/O and need hardly any interrupt handling capability, and general purpose CPUs like the PDP-8 require a great deal of external hardware to give efficient programmed I/O. It was only really with integrated electronics that general purpose CPUs became appropriate for real time instrumentation and control.
    It's also important that in a space environment, every added gate is a hazard because it can get flipped by radiation. The ideal is to have the minimum gate count, minimum memory cell count, and the shortest possible path between phyical I/O and computing. The computers used in the Apollo meet this requirement.

    Sorry to restate what may be obvious to some people, but a lot of people here will never have had to implement a rad-hard design, and will not understand why simplicity and directness are such virtues in design for space use.

    --
    Panurge has posted for the last time. Thanks for the positive moderations.
  14. Re:12-bit Instruction set by AndroidCat · · Score: 5, Funny

    And they made Buzz Aldrin sit in the back. No wonder he gets cranky if someone says that he didn't go to the Moon!

    --
    One line blog. I hear that they're called Twitters now.
  15. Disaster waiting to happen by Veteran · · Score: 4, Insightful

    I had occasion to look at the plans for the oxygen tank that blew up on Apollo 13. There is no great mystery why it blew up, the mystery is why they didn't all blow up.

    Trying to figure out how much is left in a liquid oxygen tank in outer space is not an easy task. If you wanted to know that answer here on earth you would weigh the tank - which obviously won't work in free fall.

    The idea they came up with was to have a sensor in the tank that could measure the level by resistive means. In order to have a 'level' to measure they had to create an artificial gravity inside the tank by swirling the contents with an internal electric motor and a blade. In the movie "Apollo 13" one of the astronauts talks about "stirring the O2 tank", that is what he is talking about.

    Consider what this all means: you have a tank full of liquid Oxygen, you have several pounds of highly combustible aluminum and graphite parts which are soaked in liquid Oxygen, and you have a DC motor with brushes sparking up a storm inside the tank. Another name for such a combination is a "bomb".

    NASA's - management driven - engineering has long been full of "Whir click, whir click - OK, Russian Roulette is flight certified as safe" thinking. Nobody does a "how could this all go wrong" analysis.

  16. Anyone get a good look at the code yet? by today · · Score: 5, Funny

    Humorous snippet from the landing module code...

    P63SPOT3 CA BIT6 # IS THE LR ANTENNA IN POSITION 1 YET
    EXTEND
    RAND CHAN33
    EXTEND
    BZF P63SPOT4 # BRANCH IF ANTENNA ALREADY IN POSITION 1

    CAF CODE500 # ASTRONAUT: PLEASE CRANK THE
    TC BANKCALL # SILLY THING AROUND
    CADR GOPERF1
    TCF GOTOP00H # TERMINATE
    TCF P63SPOT3 # PROCEED SEE IF HE'S LYING

    P63SPOT4 TC BANKCALL # ENTER INITIALIZE LANDING RADAR
    CADR SETPOS1

    TC POSTJUMP # OFF TO SEE THE WIZARD ...
    CADR BURNBABY

  17. nope Re:Disaster waiting to happen by WolfWithoutAClause · · Score: 4, Informative
    In order to have a 'level' to measure they had to create an artificial gravity inside the tank by swirling the contents with an internal electric motor and a blade.

    They didn't use artificial gravity to seperate the LOX; quite the opposite.

    In fact, in zero gravity LOX tends to divide up into regions of gas and liquid. If the gas happens to float past the sensor, then they get an incorrect reading of the density, and hence they don't know how much is in there. This was a big problem on previous flights. Stirring the tank mixes it all up and makes it the same density; allowing a reliable reading to be taken.

    you have several pounds of highly combustible aluminum and graphite parts

    Aluminum, particularly bulk aluminum is *not* combustible in LOX. It's used on the Space Shuttle main tank fer heavens sake!

    Graphite can't really burn either; for it to burn it needs to reach ~3000K, and the LOX is pretty keen on it not reaching that temperature.

    LOX only really explodes in contact with greases- it's soluble in them, and they form a contact explosive.

    and you have a DC motor with brushes sparking up a storm

    Provided the brushes are carefully chosen, this need not be a problem.

    That's not actually what caused the explosion anyway.

    During testing a relay welded itself shut due to incorrect voltages. In flight, the wiring overheated- and the insulation burnt in the LOX. That caused the LOX tank to overpressure, and it blew away half the side of the vehicle.

    --

    -WolfWithoutAClause

    "Gravity is only a theory, not a fact!"
    1. Re:nope Re:Disaster waiting to happen by Veteran · · Score: 5, Interesting

      They didn't use artificial gravity to seperate the LOX; quite the opposite.

      In fact, in zero gravity LOX tends to divide up into regions of gas and liquid. If the gas happens to float past the sensor, then they get an incorrect reading of the density, and hence they don't know how much is in there. This was a big problem on previous flights. Stirring the tank mixes it all up and makes it the same density; allowing a reliable reading to be taken.


      Yes and no. In zero g the bubbles and liquid have no reason to separate. In a gravity field the bubbles float just like the do in water - so you get a liquid without voids in it - which you can measure.

      Aluminum, particularly bulk aluminum is *not* combustible in LOX. It's used on the Space Shuttle main tank fer heavens sake!

      Aluminum will burn in air if there is enough energy to break through the surface layer of aluminum oxide which builds up on the surface. In fact aluminum is so reactive with oxygen that this layer forms instantly when the metal is exposed to oxygen. Anything which will burn in air will really burn in LOX.

      Graphite can't really burn either; for it to burn it needs to reach ~3000K, and the LOX is pretty keen on it not reaching that temperature.

      There was an experiment where a scientist used LOX and charcoal to see how fast it would burn - it esentially flashed in less than a second. DO NOT ATTEMPT THIS. IT IS RIDICULOUSLY DANGEROUS. Your statement is like saying Nitro Glycerin is safe to have in your house. NOTE FOR THE YOUNG AND INEXPERIENCED: DO NOT STORE NITRO GLYCERIN IN YOUR HOUSE. IT WILL BLOW UP AND KILL YOU!!!

      Provided the brushes are carefully chosen, this need not be a problem.

      This is exactly the sort of thinking which resulted in the original disaster. Brushes are mechanical devices - there is inductance in a motor - when the brush connection is broken the inductance of the motor will cause a spark. We have studied the ignition properties of such sparks in LOX in my group. There is a statistical probability of a given spark igniting the brush material.

      That's not actually what caused the explosion anyway.

      During testing a relay welded itself shut due to incorrect voltages. In flight, the wiring overheated- and the insulation burnt in the LOX. That caused the LOX tank to overpressure, and it blew away half the side of the vehicle


      That is the official theory which was reached by people who knew nothing about the spark ignition problem. The voltage in the GFE power supply used in the test was not enough to weld contacts - the LOX would have cooled the wires so that they wouldn't have reached ignition temperature. The explosion didn't happen until the tank was stirred. The thinking behind reaching that official theory was "Well none of the other tanks blew up so the design was OK so it must have been someing which was done to that particular tank that caused the problem."

      Thanks for demonstrating the "Whirr click, whirr click " mind set to everyone.

  18. Parent is informative, deserves upmod by Beryllium+Sphere(tm) · · Score: 4, Informative

    In addition, the incorrect voltages during testing were the result of failed communication between the contractor and NASA, a spectacular example of why the paperwork is important.

  19. Beowulf comment ... by Alain+Williams · · Score: 4, Funny

    If we have a Beowulf cluster of these, do we have a space invasion on our hands ?

    If so: who is invading who ?

  20. Draper Labs built the AGC by dswartz · · Score: 4, Informative

    I would just like to point out that Draper Labs in Cambridge, MA (the company I work for) built the AGC. An exact replica of the real AGC sits in our Simulation Lab.

  21. Notes on compiling by crucini · · Score: 4, Informative

    I didn't immediately succeed with the author's instructions. Here's what worked for me:

    cd yaAGC
    ./configure
    make
    sudo make install
    cd yaDSKY
    ./configure
    make
    sudo make install
    yaAGC --core=Validation.bin --debug
    In another window, still in the yaDSKY directory: yadsky --cfg=src/LM.ini
    (Note lowercase yadsky)
    Congratulations, Ronald. Pretty cool. Does the contrast on the LED display have to be so low? The background is very light.

    Am I the only one here who actually tried the program?