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

天駆けるHitBit 74

ストーリー by Masafumi Otsune
Aレジスタをゼロクリアする時にXOR AかSUB Aかで議論になったのか? 部門より

cyber205曰く、"「MSXは宇宙開発で重要な役割を果たしたパソコンである」と聞くと意外に思われるだろうか。
これは嘘ではない。実はロシア(ソ連)の宇宙ステーション「ミール」にはMSXが搭載され、画像処理用途に現役で使われていたのだ。その名はHB-G900P(MSX2)、SONYのHitBitである。
まず、知らない人はold-computers.comのHB-G900の外観を見て覚えよう。もっと詳しく見たい人は"Ma Petite Collection"のHB-G900画像も参考にするといい。
この機種はMSXとしては高級機にあたるキーボード分離型のマシンで、画像処理用の拡張が施されているモデルである。拡張ボックスに用意された4つの調整ツマミが印象的なマシンだ。
次にmsx.gnu-linux.netの中のMSX in SPACEのページにある、この動画を見てみよう。いかがだろうか。右側にあるディスプレイの下にあるマシンが、SONYのHitBitである。
別のアングルから取ったもっと大きな画像もある。最後の2枚を見ていただきたい。ミールが、確かにMSX2を積んで飛んでいたのがわかるだろう。"(続く…)

"これはおそらく、人間の生活圏のうち最も遠い場所に持ち込まれ、そしてどのMSXパソコンより長距離を、電源の入ったまま飛び続けたマシンである。
残念ながら、このマシンは1986年2月19日の打ち上げから15年後の2001年3月23日、廃棄されたミールの大気圏突入と共に燃え尽きた。
一人のMSXファンとしては何とか廃棄前に持ち帰って実物を博物館に置いてほしかったと思うが、もはや叶わぬ願いとなってしまったのが残念だ。

では、ソ連はなぜ、自国で開発したマシンを使わず、わざわざMSX規格のパソコンを日本から買って持ち込んだのだろうか。それは、冷戦と対共産圏輸出統制委員会(COCOM)の規制品目に理由がある。
WikipediaのMSXのページに書かれた「MSXと冷戦」というセクションにはこう書かれている。

ソビエト連邦を中心とする共産圏の国々では、対共産圏輸出統制委員会(ココム)の禁輸品目の中にコンピュータを含む電子機器も含まれており、16ビット以上のコンピュータは輸入することが出来なかった。そのため、低性能のため対象外とされていた8ビット機を大量に輸入し、またコピーして使用していた。
共産圏でも8ビット機は規制を受けずに自由に輸入&利用することができたため、ソ連は自由に輸入できた8ビット機をいろいろ試した末に、MSXアーキテクチャの相互互換性と強力な拡張性を高く評価して、この規格のパソコンを学校の初等教育用に採用、そして可能なら他の多くの応用分野にも利用し、軍事や宇宙開発も含めて広く活用していたという。
中には、MSXを拡張して独自のネットワークシステムを構築していた例もあるのだとか。

CQ出版のInterfaceに掲載されている鎌田 博之さんのコラム「電脳事情にし・ひがし」にはロシアのソフトウェア開発に関する興味深い情報があるので是非一読いただきたい。
その中の「ロシア製ソフトウェアそのものの優秀性」という部分に、

