Software Emulators vs FPGAs

  Рет қаралды 263,462

What's Ken Making

What's Ken Making

Күн бұрын

Today, I’m wrestling with the question that’s on everyone’s mind… if software emulators are so good and inexpensive, then why are there people spending the money on FPGA-based devices like the Analogue Pocket and the MiSTer? But in order to understand this, we need to go a bit deep.
So, in this video, I’m going to take you through the basics of how old game consoles work, and I’m going to discuss how both software emulators and FPGAs go about recreating that experience on different devices. And along the way, I’ll touch on various nuances of both approaches, and perhaps surprise you with a couple of things you may not have known about emulation. This video is a bit more technical than my usual content, but I think you’ll find the explanations and diagrams quite accessible.
🔗 Links Referenced in this Video:
- Super Mario Bros ROM Disassembly: 6502disassembly.com/nes-smb/S...
- Interactive DMG CPU Explorer: iceboy.a-singer.de/dmg_cpu_b_map
- Ars Technica Article on Emulator Accuracy: arstechnica.com/gaming/2011/0...
- Higan high accuracy software emulator: github.com/higan-emu/higan
- RetroArch: www.retroarch.com
- Mesen Software Emulator: github.com/SourMesen/Mesen2
- Anbernic Handheld Devices: anbernic.com
- Retroid Pocket: www.goretroid.com
- Miyoo Mini Plus: www.aliexpress.com/store/1101...
- VIC-II Kawari: accentual.com/vicii-kawari
🔗 Further Study on How the NES and GameBoy Work:
- NESDev Wiki: www.nesdev.org/wiki/Nesdev_Wiki - the definitive source of NES technical information.
- GameBoy PanDocs: bgb.bircd.org/pandocs.htm - a great source of technical information on the GameBoy.
- GameBoy Schematics: gbdev.gg8.se/wiki/articles/DM...
- The GameBoy CPU Manual: realboyemulator.files.wordpre...
- Architecture of Consoles: www.copetti.org/writings/cons... - a great series of articles that explores the architecture of various game consoles
🔗 Further Study on How Software Emulators Work:
- A Journey into GameBoy Emulation - robertovaccari.com/blog/2020_...
- Emulating the GameBoy CPU on .NET - ax-h.com/software/development...
- A 6-part series on creating a GameBoy emulator - / building-a-gameboy-fro...
🔗 Further Study on How FPGAs Work:
- Cyclone V Device Handbook - www.intel.com/content/www/us/...
- Series of Verilog Tutorials - www.chipverify.com/tutorials/...
- EEVBlog FPGA Introduction Video - • EEVblog #496 - What Is...

