phoboz / fpgagen

SEGA Genesis/Megadrive FPGA core
13 stars 4 forks source link

This is a port of fpgagen - Genesis/Megadrive core to additional platform(s) MiST, Turbo Chameleon 64, Altera/Terasic DE2 board

The core shall be considered a work in progress as there are multiple issues:

  1. Sprite flickering on heavy scenes, or on large sprites
  2. No LFO modulation of the FM sound
  3. Rom file formats supported are .bin and .gen, no support for .smd files
  4. The design does not fit on the Altera/Terasic DE1 board anymore

==== Installing the core ==== If you are not buidling the core, copy the following files to the root of your sdcard: fpgagen.rbf Configs/VGA/FPGAGEN.CFG

Then rename the file fpgagen.rbf to core.rbf

==== Building and installing the core ==== The project depends on submodules, so you need to type in the following commands after checkout.

cd fpgagen git submodule init git submodule update

Then load the Quartus II project file, and build: fpgagen/syn/mist/fpgagen.qpf

When you have built the core, copy the following files to the root of your sdcard: fpgagen/syn/mist/fpgagen.rbf fpgagen/Configs/VGA/FPGAGEN.CFG, or fpgagen/Configs/TV/FPGAGEN.CFG (for 15 kHz video)

Then rename the file fpgagen.rbf to core.rbf

================================================================================ fpgagen - a SEGA Megadrive/Genesis clone in a FPGA. Copyright (c) 2010-2013 Gregory Estrade (greg@torlus.com) All rights reserved

fpgagen is an attempt to clone the SEGA Megadrive/Genesis console in a FPGA. It is currently advanced enough to run many games.

================================================================================ In order to run this project you will need :

First, the FPGA EEPROM should be programmed with the demonstration design "DE1_USB_API.sof". It should be the case if you've never re-programmed it. That will allow you to use the "DE1 Control Panel" software.

Power on your DE1 board, make it sure it is connected thru USB to your computer. Run the "DE1_Control_Panel.exe" program. Click on "Open", select "Open USB Port 0". Select the "FLASH" tab, and click on "Chip Erase". Check "File Length", then click on "Write a File to FLASH". Choose a Genesis ROM (.bin or .gen file formats are supported, .smd files need to be converted to .bin, with SMD2BIN for instance). Once the write operation is done, close the "DE1 Control Panel".

If you downloaded the programming file, run the Quartus Programmer ("quartus_pgmw.exe" located in "\91\quartus\bin"). Select the "gen_top.cdf" file, click on "Start", and you're done!

If you want to build the project from its source, open the Quartus II software and select the "gen_top.qpf" project.

Notes :

A 3-button pad is mapped to the board's switches and buttons. Here is a description of the controls :

================================================================================ What this project currently provides :

What it lacks :

Other issues :

================================================================================ Special thanks and greetings to :

================================================================================ Gregory Estrade (Torlus) - 2010/07/14 greg@torlus.com