PitchHut logo
Anemoia-ESP32
Native speed NES emulation on the ESP32 platform
Pitch

Anemoia-ESP32 offers a high-performance NES emulator on the ESP32, enabling classic game experiences at native speed with audio emulation and save states for less than $20 of hardware. Built in C++, it brings a substantial portion of the NES game library to life, making it an essential tool for enthusiasts looking to revisit or discover NES titles.

Description

Anemoia-ESP32 is a high-performance and optimized Nintendo Entertainment System (NES) emulator designed to run seamlessly on the ESP32 platform. This project is a complete rewrite and port of the original Anemoia emulator, specifically tailored to deliver classic NES gaming experiences with native speed and functionality directly on the ESP32 hardware.

Key Features

  • Performance: Anemoia-ESP32 operates at approximately 60.098 FPS (NTSC), ensuring a smooth gaming experience with full audio emulation. Although some games with complex mappers may experience slight speed reductions, the overall performance remains exceptional.

  • Compatibility: This emulator supports around 79% of the NES game library by implementing five major memory mappers. Users encountering glitches or issues can report them, contributing to ongoing improvements.

Performance Benchmarks

Here are the average framerates achieved by Anemoia-ESP32 for popular NES titles, measured over a certain time frame:

GameMapperAverage FPS
Super Mario Bros.NROM (0)60.10 FPS
ContraUxROM (2)60.10 FPS
The Legend of ZeldaMMC1 (1)60.10 FPS
Mega Man 2MMC1 (1)60.10 FPS
CastlevaniaUxROM (2)60.10 FPS
MetroidMMC1 (1)60.10 FPS
Kirby’s AdventureMMC3 (4)59.57 FPS
Donkey KongNROM (0)60.10 FPS

Hardware Requirements

To set up Anemoia-ESP32, the following hardware components are required:

  • ESP32 38-pin development board
  • MicroSD card module
  • 320x240 TFT ST7789 LCD
  • PAM8403 amplifier with potentiometer
  • 8 Ohms 0.5W speaker
  • 8 tactile push buttons

Default Pin Setup

The default connection setup for components is as follows:

ComponentSignalESP32 Pin
MicroSD ModuleMOSI13
MISO34
SCLK26
CSGND
TFT DisplayMOSI23
MISO-1 (N/A)
SCLK18
CS4
DC2
RSTEN
PAM8403L25
ButtonsA22
B21
Left0
Right12
Up15
Down5
Start32
Select27

Anemoia-ESP32 provides an engaging platform for retro gaming enthusiasts, making it an ideal choice for those interested in NES emulation on modern hardware.

0 comments

No comments yet.

Sign in to be the first to comment.