AlfonsoJLuna / chip8stm32

STM32 based CHIP-8 and Super-CHIP emulator

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

chip8stm32

chip8stm32 is a handheld computer based on a STM32 microcontroller. It includes all the peripherals needed to play CHIP-8 and Super-CHIP games on the go: a hexadecimal keypad, a 128x64 OLED display and a passive buzzer. The included firmware uses the same core as chip8swemu for emulation.

Watch it in action: https://www.youtube.com/watch?v=vA76s3j4H90

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

Building the firmware

  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. Download and install the GNU ARM Embedded Toolchain. Be sure you check Add to PATH during installation.
  2. Install the STM32 ST-LINK Utility. You need to add its folder to PATH manually.
  3. Clone or download this repository.
  4. Open a command prompt in chip8stm32/Firmware/ and type make for building.

How to flash:

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

License

  • Hardware in this repository is licensed under the CERN OHL v1.2 license.
  • Firmware in this repository is licensed under the MIT license.

This repository may contain libraries or other files provided by third parties. The above licenses do not apply to these files.

About

STM32 based CHIP-8 and Super-CHIP emulator

License:MIT License


Languages

Language:C 94.4%Language:Assembly 3.4%Language:HTML 1.2%Language:C++ 0.9%Language:Makefile 0.0%