zf3 / nes260

NES emulator for Xilinx KV260 FPGA board
GNU General Public License v3.0
44 stars 5 forks source link
emulation fpga mister nes retrogame zynq zynqmp

NES260 - NES emulator for Xilinx KV260 FPGA board

This is a port of fpganes to the KV260 FPGA board.

Current status:

Running NES260

Download the binary release zip file. Inside there's a BOOT.bin image for booting the KV260 board, and nes260.py for running on Windows.

KV260's boot process is different from most FPGA boards. It always boots from on-board QSPI flash and there's no switches/jumpers for other ways. So easiest way to boot BOOT.bin is to program it to QSPI flash. Follow Xilinx's instructions to do it. (You will need an Ethernet cable). If you have Xilinx's Vitis/Vivado development tools installed, you can actually switch to SD bootmode. The MicroSD card preparation is as simple as formating it as FAT and copy the BOOT.BIN to it.

If you see a grey screen after boot, then NES260 is ready for loading .nes ROMs. Connect KV260 to PC with USB cable and run pc/nes26.py with python to load games (pip install pyserial itertools inputs kaitaistruct importlib, then python nes26.py). USB game controller should be connected to the PC (not KV260). My Xbox 360 controllers work fine.

To get audio, connect a IceSugar Audio 1.2 module to the PMOD port. It provides both a small speaker and a 3.5mm jack.

Interested in retro-gaming or learning FPGA programming?

You can,

Video demo

NES260 demo

Feng Zhou, 2022-7