MiSTer
This page is a WIP, feel free to help out
Developer(s) | MiSTer-devel (MiSTer Team) |
---|---|
Latest version | Git |
Active | Yes |
Platform(s) | Terasic DE10-nano (with add-ons) |
Architecture(s) | FPGA |
Emulates | Various |
Compatibility | Varies, see supported systems |
Website | MiSTer wiki |
Support ($) | PayPal Patreon |
Programmed in | Verilog, VHDL, SystemVerilog |
License | Varies between GPL3 and MIT |
Source code | GitHub |
MiSTer is an open source hardware reimplementation project designed to be used on an FPGA. It reimplements various console, arcade, and computer hardware on the Terasic DE10-nano development board as opposed to running projects like Lakka on an ARM-based DIY emulation box. MiSTer is a fork of MiST, which is a similar project; the difference is that MiSTer targets a more powerful board to allow for more complex hardware implementations.
Contrary to what one might think, the Terasic DE10-nano doesn't just have an FPGA; the system also contains an ARM processor and DDR3 memory which is used with an optimized Linux kernel to interface with files-- the system can even run Lubuntu 16.04 if one wanted to. The difference between a board like the DE10-nano and, say, a Raspberry Pi is the addition of an entire FPGA which handles the bulk of the system core.
MiSTer also maintains schematics for a few additional boards; some cores will often require the SDRAM board, as it allows for better handling of memory than what the DDR3 unit provides. The DE10-nano only includes HDMI output so the I/O board is needed if VGA connectivity is desired.
Setup
Follow these two pages to get started (and this one if you plan on using a core that requires SDRAM).
Overview
Supported systems
System | Classification | Status |
---|---|---|
Bally Astrocade | Console | SuperStar |
Atari 2600 | Console | SuperStar |
Atari 5200 | Console | SuperStar |
ColecoVision | Console | SuperStar |
Nintendo Entertainment System | Console | SuperStar |
Nintendo Gameboy | Console | SuperStar |
Odyssey² | Console | SuperStar |
PC Engine/TurboGrafx 16 (SuperGrafx) | Console | SuperStar |
Sega Genesis/Mega Drive | Console | SuperStar |
Sega Master System and Game Gear | Console | SuperStar |
SNES/Super Famicom | Console | SuperStar |
Vectrex | Console | SuperStar |
Amstrad CPC 6128 | Computer | SuperStar |
SNES (Super Famicom) | Computer | SuperStar |
Atari 800 XL | Computer | SuperStar |
Amiga | Computer | SuperStar |
Commodore 64 | Computer | SuperStar |
Commodore 16 / Plus/4 | Computer | SuperStar |
Commodore PET | Computer | SuperStar |
Commodore VIC-20 | Computer | SuperStar |
ao486 | Computer | SuperStar |
SAM Coupe | Computer | SuperStar |
ZX Spectrum | Computer | SuperStar |
Apple II+ | Computer | Good |
Apple Macintosh Plus | Computer | Good |
Altair 8800 | Computer | Advanced |
DEC PDP-1 | Computer | Advanced |
Neo Geo | Console | WIP |
Sharp X68000 | Computer | WIP |
Add-on boards
The project also maintains schematics for add-on boards that users can add onto the DE10-nano. All of them are optional for the basic usage of the FPGA, but some cores may require the SDRAM board.
- SDRAM
- Allows FPGA cores to use memory that's better suited for reimplementations.
- I/O
- Adds a VGA connector, a 3.5mm audio jack, optical audio, three buttons, three LEDs, a secondary SD card slot, a USB 3.0-like expansion connector, and a fan that cools the FPGA. The DE10-nano only includes an HDMI connector, so this board is needed if one wants VGA support.
- RTC
- Provides a real-time clock for enthusiasts. The clock can be automatically configured if the FPGA is connected to the internet via the DE10's Ethernet port, and only two cores make use of it anyway.
- USB hub
- Adds seven USB ports under the main board.