STM32 based CHIP-8 and Super-CHIP emulator
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


CHIP-8 and Super-CHIP emulator running the chip8swemu core on a STM32F103 (ARM Cortex-M3) microcontroller.



Game gallery

Splash screen Menu SuperWorm V4
Splash screen Menu SuperWorm V4
Space Invaders Car Blinky
Space Invaders Car Blinky
Cave Blitz Brix
Cave Blitz Brix
Pong Super Astro Dodge Tetris
Pong Super Astro Dodge Tetris


Core-Arduino Core-STM32
Arduino Mega (ATmega2560 + KS0108 GLCD) Blue Pill (STM32F103 + SH1106 OLED Display)

Final PCB

MCU Power Buttons
Schematics (MCU, Power) Schematics (Buttons)
PCB Front PCB Back
PCB Layout (Front) PCB Layout (Back)

Firmware building

  1. Add your games to the games.h header file. You can convert your games from binary format to a C array using xxd: xxd -i game.ch8.

How to build:

  1. Install the GNU ARM Embedded Toolchain compiler. Be sure you check Add to PATH during installation.
  2. You will need make. On Windows you can install the TDM-GCC compiler suite which includes mingw32-make. Be sure you check Add to PATH during installation.
  3. Install the STM32 ST-LINK Utility. You need to add its folder to PATH manually.
  4. Clone or download this repository.
  5. Open a command prompt in chip8stm32/software/ and type mingw32-make for building.

How to flash:

  1. Connect the board to the computer using a ST-LINK Programmer and type mingw32-make flash for flashing.