top | item 32887388

MiSTer FPGA: Recreate classic computers using modern hardware

164 points| lnyan | 3 years ago |mister-devel.github.io

59 comments

order
[+] koala_man|3 years ago|reply
For anyone else wondering about the name: it's actually "MiSTer", from "MiST on Terasic [FPGA board]", with "MiST" being a previous "aMIga/ST" FPGA reimplementation effort.
[+] lnyan|3 years ago|reply
Seems that HN automatically replaces "MiSTer" with "Mister" when I submitted this post
[+] vintermann|3 years ago|reply
There's one thing you don't get, which I see many people find they miss: savestates. It's technically possible and I know a few cores try to support them, but it's just a million times easier (and more reliable) if you do everything in software anyway.

Hardware emulation has a pretty small niche between software emulation and real hardware. If you care about accuracy at all costs, real hardware is usually still available and not too expensive, and if you care about convenience, software emulation is better.

[+] reidrac|3 years ago|reply
> real hardware is usually still available and not too expensive

I all depends. There's a "retro" bubble currently and people ask silly money for the original hardware. Then capacitors burst, original hardware needs maintenance, and is not something everybody can do.

The MISTer provides an experience that gets very close to the original hardware, without all those nuances.

[+] flatiron|3 years ago|reply
I’m unsure what you mean about hardware emulation not being reliable. Save states is a good point. SNES for example does not have them. Adding that stuff as an after thought is extremely tricky. Most newer cores are creating with save states in mind for two reasons. Makes debugging much easier as you can share states with testers on top of the QOL you get with that feature for end users. PSX for example has really good save state support with rotating save states.
[+] fermentation|3 years ago|reply
I personally have found it more enjoyable to play a lot of games without savestates.

Playing earthbound a few years ago I was constantly savescumming. My recently replay on mister without savetsates was way more enjoyable because the stakes were higher.

Wouldn’t want to play a Mario World rom hack without them though

[+] I_AM_A_SMURF|3 years ago|reply
Retro hardware is available, and maybe it's not too expensive, however retro hardware _with_ HDMI or otherwise clean digital output? not so cheap.

A good HDMI scaler is hundreds of dollars, plus you need RGB-modded consoles to get good output.

[+] flatiron|3 years ago|reply
I was lucky enough to get in on this when the boards were ~$130. It’s one of my favorite pieces of tech. It “just works” and the UI is very good. Updating is super easy and it even goes and grabs the MAME Roms for you. CPS2 games feel much different than my MAME box running Arch. I can 100% pick up the controller and I’m a few seconds know which one I’m playing. The video processing presets have some that make the games look amazing. Psx I mainly play rpgs so latency isn’t a huge deal there. If anyone has any specific questions let me know. I think they are twice the price now but even at that I would probably rebuy. I use it probably 8-10 hours a week so worth a good investment.
[+] radicalbyte|3 years ago|reply
Same here, it's a fantastic piece of kit. Better than my retro consoles. Only real downside is that I just don't have the time to use it much :(
[+] Koshkin|3 years ago|reply
FPGAs are fun, for sure, but I still have never felt the flair of “authenticity” from the use of FPGA as opposed to software emulation on a microcontroller or the PC. In fact, software emulation is so much more practical, and you can simulate pretty much any aspect of it that you wish, not just the CPU and some peripherals. A modern flight simulator is another example of using software to bring the user’s experience close to what it would be in reality (especially with the VR gear).
[+] prezjordan|3 years ago|reply
Often times it's not flair but latency! I have yet to find a handheld that plays my GBA titles with the same feel as my actual SP, save my Analogue Pocket which has an FPGA.
[+] randombits0|3 years ago|reply
Um, I don’t understand how you might feel software emulation has more “flair of authenticity” than a MISTer rig. FPGAs don’t emulate hardware, they are hardware. They are almost exactly like the original.
[+] kaoD|3 years ago|reply
I'm curious, is there any advantage to this over software emulation, besides "I did it because I could"? (which is of course cool in itself).
[+] 0xcde4c3db|3 years ago|reply
The main disadvantage of software emulation is that really making the timing consistent with the original hardware is computationally expensive because it needs to account for things like bus arbitration and DMA interactions between the CPU and graphics hardware. This means that you can't get away with JIT translation, or even having your CPU emulation iterate over a bunch of instructions at once. For most games this doesn't make a big difference, but it matters in some edge cases, and also for accurate slowdown behavior (most old-school game engines let physics slow down when the CPU falls behind), which is important for speedruns and other high-level play on some games.

While it's not intrinsic to software emulation, modern PC and mobile operating systems tend to be somewhat bad about input lag by default. This can be overcome, but it's work, and vendors seem to invent an exciting new way to fuck it up every few years.

Similarly, a lot of old-school hardware ran at oddball frame rates that modern systems won't do without a bit of coercion (e.g. NTSC SNES runs at around 60.09 Hz in most modes), so you're usually forced to choose between running the system at a slightly inaccurate speed or allowing periodic stuttering. That being said, modern displays don't necessarily support the original refresh rates either, so FPGA-based systems have needed to make the same compromises, just less often than software emulators.

[+] cmrdporcupine|3 years ago|reply
Latency.

It doesn't matter how fast your emulator is, throughput-wise. Your operating system (and other stuff) sits between it and output and input devices. And usually adds multiple frames worth of latency. There's ways to improve this, certainly, but you won't get that experience "out of the box."

Now, it's also possible to accomplish this by running emulators "bare metal" or "close to the metal" like my friend Randy did with his BMC64 project: https://github.com/randyrossi/bmc64

[+] blcknight|3 years ago|reply
It's a good way to learn about FPGA's. Other thna that, the FAQ has a good example about where the Amiga software emulation falls short:

> Let's take a well-known emulator, UAE, emulating an Amiga. On a Raspberry Pi 3, you can run some Amiga CPU benchmarks and get crazy numbers like 100 times the original 68000 processor. So you may assume you have an emulated Amiga that is 100 times faster than real one. No, you don't. If you run different kinds of demos or games, you will see the video stutters sometimes. For example, if you play the well-known "State of The Art" demo by Spaceballs, you will notice video stuttering at some points, while a real Amiga 600 with 1x CPU speed plays the whole demo very smoothly.

https://mister-devel.github.io/MkDocs_MiSTer/basics/faq/#why...

[+] foft|3 years ago|reply
If you want to eg add original ports and hardware interfaces that tends to be easier with an fpga: cartridges, midi etc. Of course you can do that in software/ bit bang. Though it’s complicated by emulator timing, they tend to run frame by frame and sync at the end of a frame.
[+] layer8|3 years ago|reply
It removes the need for a high-end CPU for accurate emulation, and potentially reduces video/audio lag.
[+] Aromasin|3 years ago|reply
I've wanted to give Mister FPGA a go for the longest time, but the boards are never in stock any time I look. How are people getting their hands on them?
[+] gchadwick|3 years ago|reply
Apparently if you buy direct from Terasic you can get hold of them. The downside is a large shipping cost and import duties/taxes on top. I have heard of people successfully getting them shipped from Terasic offices within the same country as them to avoid the import duties issue.
[+] etiam|3 years ago|reply
Tough, given the difficulties the last few years I guess.

But Terasic have the FPGA board listed for pre-order with estimated shipping at the end of this month. I haven't had opportunity to get one before either, so I'm not sure how the availability for expansion cards has been.

[+] fermentation|3 years ago|reply
It’s rough. I followed the misteraddons owner on twitter and waited a few months for them to notify that kits were back in stock
[+] peterkelly|3 years ago|reply
I ordered one direct from Terasic back in June and received it in about 2 weeks. Cost excluding shipping was $243.
[+] sigstoat|3 years ago|reply
placed a backorder on mouser and then just waited. easier than constantly checking and hoping. they don't charge your card until it ships.
[+] easygenes|3 years ago|reply
For those more generally interested in learning FPGAs and computer architecture, MiSTer is a nice platform to explore. I recently found a good series of videos looking at it from this perspective [1].

  1: https://www.youtube.com/watch?v=qxgM9NPrhqw
[+] ilaksh|3 years ago|reply
It seems like there really needs to be an alternative that uses more available hardware.
[+] dtx1|3 years ago|reply
I applaud the MiSTer Project for their brilliant work. I'd even be interested in buying something like it. But the most complex console it can emulate is a ps1 and that can be emulated perfectly fine in software. I wish most 5th gen/6th gen consoles were in reach to emulated with it. But alas that's out of the question and even software emulation is still far from great for most of these consoles and require beefy hardware...
[+] fortran77|3 years ago|reply
Can you actually buy a DE-10 Nano FPGA board today? The links say "pre-order"
[+] badlucklottery|3 years ago|reply
For a semi-normal price? Probably not.

Terasic has been getting stock pretty regularly though and their pre-order dates don't seem to be too far off reality.

[+] giantdude|3 years ago|reply
It's a shame it's not on a Xilinx FPGA. I am out.