ソビエト当時は入手できるハードウェアが,西側では2世代か3世代前のものであり,西側のものに比べ,メモリ・サイズが小さい,CPU速度が遅い,ハードウェアの物理的なサイズが大きいなどのハンディを背負った開発を余儀なくされました.必然の結果として,ソフトウェアは,機能性を損なうことなくフット・プリントは小さく,メモリ・リークは厳禁,性能向上のため,OSを含めた基本ソフトの独自技術の開発を促し,これを多様な科学分野の優秀な頭脳で実現したわけです
と書かれていて、貧弱なマシンをフル活用するために知恵を絞ったことが、現在のロシア人ハッカーたちの技術を支えていることがわかる。
ではその、2世代か3世代前の入手できたマシンとは何だったのか。そこにはCOCOM規制から外れて自由に輸入できたMSXが含まれていたのは想像に難くない。
東側の優秀な技術者を、多量に採用されたMSXが初等教育から付き合って鍛え上げた。
同じコラムの中に、ロシアのソフトウェア技術者が「とくに基本ソフトウェアやインフラ系の技術に強い」と特筆されているのは興味深い。
現在、ロシアのソフトウェア技術者は、そういった地味ながら重要な部分で、無視できない実力者として頭角を現しつつあるそうだ。
8ビット機でありながら、よく考え抜かれた設計を持つこのアーキテクチャを、ロシアを含む東側の諸国が高く評価し、初等教育から宇宙開発にまで採用したことを知り、鉄のカーテンのむこうで、MSXが大活躍していたのを知ったのは私にとって意外な喜びだった。
既にパソコンは32ビット機が普通で、いまや64ビット機も広く市販される時代になったが、いまだに以前の愛機だった8ビット機を忘れられない御仁もいらっしゃるだろう。
ここでは懐かしい想い出と共に、あの当時のことを思う存分に語っていただきたい。"

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • Linter (スコア:3, 興味深い)

    by inu (4662) on 2006年03月25日 14時37分 (#908453) ホームページ 日記
    そういえば先日、@ITの記事で旧ソ連製の組み込みデータベースの記事 [atmarkit.co.jp]がありました。
    官公庁・軍用に使用されていたDBだったというのがすごいですね。
  • by mission_if_possible (11120) on 2006年03月25日 5時08分 (#908209) 日記
    日本版はHB-F900 [wakwak.com]ですね。
    このカタログかっこいい。
    ソニーが憧れられる時代だったなあ(遠い目)

    小学生のときに同級生が持ってた。
    キーボード一体型しか持ってなかったからなんか凄そうに思ったなあ。
    ゲームするには何もかわらんけど(笑)
  • ミール予備機 (スコア:2, 参考になる)

    by sillywalk (15002) on 2006年03月25日 6時52分 (#908218) ホームページ 日記
    北海道の苫小牧市科学センターにはミール予備機 [hokkaido.jp]の実物が展示されていて、 内部をすべて見ることが出来ます。
    さすがにHitBitは置いてなかったですが、内部の壁面にVHSビデオの再生機とモニタが埋め込まれており
    「ココムには抵触しなかったのか」と驚いた覚えがあります。
    他にもドッキングポートの脇に剣山のような電極が剥き出しになっていたり
    操作パネルの類が意外と雑な作りだったり
    「こんなのが宇宙を飛んでいたのか」とびっくりすることうけあいです。
    --
    And now for something completely different...
    • by Anonymous Coward
      「岩倉建設株式会社より苫小牧市に寄贈されたものです。」ってスゲー。いくらしたんだ?

      # ゲスなのでAC
  • 天駆けるPDA (スコア:2, 興味深い)

    by Anonymous Coward on 2006年03月25日 11時38分 (#908345)
    PDAは今でも宇宙を飛んでいます。

    とんでもない場所でPDAを使っているコンテスト
    準優勝 使用場所:宇宙
    http://www.visavis.co.jp/shop/contest/contest0402_1.html [visavis.co.jp]

    Cute-1.7 + APD Project
    http://lss.mes.titech.ac.jp/ssp/cute1.7/ [titech.ac.jp]

    • by Anonymous Coward
      さすがに液晶パネルは宇宙では使わないから外してあるのか(笑
      利用可能温度範囲も狭いので邪魔になるだけでしょうけど。
      # あっても誰が見るんだという問題が…。

      VNCみたいなもので地上からリモート操作出来たら面白いのにな。
      既にディスプレイの無い組み込みマシンで、LAN経由でVNCを使ってXを動かす [ebimemo.net]
      みたいなことをやっている人はいるようです。
      • by tmiura (6268) on 2006年03月25日 13時32分 (#908426) 日記
        | さすがに液晶パネルは宇宙では使わないから外してあるのか(笑

        外さないと駄目なのか。

        「使わないから」だけなら放置、でもよさそうだけど、 わざわざ外すのは耐衝撃とか、壊れたとき周りに害があるとか、そういった影響があるからかな。あと重量削減か。

        | ディスプレイの無い組み込みマシンで、LAN経由でVNCを使ってXを動かす

        わざわざXサーバまでリモートで上げるなんて何のためのXだか……

        リンク先の人はやってみたかっただけなんでしょうけど、実用的には、手元マシンのXサーバへリモートのXクライアントからふつうにdisplayを飛ばすだけの話なわけで、VNC一揃いととリモート側のXサーバが完全に無駄ではないかと。

        親コメント
        • by JBD01226 (10061) on 2006年03月28日 9時31分 (#910191)
          三日も前のにコメントするのも何なんだけど、同じことをやっているので。

          こういう使い方をすると手元のマシンを落としてもX clientを落とさなくてすみます。確かにXはネットワークごしに使えますがGNU screenのような使い方はできません。

          あと、VNCを使ってXを動かすというのはVNC serverがX serverとしても動くということです。仮想画面になるのでVNC clientを使わないと画面を見ることもできませんがモニタ無しの環境なら別段問題にはならないでしょう。
          親コメント
  • by SassyOS2 (8523) on 2006年03月25日 12時45分 (#908392) ホームページ 日記
    西側ではIBMのThinkPad [ibm.com]がNASAのスペースシャトルや国際宇宙ステーションで採用されていることが知られている。

    「ThinkPadを“拷問”――「IBM大和事業所」を見てきました」 [itmedia.co.jp]の記事によれば、『1993年12月2日以来、スペースシャトルでの作業に毎回使用され、最近では国際宇宙ステーションでもThinkPad A31pが採用され…宇宙でのPCシェアは今のところ100%(笑)』とのことだ(これにはPDA [srad.jp]は含まれていないのだろう)

    またシンクパッド - Wikipedia [wikipedia.org]の記事によれば、無重力空間で利用可能なマウスの代替を求めるNASAの要望に応えてトラックポイントが開発されたらしい。

    (関連記事)IBM ThinkPad 760XDに搭載されたCisco SoftPhone [cisco.com]
    • Re:NASAはThinkPadを選択 (スコア:2, おもしろおかしい)

      by Anonymous Coward on 2006年03月25日 19時52分 (#908558)
      アメリカのNASAは、宇宙飛行士を宇宙に送り込んだとき、信頼性・耐久性のあるPCが必要なのを知った。
      IBMの技術者たちはこの問題に立ち向かうべく、数多の歳月と開発費をかけて研究を重ねた。
      その結果ついに、無重力でも上下逆にしても、どんな状況下でも安定稼動するThinkPadを開発した!!

      一方ロシアはMSXを使った。
      親コメント
    • by ktxg7 (21705) on 2006年03月26日 7時53分 (#908903)
      ThinkPad中国製になってしまいましたが、今後どうするんでしょうね
      親コメント
  • by matsuda (22788) on 2006年03月25日 19時26分 (#908547)
     どっかで聞きましたが、1950年代にコンピュータの開発が本格的にはじまったころ、国家規模でこれに巨額の予算を投入したのはアメリカと日本だけで、ソ連や西ドイツはこの将来性が読めず、金をかけずに他国の成果を輸入するという方針をとったそうです。それが今でもハード面でのうしろ二国の遅れにつながっているとか。
     ドイツのジーメンスなんかも富士通におんぶにだっこですもんね。
     http://www.fujitsu-siemens.de/ [fujitsu-siemens.de]
  • by Anonymous Coward on 2006年03月25日 11時44分 (#908348)
    > 東側の優秀な技術者を、多量に採用されたMSXが初等教育から付き合って鍛え上げた。
    > 同じコラムの中に、ロシアのソフトウェア技術者が「とくに基本ソフトウェアやインフラ系の技術に強い」と特筆されているのは興味深い。

    厨房時代から8bitで戯れてたその世代ですが、社会人になってからこっちOSとインフラばっかりやってます。 気がついてみたらリストラでどんどん人がいなくなって残党1名のみの背水の陣です。 新人さんは入門してこないし、景気よくなってきてるからころあいみて宇宙に飛び出します。 今年、来年は飛翔の年でしょう。 決心表明なのでAC
  • 人々のヒットビット (スコア:1, おもしろおかしい)

    by Anonymous Coward on 2006年03月25日 12時19分 (#908369)
    聖子よりちょっとかしこい [cocolog-nifty.com]パソコンで宇宙に行けると思うと、そんなものなのかな?とも思ったりします。
    • by cyber205 (4374) on 2006年03月25日 22時44分 (#908634) ホームページ 日記
      このMSXは軌道計算やエンジン制御に使われていたわけではないんですけどね…

      しかし、「マツドサイエンティスト研究所」を書いている本当のロケット屋、野田指令の
      「なつのロケット」 [nifty.com]関連の研究報告を見ると、

      >  位置を計算し、ロケットを制御するために必要なコンピュータの性能は意外と高くない。
      > 携帯型のゲーム機で十分であり、これもジャンクなどから簡単に入手できると判断した。
      > 電源は、ミニ四駆用のニッカド単三電池を5・6本あれば十分であろうし、
      > アクチュエータにはラジコン用のサーボを使いる。

      …という見解が載っています。携帯ゲーム機というと、多分ゲームボーイだと思うのですが、
      「なつのロケット」が単行本になったのは2001年で、設定が考えられたのはそれより前でしょうから、
      2001/03に発売の、ARM7TDMIを積んだゲームボーイアドバンスはまだ発売されていないはず。
      32Bitプロセッサである必要は無いということでしょうか。
      ATARIのLynxは16Bitのカスタムプロセッサだったそうですが、多分これは想定外でしょうね。

      アポロ宇宙船で使われた誘導コンピュータ[Apollo Guidance Computer(AGC)] [wikipedia.org]についても調べてみましたが、

      >[覚え書き] 2. これだけのすばらしい功績を挙げながらも、実際の性能は後に出るファミコンよりも低かったといわれている。
      > 今では、これだけの低スペックでよく月にいけたものだと言われている。

      とか書いてあります。6502カスタム/1.79MHzを積んだファミコンより性能低かったって…。

      AGCとは別に、サターンの器械リング [ibm.com]にもIBMのコンピュータが設置されていて、
      launch vehicle digital computer (LVDC)と言われていたのですが、その資料はここにpdfでありました。 [klabs.org]
      33頁にあります。2MHzのクロックで、命令13Bit+1パリティ、データは26Bit+2パリティ、
      最小命令実行時間82マイクロ秒、最大メモリ容量、
      磁気コアメモリを8ユニットフルに装備して 28Bitx32Kword
      (パリティが2Bitあると考えてフルコア実装で104KB)というものだったらしい。
      結構メモリ搭載量、ビット幅共に多いけれど、
      最小の命令実行時間が82μSecもありますので、Z80なんかと比べると動きはのろいです。
      0.0129MIPS…ですかね。1960年代のコンピュータですし。

      今は自動車ですら32BitのプロセッサにITRONを積んでエンジンを回してますが、
      あの当時、宇宙飛行士の皆さんはこんなのに命を預けて飛んでたわけです。
      本当に凄いなと思いました。
      親コメント
  • 部門名 (スコア:1, 興味深い)

    by Anonymous Coward on 2006年03月25日 12時38分 (#908384)
    > Aレジスタをゼロクリアする時にXOR AかSUB Aかで議論になったのか?部門より.

    後でパッチ当てするときは"3E 00"を、固定的なら"AF"を使いましたが。

    Z80時代はハンドアセンブルばかりだったAC。

    • by Anonymous Coward
      技術評論社 ZEAS-88 [amazon.co.jp]    XOR A に一票
    • 21 0C 00
      01 01 00
      36 00
      09
      D2 06 00

      か?
      #ミヤマのトグルスイッチの感触がなつかしいAC.
      • by tmiura (6268) on 2006年03月25日 17時30分 (#908514) 日記

        いや、Z80なら普通はLDIRを使うのが常套。さしずめ、

        0000: 21 0E 00
        0003: 11 0F 00
        0006: 01 F1 FF
        0009: 36 00
        000B: ED B0
        000D: 76

        で、確か一番高速なのは適当にアンロールしたPUSHの羅列(要割込禁止)。

        ところで、そもそもこのプログラムが何したいのかよくわからないのだが、ORG 0と考えて000CH番地以降の65524バイトをゼロクリア、でいい?

        あと、最後に何か書いておかないと、今埋めた0も命令と解釈して無限ループするんだけど……

        親コメント
  • VIDEOTIZER (スコア:1, おもしろおかしい)

    by Anonymous Coward on 2006年03月25日 13時47分 (#908435)
    ここに OTL や OTZ の原型が・・・。

    # 打ち上げ前に燃え尽きてました。
  • by ncube2 (2864) on 2006年03月25日 17時45分 (#908520)
    チャウチェスク政権が倒れた時、国民の管理統制に使われたというDECのミニコンの姿が報道されましたが、ルーマニアはソ連とは距離をおいていたから、ココム対象外だったのかな?
    • by Anonymous Coward on 2006年03月25日 18時16分 (#908526)
      ココムでもVAX-11(32Bit)は駄目だけどPDP-11(16Bit)はかまわないという
      次期がありました。

      本体のPDPはOKなのに、グラフィック端末(Z8000入り)が輸出できず、
      わざわざ機能の落ちる端末に換えてUI全て書き直した事があるAC
      親コメント
  • by Anonymous Coward on 2006年03月25日 20時27分 (#908569)
    やっぱりこれでテトリスをやっていたんでしょうかね。
  • by Anonymous Coward on 2006年03月25日 7時34分 (#908230)
    安くて低性能なパソコンなんで馬鹿みたい [srad.jp] とは言えない、
    低スペックなら低スペックなりに工夫やテクの磨き甲斐がいくらでもある、という実例になってるんじゃないでしょうか。
    • Re:ゲーツに聞かせたい (スコア:1, すばらしい洞察)

      by Anonymous Coward on 2006年03月25日 11時35分 (#908344)
      富豪的プログラミングとか言ってる連中にモナー

      # 基礎的アルゴリズム関係の良書が減ってしまってるのを嘆くAC
      親コメント
      • Re:ゲーツに聞かせたい (スコア:3, すばらしい洞察)

        by Anonymous Coward on 2006年03月25日 12時02分 (#908360)
        基本が出来た上ではじめて富豪的プログラミングでしょう。

        メモリの使用量とか速度を把握せずに組むのは破産的プログラミングです。必要とされるスペックを満たしていれば過度なチューニングより開発時間の削減や見通しのよいコードでバグを減らす、インターフェース回りに時間を書けるなどに使うほうがいいのでは、というだけでしょう。

        たとえばメモリが512M、クロック3GHzのマシンで苦労してチューニングした結果1KBのメモリ削減したとか、あるソフトの応答速度が1msだったのを0.5msにしたとかそういうのが本当に必要かどうか。どこで妥協するかそのあたりの見極めはいつの時代も必要なだけ。

        つまりチューニングの話と富豪的プログラミングは関係はありません。使用を満たしていなければ富豪的プログラミングでなくともだめなわけです。昔C言語が出てきたとき遅いしコンパイラはあほみたいにメモリ食うし、アセンブラで組めよといわれてたのと同じ。

        #基礎的アルゴリズムの本以前に汎用ソフトウェア雑誌がほぼ全滅したことで新しくプログラムを組みたいと入ってくる人材はどんどん減るでしょうね。
        親コメント
        • by Anonymous Coward on 2006年03月25日 14時57分 (#908462)
          Matzにっき(2006-03-01) [rubyist.net]でも同じような議論がされていますね。

          私はscienceやart的なinnovationと、engineering的なimprovementの違いだと思います。富豪的プログラミングはどちらかといえば前者の立場で、このストーリーのような旧ソ連の例は後者でしょう。どちらが重要ということもなく、良いものを生み出すには両方の立場からの考察が必要なんだと思います。
          親コメント
    • by Anonymous Coward on 2006年03月25日 11時42分 (#908346)
      いや、MSXにはマイクロソフトもかかわってるし。
      親コメント
      • 確か、ASCII元会長の西さんがMSKKの立ち上げに係わっていた頃の話だったと思いますよ<MSX
        西さんは90年前後にMSと袂を別かっていますから、今のMSとは余り関係が無いような。

        MS BASICが多くの8bitマイコンに乗って、MS-DOSが高級品で「ふつーCP/M」だった時代の大手ベンチャーだったMSKKとそれ以降のMS-DOSやWindowsが主力OSになって寡占市場を形成した今のMSKKとでは会社として全く違うイメージがあるんですが…
        親コメント
    • 多分聞かせても何処吹く風。
  • by Anonymous Coward on 2006年03月25日 13時02分 (#908401)
    重要な役割だったんですか?
    • 宇宙開発を含め各分野の優秀な人材を初等教育で育てるのも、
      宇宙機などを作る設計技術者の手元で使われる道具になるのも、
      余計な物をあまり持ち込めない、狭い宇宙機の中で
      実際に置いておく空間と電力を割り当てられて活用されているのも、
      それぞれに重要な役割を果たしていると言えると思いましたので。

      ココム規制の話を追加して、単にあのSONYの画像処理マシンだけが
      重要な役割を果たしたのだとは書いてないのはそういう理由です。
      親コメント
  • by Bill Hates (2038) on 2006年03月25日 13時07分 (#908406) 日記
    ソニータイマーの設定が20年とかだったのでしょうか?
    VAIOじゃただであげると言っても宇宙船には使って貰えそうにないです。
  • by Anonymous Coward on 2006年03月25日 13時38分 (#908430)
    Cを使う習慣があまりなかったと思うのでメモリリーク
    とは無縁だと思うが・・・

    アセンブラプログラミングからCに入ったおかげで、
    Cで書いても初期化時に必要なワークエリアを全部とって
    その中を自分で管理して使う癖が抜けない・・・

    結局メモリ確保は初期化時の1回だけなのでメモリ破壊で
    止まるくらいしかしないし。
    そのおかげで生産的なコードは書けない罠w
    • Re:そもそも (スコア:2, 興味深い)

      by Artane. (1042) on 2006年03月25日 19時55分 (#908559) ホームページ 日記
      最近のOSはメモリ管理までやってくれるし、高級言語で殆ど書くからアセンブラでメモリ管理云々って考える機会は少ないですが、
      OSなんてもんが乗っかっていないに近い状態で、メモリ管理やタスク管理の殆どをプログラム(プロセス)自体に任せている環境でアセンブラを使う場合はメモリ管理が一番シビアですよ。
      スタックのネストだけではなく何ワードPUSH/PULLしたのかを厳密に見ないといけないのは勿論、MMUやらセグメントやらで仮想アドレスが使える場合以外はマシンの全てのメモリやI/Oに触れますから、アドレス参照の計算も気を付けないといけない
      …そういう状況のハードでやっていたときを思い出すと、最近の開発環境にしてもOSにしても「作法だけはうるさいけどすごくぬるい」ですよ(^^;

      抽象化したアルゴリズムを実装すれば一応は動きますからね…堅い作りにするには努力が必要なのは同じですけど;)
      親コメント
      • by QwertyZZZ (8195) on 2006年03月28日 9時53分 (#910214) 日記
        そういう面倒な処も有るのは解る。
        けど所詮は目に見える範疇なんでトラブル対処としては楽ですよ。
        OSなんて自分がタッチしていない所の影響を受ける物よりは。
        まあ、単に頭が古いだけなのかも知れませんが。

        自分のアセンブラ仕事でどうにもこうにも煮詰まったのは、68881の地雷だけだったかな?
        他は結局時間さえ突っ込めば解らない物は無かったって感じでしたので。

        親コメント
    • by Anonymous Coward
      ms-basic では、文字列処理に動的メモリ管理を実装してましたから、8bit マシンのアセンブラ開発でもメモリリークの問題があったのでは?
    • by Anonymous Coward
      メモリ確保も自前管理なので、無縁ってことは無いかと。
      スタックポインタとスタックメモリの管理の失敗は、今ならバッファオーバーフローと呼ばれる部分でしょうか。

      PUSH/POP/CALL周りの微妙な取り扱いが・・・
typodupeerror

日本発のオープンソースソフトウェアは42件 -- ある官僚

読み込み中...