MiSTer FPGA History Series: Part 2: Early Days
Even from the early days, the MiSTer represented a step up when compared to the MiST project. Even more important were the possibilities with the increased specs of the board, but the HDMI output also made it far more accessible to those of us who didn't have old CRTs hanging about.
In June of 2017, the MiSTer project got its first commits into the github repository, marking its initial public release. Started by sorgelig (Patreon) , it utilized an (at the time) readily available FPGA board, the education-targeted DE-10 Nano, along with some add on boards, made easily possible by the fact the DE-10 Nano sported a large number of expansion pins and ports. One of the big things that has changed over the MiSTer's life is the price of a DE-10 Nano; even though it hasn't been changed or updated, it went from about $150 US at the time of release (including shipping, straight from Terasic) to about $250 now; this isn't simply keeping up with inflation, this is far beyond it.
The MiSTer was released as both a set of software, and standardized hardware addons for the DE-10 Nano. The hardware addons were the AV Board, the USB hub, and the SDRam addons. Technically none of these is necessary; the base MiSTer software will run on a bare DE-10 Nano. However, almost every core requires at least some level of SDRam. The early SDRam expansions were 32mb, but 128mb eventually became the standard that we've still got to this day. Cores at the time of release all ran with just 32mb, but the larger expansions (a 64mb version existed for a short time) allowed later cores such as the CPS2 and Neo Geo cores to run every game, rather than only the small ones... but I'm getting ahead of myself.
At release, the MiSTer had both advantages and disadvantages compared to MiST; first of all, a "full MiSTer stack" cost a bit more than a full MiST setup, and early cases were simple 3d printed plastic rather than the metal MiST cases that were available. Secondly, some of the connectivity wasn't available at launch, although there was a promise of being able to add it on later through a unique port added to the AV board called the SNAC port. Initially, there was no ability to connect native controllers other than via USB adapters (and even then, for USB one needed to use the OTG micro-USB port on the DE-10 Nano unless one bought a USB hub), but being able to use simple adapters on the SNAC port was talked about from the beginning. SNAC was a port that looks like a typical USB-A port but isn't, and today it has more than fulfilled its promises, allowing many cool things including native controllers for almost every core, but this was still to be implemented in the early days.
However, it did have one huge feature: built in HDMI out with a VERY good, VERY fast scaler. This allowed connecting to modern screens, at the cost of literally only 1 frame of lag (plus any lag the display adds, of course). This made the MiSTer much more accessible for most people's standard usage, and was one of its two biggest advantages. The other was a much more capable FPGA; The Altera Cyclone V in the DE-10 Nano has 110,000 LEs, a bit over 4 times the "space" as the board the MiST uses. This allowed for far larger and more capable cores, although it took a lot of time for them to be programmed. From the beginning, there was speculation that the Playstation would likely be a possibility, but would likely be the "end of the line" for the MiSTer. This proved not quite true; the N64 and Saturn, both speculated to be impossible, did in fact prove possible on the machine... but not until much, much later.
The DE-10 Nano's connections are as follows: a MicroSD card port, a barrel-style 5v power jack (it ships with a 2a power supply), a micro-USB OTG port, a 10/100 Ethernet port, an HDMI port, a mini-USB port to be used as a UART console connector, 3 buttons, 4 toggle switches, and a large number of pins for addon connections. The two things that use those pins in a typical MiSTer stack are the AV board (only the "analog AV" board was available early on) and the SDRam. Since there are 2 of the same connector block of pins, one can use 2 SDRam expansions, and could even from the beginning, but this makes it impossible to connect an analog AV board. A USB hub can be connected to the micro-USB OTG port; in the early days, one often just used a cable for this connection, but later on brackets made this connection cleaner and simpler. Early USB hubs added as many as 6 USB ports, and modern ones add as many as 8. The AV Board adds a 3.5mm audio jack (modern ones also support miniTOSLink for digital audio, or full size TOSLink on the Digital AV Board), a VGA port (that again can speak some non-VGA things for conversion to TV formats like RGBs and YPbPr), another microSD card port (this has been used very rarely), an external switch to turn Sync-On-Green on or off (important for certain analog signals), a copy of the 3 buttons on the DE-10 Nano in a more accessible spot, 3 LEDs right above those buttons, and the SNAC port, which looks like but is notably not a USB-A port.
There were also a few other early minor addons, including the RTC, adding a realtime clock module, which is mostly useful for MiSTer setups that don't utilize the networking capabilities; having a network connection grants RTC capability through network time. There was also a dedicated 3.5mm Audio In port for cassette loaded games; this has since been integrated into the modern AV boards.
The AV Board can be considered optional, if you don't have a need for analog video, or the SNAC functionality. At release, though, the SNAC was like the expansion ports on old consoles at release; reserved for future expansion, but not currently useful for anything. Thanks to the existing cores from the MiST project, even in the early days there were a lot of great cores for the MiSTer.
The Atari ST, Amiga (as Minimig), Commodore 64, NES, ZX Spectrum, and Genesis were there at the very beginning, as well as a few arcade cores. The first major addition, in August of 2017, was the ao486 core, a simulated IBM-Compatible PC of about the late 386 or very early 486 era. New cores really started rolling in as we hit October, including the MSX computer, the Sega Mark III/Master System, and the Atari 8-bit line (including the 5200 console). We also got an Atari 2600 core, and a raft of popular arcade games, including Defender, Phoenix, Xevious, Bagman, Crazy Kong, and Galaga.
As the month drew to a close, we continued to get amazing new cores, such as the PC Engine, Commodore PET, Sinclair QL, and a partially working Sharp X68000. In November we got an Apple II+, Colecovision, and a raft of amazing arcade cores from the 80s. In December, just in time for Christmas, we got a core for the Gameboy. On a personal note, it's just about now that I built my first MiSTer, really looking forward to the promises of a NeoGeo core, and mostly buying it to add good proprietary computer simulation to my setup. I owned most major consoles already, but I did not own things like the C64, Amiga, MSX, Atari ST, or an Atari 8-bit, and wanted to use those more.
As one note for the "scene" at this time, the main two places to garner information about the MiSTer were on its github page, or on the Atari forums here . These days, there are far more great sources of information about the project, but those were the main things we had then.
In my next article, I'll talk about 2018, a year of some big changes for the MiSTer, as things rapidly got both more user-friendly and more capable.