Skip to content

gtaylormb/fpga_nes

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fpga_nes is an fpga-targeted Nintento Entertainment System emulator written in Verilog. It is currently under development, and is most notably missing support for mappers and the DMC sound channel. At this point, it runs most NROM games capably (e.g., Super Mario Brothers, Excitebike).

In addition, this project includes a C++ Windows application called NesDbg, which communicates with the FPGA over USB UART to load ROMs, run unit tests, readwrite memory, etc.

Hardware Setup:

alt text

  1. Nexys 3 Spartan-6 FPGA board. ($119 / $199)
  2. Micro-USB connection for FPGA power and programming.
  3. VGA display connection for NES video output.
  4. Micro-USB connection for communication between NES and NesDbg software.
  5. PmodBB Bread Board for a solderless joypad connection. ($20)
  6. NES Joypad Adapter to accept input from joypads. ($5)
  7. 2 NES Joypads to accept user input. (2 * $5)
  8. PmodAMP1 to amplify NES PWM audio output. ($20)
  9. Speaker to play the NES sound. ($6)

Development Environment:

  1. ISE 14.1 WebPack (free)
  2. Visual Studio 2010 Express (free)

ZYBO Board Port:

This is under development by Greg Taylor. Some changes to the hardware setup:

  1. ZYBO Zynq-7000 FPGA board instead of Nexys 3. ($125 / $189)
  2. PmodUSBUART for UART connection to ZYBO FPGA. ($22)
  3. You do not need the PmodAMP1 as the ZYBO has a built in DAC.

Changes to development setup:

  1. Vivado 2015.1 WebPack (free) instead of ISE.

About

FPGA-based Nintendo Entertainment System Emulator

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Verilog 36.8%
  • Lua 29.7%
  • C++ 15.8%
  • SystemVerilog 13.6%
  • C 3.3%
  • Assembly 0.7%
  • Other 0.1%