パスワードを忘れた? アカウント作成
12843777 story
宇宙

Apollo 11号に搭載されたコンピュータのソースコード、GitHubでも公開 25

ストーリー by hylom
50年を経ての開発再開 部門より

人類を初めて月面に送り込んだアポロ11号で使われていた、誘導用コンピュータのソースコードがGitHubで公開された(Engadget JapaneseBusinessNewsline)。ライセンスは「Public domain」となっている。

以前もアポロ11号で利用されたプログラムのソースコード公開が話題になったが、今回はGitHubでの公開とのことで、プルリクエストやissueの報告も受け付けており、いくつかのプルリクエストがマージされている。

専用のハードウェア(アポロ誘導コンピュータ、AGC)向けのコードであるため、一般的なハードウェアで実行させることは困難だが、コードの構成やコード中のコメント、メッセージなどに色々と興味深い点があるようだ。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by tori_sanpo (39645) on 2016年07月13日 22時09分 (#3046783) 日記

    こんなの [srad.jp]もあるのかな?

  • by Anonymous Coward on 2016年07月13日 15時47分 (#3046520)

    ホントか都市伝説かは知らんけど1文字違いで大変な事になったってやつ

    • by Anonymous Coward

      宇宙船より着陸船のプログラムを
      ヒューマンエラーの監視で初めてコンピュータが主導権を乗っ取れる仕組みが導入された着陸船のプログラムを

    • by Anonymous Coward

      いつのまにかアポロ13号って話になっていたのか。FORTRANでカンマとピリオドを間違えたって奴でしょ。
      # 自分が聞いたときは打ち上げ失敗ってことだったからアポロ13号ではないな。

    • by Anonymous Coward

      カンマ一文字間違いで爆発したのは、ジェミニ計画のタイタンロケット。

    • by Anonymous Coward

      アポロ13号の爆発原因は、映画でも描かれている通り
      撹拌装置のスイッチの入れ間違いだったはず。

      • by Anonymous Coward

        配線被覆がむき出しになっていてショートしたからでは?
        攪拌スイッチはそのトリカになっただけ
        もうちょっと進んだ段階で攪拌=爆発していたら帰ってこられなかった

      • by Anonymous Coward

        wikipedia見たら、スイッチの入れ間違いというより、
        製作上問題のあったところへ、スイッチ投入で爆発みたいですね。

      • by Anonymous Coward

        地上試験で故障したタンクを再利用したから。

        地上でしか使わないガス取り出し用のバルブが故障していて、試験で充填した後に液酸が出せなくなった。
        で、温度制御があるから過熱せず程よく抜けるだろうと思って許可を得てヒータを入れたまま一晩放置した。
        その時に過電圧でサーモスタットが焼け落ちた。後に下ろして不具合ありとして保管されていたそのタンクが、
        13号に割り当てられた。

        13号では先の不具合発生時に配線の被覆が傷んだことで、攪拌しようと通電した時に火花が飛んで爆発した、と
        推定されている。再現実験ではタンク温度は数千度に達したとか。

  • by Anonymous Coward on 2016年07月13日 15時51分 (#3046523)

    ハードウェアの規模と性能に厳しい制約があった時代の不自由な命令セットですな
    これと比較したらローエンドのPICマイコンが高機能・高性能に見えてくるほど
    コード開発は今のプログラマには耐えられんでしょう

  • by Anonymous Coward on 2016年07月13日 17時06分 (#3046581)

    ほとんどTYPOの修正っぽいけど、歴史的コードにマージされると楽しそう。

  • by Anonymous Coward on 2016年07月13日 18時02分 (#3046635)

    Wikipedia のアポロ誘導コンピュータ [wikipedia.org]の頁には命令セットの説明まであって感心した。外部リンク [wikipedia.org]も充実してて楽しめる。
    # Copyright: Public domain.
    ソースコードもみんな大好きパブリック・ドメインだから、Wikisource にも収められるな。

    • by miyuri (33181) on 2016年07月13日 21時04分 (#3046745) 日記

      RESUME
              INDEX命令の特別な場合 (INDEX 25)。割り込みからの復帰に使われる命令である。

      何故25なのだろう。
      -0とかの方が良さそうなのに。

      親コメント
    • by Arimac (10826) on 2016年07月13日 20時49分 (#3046734) ホームページ 日記

      リターン命令が載ってないけどコードを見たら
      TC Q
      ってのがそうなのかな?(特定のアドレス指定で命令を変化させてる?)

      マクロか疑似命令は使えたのかな?

      親コメント
      • by Anonymous Coward

        ええーハンドアセンブルでしょJK
        マクロ?なにそれ?って時代だったでしょうな
        # 昔はハンドコンパイルもしたのけど

        • by Arimac (10826) on 2016年07月14日 20時32分 (#3047521) ホームページ 日記

          IBM-360やPDP-8も出ていたのでそんなに原始時代という程ではないようです。
          CPUとしては小型にするために機能を削らなければならなかったのでしょう。
          疑似命令は下のソフトウェアの項目にありました。
          ソフトウェアインタプリタってコルーチンじゃないのかなぁ。
          (最近のコルーチンはサブルーチンの引数を後ろに並べる形式の事じゃなくなってるのね(^^;)

          親コメント
        • by Anonymous Coward

          マイコンしか知らない人はそう思うでしょうが、実際はクロス開発です

        • by Anonymous Coward

          wikipediaには、

          > 初期のプロトタイプである Christmas Computer のアセンブラ兼バージョン管理システムは YUL と呼ばれ[6]、
          > ネイティブコードとインタプリタコードの正しい変換を行っていた。

          とあるよ。

          # 自分の最初の就職先はバージョン管理システムどころか、管理すらまともにしていなかった…

  • by Anonymous Coward on 2016年07月13日 23時25分 (#3046827)

    ソースにあった Website: www.ibiblio.org/apollo. のリンク先見たら
    Japanese:Sentaku sareta URL ha sonzai shimasen.
    Wookie:GRRRRRRRRRRRAAAAAAAAAHHHHHHH GRAAAAAAAAAA, HRAGGGGGGGGG!!!
    (C3PO):Let the Wookie have his files!
    と出て何だこれ状態になった。

    http://www.ibiblio.org/apollo/ [ibiblio.org]
    が正しかっただけなのね。

typodupeerror

アレゲはアレゲ以上のなにものでもなさげ -- アレゲ研究家

読み込み中...