MiSTer FPGA Hardware

The MiSTer is an open-source project that emulate consoles, computer and arcade boards via FPGA.  At the moment, it’s still a device that requires “tinkering” to configure, but it’s no more difficult than setting up a Raspberry Pi.

For a summary of how the project works and how to get started, please check out the page below.  Also, I recommend following Smokemonster to be kept in the loop of everything MiSTer-related.  Check out his Patreon and the above playlist of his introductory videos to some of the most popular cores on the platform:  https://www.patreon.com/smokemonster

 

Getting Started:

The DE-10 is the only required component to get started, but we also suggest a USB hub and RAM module:

FPGA Kit

DE-10: https://amzn.to/2COH4QN

USB Hub

The only USB port accessible for use with controllers and keyboards is the MicroUSB port in the front, all the way to the right.  You can get a cheap, passive hub if you just need a controller adapter.  A powered USB hub is required for most (but not all) WiFi modules.

Passive USB Hub: https://amzn.to/2CM5YjP

Powered 7-Port USB Hub – (both cable and hub are required):
https://amzn.to/2T6J3o7
https://amzn.to/2W5he1c

Powered 4-port USB Hub (currently untested!!!) & Required Cable
https://amzn.to/2T8Bc9q
https://amzn.to/2T6Jwqn

A USB keyboard is also required for setup (hit F12).

This can be any USB keyboard and isn’t something specific to the MiSTer project.

MiSTer Hardware (RAM, VGA, etc): 

Most cores require at least the smallest module, but if you’re looking to play every game possible, go for the biggest one.  Also, try to purchase from known sellers like the ones listed below, as there’s been a history of eBay scams for RAM modules.  As an FYI, one or two cores can run on just the DE-10 alone without the RAM expansion, so you can set up and start playing around with it as soon as the dev board arrives.

https://misteraddons.com/
https://tinkerplunk.com/mister-addon-boards/
https://www.etsy.com/shop/zerohimself
https://paradisearcadeshop.com/en/home/kits/black-friday-sales/2402_extra-slim-sdram-mister

European Seller:  https://www.facebook.com/pg/retroshoppontopt/shop

WiFi Modules

Compatibility is very spotty with WiFi modules.  What’s confirmed and working from some people is not from others.  To make matters worse, I’ve bought three wifi modules from this link and one didn’t work with MiSTer.  If possible, stick with ethernet, but if not, give this a try:  https://amzn.to/2RP2tRS

 

Software Setup:

The main MiSTer WiKi has excellent documentation on software setup.  You can always erase and start from scratch, so my suggestion is to use any MicroSD card (including the one that comes with the DE-10) and practice on that.  The process is pretty simple though:  Properly erase your SD card (SD Formatter is a good tool), use the MiSTer tool to rebuild it (one button press), then plug it in the DE-10 and run an over-the-network update.

Here’s the page:  https://github.com/MiSTer-devel/Main_MiSTer/wiki

 

How Does MiSTer Work?

The MiSTer platform runs a separate “hardware emulation core” for each console, computer or arcade board you run.  In order to accurately create those cores, you essentially need to recreate the original hardware in HDL (Hardware Description Language), which is more similar to a schematic than traditional coding. 

To do this, you map out each component on the motherboard, trace all the lines and analyze how they “talk” to each other in real time.  Some of the components on the board may be common off-the-shelf parts that offer datasheets about how they work.  If not, someone else may have already reverse-engineered the ‘generic’ component and have FPGA data on it already. These modular parts are usually referred to as “soft cores” and can be ‘plugged’ (via software) into a core, almost like a socketed IC.

The custom, proprietary chips are where things get even more complicated, as MiSTer developers need to reverse engineer each of those chips as well.  A good way to visualize what’s inside a complicated processing chip is this:  Imagine that main motherboard the chip is on.  Picture all the components, traces and configurations.  Now picture that shrunk down to 1/100th of the size, all jammed into a 1-inch-squared device and coated in a hard black opaque material.  Crazy right?

So after doing the tremendous work of reverse-engineering the motherboard, developers then need to follow a similar process on the decapped chip, using a microscope.  Depending on the complexity of the board and platform, this total process can take hundreds, if not thousands of hours to complete, but if done correctly, it can result in a cycle-accurate FPGA core.  These hardware “cores” are then flashed to an FPGA (such as the one included in the DE-10 Nano), whose logic elements are then physically rearranged to match.

For things like computers and consoles, all that work translates into hundreds or thousands of games per platform.  For arcade boards, that might only result in a handful of games, making the mark that much more impressive and painstaking.

The end results of all of this, is a core that when being played is completely indistinguishable from original hardware, which results in both an amazing gaming experience and an incredible way to preserve and archive the hardware they were built on.  Another bonus of HDL, is it’s the actual blueprint that’s sent to fabricate real chips for manufacturing.  That means once all the original hardware is dead and gone, it can be recreated on a chip…provided it was recorded perfectly in HDL.  Theoretically, you can model any digital circuit in HDL as a 1:1 exact copy, indistinguishable by human or machine, but few cores will ever reach that level of perfection. Still, this perfect accuracy is the end-goal of any FPGA endeavor, even if it is very long-term.

The MiSTer platform is truly a remarkable accomplishment and a help to both gamers and preservationists alike.