This is a port of OpenTyrian to the ESP32 platform, originally ported to ESP32 by Gadget Workbench and updated for new hardware with support for Board Support Packages.
The fork was updated to use all the game data directly from flash, as SD cards have a tendency to be unreliable. It now works with ESP-IDF 5.4 and utilizes the latest SDL3 available at the Espressif Component Registry.
OpenTyrian is an open-source port of the DOS game Tyrian.
Tyrian is an arcade-style vertical scrolling shooter. The story is set in 20,031 where you play as Trent Hawkins, a skilled fighter-pilot employed to fight MicroSol and save the galaxy.
- ESP-IDF 5.4 or later
- ESP32-S3-BOX
- ESP32-S3-BOX-3
- ESP32-P4
- M5Stack-CoreS3
You can use the @board/
parameter with idf.py
to switch between different board configurations.
Configure the build environment for your board:
For ESP32-S3-BOX-3:
idf.py @boards/esp-box-3.cfg build
For ESP32-S3-BOX (prior to Dec. 2023):
idf.py @boards/esp-box.cfg build
For ESP32-P4:
idf.py @boards/esp32_p4_function_ev_board.cfg build
For M5Stack-CoreS3:
idf.py @boards/m5stack_core_s3.cfg build
idf.py @boards/... flash monitor
Once you have bootloader in place, you can flash only application to save the time.
idf.py @boards/... app-flash monitor
This port is based on the work of the original OpenTyrian project (https://github.com/jkirsons/OpenTyrian) and an ESP32 port by Gadget Workbench, which was initially created for ESP-WROVER and ESP-IDF 4.2. The current version is compatible with ESP-IDF 5.3 and leverages the ESP-BSP for board support. The updated port uses SDL3, available on the Espressif Component Registry.
Special thanks to all contributors and the open-source community for making this project possible.