For many, MiSTer, and FPGA projects like it, are the future of retro computing and gaming.
Why? What about it has people so excited that they will pay 4x the price or more than alternatives?
How would you like a compact machine that can super accurately replicate retro arcade systems hardware, computers and consoles down to the instruction cycle level?
No, I am not talking about a Raspberry Pi running emulation, I am talking about the actual hardware being recreated in an FPGA (Field Programmable Gate Array).
You see, rather than a piece of software interpreting the instructions the way the original computer hardware would, or a good approximation, the actual circuits and logic are recreated on the FPGA so essentially it virtually is the original hardware.
In theory, this is the closest you can get to original hardware in 2020 without, you know, the original hardware.
As the original hardware decays, becomes scarce, breaks down, and becomes bloody expensive, FPGA is increasingly coming to the rescue.
It’s not just for full systems either. Projects are proliferating that replace hard to come by custom chips (such as the FPGA SID project) that can often run for almost the same cost as a full working computer.
Unlike most MiSTer fans, I got into things via my love of electronics. While I was learning FPGA development and programmable digital logic, the various projects were popping up.
Selection of FPGA boards
My first gaming FPGA was actually a Pipilio board running Sinclair Spectrum emulation! After that, I followed a Will Sowerbut’s tutorial and software for emulating a Z80 CPM machine, and I was hooked.
Gaming with FPGA
For a casual gamer is it better than RetroPie? Probably not. Aside from the much higher cost, right now the Pi emulates more machines than there are cores available. Plus, emulation is getting better and better.
That said, for low latency and super-tight accuracy situations, FPGA implementations do usually beat out emulation.
This can be vital where having a bunch of orginal hardware is cost-prohibitive and having lots of machines requires lots of space.
Original hardware is fragile and is more convenient to develop or run software using a unit that replicates the original but can be connected to modern peripherals (HDMI, USB, Ethernet/Wifi, etc).
Increasingly hardware replacement boards implementing FPGA will feature the ports and connections of the original hardware too, whereas emulation will not.
For example, the Ultimate 64 that replaces Commodore 64 motherboards allows you to use original cartridges, and the ZX Spectrum Next despite being a “continuation” of the Speccy, still allows you to load games from tape. For data recovery or archival, that can be the difference between something valuable being lost forever.
Other than the very specialised systems, or dedicated machines such as the Spectrum Next, Sega Megadrive Mega SG, or the Vampire Standalone Amiga recreation, most people have settled on MiSTer as being the go-to platform.
MiSTer is essentially a continuation (using more powerful hardware) of the earlier MiSTery, that recreated the Atari ST, and the Amiga recreation, MiniMig. Unlike the predecessors, MiSTer has a growing suite of cores, so in one machine you can have the hyper-realistic experience of dozens.
Getting Started with MiSTer: Hardware
First step is to buy a DE10-Nano kit.
In the kit is a small SD card, cables, power supply etc.
While there is more you can buy, this is the basic gear you need to get started.
- My MiSTer is fitted with an IO board, which had a basic fan but I upgraded to a silent Noctua fan. This board for me is mostly just the cooling and handy access to reset and menu buttons.
- Due to me wanting Neo Geo capability, I went for 128mb RAM expansion. For most cores you don’t need to max out the memory, but a 32mb expansion at least will be required by many.
- Out of the box there is only one USB socket, so you will need an OTG USB hub for your game controller, mouse, keyboard, and a wifi dongle unless you have Ethernet.
Getting Started with MiSTer: Installing MiSTer, Cores and Games
MiSTer, and all the cores, are shared freely on Github. To get early-access to brand new core betas you often have to be a Patreon Patron of the individual developers, such as the exciting Capcom CPS2, but they all end up shared on completion.
There are a bunch of 1980s Arcade games, tons of Retro computers, and a whole bunch of 8 and 16bit games consoles, all accessed from this menu (note my custom wallpaper – neat huh?).
While early Arcade games have the game logic wrapped up in the core (seeing as they were dedicated machines), computers, consoles and later machines require the core and ROMs.
Rather than use the regular instructions, I use MiSTer Fusion (heh) which is a lot easier.
MiSTer Fusion is an SD card image that you burn using Pi Imager or Etcher, just like building a Raspberry Pi disk. It expands your drive space on boot and installs all the necessary foundational elements.
Once you have installed MiSTer Fusion you can add cores selectively, but another really nice community contribution is a script called Update All MiSTer
All-in-one script for keeping up-to-date with the MiSTer ecosystem.
It adds a whole bunch of Firmware, Cores and such, leaving nothing to do if you want to start gaming right away, plus you can run the script again to keep up to date.
After setup, there are scripts for setting up wifi, enabling network file shares (“SAMBA”), or you can use ethernet and log into SFTP (User: root, Password: 1) to upload additional games and software.
As well as a keyboard and mouse for setup, you will also probably need a gamepad for playing the games. I use an XBox style USB gamepad, and there are many out there at a whole range of prices that are compatible. Purists will tell you to go with low-latency options, I went by price!
To get going with your controller, you need to configure MiSTer, and then the individual arcade or computer for anything specialized.
You get to the menu with F12 or via the OSD button if you have an IO board, or using your controller if you have that configured.
Once you have your controller set up, then you can play games. As mentioned earlier, using the scripts allows you to start off playing arcades without anything extra.
I will show setting up computers such as the Commodore 64 and Amiga in a follow-up article, but if you can’t wait, check out these excellent YouTube channels: