MiSTer
Original developer(s) | Sorgelig (aka Alexey Melnikov) |
---|---|
Current 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, or an HDMI to VGA adapter, are required if VGA output is desired.
Contents
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 |
Atari 800 XL | Computer | SuperStar |
Atari ST/STe | Computer | WIP |
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 | SuperStar |
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. Highly recommended, but even without the additional SDRAM module, many cores will still function when using the 1GB of DDR3 ram that comes on the De-10 Nano board itself. SDRAM modules generally come in two sizes; 32MB and 128MB. With the 32MB module, you can play 99% of what is available on MiSTer. The 128MB module currently is only required for a handful of Neo Geo games (about 15% of the library), but this includes notable ones like Metal Slug 3 and Garou.
- 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. The I/O board already features zero-latency analog video output if a RGB, component or other cables is used.
- 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. MiSTer supports 1000hz polling for USB devices and can achieve input latency under 1ms depending on the controller used.
- SNAC
- The Serial Native Accessory Converter(SNAC) board allows original controllers and peripherals to connect directly to the FPGA with latency matching original consoles. This is especially useful for light guns, but also works with a wide variety of other accessories like multi-taps, mice and 3D glasses.
Controllers
- Bliss-Box BlisSTer
- [1] Alternative to the USB hub. This product from Bliss-Box makes similar utilization of the ultra-low-latency API found in the MiSTer range for adapting native controllers. The Bliss-Box LLAPI (Low Level API) is a protocol written for the Bliss-Box Bridge not yet released but was adopted in the Mister cores available here [2]. The BlisSTer enables original console controllers that inter-operate with Bliss-Box's universal adapter chips to connect to a MiSTer hardware (Read their Support page for more details). If you already have the Bliss-Box adapters 4-Play or Gamer-Pro then you can use a level shifter that plugs on to the serial I/O port on the input board. Level shifters can be made (simple design) or bought from Bliss-Box. The Bliss-Box also works with consoles like original Xbox and Nintendo Switch[1]. The BlisSter BlisSTer,or HERE input board for the MiSTer has USB and HDMI ports. Adapter cables can be ordered along with the BlisSTer for original controllers to be used with those HDMI ports in low-latency mode. Support for the BlisSTer at this time is not in the main fork but you can use these cores [3]
Note: Check the Racketboy retrospective in Resources list below as it particularly covers these solutions to using old controllers well.
Comparison to alternatives
MiSTer FPGA has reached the point where it has surpassed the commercial offerings from Analogue, as well as other open source FPGA developments like MiST, SiDi, etc.
Cores currently in development
Current cores being developed include the Sony PlayStation (PSX/PS1) and the Sega Saturn, amongst many others. As far as the limit of what is possible on the platform currently, Saturn is at the edge of what is considered to be remotely feasible from the DE-10 Nano board that MiSTer uses. The Nintendo 64 is expected to require a more powerful FPGA and memory configuration to work correctly, so it is considered unlikely that this, and more advanced consoles, will be possible on the platform.
Resources
- RetroRGB's start guide with links to shop pages for various parts
- RetroRGB MiSTer news
- Racketboy's retrospective (February 20th, 2019. MUST-READ for everybody interested in learning about origins of FPGA used for simulating retro game systems and getting started with the MiSTer! There is also a big topic on controllers & their solutions.)
- MiSTer FPGA (computer/console/arcade hardware simulation) (forums.overclockers.com.au thread. Started on Oct 14, 2018 and running across many pages. It has nice coverage of many basic summaries, embedded video links especially for new & updated system cores, feedback and advice.)
- Official MiSTer forum (Mainly for discussions on development of cores, packaged kits, info of changelog updates, sale page links and etc.)
- MiSTer Console BIOS Pack (Necessary BIOS files for various console cores on the MiSTer)
- theypsilon's update_all script (Very helpful improved updater script that includes a lot of files to get you up and running easily)
References
- ↑ Bliss-Box now goes live to a console near you. (Racketboy thread. Thu Jan 10, 2019.)
External Links
- Twitter feed (By SmokeMonster, a RetroRGB.com journalist)
- YT channel (By SmokeMonster, a RetroRGB.com journalist)
- Core availability on the MiSTer (Atari-Forum thread. Tue May 08, 2018. Early comparisons between the original MiST hardware and this new MiSTer fork regarding supported system cores. Original developer of both hardware, Sorgelig, also discussed in this conversation.)
- FPGA Technology: How Does It Preserve Retro Gaming? at Game Bros Central (August 12, 2019. By Lord Gamesly. An article with several topics including a summary; Limitations of Emulation; Use of FPGA in clone consoles, flash carts & resolution enhancements; and Final Thoughts.)