Fun fact: the actual programs in the spacecraft were stored in core rope memory, an ancient memory technology made by (literally) weaving a fabric/rope, where the bits were physical rings of ferrite material.<p><a href="http://en.wikipedia.org/wiki/Core_rope_memory" rel="nofollow">http://en.wikipedia.org/wiki/Core_rope_memory</a>
C'mon, Notch, even Apollo supported interrupts:<p><a href="http://www.ibiblio.org/apollo/hrst/archive/1678.pdf" rel="nofollow">http://www.ibiblio.org/apollo/hrst/archive/1678.pdf</a><p><i>"It is first appropriate to briefly describe the Apollo Guidance Computer (AGC). This processor is a general purpose, sequential, digital machine. Its word length
is 16 bits including parity. The random access memory consists of 2048 words of
destructive, read-write memory, called erasable, and 36,864 words of non- destructive read-only memory called fixed memory. The memor’y cycle time (MCT) is slightly less than 12 microseconds, with two MCI’s required to execute an add
and four MCTs to execute a multiply. As is typical of real-time control computers, this machine has a set of special input-output channels with which it controls the
spacecraft and observes the state of its environment. The interrupt structure consists of ten program interrupts with associated priorities, which are used for program
control transfers. In addition, twenty-six counter interrupts with associated priorities allow for input-output servicing. The instruction set consists of forty-two
regular instructions and nine involuntary instructions. Figure 1 indicates the number and diversity of systems with which the AGC interacts"</i><p>EDIT: Apparently, as of six or so hours ago, Notch has implemented cutting-edge 1970s technology ( <a href="http://dcpu.com/highnerd/dcpu16_1_3.txt" rel="nofollow">http://dcpu.com/highnerd/dcpu16_1_3.txt</a> ). :)
hmmm. so the "bugger words" at the end of, for example, <a href="http://www.ibiblio.org/apollo/listings/Colossus249/MAIN.agc.html" rel="nofollow">http://www.ibiblio.org/apollo/listings/Colossus249/MAIN.agc....</a> are checksums - see <a href="http://books.google.cl/books?id=3fKzL0HfJp4C&pg=PA232&lpg=PA232&dq=apollo+bugger+words&source=bl&ots=cF3S6mxXfE&sig=6LhH9dhU3xpavWEc9UlxwqUHFI8&hl=en&sa=X&ei=afGXT4_NF8avgwez48jQBg&redir_esc=y#v=onepage&q&f=false" rel="nofollow">http://books.google.cl/books?id=3fKzL0HfJp4C&pg=PA232...</a><p>anyone know the etymology? is it just a shortened form of "debugger"? is "bugger" not common slang in <i>american</i> english? or is this a joke?
Most of this is code is available in machine-readable form in the VirtualAGC Google Code repository:<p><a href="http://code.google.com/p/virtualagc/source/browse/#svn%2Ftrunk" rel="nofollow">http://code.google.com/p/virtualagc/source/browse/#svn%2Ftru...</a>
Now that the shuttle program has ended, it would be nice to get the supposedly perfect code produced by the On-board Shuttle Group as well. I wonder if a FOIA request has been made.
Anyone have an idea why there's sourcecode for (apparently) a pinball machine in there?<p><a href="http://www.ibiblio.org/apollo/listings/Luminary099/PINBALL_GAME_BUTTONS_AND_LIGHTS.agc.html" rel="nofollow">http://www.ibiblio.org/apollo/listings/Luminary099/PINBALL_G...</a><p>It's in the code repository for multiple Apollo's
A very interesting book, written by Frank O'Brien and published by Springer, The Apollo Guidance Computer: Architecture and Operation, is definitely worth the read. Fun fact: The unit weighed 70lbs (32kg).<p>The AGC has spawned a pretty active cult of hardware hackers that have built the AGC from scratch - including the core memory.
looking through some of those documents a couple things stand out to me:
1) learn your maths people if you want to do rocket science stuff
2) the amount and detail of the documentation they wrote back then is unreal
3) the simple webapps I write for big bucks at local megacorp pale in comparison to those programs that frickin landed people on the moon!
My favorite is the DSKY emulator: <a href="http://www.ibiblio.org/apollo/yaDSKY.html" rel="nofollow">http://www.ibiblio.org/apollo/yaDSKY.html</a>
I used to use it as my desktop clock for a while.
With the power of open source, "many eyes make all bugs shallow".<p>Wouldn't be a hoot if someone ran this through a simulator, and discovered a bug that had eluded NASA?