Пікірлер: 582
@woofy1988
@woofy1988 4 ай бұрын
My brain misheard the full name of FPGAs as "Field Programmable Gatorade" and I can't stop giggling
@ElisBuenas82
@ElisBuenas82 3 ай бұрын
I'm drowning in tears (of laughter)
@Dhruv.Wadhwa
@Dhruv.Wadhwa 3 ай бұрын
now i can stop giggling after reading your comment
@codycast
@codycast 3 ай бұрын
You’re “giggling”?
@burrybondz225
@burrybondz225 2 ай бұрын
that already happens on the football Field. Win game, pour gatorade on coach.
@BenjaminHodges
@BenjaminHodges 2 ай бұрын
"I for one am ready for a nanotech beverage built to adjust to my hydration needs on the fly. No, I'm not a cyberpunk fan, why do you ask?"
@SpacemanX1
@SpacemanX1 4 ай бұрын
One thing that was not mentioned is reduced input lag that fpga can provide. This is due the parallel cycle accurate nature of the fpga emulation as it can run in sync with the display output as the original hardware did. Basically all the software emulators have render to a "backbuffer" which is displayed at least a frame later.
@overdriver99
@overdriver99 4 ай бұрын
yeah... input lag is my main reason to buy FPGA system. other than that.. I actually prefer software based emulators because it has so many added functions- cheats, fast forward, etc.
@johndee759
@johndee759 4 ай бұрын
@@overdriver99Wouldn’t it be the most compelling argument to buy an FPGA based console?
@Patrick-bn5rp
@Patrick-bn5rp 4 ай бұрын
​​@@edmundroth6337 Yeahhhhh... GPU sync and Runahead kinda invalidate the input lag argument. FPGA strikes me as being more helpful for systems that are actually really hard to emulate, as a cheaper alternative. Or for playing physical carts, I guess. Problem is that emulators gets better over time and hardware gets better and cheaper, so at a certain point, I question what niche it will even fill, if those hard to emulate systems become easier and cheaper to emulate over time. Maybe as a replacement for older hardware hooked up to CRT tvs? I'd take an FPGA PS2.
@StatusQuo209
@StatusQuo209 4 ай бұрын
Wait till you try retroarch + run ahead. You can have better than native hardware latency.
@adamkane7513
@adamkane7513 4 ай бұрын
​@@overdriver99 Yes, it cheaper too!
@go-away-5555
@go-away-5555 4 ай бұрын
Those first 8 minutes or so are an amazingly done explanation of how computer hardware and software works in general.
@mpty2022
@mpty2022 3 ай бұрын
i am a computer engineer, I cant imagine how much work he put in this. R&D, explanation, videography, sounds, animation, testing, compiling .... wow
@plasmasupremacy9321
@plasmasupremacy9321 3 ай бұрын
@@jstro-hobbytech mucho texto
@XQZ9789
@XQZ9789 3 ай бұрын
@@jstro-hobbytech it's like this dude is stretching his vid by all possible means, except for "flashbacks from his past when he was a kid"😆
@jstro-hobbytech
@jstro-hobbytech 3 ай бұрын
@@XQZ9789 like my overly wordy comment. Sorry man.
@XQZ9789
@XQZ9789 3 ай бұрын
@@jstro-hobbytech believe me, i found it more appealing to read whole your comment, rather than watching this vid 😄
@-sleepy-
@-sleepy- 3 ай бұрын
@@jstro-hobbytech what the actual fuck are you talking about?
@MyChannel-vm6dw
@MyChannel-vm6dw 4 ай бұрын
Hands down, the best concise explanation of what an FPGA is. Subbed.
@TheMikeyb86
@TheMikeyb86 4 ай бұрын
This channel is such a hidden gem. Outstanding video, content, editing, it has it all. Great video, as always. Thanks, Ken.
@comradestannis
@comradestannis 4 ай бұрын
As I said in a separate comment: "God, I love the CPU section of the video. Thanks for actually explaining this shit to me whereas nobody has been able to do so till now."
@peterkefalos7430
@peterkefalos7430 2 ай бұрын
The way the video was presented reminded me of one of those “How it’s made type shows.” I didn’t even know I was interested enough to know what’s going on behind the scenes of all these games and systems I play to watch this type of deep dive video, but this was really informative and genuinely fun to watch. Awesome job man!
@lio7728
@lio7728 3 ай бұрын
I am glad I stumbled upon this video. It is an enlightenment to me as a casual gamer who has been confused about all these technical terms for a long time. I appreciate the pace you talked so I can really catch up, digest and understand the explanations. And the effort not to polarize opinions is commendable. Please keep up the good work and grow the content, and I am sure this channel will be a great success.
@FiftyFive74
@FiftyFive74 4 ай бұрын
Thank you for this video! I recently started using an Analogue Pocket because I didn't understand the hype for fpga when compared to cheaper emulation handhelds. But now I have a slightly better understanding and appreciation for fpga.
@chanm01
@chanm01 4 ай бұрын
What a great explanation. I've had some of this explained to me in the past, but it was joy to hear it all over again delivered in this style. And I learned more about what FPGAs do too!
@bollothegreat
@bollothegreat 4 ай бұрын
This was a fantastic explanation of the differences between hardware and software emulation! You're consistently putting out great content.
@casedistorted
@casedistorted 4 ай бұрын
Rest in Peace to Bsnes’s developer, he took his own life years back and it was very sad. I remember reading that article years ago shown at 13:30 and being so interested in the progress of Bsnes. I try to use it any chance I get on my main gaming PC.
@thomassynths
@thomassynths 4 ай бұрын
not going to rip someone who took his own life due to not being able to turn off the internet.
@V3Efreet
@V3Efreet 4 ай бұрын
Only the online persona is gone, the actual man is still alive an healthy. Japan like most countries publishes all foreigners' deaths and there were none from that year.
@tentaculartaku4827
@tentaculartaku4827 4 ай бұрын
Absolutely delusional replies here. Near deserved way better. May they rest in peace.
@geofreypejsa54
@geofreypejsa54 4 ай бұрын
Just finished the video. Very well explained. I have both software and hardware emulators and your explanation really highlights the nuances between emulation approaches!
@UndeadBed
@UndeadBed 3 ай бұрын
You managed to make 27 minutes of technical information sound accessible and even conversational. I'll be coming back just to dig a little deeper into the topics covered here. THANK YOU!
@DanMorelle
@DanMorelle 4 ай бұрын
Fantastic. Comprehensive and enlightening. I love the way you made it so easy to understand the inner workings of the devices we all love.
@4carhur1more
@4carhur1more 3 ай бұрын
I don't know if I've seen a video so thoroughly explain how software and hardware emulations works. And while I definitely need to rewatch this as well as look into more information on the topic, I really enjoyed this and it makes me want to understand how it all works more.
@spencereeves
@spencereeves 4 ай бұрын
I've recently been delving back into retro gaming with an Analogue Pocket, and this video was such a great way to get a much clearer understanding of how the tech works under the hood! Awesome video and so appreciative for all of the research and effort you've put into this.
@jamesdoesthings1096
@jamesdoesthings1096 4 ай бұрын
I think this is the most useful video I have found to date about this subject. Incredibly thorough explanations, examples, and resources that I appreciate as someone really interested in the hardware/logic of these systems.
@FixationwithCarnage
@FixationwithCarnage 4 ай бұрын
this was a great explanation of data and address busses alone, ive been looking for info like this. thank you so much
@randomcommenterurl
@randomcommenterurl 4 ай бұрын
I’ve been trying to understand these concepts for a long time. Thank you!
@KsAmJ
@KsAmJ 4 ай бұрын
One of the best contents on KZbin and personally you have gave me more than enough reason now to consider using my expensive Analogue Pocket which I regreted buying it after the net cost. It is still in sealed box until now. I really would consider using it now after this presentation. Thank You.
@achaerna.6662
@achaerna.6662 4 ай бұрын
Thank you Ken. This was my first video from your channel, but it was a rollercoaster of context. Yummy, delicious context.
@twistedtxb
@twistedtxb 4 ай бұрын
Thi Video is incredibly in-depth while remaining super easy to comprehend. Well done!!
@jamesmurphy8052
@jamesmurphy8052 3 ай бұрын
Really nice video explaining emulation and the software/fpga trade off. I wrote a software NES emulator a while back and it was a great project that helped me better appreciate the beauty and cleverness of these old systems, which went to great lengths to push amazing performance out of very limited hardware.
@scrub_jay
@scrub_jay 4 ай бұрын
Had to pause the video at 6:00 to subscribe and tell you this video is amazing. Looking forward to exploring the rest of your channel!
@dantrue250
@dantrue250 4 ай бұрын
Your videos are wonderful. The pacing, the explanations, and the topics you choose are brilliant. As an avid KZbin watcher and a software engineer by trade, I just wanted to commend you and your work! 😄
@michaelnoonan8398
@michaelnoonan8398 3 ай бұрын
Was looking for good intros to FPGAs and how it connects to emulation. I ran into this gem of a channel and cannot be happier. Thank you Ken, I subscribed on set for notifications 😊
@reduschanka3108
@reduschanka3108 2 ай бұрын
i really love your intro, it really quickly tells me about your content!!! quick, beautifull and very effective!
@JoseRojasA
@JoseRojasA 4 ай бұрын
Well done video! I used vhdl in college and programmed in assembly on x86 and on 6502 and appreciate very much your fine explanation. The examples you chose of timing challenged games was perfect. I still wonder if those who don't understandeither would have have sat through your explanation 😮
@eduardorivera8996
@eduardorivera8996 4 ай бұрын
Incredible video, indeed a hidden gem, you can tell so much work was put into this, thank you.
@3333218
@3333218 4 ай бұрын
Awesome detailed easy to follow explanations! Good work!
@dirtyshubb
@dirtyshubb 4 ай бұрын
Great video! Even as someone who is into retro games tech and emulation etc, this was easily the best description for the difference between software and hardware emulation and how exactly FPGA works.
@MrGerkinz
@MrGerkinz 4 ай бұрын
This is an amazing video! Very well explained with good editing
@d34thgunlol
@d34thgunlol 16 күн бұрын
This video is amazing. Well done on the depth of information. Fascinating!
@nowtronix8996
@nowtronix8996 3 ай бұрын
What a great channel!!! You will become a huge youtuber if you stay on this high quality videos. Thank you so much for your work.
@kevincraig6794
@kevincraig6794 3 ай бұрын
This is what I came for. Thank you for your time and effort and knowledge. Its like you are explaining the science of my childhood! Very professional content!
@karim8030
@karim8030 4 ай бұрын
This is insanely informative, instant subscription
@fatalist6663
@fatalist6663 4 ай бұрын
Very technical and at the same time very interesting, thanks a lot for the time you put in this video, it really shows up.
@NiffirgkcaJ
@NiffirgkcaJ 4 ай бұрын
This video explained the topic very well! Thank you for making this!
@mr.spockie1987
@mr.spockie1987 3 ай бұрын
This was so informative! I came to learn about retro consoles but a lot of what you talked about helped me understand my actual job, haha. A lot of us got interested in technology due to these old achool consoles and its crazy to think that we can still learn from them today!
@ILostMyOreos
@ILostMyOreos 4 ай бұрын
Wow this is so cool, i have a cs background but never knew about the differences here. I love seeing the way retro computing evolves
@lincruste
@lincruste 3 ай бұрын
This vid is incredibly good and well done. Thank you so much for the 6502 ASM demo, I thought it was captivating and necessary.
@negativerainbow
@negativerainbow 3 ай бұрын
I heard the word fpga a lot and I just assumed it was a framework to physically hand create chips. I had no idea that you actually can flash them to different setups and emulate multiple systems off the same chip. That's super cool and super informative, thank you for this video!
@alphaforce6998
@alphaforce6998 3 ай бұрын
Ignorance + Assumption = a great example of why it is possible to dig up decades old tech, add some catchy marketing, and pretend it is new. Electric cars are a great example of this, where people think it is new tech when in reality electric cars were available in the 1800s and failed for the same reasons then that they are failing now.
@benjib2691
@benjib2691 3 ай бұрын
@@alphaforce6998 Electric motors are marginally better today than in the XXth century (because they were pretty much perfect devices already, far better in terms of efficiency than any combustion engine is and will ever be), but batteries are miles better today than even a few decades ago. Saying the tech is the same than in the XIXth or XXth century is false or at least not entirely true.
@alphaforce6998
@alphaforce6998 3 ай бұрын
@@benjib2691 The battery tech may have improved, but it's still far from being even practical as compared to fuel...plus, there is no benefit to making heavy vehicles electric when there is an abundance of fuel. The entire eco-doom used to justify the inferior tech is based entirely on lies.
@lpfan4491
@lpfan4491 2 ай бұрын
@@alphaforce6998 They are...failing? I thought they are doing decently for themselves currently.
@Monsuco
@Monsuco 2 ай бұрын
​@@lpfan4491Apart from Teslas, sales of electric cars have been poor with most of the big automakers having lost money trying to convert their production lines to selling them. This is true even with all of the subsidies & corporate welfare that the government doles out for electric cars. The American public never wanted electric cars, they wanted Teslas. Heck these days even Tesla has seen some of their sales figures falling short of projections.
@geofreypejsa54
@geofreypejsa54 4 ай бұрын
Another good video Ken. I appreciate the explanation. I do a lot of emulations and this is helpful
@felipeacunagonzalez4844
@felipeacunagonzalez4844 3 ай бұрын
Just found this channel and it's gold, really great explanation. You have a new subscriber!
@UnderOurOath
@UnderOurOath 4 ай бұрын
Really informative video and the explanation is spot on! You get a sub, kind sir.
@adityarao1462
@adityarao1462 3 ай бұрын
my 4 year undergraduate in electronics and computers got its money worth while watching this video. thank you so much for such a comprehensive look on these systems.
@lactobacillusprime
@lactobacillusprime 4 ай бұрын
Excellent video. I like both and use both next to original hardware. I like the concepts and ways of achieving being able to run software on something else than that it was intended to run on. Game preservation / software preservation included. Back in the day I wrote a 6502 CPU emulator and the beginnings of a C64 emulator in Turbo Pascal on the PC and I absolutely appreciate the work that goes into something like an emulator be it software or FPGA.
@danieldouglasclemens
@danieldouglasclemens 4 ай бұрын
This channel is way underrated and I had no idea of these things even as a modern software developer.
@MichaelButlerC
@MichaelButlerC 4 ай бұрын
Wow. Great video. Only 3.6k subscribers!? I definitely have stumbled upon a hidden gem. Looking forward to more!!
@jeanpaulmassaut8999
@jeanpaulmassaut8999 4 ай бұрын
This video describing teh difference between software and FPGA is really a gem,i always wondered what teh difference was between those 2 , but a lot of videos i watched are to complex or tell it weird, yours i almost immediately understand. so a very high thx
@jeanpaulmassaut8999
@jeanpaulmassaut8999 4 ай бұрын
One more thing i forgot to tell was, i love those animations of teh working of the insides you show, it makes things a lot easier to follow, also i hope to see some more videos about FPGA stuff, it really peaks my interest as somebody that watched the upcoming from pong to the newest games today, yes i am alreday 54 but i hope to see even more chanegs
@michaelpassmore9369
@michaelpassmore9369 4 ай бұрын
Wow I learnt a huge amount in this video - thanks a lot for explaining all this!
@r-tierney
@r-tierney 3 ай бұрын
Wow so glad i found this video that was brilliant. Thank you!
@BDCDT-LeucAnh
@BDCDT-LeucAnh 3 ай бұрын
wow, somehow KZbin recommended me this video. It was amazing and very informative. I already subscribed to your channel and looking for good contents like this in the future. Good job Ken!
@romanb.6528
@romanb.6528 4 ай бұрын
You explain very easily and simply, I liked it. Thank you!
@39zack
@39zack 3 ай бұрын
This may be the best explanation on the subject I have seen :O
@panamacspana8498
@panamacspana8498 4 ай бұрын
Your channel and videos are amazing. Keep it up!
@n8ivegogo1
@n8ivegogo1 4 ай бұрын
I don’t know how I never seen this guy’s channel before but this vid alone got me to Sub‼️ (Just stumbled upon it on my main feed)
@captainthunderbolt7541
@captainthunderbolt7541 4 ай бұрын
Fantastic deep dive into the subject!
@Boburto
@Boburto 3 ай бұрын
Excellent video. I admire that all the graphics were not only insightful but also logically correct.
@RedStoneMatt
@RedStoneMatt 3 ай бұрын
Thank you for this very interesting video! Looking forward to see more content from you
@Akasen1226
@Akasen1226 4 ай бұрын
Well this is just fantastic, I was just wondering what the hubbub around FPGA's was and this video does a remarkable job getting me up to speed.
@gk_tonic7843
@gk_tonic7843 4 ай бұрын
Wow, gret explanation about how these CPUs work too.. Nicely done!!!
@Jeancarvalho153
@Jeancarvalho153 4 ай бұрын
The best explanation of this subject I've ever seen on this platform.
@JackPetraitis
@JackPetraitis 2 ай бұрын
great transitions and flow ken
@2600hz
@2600hz 4 ай бұрын
Excellent video Ken. I use both software and FPGA emulation and find this topic fascinating.
@mrnobody6099
@mrnobody6099 2 ай бұрын
Great work there, you earned a sub brother!
@randomcommenterurl
@randomcommenterurl 4 ай бұрын
This channel deserves way more attention
@jlee684
@jlee684 4 ай бұрын
Thank you for the amazing video I had so much fun watching it!!
@MrMysterious420
@MrMysterious420 4 ай бұрын
Thank you for making this video, it is very informative and you know your stuff
@frankiemembreno
@frankiemembreno 3 ай бұрын
wow! you even got the actual physical copies to test out what the article says. kudos my brother on giving us quality production.
@losalfajoresok
@losalfajoresok 4 ай бұрын
amazing, I'm not a programmer and some things were really obscure to me, now I get almost everything I needed it to understand the difference!
@gamergeekenator111
@gamergeekenator111 4 ай бұрын
Wow, great video. I learned a ton that I didn’t not know. Thank you!
@Orochimarufan1900
@Orochimarufan1900 4 ай бұрын
I'd actually argue that software emulation is getting comparatively easier with more modern systems (meaning the required overhead for accurate-enough emulation is lower relative to the emulated system power) because consoles have become more like general purpose computers in that they employ increasing layers of abstraction between hardware and the application software. This allows for HLE (High-Level Emulation) which tends to be much easier on overhead while still being very accurate (to the point of the SDK APIs available to the developers). This is basically a symptom of the fact that such systems have inherent overhead (for hypervisors, OS, drivers and libraries; a.k.a. system firmware) even in their original form, and by employing HLE a lot of that overhead can be eliminated in an emulator, leaving more headroom for the (proportionally smaller) application code that must always run through emulation. These abstractions also tend to have a stricter API surface than old bare-metal hardware, making it harder for games to exploit edge-cases (They might break in the next system firmware update for example) which is the reason cycle-accuracy can be important for old systems. You could say the more defined API surface makes more "shortcuts" safe so long as they conform to the API contract. Then again, modern complex graphics APIs are still a big old mess, even on PC and especially on mobile-oriented graphics cores.
@gljames24
@gljames24 4 ай бұрын
I'd argue translation layers aren't really emulation. You could argue programs like Box86 are as they need to translate to a different architecture, but programs like wine, proton, and dxvk are only really changing OS syscalls and apis. They aren't emulating any hardware.
@BGBTech
@BGBTech 4 ай бұрын
New here... But, yeah, I mostly encountered FPGAs from the perspective of designing a CPU as a hobby project. So, had designed my own CPU ISA, wrote a C compiler for it, along with an emulator, and an implementation running on an FPGA. Then made a makeshift OS for it, and ported various games (Doom, Quake, Heretic, Hexen, ROTT, etc). Then ended up writing an OpenGL implementation, a hardware rasterizer module, and more recently am working on a GUI for it and trying to get the OS into being more of an "actual OS" (vs just a glorified program loader). Lots of effort, and probably doesn't seem terribly exciting from the outside, but kind of interesting to work on. A big hassle of FPGA though is that it is difficult to get it running at much over 50MHz or so, where one is hard-pressed to try to get good performance out of Quake or GLQuake on a 50MHz CPU (even when trying to throw a lot of ISA design trickery at the problem; once one eliminates a lot of the "obvious inefficiencies", these isn't that much left to improve on). There are ways to get the clock-speed higher, but the problem is doing so without hurting performance more than what one would gain from the higher clock speed (say, if you can get from 50MHz to 75MHz but in the process the CPU burns 50% more clock-cycles due to various overheads, such as a higher rate of cache misses and higher average instruction latency, this gains nothing...).
@iamdriy
@iamdriy 4 ай бұрын
Nice video! A critical misconception about FPGA emulators that many people have is the assumption that they're intrinsically more accurate than software emulators when that is not necessarily the case. In the Gameboy example, let's take opcode 0xCB8F, which resets bit 1 in register A to 0. I can write some code that will essentially look like reg_A &= ~(1
@Slamy4096
@Slamy4096 4 ай бұрын
Fortunately the resulting netlist can be simulated as well and compared against the original HDL. And when a bug is found, the bitstream can be replaced. I would therefore say that the possibility for accurary is better provided than with most software solutions. I do however understand what you say. The MiSTer is not perfect as well. Some cores have very special problems which are occuring as not much interest is there to maybe fix it or the problem is small or barely noticable. The Amiga mouse emulation is still a problem today... Still the more developers are participating, the faster could a problem be resolved. The N64 core of the MiSTer currently has a very big community which helps the developer out in finding unexpected behaviour.
@elimalinsky7069
@elimalinsky7069 4 ай бұрын
For emulators that are cycle accurate such as Same Boy for the GB/GBC, Mesen for the NES and BSNES for the SNES, there is no perceivable difference if we compare these software emulators against their respective FPGA cores and real hardware, except maybe input latency. On the other hand there are experimental FPGA cores which are not 100% accurate to the real hardware, such as the new N64 FPGA core, due in part to the complexity of the system (long thought to be impossible to recreate on existing FPGAs) and the fact that many of the GPU functions are still largely unknown and undocumented.
@Slamy4096
@Slamy4096 4 ай бұрын
@@elimalinsky7069 Can't argue with your first statement. Before I had my MiSTer, I've also played games on emulator. For something like GBA/GBC I don't want to feed my magnifying glass with batteries and just want to sit on my couch with a nice big screen and not hurt my eyes. So I guess that the software emulation might be sufficient most of the time. But there is one thing I admire about the hardware solution. The video signal is comparable to the original system. I can connect my MiSTer via SCART port to my Commodore 1084 and can play like in the old days. It is true that this is even possible with a modern GPU. With a custom modeline I've connected an RTX 2070 with the 1084 as well :-D. But it surely takes effort and sometimes the emulators are not designed for something like that.
@ArneChristianRosenfeldt
@ArneChristianRosenfeldt 4 ай бұрын
@@Slamy4096 so the problem is that there are no good GPUs ? Even on a PC I could poll for hsync and the just in time fill the line into the framebuffer. But why? Controller input is only read once per frame. Poll for vsync. Get input, Render frame. Even sorting 256 sprites by Y only takes a line on a modern ARM.
@Slamy4096
@Slamy4096 4 ай бұрын
@@ArneChristianRosenfeldt I assume this is lost in translation as english is not my native language. I wanted to say that the input latency is probably not that big of a deal for most games as I didn't notice issues during GBA emulation. I therefore agreed with elimalinsky7069 on that topic. What I've meant afterwards was the video signal itself. Producing a 15 kHz RGB signal on a modern graphics card takes effort and tedious configuration but is possible. But what I might have ignored here is that "dedicated software emulation solutions" might not even have that problem. But I don't posses a solution like this and don't even know if devices like these exist.
@m1k3e
@m1k3e 4 ай бұрын
Subscribed. This was really well done 👏
@rschmidtzalles
@rschmidtzalles Ай бұрын
That was amazing. I found a gem. Subscribed.
@retrorobbgaming
@retrorobbgaming 3 ай бұрын
Excellent video, thank you for this.
@DevilsHandyman
@DevilsHandyman 4 ай бұрын
I love all the options. I have emulation running on my Steam Deck and use FPGA on my Analogue Pocket and Mister FPGA. I'm not sure I'm the type of person who would notice the differences too much between them.
@AxiomofDiscord
@AxiomofDiscord 4 ай бұрын
I did a frame by frame count of Saturn emulation on my computer running it in Saturnus. It was on par with actual hardware for input latency and at most maybe a frame behind on rare occasion but that might be user error when I was counting. With run ahead it is a frame quicker. Run ahead for a frame on my 1 year old system running a Saturn game brings it to its knees and can I tell the difference. Honestly nope. Well I can tell if I got almost anything else open because my whole computer starts getting a bit choppy.
@HappyBeezerStudios
@HappyBeezerStudios 4 ай бұрын
For me it's fine as long as it's running the games at adequate performance and don't cause any graphical corruption or sound issues. For example: I wouldn't care about the shadows in Air Strike Patrol, but I would notice the doubled "Good Luck" text. As long as software emulation is "accurate enough" it's fine by me. But I'm also the kind of person who runs software emulation for MIDI audio and switches soundfonts on a regular basis.
@nobodynoone2500
@nobodynoone2500 4 ай бұрын
It's the edge-cases that get you on emus. Most games will Just Work but there are always a few that used undocumented or co-incidental behaviors of the system that really show where fpga can shine.
@AxiomofDiscord
@AxiomofDiscord 4 ай бұрын
@@nobodynoone2500 In efficiency it will always go to a hardware solution. In flexibility and additional features software usually has an easier time implementing them. Both solutions can do mostly the same things the other can to differing degrees. But not being documented hurts both options equally. If not implemented it will not appear by magic.
@franz2383
@franz2383 4 ай бұрын
I came for entertainment and I struck gold. As always, great content. Thanks for an awesome video!
@littlemodshop
@littlemodshop 4 ай бұрын
great video! thank you for sharing your knowledge. :)
@flynnz
@flynnz 4 ай бұрын
Great explanation and video. This whole thing reminds me of the audiophile stuff to some degree. Where if you have to point out very specific (or obscure) cases that are noticeably different, then it probably doesn't matter to 99.9999999% of the people. Even though I was really interested in the FPGA stuff when it was first becoming popular, I am now leaning back into software emulation. Because not only can I not tell the difference unless I am really looking, but I also get a much better QoL with software emulation. More devices emulated (espicailly when you are talking about arcade hardware and newer consoles), Run-ahead, RetroAchievements, online play, much better looking interfaces, bezel project, real-time translation (though I havent tried that yet) and just tons more options in general. Not even talking about the costs advantage, it really is hard for me to justify buying FPGA for the improvements I would never notice unless I was running something side by side (and maybe not even then). With that being said, I love all the options and if FPGA can add a lot of those same features that the software emulated solutions offer in the future, it would be amazing.
@davidoli
@davidoli 4 ай бұрын
That's the argument I tend to use to defend software emulation. Most consoles up to the PS1 are in very good hands nowadays, it's really rare that a game would have game breaking issues. I think the reason why those two games he tested show such blatant errors is because the default emulator used in the miyoo mini is very outdated and optimised for weak arm chips,(Supafaust) but there's an option to use Snes9x too, which would probably solve those issues.
@flynnz
@flynnz 4 ай бұрын
@@davidoli I use one of those Anerbernic devices and I am not sure how they compare hardware wise (aside from both being ARM) But it is similiar in that it easily does the older stuff np, but even though it is not perfect, Dreamcast and Saturn stuff works pretty good with solid framerates (I think I have a single frameskip option on one to fix audio breakup). I was honestly shocked because I never thought a device like it would be able to have those systems perform as well as they do. So while not perfect, at least portable software emulated devices can have those games playable. Who knows when/if we will ever see a portable FPGA device that can play something like Dreamcast. Also, I have all the above features I mention on my portable software emulated device as well. So using something like the Analogue Pocket would feel like a step backward in comparison (Aside from build quality)
@sboinkthelegday3892
@sboinkthelegday3892 4 ай бұрын
The real big difference is that we're not just able, but we ARE having this discussion, rather than blindly go "so, erm, FPGA is like, better, so it's not emulation...?" In my experience gamers are jsut on a different level. The lower level. They take film industry terms like "genre" and "remaster" and absolutely mangle them into this consumerist mold, like "remaster is when it LOOKS BETTER". When in fact, a "remaster" WOULD BE something like emulation. The optimal "video game remaster" that people want out of remaster over a remake, would be the same as George Lucas "remastering" out the "dated" practical effects. But everyone just AGREES that mangling the original game with this contemporary plastic sheen of "modern standards" is GREAT. Like those AWFUL 30% resin "wood" dining tables that cost thousands of bucks. Or remastering LotR to look like HD Hobbit and every telenovela after 2007. Original TVs were a low tier consumer-grade device. There is no such thing as chasing the "authentic" experience the same way as films though, because TV release ALREADY was a heavily truncated and variable expereince, even on video games. You did NOT have some optimal conditions to "expereince the art" you're now trying to preserve, because it would be like Mona Lisa in a dimly lit room. "Most people who wouldn't care" are nostalgic for their POST CARDS of Mona Lisa from childhood. And that's always the exerience with art. Fantasy abut escapism completely ruins the interplay where YOU create the experience monstly for yourself, sme great PIECE of art is no more than a hint of th author's vision carrying on to you as a recipient. But it gets pretty bad when the DISCUSSION is "we should remaster Mona Lisa into a portable HD post card" the way it is with video game consumerism. There will be no return to Woodstock. That's not how genuine art WORKS, and Mozart didn't RECORD any of is pieces. They're recreations like art always would be. PIECES of art are always contemporary but what is ART as a whole is their addition to the historical canon. Somthin people CAN'T consume when they're so worried about spoilers. Then it stops beign a discussion with the artist and becomes a lecture, a little commecial escape room where the "art" is providing some puzzle of a metaphor you're too coy to address directly, like reading Animal Farm as a children's book. What art is that?
@flynnz
@flynnz 4 ай бұрын
@@sboinkthelegday3892 Very well said. In general I can enjoy many aspects of how something is presented, but I tend to lean toward "authentic" when possible. So I have my real hardware and CRT to scratch that itch (as close as I reasonably can, it will never be exactly how it was when I was younger). But the newer way the content is presented and consumed, (pixel perfect/modern screens/emulated), I try and appriciate it as its own thing instead of a replacement.
@kathleendelcourt8136
@kathleendelcourt8136 Ай бұрын
Software Emulation and Hardware Emulation can be just as accurate as the other. It only depends on the time and dedication spent by the programers. Software emulation is more flexible and feature rich, but accuracy require more computing power so that's why emulation on cheap devices can be glitchy or laggy as they're using shortcuts/speed hacks in order to compensate the weakness of the host hardware. FPGAs are more efficient and usually don't necessitate as much tinkering from the user to get great results out of the box.
@macaroniobama
@macaroniobama 3 ай бұрын
What a fantastic video, now my brain won't melt when someone discusses the topic.
@Mister.BreadBoard
@Mister.BreadBoard 3 ай бұрын
Amazing video thank you for sharing 👍❤️
@neommox
@neommox 2 ай бұрын
Almost as many likes on this video as total subscribers! Wow, I don't think I have seen that before. Loved the video, subbed.
@nicob.2961
@nicob.2961 3 ай бұрын
Amazing video! :) I learned a lot!
@targetrender9529
@targetrender9529 4 ай бұрын
Makes me glad I got an analogue pocket. 😊 Excellent video. I’m not tech savvy, but learned quite a bit.
@harakiri23
@harakiri23 3 ай бұрын
Really great explanations
@misterretrowolf1464
@misterretrowolf1464 4 ай бұрын
Excellent video!! Amazing content, but also given that I try my hand a video animations, I extra appreciate the work you've done in this video. Very, very good.
@whatskenmaking
@whatskenmaking 4 ай бұрын
Thank you - as I'm sure you know, building animations is quite time consuming... I appreciate you taking the time to acknowledge them!
@andresbrand9221
@andresbrand9221 3 ай бұрын
Thank you for explaining this :)
@stemid85
@stemid85 4 ай бұрын
14:00 this was a really good example of the difference between dedicated chips and software emulation. So it's important to have realistic expectations. To me the Miyoo mini is just fine because I mostly play chill games from GBA and SNES. But to others who might want to play intense games like Airstrike Patrol it might not provide that authentic childhood experience.
@emadjabbour
@emadjabbour 3 ай бұрын
GREAT VIDEO MAN REALLY THANK YOU FOR YOUR EFFORT
@gblargg
@gblargg 3 ай бұрын
FPGAs allow more direct implementation of the original circuit, if it's known. This is a lot less error-prone and more reliable than coding it in software. In a lot of cases it's the only one possible performance-wise if you want 100% fidelity to the original because you have to take shortcuts in a software implementation. Both can still suffer from inaccuracy because they both require 100% accurate and complete reverse-engineering of the original system. This video is a good overview of emulation and the two main approaches.
@desmondcayce
@desmondcayce 3 ай бұрын
ai generated ahh comment
@gblargg
@gblargg 3 ай бұрын
​@@desmondcayce I wrote that myself. Is that a compliment? I spent many years reverse-engineering consoles and writing emulators so I have a little bit of experience to draw on. I agree and despise people using AI to generate web pages, product reviews, social media posts, without labeling it as such.
@urnoob5528
@urnoob5528 3 ай бұрын
@@desmondcayce blue dot effect lol u so used to seeing ai that u think everything is ai this comment was so obviously not ai
@viktorilin8616
@viktorilin8616 4 ай бұрын
Thank you so much! This Video is just awesome!
@Canalbiruta
@Canalbiruta 2 ай бұрын
Superb explanation, and as someone who never got the whole fuzz around fpga, i can safely say now i get it. I've been following soft emulation since ever (my first contact with it was gens back in 2002 running in a friends pc and being blown away with it), and i've always found so cool the ammount of trickery happening in the background so we can play these games in different systems, and how devs were able with time to circunvant each problem (resident evil on gc being optimized to run in a "less" system than the emulator dolphin is the funniest thing till this day since it was literraly running a code to go around a clear buffer instruction happening so early that only the emulator could read lmao). But now knowing what fpga can do, my mind instantly raced to hardware that can't be replicated to save old systems like the xbox 360 that has a set life due to hardware manufacture of the time. Wow imagine in the future being able to save many boards with something so crazy and clever as a chip that can "reprogram" itself to be what is needed to be... this is some cool stuff i find so fascinating.
@zdenek7220
@zdenek7220 4 ай бұрын
Well paced, excellent educational video.
@junkman2244
@junkman2244 4 ай бұрын
I like this video. It was such a great explanation and made me want to get in to FPGA programming. I was intimidated on how FPGA programming but he made it easy to digest it.
@Man_of_Oil
@Man_of_Oil 4 ай бұрын
What an awesome, informative video man. I love the editing with all the visuals and diagrams, its so polished and easy to follow along with these convoluted concepts. The only reason i prefer software emulation is convenience. FPGA is seriously cool and I'm glad it exists, but it seems like a luxury to me, where software emulation has been generally "good enough" for my usecase (and budget haha). Its awesome that FPGA can be used for replacement parts on older systems, that's seriously awesome. They definitely both have a time and a place!
@whatskenmaking
@whatskenmaking 4 ай бұрын
Thank you - I'm glad the visuals helped! It's always good to know they are appreciated, as they do take quite a long time to put together! Totally hear you on software emulation... I appreciate them both, and completely agree that there's a number of use cases for each person/situation
@matuzaato
@matuzaato 3 ай бұрын
This video was fantastic, thanks!
Inside the Famicom | 01: The Design of a Legend
15:21
What's Ken Making
Рет қаралды 1,2 М.
The Insane Engineering of the Gameboy
17:49
Real Engineering
Рет қаралды 1,3 МЛН
Which one will take more 😉
00:27
Polar
Рет қаралды 49 МЛН
ФОКУС С ЧИПСАМИ (секрет)
00:44
Masomka
Рет қаралды 3,9 МЛН
This Console Was Powerful, but IMPOSSIBLE to Program for
13:22
The best websites for retro fans
17:36
Retro Tech Dreams
Рет қаралды 33 М.
When Optimisations Work, But for the Wrong Reasons
22:19
SimonDev
Рет қаралды 754 М.
Finally - I got my hands on a MiSTer FPGA Retro Gaming Setup | MVG
16:58
Modern Vintage Gamer
Рет қаралды 303 М.
When Did Raspberry Pi become the villain?
21:54
Jeff Geerling
Рет қаралды 1,3 МЛН
Consoles Vs. Emulators
20:21
Mr.Welbig659
Рет қаралды 139 М.
Harder Drive: Hard drives we didn't want or need
36:47
suckerpinch
Рет қаралды 1,5 МЛН
Minecraft Japanese Mountain Temple Build Timelapse 🤯
0:41
CraftedGaming Shorts
Рет қаралды 69 МЛН
[Gegagedigedagedago] HELP Nuggets in Never Give Up Mining Challenge
0:27
POV: You Built A House In 2013...😐 #shorts
0:30
Renisbee shorts
Рет қаралды 18 МЛН
#shorts
0:45
Mevaza
Рет қаралды 8 МЛН
Skibidi Toilets vs Hammers and Bollards Part 74 #beamngdrive #skibiditoilet
0:10
VS Car Crash BeamNGDrive
Рет қаралды 32 МЛН
Я просто стоял афк...
0:40
Nikolka
Рет қаралды 3 МЛН