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)

An anonymous donor, whose identity is known to the Xbox Linux project leaders, has announced to award at total of US$ 200,000 for the completion of various tasks on the Xbox Linux Project until December 31st 2002.

Overview

The basic goal of the project is to find a simple and completely legal way to run Linux on the Microsoft Xbox.

The anonymous donor awards a total of US$ 200,000 for the completion of the project. The whole project is divided into two sub-projects, the first one consisting of four tasks.

Project A: Porting Linux to a modified Xbox:
Task 1: Replacement BIOS (software/hardware)
Task 2: Kernel and XFree drivers
Task 3: Kernel logic: FATX and miscellaneous
Task 4: XBE bootloader
Project B: Xbox hack without any hardware modification

Details

Project A: Porting Linux to a modified Xbox

Task 1: Replacement BIOS

a) Development of IBM PC-like BIOS software based on LinuxBIOS/FreeBIOS that is capable of booting Linux (using LILO) from an IBM-partitioned (original or replacement) hard disk and an El Torito bootable media in the DVD drive.

b) Development of a hardware device that replaces the Xbox ROM with the new BIOS ROM, either by permanently installing the device or by using it to modify the existing hardware. Installation/modification has to be as simple as possible.

Award for the whole task: US$ 55,000

Task 2: Kernel and XFree drivers

Development of new or adaption of existing drivers for Xbox hardware components:

  • Graphics hardware
  • PIC (on SMBus)
  • Serial EEPROM (on SMBus)
  • Temperature monitor (on SMBus)
  • Video encoder (on SMBus)
  • nForce devices

Additional changes will most likely have to be made in the hardware control part of the kernel.

Award for the whole task: US$ 25,000

Task 3: Kernel logic: FATX and miscellaneous

a) Deriving of a FATX driver of the existing FAT sources in the Linux kernel. Both FAT and FATX must be functional at the same time. Read and wite access to FATX must be possible.

b) Additional support code for the Linux kernel in the Xbox console environment, such as /proc/xbox and Xbox hard disk partitioning support.

[Note that some work has already been done for this task.]

Award for the whole task: US$ 10,000

Task 4: XBE bootloader

Development of a bootloader that is run as a standard Xbox application (as an unsigned XBE running on an Xbox with one of the already available modchips; or as code started by the program of Project B), escapes the Xbox kernel environment and boots the Linux kernel. This bootloader has to deal with configuration files and must be able to do a chained load of another Xbox executable in XBE format.

The bootloader must be a standalone XBE application not containing any MS library code.

[Note that quite some work has already been done for this task.]

Award for the whole task: US$ 10,000

Project B: Run unsigned code on an Xbox without any hardware modification

Development of a CD-ROM (image) that makes an unmodified Xbox run any unsigned code from the CD, and can make the Xbox start bootloader code as described in Task 4 (with the Xbox kernel intact) or as in Task 1 (with the Xbox kernel not being used any more).

Award for the whole task: US$ 100,000

Rules

General Rules

Sharing knowledge about previously unknown facts, code and hardware schematics get honored.
If you find something out, don't keep it to yourself to be the only one to be able to write code based on it. Share it with the others, your work will be honored anyway. Work on reverse-engineering devices of course gets honored, too.

To be honored, work must be submitted to the "xbox-linux" project at Sourceforge. It is not enough to publish information/code somewhere else.
We want people to work together, so there has to be a central point where all work concentrates.

Every step has to be published, people have to work in teams.
Development is much faster when people work together.

If more than one different complete solution gets published, the better one gets all the money.
We don't want that people work on a solution on their own and only publish the results, we want to make them work together. If you always publish all your work at once, all work will be honored. If you publish complete solutions, you might not get any money at all, if the community effort is or will be better.

Though, if a solution replaces old work, the original work will be rewarded, too.
Don't hesitate trying something out. Don't hesitate replacing old concepts.

Work that has already been done before this initiative has been started can be honored, too.
But please submit it to the Xbox Linux Project.

With "Xbox", we refer to the majority of the Xbox consoles on the market when this initiative was started.
If MS changes their box, that shouldn't negatively impact someone's successful work on an older box for sure.

Awards

All awards are determined by the awards committee. All decisions are final.
The committee is chosen by the anonymous donor.

The exact value of any task may change if the complexity of this or another task was over- or underestimated. The 100.000$ for each project are always fixed, though.
It's hard to tell how difficult the different tasks will be. To be as fair as possible, the values may be adjusted a little.

Completion of each step will be determined by the awards committee.

Awards may be split between groups at Award committee's discretion. Group contributions should designate the lead participant who the awards, if any, will be distributed to. For group contributions, it is the responsibility of the lead participant to disburse the funds.
It will be impossible for the awards committee to decide the participation level of each person of a group, so we defer to the group coordinator.

The outer limit on the initiative is December 31st, 2002.
Please understand that we cannot wait forever.

Legal issues

All solutions have to be legal.

Legal issues are up to the individual participant, not the project.

People that are working with (possibly) illegal methods may not participate.
Don't use the Xbox SDK. If your are a game programmer with NDA knowledge of Xbox details, don't participate.

Nobody has the right to get money.
Don't send us to court. This is supposed to be fun. We will do our best to be fair.

The identity of the anonymous donor is known to Michael Steil (and possible other trusted leaders of the project) from the Xbox Linux Project.
This is no hoax, it is a reliable person. Michael was just asked not to tell their name.

Everything (code, data, documentation, schematics) has to be subject to the GNU General Public License, the GNU Lesser General Public License, or, if your work bases on existing code, any other Open Source License.
We're working on Linux, remember?

Getting Started

If you want to participate in the project, you should read the documentation on the Project Website, join the Mailing List and check out XBOXHACKER, our partner site about Xbox hardware and software hacking.


© 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.