Bongerman is a bare-metal clone of the classic arcade game Bomberman designed to run on a Raspberry Pi. Developed in three weeks as part of a first year group project at Imperial College London.
- Custom kernel
- Graphics library
- Fully custom-made assets
- Two player multiplayer
- Two enemy players controlled by artificial intelligence
- Atari 2600 joystick input
- Sound using DMA
- Randomly generated maps
We never really thought to film any gameplay once we finished; we were too busy playing. Thankfully Tom Bellingham was able to capture some footage before we dissassembled the hardware:
Note: Red and White are the AIs
-
Create a
build
directory and runmake
using the provided Makefile. This will generate akernel.img
file that contains the compiled game.$ mkdir build $ make
-
Follow the official Raspberry Pi installation guide to install Raspbian onto an SD card.
-
Once installed, replace the
kernel.img
file with the one generated in step one.
Bongerman was developed using a Raspberry Pi model B. This is the associated GPIO pinout:
The game is designed to work using two Atari 2600 controllers with a classic 9-pin connector.
The controllers should be wired according to the following table:
Controller pin | GPIO pin |
---|---|
CONTROLLER ONE TRIGGER | 2 |
CONTROLLER ONE UP | 3 |
CONTROLLER ONE DOWN | 4 |
CONTROLLER ONE LEFT | 7 |
CONTROLLER ONE RIGHT | 8 |
CONTROLLER TWO TRIGGER | 9 |
CONTROLLER TWO UP | 10 |
CONTROLLER TWO DOWN | 11 |
CONTROLLER TWO LEFT | 14 |
CONTROLLER TWO RIGHT | 15 |
The 5V pin and Ground pin on both controllers should be connected to their respective pins on the Raspberry Pi.
- Daniel Dean
- Email: [email protected]
- Github: @danrobdean
- Virain (Nik) Gupta
- Email: [email protected]
- Github: @neprune
- Rishabh Jain
- Email: [email protected]
- Github: [@wakeuprj] (https://github.com/wakeuprj)
- Han Thi Nguyen
- Email: [email protected]
- Github: @Sunakarus
- Enrico Manfredi, for wiring assistance
- PiFox