# DOOM on Fruit Jam

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/140/023/medium800/gaming_hero-guide.jpg?1758909210 )

## Does it Run DOOM?

Yes, it does! The infamous genre defining PC video game _ **DOOM** _ runs on the Adafruit Fruit Jam. Adafruiter and developer extraordinaire [Jeff Epler](https://github.com/jepler) ported the [RP2040 Doom](https://github.com/kilograham/rp2040-doom/) project to [run on the Fruit Jam](https://github.com/adafruit/fruitjam-doom).

This port of DOOM includes the shareware version of the original game. It has&nbsp;the first episode, “Knee-Deep into the Dead”, which has 9 levels designed to give players a taste of the full game.

## Features

- USB mouse, keyboard, and USB gamepad support.
- Audio output: Headphones or mini oval speaker.
- HDMI/DVI video output 320x400 resolution
- Frame rate 30-35

## Known Issues

Please read through the following issues to set your expectations. This port is playable, enjoyable and good enough. There's just a few minor issues to look out for.&nbsp;

- Status bar flickers (becomes less noticeable after hours of gameplay).
- End of level statistics are invisible and not displayed (just click to advance to the next level)
- Saving game causes USB input to stop working (just reboot and load your saved game).
- Near end of the forth level, the audio output gets heavily distorted (save and reboot!).
  - Audio is OK after the fourth level.

## Parts
Featured
### Adafruit Fruit Jam - Mini RP2350 Computer

[Adafruit Fruit Jam - Mini RP2350 Computer](https://www.adafruit.com/product/6200)
We were catching up on a recent [hackaday hackchat with eben upton](https://hackaday.io/event/202122-raspberry-pi-hack-chat-with-eben-upton)&nbsp;and learned some fun facts: such as the DVI hack for the RP2040 was inspired by <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6200)
[Related Guides to the Product](https://learn.adafruit.com/products/6200/guides)
![Angled shot of assembled mini computer PCB with plate.](https://cdn-shop.adafruit.com/640x480/6200-10.jpg)

Featured
### Mini Chiclet Keyboard - USB Wired - Black

[Mini Chiclet Keyboard - USB Wired - Black](https://www.adafruit.com/product/1736)
Add a good quality, slim keyboard to your&nbsp;Raspberry Pi, Beagle Bone Black, or other single-board-computer with this sleek black chiclet keyboard. It's a full QWERTY keyboard with a USB cable and is compatible with all operating systems. We tried many keyboards to find one that felt...

In Stock
[Buy Now](https://www.adafruit.com/product/1736)
[Related Guides to the Product](https://learn.adafruit.com/products/1736/guides)
![Angled shot of a Black woman's silver-blue manicured hands on a slim, black keyboard.](https://cdn-shop.adafruit.com/640x480/1736-04.jpg)

Featured
### USB Wired Mouse - Two Buttons plus Wheel

[USB Wired Mouse - Two Buttons plus Wheel](https://www.adafruit.com/product/2025)
This is a mouse. &nbsp;A nice, simple mouse. &nbsp;No bells or whistles. &nbsp;Just a mouse.  
  
But that doesn't mean it's not the best simple mouse!&nbsp; We compared a few and liked this one quite a bit. &nbsp;It's optical for good resolution and precision, has two...

In Stock
[Buy Now](https://www.adafruit.com/product/2025)
[Related Guides to the Product](https://learn.adafruit.com/products/2025/guides)
![Angled Shot of the USB Wired Mouse - Two Buttons plus Wheel](https://cdn-shop.adafruit.com/640x480/2025-05.jpg)

Featured
### USB Game Controller with SNES-like Layout

[USB Game Controller with SNES-like Layout](https://www.adafruit.com/product/6285)
This is a generic USB&nbsp;game controller, which plugs into to provide a two-handed gaming experience for retro gaming, or really any game you want to use a handheld rather than keyboard controller! Use it with your Raspberry Pi or desktop computer while playing emulated games, or as a...

In Stock
[Buy Now](https://www.adafruit.com/product/6285)
[Related Guides to the Product](https://learn.adafruit.com/products/6285/guides)
![Angled shot of SNES game controller with USB-A cable.](https://cdn-shop.adafruit.com/640x480/6285-00.jpg)

Featured
### 7" Display 1280x800 (720p) IPS + Speakers - HDMI/VGA/NTSC/PAL

[7" Display 1280x800 (720p) IPS + Speakers - HDMI/VGA/NTSC/PAL](https://www.adafruit.com/product/1667)
Yes, this is an adorable small HDMI television with incredibly high resolution **and built in 3W stereo speakers**! We tried to get the smallest possible HDMI/VGA display with high-res, high-contrast visibility. The visible display measures only 7" (17.8cm) diagonal, and the TFT comes...

In Stock
[Buy Now](https://www.adafruit.com/product/1667)
[Related Guides to the Product](https://learn.adafruit.com/products/1667/guides)
![Front view of assembled and powered on HDMI 4 Pi - 7" Display. The monitor displays a desktop background with a raspberry logo.](https://cdn-shop.adafruit.com/640x480/1667-00.jpg)

Featured
### Pink and Purple Woven USB A to USB C Cable - 2 meters long

[Pink and Purple Woven USB A to USB C Cable - 2 meters long](https://www.adafruit.com/product/5044)
This cable is not only super-fashionable, with a woven pink and purple Blinka-like pattern, it's also made for USB C for our modernized breakout boards, Feathers and more.&nbsp; [If you want something just like it but for Micro B, we have a B...](https://www.adafruit.com/product/4111)

Out of Stock
[Buy Now](https://www.adafruit.com/product/5044)
[Related Guides to the Product](https://learn.adafruit.com/products/5044/guides)
![Angled shot of a pink/purple woven USB cable plugged into a laptop port and a small dev board.](https://cdn-shop.adafruit.com/640x480/5044-04.jpg)

# DOOM on Fruit Jam

## Install

![](https://cdn-learn.adafruit.com/assets/assets/000/140/042/medium800/gaming_gametitle-controllers.jpg?1759181629 )

## Download DOOM UF2s

Start by downloading the two U2F files from the GitHub release using the link below. You should have two UF2 files:

1. **doom\_tiny\_usb.uf2**
2. **doom1-whx-for-fruitjam.uf2**

[Download UF2 from GitHub](https://github.com/adafruit/fruitjam-doom/releases/tag/0.1)
## Bootloader Mode

Get the Fruit Jam into bootloader mode. To enter the bootloader, hold down the **BOOT/**** BOOTSEL button&nbsp;**(highlighted in red above), and while continuing to hold it (don't let go!), press and release the&nbsp;**reset button&nbsp;**(highlighted in red or blue above).&nbsp;**Continue to hold the BOOT/BOOTSEL button until the RP2350 drive appears!**

![](https://cdn-learn.adafruit.com/assets/assets/000/140/027/medium640/gaming_fruitjam-boot.jpg?1759148928)

## Connect HDMI monitor, keyboard, mouse or gamepad

You'll want to have a USB keyboard & mouse or gamepad connected to the fruit jam before installing the UF2s.&nbsp;

For audio, you have the option to use headphones or the mini oval speaker (included with the Fruit Jam). If you want to use the mini speaker, connect it now. The firmware will automatically detect if there's a speaker or headphone connected on boot.

![](https://cdn-learn.adafruit.com/assets/assets/000/140/044/medium640/gaming_usb-controllers.jpg?1759234834)

## Install UF2s

Drag and drop the **doom1-whx-for-fruitjam.uf2** file onto the RP2350 drive and let the drive automatically restart.

When the RP2350 drive reappears, then copy the **doom\_tiny\_usb.uf2** file onto the drive and let it restart again.&nbsp;

DOOM will automatically boot up.

# DOOM on Fruit Jam

## Playing

![](https://cdn-learn.adafruit.com/assets/assets/000/140/045/medium800thumb/gaming_doom-gameplay.jpg?1759234858 )

## Power Fruit Jam

Connect Fruit Jam using a USB-C 5V power supply to power it on. Make sure your HDMI display, USB keyboard, mouse or gamepad is connected to the Fruit Jam before powering it on. Make sure the on/off switch on the Fruit Jam is set to the&nbsp; **on** position.

## Controls

Plug in all devices (keyboard, mouse or USB gamepad) before booting. Hotpluging (plugging or unplugging USB devices while the Fruit Jam is powered on) is unreliable. Remapping keyboard controls is not supported.

**Keyboard Movement&nbsp;**

- W – Move Forward
- A – Strafe Left
- S – Move Backwards
- D – Strafe Right
- Q – Turn Left
- E – Turn Right
- Shift + WASD – Run
- Spacebar – Open

**Mouse Movement**

- Y-axis – Forward/backward
- X-Axis – Left/Rigt Rotation&nbsp;
- Left-Mouse-Button – Firing

**USB Gamepad**

- D-PAD: forward/backward, turn left/right
- Shoulder Buttons: strafe left/right
- X: fire
- A/Y: open/activate
- B: run
- select/start: cycle weapons

**Fruit Jam on-board Buttons**

When starting, hold down:

- Button 3 – Disable music
- Button 2 – Disable music & sound effects

Warning: The Fruit Jam only has two USB host ports, so you'll only be able to plug in two USB devices at a time.

## Audio Levels

On boot, the audio levels are very high, so you may want to reduce the music and sound effects levels using the audio settings in the games menu.

## Saving/Loading Games

Saving game causes USB input to stop working, a known bug. You'll need to reboot the Fruit Jam and load your saved game.


## Guide Products

### Adafruit Fruit Jam - Mini RP2350 Computer

[Adafruit Fruit Jam - Mini RP2350 Computer](https://www.adafruit.com/product/6200)
We were catching up on a recent [hackaday hackchat with eben upton](https://hackaday.io/event/202122-raspberry-pi-hack-chat-with-eben-upton)&nbsp;and learned some fun facts: such as the DVI hack for the RP2040 was inspired by <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6200)
[Related Guides to the Product](https://learn.adafruit.com/products/6200/guides)
### Mini Chiclet Keyboard - USB Wired - Black

[Mini Chiclet Keyboard - USB Wired - Black](https://www.adafruit.com/product/1736)
Add a good quality, slim keyboard to your&nbsp;Raspberry Pi, Beagle Bone Black, or other single-board-computer with this sleek black chiclet keyboard. It's a full QWERTY keyboard with a USB cable and is compatible with all operating systems. We tried many keyboards to find one that felt...

In Stock
[Buy Now](https://www.adafruit.com/product/1736)
[Related Guides to the Product](https://learn.adafruit.com/products/1736/guides)
### USB Wired Mouse - Two Buttons plus Wheel

[USB Wired Mouse - Two Buttons plus Wheel](https://www.adafruit.com/product/2025)
This is a mouse. &nbsp;A nice, simple mouse. &nbsp;No bells or whistles. &nbsp;Just a mouse.  
  
But that doesn't mean it's not the best simple mouse!&nbsp; We compared a few and liked this one quite a bit. &nbsp;It's optical for good resolution and precision, has two...

In Stock
[Buy Now](https://www.adafruit.com/product/2025)
[Related Guides to the Product](https://learn.adafruit.com/products/2025/guides)
### USB Game Controller with SNES-like Layout

[USB Game Controller with SNES-like Layout](https://www.adafruit.com/product/6285)
This is a generic USB&nbsp;game controller, which plugs into to provide a two-handed gaming experience for retro gaming, or really any game you want to use a handheld rather than keyboard controller! Use it with your Raspberry Pi or desktop computer while playing emulated games, or as a...

In Stock
[Buy Now](https://www.adafruit.com/product/6285)
[Related Guides to the Product](https://learn.adafruit.com/products/6285/guides)
### 7" Display 1280x800 (720p) IPS + Speakers - HDMI/VGA/NTSC/PAL

[7" Display 1280x800 (720p) IPS + Speakers - HDMI/VGA/NTSC/PAL](https://www.adafruit.com/product/1667)
Yes, this is an adorable small HDMI television with incredibly high resolution **and built in 3W stereo speakers**! We tried to get the smallest possible HDMI/VGA display with high-res, high-contrast visibility. The visible display measures only 7" (17.8cm) diagonal, and the TFT comes...

In Stock
[Buy Now](https://www.adafruit.com/product/1667)
[Related Guides to the Product](https://learn.adafruit.com/products/1667/guides)
### Pink and Purple Woven USB A to USB C Cable - 2 meters long

[Pink and Purple Woven USB A to USB C Cable - 2 meters long](https://www.adafruit.com/product/5044)
This cable is not only super-fashionable, with a woven pink and purple Blinka-like pattern, it's also made for USB C for our modernized breakout boards, Feathers and more.&nbsp; [If you want something just like it but for Micro B, we have a B...](https://www.adafruit.com/product/4111)

Out of Stock
[Buy Now](https://www.adafruit.com/product/5044)
[Related Guides to the Product](https://learn.adafruit.com/products/5044/guides)
### Slim HDMI Cable - 900mm / 3 feet long

[Slim HDMI Cable - 900mm / 3 feet long](https://www.adafruit.com/product/2421)
Connect two HDMI devices together and save space with this slim, high quality HDMI cable. It has nice molded grips for easy installation and&nbsp;is 914mm long (~3 feet). Sporting a&nbsp;teeny&nbsp;4mm diameter this cable stays out of your way!

We also have slim HDMI cables at <a...></a...>

No Longer Stocked
[Buy Now](https://www.adafruit.com/product/2421)
[Related Guides to the Product](https://learn.adafruit.com/products/2421/guides)

## Related Guides

- [USB Game Controller with SNES-like Layout](https://learn.adafruit.com/usb-game-controller-with-snes-like-layout.md)
- [Using a Mouse with USB Host](https://learn.adafruit.com/using-a-mouse-with-usb-host.md)
- [Using a Keyboard with USB Host](https://learn.adafruit.com/using-a-keyboard-with-usb-host.md)
- [Adafruit Fruit Jam](https://learn.adafruit.com/adafruit-fruit-jam.md)
- [EPCOT Spaceship Earth with WLED](https://learn.adafruit.com/epcot-spaceship-earth-with-wled.md)
- [Fruit Jam, Zork and the Z Machine](https://learn.adafruit.com/zork-and-the-z-machine.md)
- [Match3 Game on the Fruit Jam and  Adafruit Metro RP2350](https://learn.adafruit.com/match3-game-on-metro-rp2350.md)
- [MIDI Controlled Robot Lyre with CircuitPython](https://learn.adafruit.com/midi-controlled-robot-lyre-with-circuitpython.md)
- [Owl IR TV Remote](https://learn.adafruit.com/owl-ir-tv-remote.md)
- [PICO-8 Fruit Jam Reality Console](https://learn.adafruit.com/pico-8-fruit-jam-reality-console.md)
- [3D Print Ratcatcher 2 Controller Device](https://learn.adafruit.com/3d-print-ratcatcher-2-controller-device-wand.md)
- [Using a Raspberry Pi as a Router](https://learn.adafruit.com/using-a-raspberry-pi-as-a-router.md)
- [Deco Two-Key Feather Macro Pad](https://learn.adafruit.com/deco-two-key-keypad-macropad-circuitpython-feather.md)
- [PropMaker Jack O'Lantern](https://learn.adafruit.com/propmaker-jack-o-lantern.md)
- [Severence-Inspired Lumon Bluetooth Speaker](https://learn.adafruit.com/bluetooth-speaker.md)
- [Fruit Jam IRC Client in CircuitPython](https://learn.adafruit.com/fruit-jam-irc-client-in-circuitpython.md)
- [Minesweeper on the Fruit Jam and Metro RP2350](https://learn.adafruit.com/minesweeper-on-metro-rp2350.md)
- [Tiny Wiki for CircuitPython](https://learn.adafruit.com/tiny-wiki-for-circuitpython.md)
- [Snake Game on Metro RP2350](https://learn.adafruit.com/snake-game-on-metro-rp2350.md)
