The Xbox Linux Project

News

Manifesto

FAQ

Roadmap

Status

Documentation

Screenshots

Download

Links

Mailing List

Contact


Sourceforge Project Page

Xbox Linux Award & Development Roadmap

by Michael Steil & the anonymous donor, 11 May 2002 (Updated 1 July 2002)

本プロジェクトにたいして20万ドル(1$=120円とすれば総額2千4百万円)の懸賞金が提供されました。これは、Xbox Linux プロジェクトの主要メンバーは正体を知っているが、一般には正体を明かしていない匿名の人物の寄付によります。懸賞金は、本プロジェクトのさまざまな分野に対し、2002年末(12/31)まで提供されます。

Overview

本プロジェクトの基本的な目的は、 シンプルで 完全に合法的 な方法により、Linux を Microsoft Xboxで実行させる方法を発見することです。

匿名の寄付は総額20万ドルです。プロジェクト全体を二つのプロジェクトに分割します。一つ目のプロジェクトは、さらに四つに分割されます。

賞金総額:20万ドル(約2000万円)

Project A: 改造されたXboxでLinuxを動かす:10万ドル
Task 1: オリジナルBIOSの開発と、その取り付け方法の発見
Task 2: Xbox用のカーネルとXFree386 のドライバの開発
Task 3: FATXなど、論理レベルのドライバの開発
Task 4: XBE ブートローダー

Project B: 改造なしでXboxでLinuxを動かす:10万ドル

Details

Project A: Porting Linux to a modified Xbox

Task 1: Replacement BIOS

a) IBM PC の BIOS のようなソフトウェア、たとえばLinuxBIOS/FreeBIOS のようなものを開発し、 IBM-PCのパーティション形式で論理フォーマットされたHDD(Xbox純正のものでもそれ以外でも)からLILOなどを使ってLinuxをブートさせる。また、El Torito フォーマットによるブータブルDVDをブートさせる。

b) 開発したBIOSを、いかにXboxに取り付けるかを考える。いままでのBIOS チップを取り替えてもいいし、改造してもOK。とにかく、上のBIOSを使う方法を開発する。なるべく簡単な方法であることが条件。

a) b) 全体に対し: US$ 5万5千ドル

Task 2: Kernel and XFree drivers

新規に書いても、既存のコードを流用してもいいので、Xboxの各チップが認識できるドライバを作る:

  • グラフィックドライバ(論理的なレベルも含め)
  • PIC (on SMBus)
  • Serial EEPROM (on SMBus)
  • 温度センサ (on SMBus)
  • ビデオエンコーダ (on SMBus) (訳注:PCでいうビデオ出力端子のチップ)
  • nVidia nForce ドライバ

それ以外にも、Xboxのチップセットなどの関係のドライバなども必要でしょう。

これらすべてに対し: US$ 2万5千ドル

Task 3: Kernel logic: FATX and miscellaneous

a) XboxではFATXというMS-DOSのFATとよく似たファイルシステムが標準になっているのですが、そのドライバを作ってください。LinuxのFATファイルシステムのドライバを改造すればいいでしょう。FATとFATXは共存できるようにしてください。また、FATXは読み書きできるようにしてください。

b) それ以外にも、論理レベルのドライバをいくつか。たとえば、/proc/xbox とか、Xboxのパーティション情報の認識とか。

[これらの一部はすでに達成済みです。]

これら全体への賞金総額: US$ 1万ドル

Task 4: XBE bootloader

ブートローダを作ってください。ブートローダは、プロテクト問題を除けば、Xboxの普通のアプリとして動作し、設定ファイルにしたがって、指定されたLinuxカーネルをブートさせるか、それとも、2段階目以降のブートローダにつなげます。プロテクト問題に関しては、何も考えないでOKです。実際には、実行にはMODチップなどを使うか、それとも、プロジェクトBの成功が前提となるでしょうが、それでOKです。

ブートローダは普通のXBE(Xboxの標準実行ファイル形式)のアプリで、マクロソフトのSDKやライブラリなど、法律的にまずい部分を含んでないことが条件です。

[ほんの一部ですが、すでに達成済み.]

これらに対し、賞金総額: US$ 1万ドル

Project B: 改造なしで、マイクロソフトの電子署名のないソフトを走らせる

まず、電子署名なしのCDをブートさせる方法を考える。そして、あとは、CDからLinuxをブートする(普通のXbox用ゲームとの共存は当然可能)方法でも、そのCDはXbox Linuxのインストール用と割り切って、HDDを潰してそこにXbox Linuxをインストールする方法(普通のXbox用ゲームとの共存には若干問題あり)でも、とにかく改造なしで走らせる方法を開発する.なお、開発するのは走らせる方法だけでOKで、走らせる中身であるLinuxカーネルの開発はプロジェクトAの結果を利用すればよい。

賞金: US$ 10万ドル

[訳注:そんな方法あるのか?と思うでしょうが、XboxのHDDにプレインストールされているシステムはすべてリング0で走行しているので、バッファオーバーフローなどのバグを突いて好き勝手なコードを実行させることは不可能ではない模様。そして、それでも賞金が払われる可能性はあるようです。]

Rules

General Rules

知識を共有しましょう。新しく解明されたあらゆる情報、コード、ハード構成などは、共有するべきです。
もし、なにか解明したら秘密にせず、共有しましょう。自分だけがコードを書けるように、解析結果を秘密にする必要性はないです。それを基にコードが書かれた場合、解析した人も同時に評価されます。リバースエンジニアリングの結果ではなく、そのための手段や機器の研究も同時に評価されます。

公表する場所に、"xbox-linux" project at Sourceforgeを含めましょう. ほかの場所で公表するだけでは不十分です。
知識を共有し、共同作業をしたいのです。そのためには、ひとつの場所に成果を集める必要があります。

どんどん公開しましょう。みんなで一丸となって開発を進めるのです
みんなが協力し合い、一丸となれば、より迅速に開発できます。

もし、複数の 完璧な 結果が出た場合、そのなかでベストな結果がすべての賞金を得ます。
結果だけを公表するのではなく、途中経過もどんどん公表し、みんなで共同作業を進めていきたいとおもいます。すべての経過を公表していれば、それら一つ一つが評価の対象になります。途中経過を発表しているグループが同等かそれ以上の結果を出している場合、結果だけを発表しているグループは完璧な結果を出してもまったく賞金を得ません。

でた結果が以前の開発を置き換えてしまった場合でも、以前の開発に対して賞金が送られることがあります。
公開をためらわず、どんどん公開しましょう。いままでのやり方を置き換えることをためらわず、よりよいアイディアはどんどん公開しましょう。

この賞金が発表される前の成果も評価の対象になります。
ただし、Xbox Linux Project に送ってください.

Xbox の仕様は、今(2002/5)現在出回ってるものを基準とします。
マイクロソフトがXboxの仕様を変更して、今出回っているXboxなら動くコードが動かなくなっても、そのコードの作者の評価は下がりません。

Awards

賞金の配分は、選考委員が一方的に決定します。
選考委員は、賞金を寄付した匿名の人物が決定します。

それぞれの分野に与えられる賞金の額は、その分野の難易度の見積もりに誤差があれば変更されます。ただし、プロジェクトA/Bそれぞれに10万ドルずつの原則は変わりません。
なにがどれほど難しいかを事前に予測するのは困難です。金額を調整するほうがフェアでしょう。

それぞれの分野が達成されたかどうかの判断は、選考委員が決定します。

複数のグループによりひとつの分野が達成された場合、選考委員が決定した額で賞金を分割して支給します。グループはリーダーを選出し、グループ内部のメンバー間での配分額を決定してください。
選考委員がグループ内部の事情を考慮することは困難ですので、この方式がよいと思います。

締め切りは2002/12/31です。
永遠にはまっていられません。

Legal issues

すべてのコードは合法的であることが条件です。

法律問題は、本プロジェクトが解決するのではなく、参加者個々人においてクリアしてください。

非合法な方法により解析等をするのであれば、参加しないでください。
XboxSDKは使わないでください。また、マイクロソフト社と守秘義務契約を交わしているのであれば、参加しないでください。

賞金の支払いに関する法的な保証はありません。
賞金が払われなくても、裁判は起こさないように。なるべくフェアに選考し、配分するようにしますが、一切の保証はありません。お遊びだと思って参加したほうがいいでしょう。

匿名の人物の正体については、Michael Steil (と、ほかの信頼できるプロジェクトメンバー)は知っています。
寄付話はネタではありません。ただ、匿名が条件の寄付です。

すべて (コード、データ、ドキュメント、構成図) はGPL、LGPL、その他オープンソースライセンスに準拠する形にしてください。
Linuxに関する開発ですから。

Getting Started

参加希望者は、Project Websiteのドキュメントを読んだ上で、Mailing Listに参加してください。


© 2002 Michael Steil & the anonymous donor
Everything done on this project is for the sole purpose of writing interoperable software under Sect. 1201 (f) Reverse Engineering exception of the DMCA.
The Xbox Linux Project.
訳者からの注意:だいぶ意訳している部分があるので、賞金目当てで参加する場合は、原文を熟読してください。