Skip to content

A replacement Original Xbox BIOS that does one thing. Plays DOOM

Notifications You must be signed in to change notification settings

Ryzee119/XboxDoomBIOS

Repository files navigation

DoomBIOS

  • Play your Original Xbox the way Bill Gates truly intended with DoomBIOS.
  • This is a 256kB bios image that replaces the OG Xbox BIOS to do one thing. Play DOOM.
  • 100% opensource with no copyright code.
dooom.mp4

Todo

  • Fix conexant video encoder issues
  • Fix fatx writes? Seems to work on xemu but not hw
  • Test Xcalibur, Focus alot more
  • Support locked Xbox hard drives

Quickstart:

  • You need to have your xbox harddrive in an unlocked state (FIXME!)
  • Download the Shareware version.
  • Place at E:/doom/doom1.wad.
  • Flash bios to your modchip of choice and run.

Compile (Ubuntu/WSL2)

sudo apt install git build-essential clang nasm cmake python3 python3-pip git
pip install objutils lz4 pyelftools
git clone --recursive https://github.com/Ryzee119/XboxDoomBIOS.git
cd XboxDoomBIOS
mkdir build && cd build
cmake ..
cmake --build .

This creates a 256kB binary that you use as an Original Xbox BIOS image.

General features

Although we run doom, there's alot of boilerplate to make this work. The following are features I think are neat

  • Uses FreeRTOS kernel for multithreading support
  • Custom ATA/ATAPI driver with full DMA support up to UDMA6 (auto negotiated speeds)
  • Seemlessly read/write files on FAT16,FAT32,exFAT and FATX filesystems using standard c library calls (fopen etc)
  • ISO9660 support for reading DVD roms
  • USB Mass Storage support
  • PCM audio driver from nxdk
  • Compresses the bios at compile time, and decompresses to RAM at run time using LZ4 for significant ROM savings.
  • Uses the visor exploit which runs on any xbox version
  • Comprehensive C library included using picolibc.

License:

  • Some code is based on Cromwell which is licensed under GPL2.
  • Code written by me is licensed under either MIT of CC0-1.0. See respective source files.
  • I use a bunch of external libraries. See below for licensing.

Third Party Libraries:

References:

About

A replacement Original Xbox BIOS that does one thing. Plays DOOM

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages