I remember first learning about FPGAs in digital logic class. I was amazed how you could recreate any IC chip inside fpga. When I first did FPGA labs I was so happy I didn’t have to physically connect any wires to IC chips and just had to work through software to make logic circuits. I’ve used “quartus” and made circuits from binary multipliers to a binary blackjack game between two players. I’m so happy fpga even extends to n64 now, this is a mainstay in retro gaming!
That's how I justified the expense to myself: besides the cool retrogaming aspect, the DE10-Nano looks like a fine platform to learn how to program FPGAs. 😂 And to be fair, it's a lot cheaper than previous FPGA boards I've found when I was in college. There are even cheaper boards (albeit with lower LE and IO capacity) that are good enough to implement simpler systems like an Apple ][ or a NES.
It took me until just this moment, after watching all these videos, that the opening music is a clip from the Mr. Mister song "Broken Wings". A MiSTer Mr. Mister reference.
Key point with FPGA emulation is not just parallel execution but that the FPGA is a Real Time Computing platform, meaning the code (emulated hardware core) execution completes in exacting timing (down to the cycle) every time, which is something you cannot really get on a normal CPU running an OS and a software emulator.
3:49 - X-OR, because it means eXclusive-OR. ;) Good vid. It was to-the-point, and helps dispel some of the FPGA myths. Eduardo Cruz' blog is awesome, btw. The way they reversed a lot of the protections on the CPS boards is super impressive.
I'm for both software emulation and FPGA as long as the projects are 100 percent open source. We have had too many incidents when an emulator dies and no one is able to improve or modify it afterwards. Open source projects also document their implementations by their very nature.
Great video as always :) One thing I always like to point out is that input lag can actually detriment your experience even if you can't "feel" it, since it effectively makes reaction-based execution windows smaller across the board. What may have been a narrow success on a lower-lag setup becomes a miss on a laggier setup, regardless of whether your hands can actually feel the delay. How often this actually presents is hard for me to say, but it's bound to come up across an extended play session. Also, runahead is great, but it effectively just lets you eliminate the frames of delay built-in to a given game's code. There's nothing to guarantee that eliminating this lag precisely cancels out the sum of the latency built in to your setup (emulator, controller, display, etc), so it's not really a way to match real hardware delay, strictly speaking. In some cases, I think I've heard of people getting lag LOWER than on real hardware + CRT, which is really interesting to me. My biggest personal gripe with software emulation is frame pacing. Motion never looks nearly as smooth or consistent on software emulators, compared to FPGA or real hardware. It can be pretty distracting imo.
Once you go TOO deep for sure. And people lose interest. I try to offer level a “below the surface but not ten levels deep” explanations to the casually curious
I am not an absolutist or anything. I have an FPGA. I have many devices with emulators and love them all. There is something special about the fact that an FPGA can be cycle perfect. When you watch one side by side of an original console and after 10 minutes of play time, they are still frame perfect. It blows my mind that someone took all of the components of the old hardware and coded into a core for an FPGA. That and lag is always an issue I run into on old console gameplay. It just "feels" like I remember on an FPGA.
I find there are less original hardware absolutists online anymore. Maybe the retro collecting craze has begun to die off or those people just kind of aged out of the hobby, but about 15 years ago those people were completely insufferable.
@@ciaranmccarthy Agreed. Emulation has come a long way. Also, collection appears to be the only purpose. Not collecting to play, but collecting to collect. I believe that is why they don't care about gameplay. I have old games and consoles. And I probably play old game on an emulator more often than OG systems. It's just convenience at this point.
There are very small footprint FPGA chips out there that could presumably fit. They certainly wouldn’t be as capable as this but in 10-15 years…never know!
Great and easy to follow explanation. Also, all of my electrical and computer engineering professors always pronounced it "ex or", but for some reason NAND was always pronounced as it's spelled and not "N-And".
Awesome video which answered a lot of questions! I would like to ask you something and get your opinion. I'm currently trying to capture game footage from my Sega Genesis 2. The video comes out a little shaky or stuttering and the audio has that annoying buzzing noise pretty much throughout game play. I was looking at getting a Retro Freak but also saw the MiSTer. I'm running the video connection through my Elgato HD capture card which is slotted into my M/B through HDMI to a computer monitor using HDMI as well. In your opinion, do you think the MiSTer is superior to the the Retro Freak? I just don't want to buy something that would be overkill for what I'm trying to accomplish. Which is recording the game play and audio without distortion for video projects as well as just enjoying my old games. Id also like to be able to play these old games with as little issue as possible and in their original aspect ratio.
@6:00 Eh. Yes, in practice but not technically true. It is more complicated to replicate the logical concurrency in software but it is possible. And of course you have parallel systems using multiple CPU cores running software simultaneously but again... in practice you wouldn't be splitting up everything that runs concurrently in a chip into individual threads or processes. The overhead of keeping things in sync would destroy the value of running concurrently. That said at a larger component level that process may be fine depending on the hardware design. Such as running a CPU interpreter and DSP interpreter concurrently and replicating sync where approrpriate.
so from what i'm understanding real hardware would be much more akin to how mister does is, running the logic simultaneously rather than sequentially, and therefore it can be more accurate correct? are there examples of real consoles that run their logic sequentially or is that just how logic elements in a hardware chip work? and does mister's method allow it to emulate things that are typically more diffucult for software emulation?
For me MiSTer is a winner over say software emulation on a raspberry pi because of how easy it is to connect to a CRT and the small nerdy joy I feel that this is as close as possible to original hardware. Lag reduction is important to me. But more than that I am just fascinated by the tech and the community and the fact that games get released overtime reminds me of the good old days when mame was new to the scene. Getting simpsons, TMNT and soon Mortal Kombat to play on my home made CRT connected arcade cabinet is pure joy.
I built a couple of retroarch PCs and messed around long enough to use CRTemu driver to output to my CRTs, some over component and some s video. They looked great but the games just didn’t feel right for whatever reason….since I’ve picked up a MiSTer the experience is far better, you really feel the difference in a well programmed FPGA setup
Wish i'd had this when I was setting mine up, would have been nice to know what was going on under the hood before i started, great guide! Just need to shove another 128meg in mine :)
The only real annoyance I had with Run Ahead on software emulation is that you had to dial in how many frames you want to run ahead because each game is different. Each game has certain number of frames of lag run ahead is trying to remove but some games have 1 or 2 frames and some games can have up to 6 or 7. So, you had to spend time futzing around with getting the exact amount of frames you want to run ahead without clipping anything in game. Which given retroarch's horrible UI was never something I relished doing for each game I played. I know you can save per game profiles so you only had to do this once per game but if you play a lot of different games it's still a lot of dialing in. Truth be told though, I haven't used retroarch in a long time so maybe they've included a way to auto detect this and I'm whining about nothing lol Also, Run ahead works fine on 8-16 bit but once you hit PS1 and beyond, it's much more demanding.
Not only that. In reality in many cases you cannot removing all lag down to real hardware level. If my pc system have 7 frames of lag (which is typical value for modern systems) for retro arch, you need running ahed 7 frames, what in many games causes clearly visible frame skipping. You could running ahed less frames, i.e. 3 frames, but then you cannot removing all emulation lag. Also run ahed is not compatible with all games in all platforms, especially for those making something randomly midstage. So run ahed is just dirty trick, barelly reliable and running anything in parallel is just better option.
I always explain it like blueprints, the mister project is trying to get the blueprints of an NES motherboard onto a single chip, and it's mostly possible because technology is so advanced that my phone is equivalent to a full on PC gaming rig built in 2013, and then note that my phone is mostly a screen a case and then a giant battery with an Itty bitty processor and motherboard tucked in-between all of that
@VideoGameEsoterica yeah man, it's a solid video, and I wish I had something like this when I was first dipping my toes into the mister pool... a lot easier to think about sour patch kids vs reading through forums lol
I can't wait for the day there's a portable that can play N64 (as well as prior consoles and GBA etc.) on an FPGA. It seems like we're getting closer, exciting times!
@@VideoGameEsoterica sure, but as much as I'd love to give that a go I think I'll wait for someone else to do it and sell at retail. For now I'll use ParaLLEl on my steam deck
So how would that translate into those 2 systems as, in a tangible number to gauge for fpga? I just figure there is an arbitrary equation to gauge what a PS2 would equal into, when it comes to LE…to theoretically gauge what level of fogs would be needed to reverse engineer those two devices (theoretically, of course)…🤔
I am not sure if we would notice if our reaction time got slightly slower or not i feel like there is a possibility that it would matter even if we dident notice it, Then again, there are other factors to our reactiontime beeing slower we are not getting any younger, But somehow i still sleep better at night knowing i have a MiSTer under my pillow.
Thank you for not repeating the "FPGA is more accurate than software emulation" bullcrap myth that many FPGA fans/users push. For that alone this video is better than 99% of FPGA related videos. About the lag, i would like to add that, most of the time, the extra lag you get from software emulators isn't because of the emulators themselves but because of the OS they depend on. Theoretically, if you could skip the OS and sort of "code to the metal", you would be to completely skip any OS related lag. But not all OSes are the same, some have more or less lag. But there are also some emulators that do add lag themselves. Like Mednafen Saturn. It's a case by case scenario, not all emulators are the same or as good with each other. I find RetroArch + GPU sync to be the best, lowest lag scenario in software emulation, even without Run Ahead. Another thing you forgot to mention is power efficiency. This is one advantage of the FPGAs vs software emulators IMO. Basically, with an FPGA you need less power than a CPU needs for the same task. An accurate N64 emulator would require a powerful CPU that also requires more power from the PSU but for an FPGA there is not much difference if it's the NES or N64, as long as it fits into the chip. The biggest advantage of software emulation is mainly the vast amount of options and features they can have compared to FPGAs.
FPGA itself isn't more accurate, but depending on the core couldn't it be more accurate to the point of being perfect? I feel like if done right the hardware emulation through FPGA is 1:1 with original hardware, whereas you don't get that with software emulation. Maybe it's just in my head, but I feel like tossing my mister in my arcade machine felt 10x better than any pi setup or even running off my computer that I had before. Even if the emulator claims to be cycle accurate. I could totally be wrong, but that's how I perceived it. The repeat that bugs me the most though is people that say FPGA isn't emulation. Or like how Analogue touts no emulation on their devices. I might love my pocket, but it absolutely is still emulation, just hardware based.
@@JPdelaGhetto It's trade-offs all the way down. Theoretically, both FPGA and software emulation can be 1:1 matches to original hardware, they're "equally powerful" in the sense that they are both Finite State Machines*. The practical differences are how many resources it takes to do that in each, the technical difficulties to do this on each and if you'll be able to do it in real time or not. Often the economies of scale favor software emulation, given enough time. That may end sooner or later, though, as we reach the end of Moore's Law. Gate Arrays were always meant to be used as a cheaper alternative for hardware development, prototyping and low volume production, to test if it works as intended or just to have a solution out there and test demand before making the big investment required to make it into an ASIC. In other words: it is a tool designed just for that kind of job, so it is more "natural" to do so with it. But that's theory, in practice, there are way more cheap and easy to understand educational resources for those wishing to learn software programming than hardware design/modelling, so we end up with a smaller talent pool on the FPGA side than on the software emulation side. Software emulation is more versatile in the sense that we have incredibly powerful machines at affordable prices that can easily be reprogrammed and the tools used for development and testing are more varied, cheaper, with many free software / open source options and with tons of documentation for those willing to learn. But what it gains in versatility it somewhat loses in predictability in keeping hard timing constraints, not because software emulation is somehow flawed, but because it's usually way more practical and financially sound for most applications to have layers of abstraction that are outside the control of most programmers and users. TL;DR: there are a really big number of trade-offs at play with both options, so it's really hard to make correct absolute statements about which one is better. It always makes more sense to talk about what fits better as a solution for a given problem with a set of constraints, and even then, the answer may be ambiguous or highly dependent on the goals, constraints and priorities of each developer or user. * although we usually generalize and call them "Turing Machines", even though for that they'd need to have infinite memory. There are many models of computation and they usually fit into an hierarchy of "power" (what each one can or cannot compute), but even in the same hierarchical level, there are many different models that can make simulating a desired mechanism or behavior easier or harder.
@@JPdelaGhetto You are wrong though. FPGA and software emulation can be just as perfect. There's nothing inherently more accurate about the FPGA method. There are already "perfect", accurate software emulators btw. BSNES might even be closer to perfection than any FPGA, in fact, Analogue devs used it as a reference to fix their own bugs. Also, the Pi is junk. It doesn't have the processing power to handle accurate emulation so it either uses older emulators or performance based ones. It's not a good representative for software emulation accuracy and it isn't fair to compare it to FPGAs, where accuracy is almost always the goal.
@@VideoGameEsotericaI dont even have the usb board. Using a generic usb 2 splitter I got almost 10 years ago and PSone wired controller, if I find my adaptoid I might also do wired N64 but in my case it hasn't mattered yet.😊
I know at least one use case where lag, no matter how small or unnoticeable actually matters. Light Gun games, the type you get on NES. If you know how this old tech works you know that for native NES light gun support it requires a CRT display/ TV and absolute zero lag compared to the original hardware. And MisterFPGA actually support original light guns via SNAC, so there is no lag (if FPGA core is programmed right and precise to the original hardware specs).
Too expensive to be viable. There is no justification for the price simply to have a little less lag (mostly unnoticeable in most cases), which is the only argument against software emulation.
I remember first learning about FPGAs in digital logic class. I was amazed how you could recreate any IC chip inside fpga. When I first did FPGA labs I was so happy I didn’t have to physically connect any wires to IC chips and just had to work through software to make logic circuits. I’ve used “quartus” and made circuits from binary multipliers to a binary blackjack game between two players. I’m so happy fpga even extends to n64 now, this is a mainstay in retro gaming!
Technology is great because when it works like this it basically feels like magic...except its reality
That's how I justified the expense to myself: besides the cool retrogaming aspect, the DE10-Nano looks like a fine platform to learn how to program FPGAs. 😂
And to be fair, it's a lot cheaper than previous FPGA boards I've found when I was in college. There are even cheaper boards (albeit with lower LE and IO capacity) that are good enough to implement simpler systems like an Apple ][ or a NES.
Yes Intel subsidizes these keeping the costs down
It took me until just this moment, after watching all these videos, that the opening music is a clip from the Mr. Mister song "Broken Wings".
A MiSTer Mr. Mister reference.
Hahaha yep. So few people get the joke
Just wish it didnt get a dmca strike if he plays it forward.
It doesn’t. I backmask it as part of the Easter egg
Key point with FPGA emulation is not just parallel execution but that the FPGA is a Real Time Computing platform, meaning the code (emulated hardware core) execution completes in exacting timing (down to the cycle) every time, which is something you cannot really get on a normal CPU running an OS and a software emulator.
Yes. No matter how many cycles you through at it with the CPU. But people are getting V close
I had only briefly read about FPGA technogy, this video was very informative and you explained things very well. Great video!
Thanks. Hope you enjoyed me being weird with candy lol
Damn dude, props to you for delving into this world. Sounds extremely interesting and something I will definitely try in the near future, good video.
Thanks. Was a fun vid to make!
Thanks for great explanation! Nice stand at the end with PC-Engine, MiSTer and PlayStation 1 :)
Glad you enjoyed :)
3:49 - X-OR, because it means eXclusive-OR. ;)
Good vid. It was to-the-point, and helps dispel some of the FPGA myths.
Eduardo Cruz' blog is awesome, btw.
The way they reversed a lot of the protections on the CPS boards is super impressive.
Noted 👍 glad you enjoyed the vid. I’ve been meaning to do it for a while
X-OR Jim Duggan
Sir it’s provinces hacksaw
I was literally looking into this yesterday, watching some of your software vs FPGA comparison videos
Good timing :)
I have a de10 nano, but where can I buy the parts in the US? What retailer to go to?
MiSTer Addons
Now I want some sour patch kids...
It was so messy. Bad candy to choose
I want an M2! But I’d be prepared to settle for sour Skittles.
Lol one is def easier and cheaper to find than the other
Thank you for putting this out !
Happy to do it. Was a fun one to make
I'm for both software emulation and FPGA as long as the projects are 100 percent open source. We have had too many incidents when an emulator dies and no one is able to improve or modify it afterwards. Open source projects also document their implementations by their very nature.
Yes. Model 2 emulator springs to mind
I used to hate that the fully featured version of Magic Engine was behind a paywall back in the day too.
That was weird. Especially for emulation
This was super easy to follow and I understood what you were saying
That’s my goal :) glad it helped
Great video as always :)
One thing I always like to point out is that input lag can actually detriment your experience even if you can't "feel" it, since it effectively makes reaction-based execution windows smaller across the board.
What may have been a narrow success on a lower-lag setup becomes a miss on a laggier setup, regardless of whether your hands can actually feel the delay. How often this actually presents is hard for me to say, but it's bound to come up across an extended play session.
Also, runahead is great, but it effectively just lets you eliminate the frames of delay built-in to a given game's code. There's nothing to guarantee that eliminating this lag precisely cancels out the sum of the latency built in to your setup (emulator, controller, display, etc), so it's not really a way to match real hardware delay, strictly speaking. In some cases, I think I've heard of people getting lag LOWER than on real hardware + CRT, which is really interesting to me.
My biggest personal gripe with software emulation is frame pacing. Motion never looks nearly as smooth or consistent on software emulators, compared to FPGA or real hardware. It can be pretty distracting imo.
Yes...that does make sense with lag. Its a hard concept to fully explain
@@VideoGameEsoterica it's definitely kinda tough to wrap your brain around!
Once you go TOO deep for sure. And people lose interest. I try to offer level a “below the surface but not ten levels deep” explanations to the casually curious
I need to compliment you on your continuity. The sugar got onto your PS1 lid and stayed there throughout the video.
Hahaha in order shooting
I am not an absolutist or anything. I have an FPGA. I have many devices with emulators and love them all. There is something special about the fact that an FPGA can be cycle perfect. When you watch one side by side of an original console and after 10 minutes of play time, they are still frame perfect. It blows my mind that someone took all of the components of the old hardware and coded into a core for an FPGA.
That and lag is always an issue I run into on old console gameplay. It just "feels" like I remember on an FPGA.
I’m the same. I have a vast collection of original hardware, FPGA devices, emulation handhelds, etc etc. I use them all
I find there are less original hardware absolutists online anymore. Maybe the retro collecting craze has begun to die off or those people just kind of aged out of the hobby, but about 15 years ago those people were completely insufferable.
@@ciaranmccarthy Agreed. Emulation has come a long way. Also, collection appears to be the only purpose. Not collecting to play, but collecting to collect. I believe that is why they don't care about gameplay. I have old games and consoles. And I probably play old game on an emulator more often than OG systems. It's just convenience at this point.
And it’s not like I don’t have a lot of hardware 😂
I give my OG games plenty of action. More so arcade these days
Really informative and made easy to grasp! Thanks.
Glad the concept translated well to video and candy form
Very interesting. Thanks for making this video, it helps to know more about MiSTer 😁👌
So glad you liked it :) was a fun one to make
Curious question, will there ever be a usb stick form factor fpga?
There are very small footprint FPGA chips out there that could presumably fit. They certainly wouldn’t be as capable as this but in 10-15 years…never know!
Clearly you need much more candy for the development of your own candy fpga core. Thanks for the explanation.
There was a lot more candy. I ate it behind the camera while shooting 🤣
Amazing breakdown, thank you!
Glad you enjoyed it. It was fun to make
Great and easy to follow explanation. Also, all of my electrical and computer engineering professors always pronounced it "ex or", but for some reason NAND was always pronounced as it's spelled and not "N-And".
Pronunciation in tech is always strange lol
Awesome video which answered a lot of questions!
I would like to ask you something and get your opinion.
I'm currently trying to capture game footage from my Sega Genesis 2. The video comes out a little shaky or stuttering and the audio has that annoying buzzing noise pretty much throughout game play.
I was looking at getting a Retro Freak but also saw the MiSTer.
I'm running the video connection through my Elgato HD capture card which is slotted into my M/B through HDMI to a computer monitor using HDMI as well.
In your opinion, do you think the MiSTer is superior to the the Retro Freak? I just don't want to buy something that would be overkill for what I'm trying to accomplish. Which is recording the game play and audio without distortion for video projects as well as just enjoying my old games. Id also like to be able to play these old games with as little issue as possible and in their original aspect ratio.
100% superior. You will get rock solid 1080p captures out of MiSTer into the elgato. It’s what I use on the channel myself
@@VideoGameEsoterica Awesome, thanks!
👍
Great breakdown, I was just trying to describe how these things work to my cousin the other day.
Thanks. I wanted to do it because answering the “how” in comments is impossible
@6:00 Eh. Yes, in practice but not technically true. It is more complicated to replicate the logical concurrency in software but it is possible. And of course you have parallel systems using multiple CPU cores running software simultaneously but again... in practice you wouldn't be splitting up everything that runs concurrently in a chip into individual threads or processes. The overhead of keeping things in sync would destroy the value of running concurrently. That said at a larger component level that process may be fine depending on the hardware design. Such as running a CPU interpreter and DSP interpreter concurrently and replicating sync where approrpriate.
This is becoming more complicated than candy lol
What sort of possibility is there for real carts and cds being able to played on MISTer via some sort of board or adapter?
Slim to none honestly
@@VideoGameEsoterica I’m assuming that’s because of no real need than a hardware limitation. Which is too bad frankly.
Mostly lack of GPIO
Thanks for the explanation. Great video
It’s a fun topic to show on camera :)
so from what i'm understanding real hardware would be much more akin to how mister does is, running the logic simultaneously rather than sequentially, and therefore it can be more accurate correct? are there examples of real consoles that run their logic sequentially or is that just how logic elements in a hardware chip work? and does mister's method allow it to emulate things that are typically more diffucult for software emulation?
Correct. Real hardware would work in parallel. Just like any piece of hardware. It will run through everything needed to do ANYTHING in parallel
The best part of having a MiSTer has been the community I've met along the way!
The best part has been the candy
This seems a very important video to make.
People have been asking in comments forever about it
For me MiSTer is a winner over say software emulation on a raspberry pi because of how easy it is to connect to a CRT and the small nerdy joy I feel that this is as close as possible to original hardware. Lag reduction is important to me.
But more than that I am just fascinated by the tech and the community and the fact that games get released overtime reminds me of the good old days when mame was new to the scene.
Getting simpsons, TMNT and soon Mortal Kombat to play on my home made CRT connected arcade cabinet is pure joy.
The ease of analog is a huge component of MiSTer that I love
I built a couple of retroarch PCs and messed around long enough to use CRTemu driver to output to my CRTs, some over component and some s video. They looked great but the games just didn’t feel right for whatever reason….since I’ve picked up a MiSTer the experience is far better, you really feel the difference in a well programmed FPGA setup
MMmmmmm... Gatorade Technology! It's what plants crave
Brawndo! It's got what silicon craves lol
Could one make an FPGA based game controller? I feel like that would be interesting for arcade sticks.
They exist. I have a 3DO M2 prototype controller that runs on an FPGA chip
Excellent video
Glad you enjoyed it! It was fun to make
Wish i'd had this when I was setting mine up, would have been nice to know what was going on under the hood before i started, great guide! Just need to shove another 128meg in mine :)
I will be doing a dual ram build video soon
Fantastic :)@@VideoGameEsoterica
The only real annoyance I had with Run Ahead on software emulation is that you had to dial in how many frames you want to run ahead because each game is different. Each game has certain number of frames of lag run ahead is trying to remove but some games have 1 or 2 frames and some games can have up to 6 or 7. So, you had to spend time futzing around with getting the exact amount of frames you want to run ahead without clipping anything in game. Which given retroarch's horrible UI was never something I relished doing for each game I played. I know you can save per game profiles so you only had to do this once per game but if you play a lot of different games it's still a lot of dialing in. Truth be told though, I haven't used retroarch in a long time so maybe they've included a way to auto detect this and I'm whining about nothing lol
Also, Run ahead works fine on 8-16 bit but once you hit PS1 and beyond, it's much more demanding.
Yes its def a variable that needs to be looked at per game
Yeah for a while you guys got the worst of it with games
Not only that. In reality in many cases you cannot removing all lag down to real hardware level. If my pc system have 7 frames of lag (which is typical value for modern systems) for retro arch, you need running ahed 7 frames, what in many games causes clearly visible frame skipping. You could running ahed less frames, i.e. 3 frames, but then you cannot removing all emulation lag. Also run ahed is not compatible with all games in all platforms, especially for those making something randomly midstage.
So run ahed is just dirty trick, barelly reliable and running anything in parallel is just better option.
I always explain it like blueprints, the mister project is trying to get the blueprints of an NES motherboard onto a single chip, and it's mostly possible because technology is so advanced that my phone is equivalent to a full on PC gaming rig built in 2013, and then note that my phone is mostly a screen a case and then a giant battery with an Itty bitty processor and motherboard tucked in-between all of that
Blueprint makes sense except for the sequential / parallel component. That’s what I wanted to try to visually explain; order of operations
@VideoGameEsoterica yeah man, it's a solid video, and I wish I had something like this when I was first dipping my toes into the mister pool... a lot easier to think about sour patch kids vs reading through forums lol
Haha visual learning is the best IMO
Love the channel! You really have your finger on the pulse.
Or maybe you finger anything with a pulse?
Lolol comment of the day
Are you keeping up with the mars fpga stuff? I wanna get excited but seems a bit snake oily to me.
I know as much as anyone who has seen it on Twitter so I really can't formulate any opinion right now
My boys dropped in while I was watching this video. Now you owe me a large pack of Sour Patch Kids😅
Hahaha not a video to be watched with kids. They will just demand candy
I can't wait for the day there's a portable that can play N64 (as well as prior consoles and GBA etc.) on an FPGA. It seems like we're getting closer, exciting times!
I mean you COULD turn MiSTer into a portable. Just requires a lot of custom engineering. But its possible
@@VideoGameEsoterica sure, but as much as I'd love to give that a go I think I'll wait for someone else to do it and sell at retail. For now I'll use ParaLLEl on my steam deck
That’s fair. Certainly isn’t an EASY project
Garegga and Batrider emulated can be essentially lagless when compared to the arcade PCB. Original hardware quirks are weird.
So much OG hardware in arcades basically is held together with dreams and crossed fingers
Very important question:
How many sour patch kids did not make it to the end of the filming of the video? Btw great explanation.
I ate a lot more than you saw during filming 🤣
Does anyone know the exact amount of logic elements in an Original Xbox or a PS2?
It’s not FPGA inside the silicon so it’s not exactly “logic” in those chips. Transistor count
So how would that translate into those 2 systems as, in a tangible number to gauge for fpga? I just figure there is an arbitrary equation to gauge what a PS2 would equal into, when it comes to LE…to theoretically gauge what level of fogs would be needed to reverse engineer those two devices (theoretically, of course)…🤔
Honestly until someone tries it’s V hard to assume
Understood.
Feels Pretty Great, Aye?
Sour Patch core when?
Too complex. Every granule of sugar takes an LE
That's funny. I jokingly say "field programmable Gatorade" all the time 😂
It’s just how my accent gets those two words out of my maw lol
I am not sure if we would notice if our reaction time got slightly slower or not i feel like there is a possibility that it would matter even if we dident notice it, Then again, there are other factors to our reactiontime beeing slower we are not getting any younger, But somehow i still sleep better at night knowing i have a MiSTer under my pillow.
We are getting older lol. We probably don’t realize we are slower at games
You are the goat
Thanks!
wanted to share becase i cant explain it very well. thanks.
You are welcome
nom nom nom... logic gates so tasty
They offgas sugar sadly. Bit messy
Cycle, input delay and consistency, audio/image quality and clarity, audio delay. Thats it for me
Thank you for not repeating the "FPGA is more accurate than software emulation" bullcrap myth that many FPGA fans/users push. For that alone this video is better than 99% of FPGA related videos.
About the lag, i would like to add that, most of the time, the extra lag you get from software emulators isn't because of the emulators themselves but because of the OS they depend on. Theoretically, if you could skip the OS and sort of "code to the metal", you would be to completely skip any OS related lag. But not all OSes are the same, some have more or less lag. But there are also some emulators that do add lag themselves. Like Mednafen Saturn. It's a case by case scenario, not all emulators are the same or as good with each other. I find RetroArch + GPU sync to be the best, lowest lag scenario in software emulation, even without Run Ahead.
Another thing you forgot to mention is power efficiency. This is one advantage of the FPGAs vs software emulators IMO. Basically, with an FPGA you need less power than a CPU needs for the same task. An accurate N64 emulator would require a powerful CPU that also requires more power from the PSU but for an FPGA there is not much difference if it's the NES or N64, as long as it fits into the chip.
The biggest advantage of software emulation is mainly the vast amount of options and features they can have compared to FPGAs.
It’s only as good as the code. I can’t pick up a brush and be a master painter. All just tools that need the right hands
FPGA itself isn't more accurate, but depending on the core couldn't it be more accurate to the point of being perfect?
I feel like if done right the hardware emulation through FPGA is 1:1 with original hardware, whereas you don't get that with software emulation. Maybe it's just in my head, but I feel like tossing my mister in my arcade machine felt 10x better than any pi setup or even running off my computer that I had before. Even if the emulator claims to be cycle accurate. I could totally be wrong, but that's how I perceived it.
The repeat that bugs me the most though is people that say FPGA isn't emulation. Or like how Analogue touts no emulation on their devices. I might love my pocket, but it absolutely is still emulation, just hardware based.
@@JPdelaGhetto It's trade-offs all the way down.
Theoretically, both FPGA and software emulation can be 1:1 matches to original hardware, they're "equally powerful" in the sense that they are both Finite State Machines*. The practical differences are how many resources it takes to do that in each, the technical difficulties to do this on each and if you'll be able to do it in real time or not. Often the economies of scale favor software emulation, given enough time. That may end sooner or later, though, as we reach the end of Moore's Law.
Gate Arrays were always meant to be used as a cheaper alternative for hardware development, prototyping and low volume production, to test if it works as intended or just to have a solution out there and test demand before making the big investment required to make it into an ASIC. In other words: it is a tool designed just for that kind of job, so it is more "natural" to do so with it. But that's theory, in practice, there are way more cheap and easy to understand educational resources for those wishing to learn software programming than hardware design/modelling, so we end up with a smaller talent pool on the FPGA side than on the software emulation side.
Software emulation is more versatile in the sense that we have incredibly powerful machines at affordable prices that can easily be reprogrammed and the tools used for development and testing are more varied, cheaper, with many free software / open source options and with tons of documentation for those willing to learn. But what it gains in versatility it somewhat loses in predictability in keeping hard timing constraints, not because software emulation is somehow flawed, but because it's usually way more practical and financially sound for most applications to have layers of abstraction that are outside the control of most programmers and users.
TL;DR: there are a really big number of trade-offs at play with both options, so it's really hard to make correct absolute statements about which one is better. It always makes more sense to talk about what fits better as a solution for a given problem with a set of constraints, and even then, the answer may be ambiguous or highly dependent on the goals, constraints and priorities of each developer or user.
* although we usually generalize and call them "Turing Machines", even though for that they'd need to have infinite memory. There are many models of computation and they usually fit into an hierarchy of "power" (what each one can or cannot compute), but even in the same hierarchical level, there are many different models that can make simulating a desired mechanism or behavior easier or harder.
It’s all down to the coder. FPGA is a tool. You need someone who understands the tools
@@JPdelaGhetto You are wrong though. FPGA and software emulation can be just as perfect. There's nothing inherently more accurate about the FPGA method. There are already "perfect", accurate software emulators btw. BSNES might even be closer to perfection than any FPGA, in fact, Analogue devs used it as a reference to fix their own bugs.
Also, the Pi is junk. It doesn't have the processing power to handle accurate emulation so it either uses older emulators or performance based ones. It's not a good representative for software emulation accuracy and it isn't fair to compare it to FPGAs, where accuracy is almost always the goal.
Mmm... A technology to turn Gatorade into candies. Now you are talking! 😂
lolol I will never not say "gatorade" when I say "gate array". New England accent for the win/loss
haha nice props bro!
Any time I get to trot out a piece of 3DO M2 I take it! And candy
Now I have to have sour patch kids for lunch.
A well balanced meal
Oh the LAG still exists, the real question is. Does it matter if you don't experience issues from it?
That’s the point; if you can’t tell does it matter?
@@VideoGameEsotericaI dont even have the usb board. Using a generic usb 2 splitter I got almost 10 years ago and PSone wired controller, if I find my adaptoid I might also do wired N64 but in my case it hasn't mattered yet.😊
Yes you can get away with a lot less than the triple stack
I know at least one use case where lag, no matter how small or unnoticeable actually matters. Light Gun games, the type you get on NES. If you know how this old tech works you know that for native NES light gun support it requires a CRT display/ TV and absolute zero lag compared to the original hardware. And MisterFPGA actually support original light guns via SNAC, so there is no lag (if FPGA core is programmed right and precise to the original hardware specs).
Absolutely. Not perfectly sync’d to refresh rate = does not work
What are the maid cafes like?
Lol what?
I beg to differ, it's not enough candy for one person lol.
I ate a lot off screen
Can’t we just agree on pronouncing it SOUR GATE from now on?
Lolol deal
they used a.i. software simulation to delete sequential emulation
Eh?
I never new chips were so sour! 😋
Switch carts are lol. Go lick one. See for yourself :)
@@VideoGameEsoterica I would expect that to be bitter, but I'll take your word for it. 😁
Bitter/sour…kinda interchangeable when you are licking game hardware 🤣
First!
you win 10 VGE points. Obtain 100k for free arcade candy
Wooo!!! Almost there
Better keep watching
I just want sour patch kids
Good news, unlike most stuff I show on my channel they aren’t rare and you can find them easily lol
@@VideoGameEsoterica Excellent point lol
🤣 a rare candy channel would be hilarious. VGE reviews snacks
@@VideoGameEsoterica Confection and Snack Esoterica
Could just review international candies
EX-OR
👍
Software emulation users simply have less logic elements in rl!
Lol taking the lesson and bending it for a joke. I like it
@@VideoGameEsoterica I thought that was the lesson lol
It’s not but…it is? Lol 🤷🏻♂️
I take major issue with your accent.
You of all people. Now I’m gonna take the Densha De Go out of tonight’s video as punishment
@@VideoGameEsoterica no! The only thing I hold dear! How could you!
Cut. Reupload. No trains
@@VideoGameEsoterica well at least brush off your Playstation and reshoot the final shot of this one. It's very sugary.
The sugar may still be there. Who knows
Too expensive to be viable. There is no justification for the price simply to have a little less lag (mostly unnoticeable in most cases), which is the only argument against software emulation.
It’s already viable. The “will MiSTer become popular” ship sailed about three years ago
@@VideoGameEsoterica 450/600 $ is too expensive
For you. Not for others. People get to decide that for themselves
@IvanRodriguez-C is that why I bought one? Lol.
For you maybe, for others there is other reasons than "just a bit less lag"
🎵Field programmable gate arrays... how do they work? 🎵 🤡🧲
Lol not the first person to mention that meme today
@@VideoGameEsoterica also read the title with Lady & the Tramp “What’s a baby, anyway?” inner monologue
Haha I could see that