Minor correction : at 6:36 LD B, C actually takes the value of register 'C and puts it in 'B' - had too much eggnog
@silvaxbruno5 жыл бұрын
Yeah I noticed it... Thanks for correcting! :)
@hualni5 жыл бұрын
Just press and hold "r" to fix it.
@nliberty5 жыл бұрын
@@hualni best comment
@renakunisaki5 жыл бұрын
Also F is not a general purpose register.
@ModernVintageGamer5 жыл бұрын
@@renakunisaki thats right, its to pay respects
@ikagura5 жыл бұрын
Preservation is very important
@Sean-D785 жыл бұрын
Nintendo: Hold my F-Zero
@ikagura5 жыл бұрын
@@Sean-D78 True, even if the first game is on the snes online there are people that managed to keep and save the lost BS versions of the game (F-zero Gran Prix 2 with levels such as Sandstorm and Metal Fortress) and the 64DD expansion pack for F-zero X (which had a track maker)
@vegetafan99225 жыл бұрын
Sega letting people who wish to use Mega Drive roms on the Steam version of Sega Mega Drive Classics the ability to do so. Sega still does what Nintendo'nt.
@AcornElectron5 жыл бұрын
Pfft, let’s be honest, preservation is important but piracy is more important. Hence emulators. No one is REALLY doing it for preservation.
@TooBokoo5 жыл бұрын
Although I don't care if people emulate, preservation is the cheapest excuse to use for emulation and roms. LOL! At the end of the day, 95% of people crack consoles and games so they can get them for free. "Preservation" only became wildly popular to cite in the last 10 years or so.
@BSoDGaming5 жыл бұрын
Awesome video as always mate.
@amanmittal8575 жыл бұрын
Hey there good to see u here
@epiqboy5 жыл бұрын
Oh hi there
@lordAgustin5 жыл бұрын
The king of emulation
@elmalloc5 жыл бұрын
Thanks m8, from US of A.
@DavidVerzolla4 жыл бұрын
You both rocks.
@JodyAlford5 жыл бұрын
As a programmer, I really appreciate the code snippets as you are walking through the execution. Great video!
@ptakup35 жыл бұрын
I almost never post any comments, but here I have to make an exception. I really like to watch your videos cuz you share with us many technical details and your experience, not like many others who just read something on web and create video about this. :) I’ve been always interested in how these things works „under the hood” and your channel is full of usefull informations. Nice video and excellent content at all. Your videos inspired me to start programming (I wrote many times simple things in various languages but it never was an serious thing) and some day I hope I could write something we could call an simple emulator. Have a good week! ;)
@kkgt65915 жыл бұрын
Worse is most of them think that reading and making a video is research.
@Geeon24 жыл бұрын
i code for a living and i cannot even come close to coding a full emulator. you might want to search for a new goal 🤪
@null_pointer_deref4 жыл бұрын
@@Geeon2 well, to be honest, you shouldn't expect to be able to make a functional emulator from the ground up if you have not done research on it before. Yes, it's not an easy thing, but definitely a feasible feat. There are already tutorials in youtube that explains the basics or how-to, such as the series of the NES emulator from javidx9, which is a great channel for all game programming stuff. And of course, you can find a lot of docs and help online if you go to the right places.
@RossTheNinja5 жыл бұрын
"this is about as simple as things will get" Me: Has no idea what's going on.
@elmalloc5 жыл бұрын
just press select, start, a, or B
@doublepmcl63914 жыл бұрын
Do the Konami Code, it will be much easier ;-)
@HistoMagouri5 жыл бұрын
Back in my day, we used an Ocarina and the Song of Time.
@AwakenTheGuardian4 жыл бұрын
FIFTH ROOT FLAT THIRD FIFTH ROOT FLAT THIRD
@geraq04 жыл бұрын
@@charlesdoesmore5488 he is talking about music notation, those are the notes making up the Song of Time in any key. In the game, if I'm not mistaken, is A D F A D F, which would make it a D minor
@ArtHazard4 жыл бұрын
Fascianating. People from my generation used Sands of Time.
@nutter-world5 жыл бұрын
Very interesting, I assume you could compress the older buffers and uncompress on a rewind giving you a rolling cache. More videos like this, very informative!
@ModernVintageGamer5 жыл бұрын
yep, thats another way ive seen it work. Linked-Lists, Circular buffers, compressed frames. Maintaining a full state on 8-bit systems is fine because the overhead is small. doing that on 32 bit systems would not work as well
@nutter-world5 жыл бұрын
@@ModernVintageGamer while I was typing I was thinking Prince of Persia (sands of time I think) and how they kept a cross platform rewind consistent given the ram differences. NB yeah easy on a simple set of registers but once you get over 16bit or custom chips it's going to be a little more tricky.
@emilianoleiva94675 жыл бұрын
@@nutter-world if you think about it, rewind its in everywhere. Braid, Tracer in Overwatch, Grid. Maybe Race-Ghosting its a type of "rewind" method when you race againts the ghost which drives the exact way you raced before.
@nutter-world5 жыл бұрын
@@emilianoleiva9467 Yeah actually when you put it like that it makes sense but are they storing enough information so you could drop back in during a replay and continue where you left off; say in a racing game. That would be fun once you've finished a game / track and go back and work on each corner scrubbing the timeline to make a perfect lap that you could then work to beat in realtime.
@rollizle5 жыл бұрын
In the case of tracer she only needs to store her location, ammo and health over the time of that rewind. Which is what? 1.5 seconds? So it's really not much info to store in her case, which I always found to be very smart design from a programming and performance standpoint.
@darkerm765 жыл бұрын
Rewind always remind me of Prince of Persia
@avavii5 жыл бұрын
This? Yes! :D
@ModernVintageGamer5 жыл бұрын
Yeah that was the first time I experienced rewind in a game it was a cool feature
@ic_trab5 жыл бұрын
"That's not how it happened"
@ipodguy95 жыл бұрын
Anyone remember Blinx: the time sweeper
@BenGillam5 жыл бұрын
the original or more recent one? fell to my death far too many times back in the day
@nighttimestalker5 жыл бұрын
I honestly hate anti emulation people. It's a literal necessity now-a-days
@emperorfaiz5 жыл бұрын
Fortunately, they have no power to stop the emulation but whining pointlessly with no effort. You do you, my man. Long live emulation! EDIT: encycl07pedia for example literally has no power to stop us. A big L to him and move on with what we want to enjoy.
@koffing20735 жыл бұрын
They are just angry that their retro collection lost a lot of value lol
@chairwood5 жыл бұрын
Fuk u nerd
@nighttimestalker5 жыл бұрын
@@encycl07pedia- It's literally a necessity for game preservation.
@AzrialAlaria5 жыл бұрын
@@mezzb Same here!
@theannoyedmrfloyd39985 жыл бұрын
Emulators can also be considered as development kits.
@jornthree88815 жыл бұрын
Phúc Trần I mean, it’s pcsx2, what do you expect, it’s project64 for ps2 emulation. I recommend looking into and supporting “play!”, an open source ps2 emulator. It’s not to hot right now, but it’s getting better. And I believe it’s in libretro as well, so I recommend giving it a shot.
@SteelSkin6675 жыл бұрын
Not necessarily, but they can be amazing debug tools - especially when developing for older platforms
@dan_loup5 жыл бұрын
Many emulators are not very good for it because outside of the context of "running the commercial games", they're pretty imprecise. For example, on BlueMSX, you're allowed to change the sprite table on the middle of the scanline, change the video memory layout with no consequences to the data in it and even read a disk without turning on the motor. Those things make OpenMSX (an emulator made with making a perfect 1:1 copy of the real hardware) throw a fit, but BlueMSX just allow you because it don't break any games, as no real game attempt to do those things.
@omegarugal92835 жыл бұрын
exactly
@gasparmxm5 жыл бұрын
Emulators can't be considered Dev kits, there's a good reason, almost all emulators just want to emulate with errors, they don't rely on tech of the original hardware, that's why emulators have lots of errors on games, it's not 1:1 emulation. You need a real dev kit so you can develop in a reliable environment.
@nothankyou48595 жыл бұрын
You should do a video on the history of the dolphin emulator! It's pretty crazy how good it has gotten, with multiple forks for specific games too (faster melee)
@GRBtutorials5 жыл бұрын
As someone interested in the more technical details, I loved this video (though I most likely can't speak for most of your audience, as I already knew how a CPU works so it was easy to understand). Certainly, I'd like you to make the series on emulation.
@MrMario20115 жыл бұрын
Yes! More emulation techniques videos!
@MarcoGPUtuber5 жыл бұрын
An amazing feature when I realise that *Mistakes Were Made* in my gameplay!
@Solowraith4life4 жыл бұрын
As a computer science major I loved that you explained the programming techniques used, not many youtubers ever seem to talk about the actual code because they don't think people care but I would love a full series like this video
@seanflores35115 жыл бұрын
I love it when you get into the weeds with an IDE and break down concepts like this with a technical walk through. Great video!
@Gods_God5 жыл бұрын
I would love to see this series expanded. I've always wondered what goes on behind the scenes in emulation, and how people reverse engineer hardware functions to make quality software
@deafhobbit5 жыл бұрын
I appreciated you talking about how these features improve accessibility. As someone who finds old school arcade inspired designs like limited lives and long gaps between checkpoints extremely frustrating, save states have really been essential in helping me enjoy older games.
@OnYourSquare5 жыл бұрын
MVG is has become one of my Top 5 favorite KZbin channels. I work from home recovering data from damaged Apple products, so my head is buried in a microscope most of the day. Typically I end up listening to shows more than I watch. His content is detailed, informative AND entertaining. So regardless of what I'm doing, it still holds my attention. Love it. Keep it up.
@haggisman08125 жыл бұрын
Discovered your channel earlier this year and been hooked ever since, fantastic content especially for someone like myself who is very interested in emulation but doesn't understand the technical details. Merry Christmas to you and yours MVG!
@tensevo3 жыл бұрын
The emulation community is really something special. Preserving classics. Modding. Up-scaling. Save-states, Filters, Control mapping. Effects. Speed-up, slow-down, collecting, home-brew. Emulation can give new life to old titles and often they can even play better.
@Altilt5 жыл бұрын
Rewinds definitely been around more than 7 years, I remember doing it on ZSnes over a decade ago. Wasn't as clean as modern ones, but its definitely been around.
@Yamigishi4 жыл бұрын
I remember using rewind on a NES emulator on my psp, I can't remember the exact time frame but that was at least 8 years ago
@Faygris4 жыл бұрын
Exactly what I thought. I've definitely been using it 10 or 15 years back on ZSNES
@MetalJody19905 жыл бұрын
I love emulation. Been a fan of it since the early PSP modding days. I'll never forget how amazing it was to play my first consoles ever, on the go, for the first time. It absolutely blew my mind. I want to give a huge thanks to everyone involved in making emulation happen, and you too, MVG, for making videos on it.
@gamertygonl5 жыл бұрын
MVG Time!
@AnonymousFREEZEpOp14 жыл бұрын
I'm a gamer, but know nothing about modding or emulation, but I find these video and this channel overall so interesting. He makes it so much easier to understand than other channels I've seen.
@Docs12315 жыл бұрын
You gotta do more of these. This was fantastic
@michaelyapkf5 жыл бұрын
Thank you for a detailed explanation. Very informative. Thank you to all who spent so much time bringing us all the emulators for all the vintage systems so that we can still enjoy those vintage games which we treasure.
@SullySadface5 жыл бұрын
I understood about 5% of this. I finished the video because it's interesting as hell.
@SullySadface5 жыл бұрын
On the note about rewinding, i could swear ZSNES (yes I use dumpster tier eumlators) has had a rewind function since 1.42 released, if not before. Granted, it's nowhere near as visually pleasing as the short coding demo you displayed. Perhaps I just made an assumption.
@mcqueenspartyisinhell20135 жыл бұрын
At least you got a better idea about emulation and hardware limitations
@ClokworkGremlin4 жыл бұрын
It has. I'm certain I remember using rewind features as early as the end of the 90s. I used to have fun with the rewind and record features, recording a set of inputs, playing them back, and then hitting rewind or state restore in the middle of the playback and watching my character's actions play out in a different context.
@TuffBaddi5 жыл бұрын
Long-time watcher, first-time writer. I really appreciated this video's somebody who wants to get into coding and emulation but some of the concepts go over my head. I appreciate you stripping back the veil a little! More of this style of history and learning would be great!
@SourCloud5 жыл бұрын
Better than YT-Rewind. Nice Episode. I would love a emulation series!
@chrisakaschulbus49035 жыл бұрын
not original, please consider going through the door and never coming back, thank you very much, have a nice christmas my child
@SourCloud5 жыл бұрын
@@chrisakaschulbus4903 Dude chill. I just want to comment what I want and btw i commented this liturally 8 min after upload. So go back in your toxic Schulbus und verpiss dich. Thanks.
@chrisakaschulbus49035 жыл бұрын
@@SourCloud i just wrote some random crap because i literally have nothing better to do... even on christmas. but i actually laughed at that line "So go back in your toxic Schulbus und verpiss dich." no hard feelings bro :D
@SourCloud5 жыл бұрын
@@chrisakaschulbus4903 No worries my man Happy chistmas!
@ktvx.944 жыл бұрын
Finally those 4 years of studying game development paid off. It really is beautiful watching videos like these and actually understanding what they say with little effort (sometimes). I'm very interested in how emulators work to begin with. I've never done research so it would be awesome for an experienced youtuber to explain it. Like, how does a device pretend ir's abother?
@chrismarshall45235 жыл бұрын
Would love to see you do a series on how to code for beginners. Im 43 yo and now have a little extra time in my life to finally learn. With your ability to break down and explain things from an analytical mindset, not only are you a great instructor, it might make a successful side channel.
@bobafruti5 жыл бұрын
Chris Marshall if you’re serious about your desire there are a number of game making tutorial channels that will start you off simply enough in Unity or Gamemaker and you can get real projects under your belt before you even get into the tedious nitty-gritty that most compsci courses start off with.
@andymorin91635 жыл бұрын
This is what I send people who want to learn how to code www.reddit.com/r/learnprogramming/comments/6fto5j/how_to_start_learning_to_code_when_you_dont_know/
@kaitlyn__L5 жыл бұрын
This isn't a video series, but there's a few approaches you can take. You could learn something modern like Lua or Python, or Java or possibly maybe JavaScript (the last two are a little more arcane, and can get some hate for it, but they still simplify a lot of the same things). You could learn C or C++ (many do C and then C++, since C++ was designed to appeal to existing C users at the time). They're a few decades old now but C++ is still used in a lot of programming contexts, because the programmer has to manually manage a lot more things and thus it can run faster or on fewer resources. Ultimately learning both kinds of things would be useful, but these are just the different approaches of where to start. Many programs today will use a combination of C++ and Python, to combine speed of writing the program with Python, with the speed of C++ for certain attributes. Python was designed to compile into C++, so you can insert actual C++ code into a Python program as well and have it "drop down" into C++ for certain functions. Another approach some people advocate is learning on something retro like a C64, because those computers were built around anybody programming something right away on the screen. That may appeal to you if you used a C64 back in the day, but it can also be more difficult because of memory limitations that modern computers just don't have. Additionally, if you get to the point of writing things like sorting algorithms, a modern computer is going to run through them so much faster when you test them. So I don't personally recommend going retro to learn, although they were indeed simpler to program for. If you wanted to run something faster than BASIC (which is "interpreted" like Python and JavaScript and so on, which again means the computer manages resources you might have to manually allocate in another language, which takes up more of its time) you would have to use Assembly on those computers, which is a fancy way of saying you're directly speaking the CPU's language. The parts about programming the Game Boy in this video were in Assembly, with the registers and the memory addresses. Advocates say retro Assembly is better to learn than a modern CPU's Assembly, because of how much simpler the CPUs themselves were. They say it gives you a deeper and intuitive understanding of the way computers actually work and handle data. And I wouldn't fundamentally disagree that it gives you those skills, so if that appeals to you, by all means start there. But in my opinion, Assembly is mostly comprised of busywork shuffling values around between registers, with maybe 1-10% of your time actually spent making the CPU do its task. I'm sure there are plenty of people who enjoy that, but I just prefer to let a compiler handle all of that and let me think about what I'm actually wanting to happen in my program. So I wouldn't personally go "lower level" than C/C++, which still has memory allocation (malloc) and things like that, but at least eliminate a lot of the active register swapping busywork. But any way of getting started is valid. Any way into the way computers think makes it easier for you to learn other methods later. Plenty of people started with Python and plenty with Assembly, neither would inhibit you from picking up the other one later. As for actually learning those things, there are a lot of free courses available online if you search terms like "learn [programming language]". Additionally there are sites such as Skillshare which you may have seen sponsoring people's videos, they're paid services but have video courses split up into chapters. These may be more your speed compared to the free options, which can often be like reading Wikipedia for hours. Additionally, there's multiple different people who uploaded their own courses, so you might find it easier to try different people's methods until you land on the one that clicks with you. Ultimately, don't be afraid to try multiple sources and methods if one isn't really gelling with you. There's no benefit to sticking with one method if you hate it, you're going to learn better if you enjoy it. But no matter which way you take to finding how to learn programming, something I wish someone had told me is this - Google for specific problems you're having! "How do I alter the size of an array in [language]" for example - you're going to be back on your way to programming much faster that way than just hoping your online learning resource gets there eventually. Don't be afraid to skip around the curriculum if it'll let you try new ideas, you can always go back into the prescribed path once you're directionless again. This was a bit long, but I hope it helped a little Chris! Self-directed learning can be overwhelming at first, but can also be immensely empowering once you get a handle on it. Info about almost anything you might want to do around the house, but don't know how, is usually available online with a little digging. Good luck with learning to program!
@paulgraves13925 жыл бұрын
If your just wanting to learn to code for games, I strongly recommend reading Fabien Sanglard's blog- he specialises in writing detailed source code reviews of video games from the 1990s that are technical but easy to understand for people who have never coded before. I also recommend two of his books: Game Engine Black Book: Wolfenstein 3D Game Engine Black Book: DOOM
@deus_ex_machina_5 жыл бұрын
@@kaitlyn__L Incredible comment Kaitlyn, I took a screenshot and will be sure to reference this when I finally get started.
@blakryptonite15 жыл бұрын
You have one of the best retro gaming channels on KZbin. Most other channels review a new crappy AliExpress emulator every week, and try to get people to buy it using affiliate links. Your channel gives actual information about the technical aspects of vintage gaming.
@myopiniondoesntmatter70685 жыл бұрын
Its nearly impossible for me to play 99% of my favourite emulated games now without a frameskip/fast forward option. I pretty much exclusively play JRPG's and I can get the same experience as I did back when I was a kid in 1/10th of a time simply by speeding through every overly long battle animation or making the walk speed bearable. Playing games like Lufia 1, Breath of Fire 2 or Any Phantasy Star besides 4 (macros were ahead of their time) without them is torture, especially knowing that frameskip exists.
@fryncyaryorvjink21405 жыл бұрын
Same with pokemon, that guy walks so slow
@onepunchgirl71525 жыл бұрын
Same here.
@p3trichor8625 жыл бұрын
@@fryncyaryorvjink2140 Omg the pokemon, I have no idea how people play pokemon on original hardware its like impossible.
@comicsans16895 жыл бұрын
@Brett C That's a major flaw in Pokemon's design philosophy, because it originally came out in a time where developers had to pad out gameplay with grinding so that you feel like you got your money's worth. Unfortunately, JRPG developers of today still have that same mindset, where there is a ridiculous amount of grinding in game to hide the utter lack of content and shallow gameplay. That's why I always return to western CRPGs, because most of them don't feel like a complete chore to get through.
@xavier77695 жыл бұрын
@A GentlemanExperiencing Nostalgia isnt always practical. Thats like if a game werent in your country and it was really good, its not worth your time because there is absolutely no way to find it legally.
@supersquare5 жыл бұрын
I was LITERALLY looking into this myself, as I basically made the underpinning of a rewind algorithm while programming a high performant, real time undo/redo algo for my framework. I wanted to see if emulators were simply recording user inputs or if they were recording entire data streams. Thanks so much for this incredible insight!! Absolutely love your channel and have been loving these super deep dives!
@justdewitt37585 жыл бұрын
this is better than YT Rewind!
@Quiltfish5 жыл бұрын
I mean, not hard, but the sentiment is good.
@logang4eversikehellno1405 жыл бұрын
DummyFacts
@EastDallasKicks5 жыл бұрын
Falco Lombardi yup
@EastDallasKicks5 жыл бұрын
Just DeWitt isn’t everything better than that
@sosasees5 жыл бұрын
@@WiiUniverse Yes. You can watch the KZbin Rewind without paying any money. But Google Stadia is many purchases which eventually add up to (more than) what you'd pay for a regular games console which is much better.
@vk3fbab5 жыл бұрын
Great to see someone explaining how this stuff works. I'm sure people who have never thought about how software emulation works would get great benefit. Brings back memories from the old university days. Had a lecturer write a software emulation of a CPU. Kept finding bugs in it. Remember a case where he was not impressed that I wrote a very simple program that crashed his emulator but would never crash the real hardware.
@johnsimon84575 жыл бұрын
First time I saw rewind, I thought “This must gobble up ram like a son of a gun.” but then I remembered this isn’t the 90’s and it’s totally OK to use a hundred MB or so of RAM and store each state for each frame for a couple of seconds.
@tf_d2 жыл бұрын
I remember thinking that when I switched from making a game on the NES to making a program in C lmao
@saje58215 жыл бұрын
MVG, Please do make more videos like this! As a younger kid, I grew up past the time of many of the older game consoles that are covered in your videos, and emulation was really essential in enabling me to appreciate the history of video games, which came to be a really big part of my childhood, and I think really contributed to who I am today. Even today, I use emulators all the time for games that are otherwise (pretty much) inaccessible due to reasons like age. For example, I am currently using an emulator to play a game in Japanese called "Home Sweet Home" (ホームスイートホーム) . Not to mention, it's just really cool to be able to learn about all these things from a programming and technical perspective. I don't know how much I am exactly retaining of what I learn in videos like yours, but I know I am learning a few things, and what information I do get to learn is just amazing to me. So, for those reasons, please make more videos like this!
@GabeSkolnik5 жыл бұрын
Definitely like this topic for a series 😁🎮
@BM-wf8jj3 жыл бұрын
Another great episode from your channel. I've been playing games on emulators since I was a kid back in the mid 90's but never knew much about how it all works behind the user interface. It's definitely something I find more interesting now since I'm learning real basic stuff like how to program PLC's as well as how they work in my electrical apprenticeship right now. I'd love to see this topic turned into an ongoing series.
@jeddunkxyz5 жыл бұрын
As someone who's studying Computer Science, I'd love to see this as a series.
@dbzkidkev25 жыл бұрын
This is what I love about your channel! The videos are not just a high level glossed overview, you go into technical detail which is excellent!
@Wkterr5 жыл бұрын
I write emulators and virtual machines myself, and while rewind isn't a new concept to me, having a playlist with various emulation techniques would be useful. Just a tip though: Please animate the state changes when showing what the CPU does. It makes it much easier to follow along when there are more visual cues to make it more obvious what's going on. Check out Michael Steil's "27c3: Reverse Engineering the MOS 6502 CPU" talk, I found his approach very easy to follow.
@Dannysince19855 жыл бұрын
My brain trying to understand this is like the episode of Simpsons when homer is doing an experiment and blows his basement up then changes one value of something to a lower value then blows his basement up even more than before........but good on you I like to play emulators and wish I knew how they actually do what they do.....
@Wkterr5 жыл бұрын
@@Dannysince1985 I highly recommend the Michael Steil video I mentioned. I've watched that talk probably 10 times, but it really helps understanding how a CPU works on a really low level. Once you understand that, coding an emulator is actually pretty straightforward.
@DasAntiNaziBroetchen5 жыл бұрын
@@Dannysince1985 Learn to code.
@SerBallister4 жыл бұрын
@@Wkterr debugging an emulator is kind of hard though. Mess up a status flag for one opcode and getting a crash 3 million cycles later is not something you want.
@Wkterr4 жыл бұрын
@@SerBallister Yep, that's why you should have unit tests or a specifically designed test ROM to fully confirm the operation of each op code. Obviously it's not a guarantee, but it makes it a lot easier to develop. Emulating peripherals, however. That sucks.
@LordRaven2565 жыл бұрын
I love that you actually show the C++ code that does it. This gives this video so much more credibility in my eyes.
@mingusdegeest71625 жыл бұрын
Life would be so much harder without emulators
@basshead.5 жыл бұрын
Good for speedrunners.
@milhouse7775 жыл бұрын
No doubt, I wouldn't played +80% of all titles that I've played in my life,
@Psilocervine5 жыл бұрын
This episode, along with the episode on the Game Boy's graphics tools, have been some of my favourites
@TheGunmanChannel5 жыл бұрын
Merry Christmas from Australia man.
@warpnowify4 жыл бұрын
This is the first time I've posted a comment on any of your videos. I really like the level of detail you go into in your explanations without going too far over anyone's head. I have always wanted to know how emulators work and would be very interested in watching them. Please keep them coming.
@petwisk20125 жыл бұрын
Pleasse do more emulation Stuff, great vídeo, happy holidays
@alancaX5 жыл бұрын
This is very different than some of your other videos; being extremely technical with programming specifics was a welcome surprise! I've always respected emulator programmers, thanks for sharing!
@MrNyagasu5 жыл бұрын
Please do a series on this :)
@Zachism5 жыл бұрын
ABSOLUTELY love this video! As someone who grew up with emulation and is currently learning to code, but only skirted around the backend of it while growing up, I’d love to see more about this!
@diablo8885 жыл бұрын
10:51 "past 6 years" ... what do you base that on? Because I have seen and used it extensively waaaaaay before that. Maybe not all emulated system had it from the start, but ZSNES had it if not 10+ years ago.
@ShadowFox644 жыл бұрын
Yea I remember using rewind while playing a FFV fan translation when I was in middle school so it's at least been a thing since the mid-aughts.
@TehEpicMuffzor4 жыл бұрын
I love the technical details you dug into. Been watching you for 2yrs and this is my favorite video
@flameshana95 жыл бұрын
10:50 Rewinding is recent? I recall doing that on my snes emulators back in the early 2000's though. 12:16 I recall that setting on the ZSNES.
@agatonspik2 жыл бұрын
Rewind has been there for much longer than 6 years in emulators. Implemented it back in 2007 myself in one of my own emulators with a technique of combining movie recording through button presses and savestates during timed in intervals. Even had the option back then for the sound to play backwards as well.
@kenrickkahn5 жыл бұрын
I just left a channel talking about Emulators for this channel talking about Emulators.. I guess I like this KZbinr better.. LOL *Edit: Correcting Sentence Structure by adding missing word*
@kenrickkahn5 жыл бұрын
@McTurbo1300 LOL!
@kenrickkahn5 жыл бұрын
@McTurbo1300 🤷🏿♂️🤷🏿♂️🤷🏿♂️🤷🏿♂️😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂😂
@ZAX271715275 жыл бұрын
Im a CS student and I LOVE this in depth stuff. I would like to re-create an emulator just to see how it works and this was something that really helped. I would love to see more in depth videos like this.
@marlbear5 жыл бұрын
Emulation is literally the best, not cos I want to play pirated games cos I want to play 90’s arcades not the crap console ports. 👍🏼👍🏼👍🏼 Quality video btw 👌🏼
@kenrickkahn5 жыл бұрын
Exactly!! Final Fight SNES version I'm looking at you..
@marlbear5 жыл бұрын
Kenrick Eason and sunset riders on the SNES! So pixelated
@jenniferlynn35794 жыл бұрын
Not that I have a problem with it, but those arcade games are still pirated lmao
@michaelhelmut14 жыл бұрын
@@jenniferlynn3579 piracy intends that all of them have a modern way to play that isnt 2nd hand equipment
@matthieuleperlier2514 жыл бұрын
Yeah, it sucks when you buy a port of an old game and realize that emulating it would actually be better!
@Metaphor96965 жыл бұрын
I really did like this episode. I have to be honest, I was barely able to follow along with the information you were giving but until I learn what everything means exactly, I would still like to see more of these types of videos. Happy and safe holidays everyone!
@AmyraCarter5 жыл бұрын
I use rewind on NES, SNES, and GB game emulators. Kinda helps with some things. Happy Yule; may the winter be plentiful, but merciful...
@n64ever5 жыл бұрын
This is some of the best emulation content on KZbin, PLEASE continue this series!
@koopdawhoop.5 жыл бұрын
9:00 "So let's move on to rewind" *Gets a KZbin Rewind ad*
@fernandohernannunez15135 жыл бұрын
Excellent video. I'd love to see more lengthy ones. Not because I'd use it, but because I find emulation fascinating. And your way of presenting stuff is so good.
@thequake20095 жыл бұрын
The song in the beginning is MVG's own beat! called Race Condition. Damn it's good!!
@prophismusic4 жыл бұрын
I've been commenting on gaming channels for years asking them to make this video. Thanks for actually doing it.
@HellScream1075 жыл бұрын
MVG, I hope someday you become a professor of gaming technology if such a thing exists in the future :D
@seanmikhaels5 жыл бұрын
would love to see this as kinda a mini series, getting into detail about not only the rewind / save state but how blueprints for an emulator , how it’s coded at a high level , maybe another series about emulating graphics core, sound , etc
@DukenukemX5 жыл бұрын
I'd like to see a video on why Vulkan is so great for emulators.
@ioioio135 жыл бұрын
Very interesting topic and I liked the code and concept breakdown on rewind features. It has been many years since I have dipped my toes into code. Would definitely be interested in seeing more breakdown of emulation. Thanks for making great content.
@manuelvillalta37935 жыл бұрын
At first, I read the title and thought to myself, eh..who cares? Then I glance at the name of the channel and thought to myself, MVG!? This is gonna be interesting! You can break down the process of paint drying and it would be an epic video.
@TaimatCR4 жыл бұрын
As someone that can barely write a super simple script, it is amazing that there are people out there who are talented enough to make emulation a reality
@joshm2645 жыл бұрын
The funny thing about some of these emulators is that alot of new mini consoles and emulated compilations use the same emulators that are primarily used to illegally play these games. Also, Merry Christmas if you see this!
@PhantomDogman5 жыл бұрын
Wanted to comment that emulators by themselfs are legals but getting roms... probably in gray zone if not illegal, but I assume that you already understood that how you wrote that comment.
@joshm2645 жыл бұрын
@@PhantomDogman yeah, was trying to say that the same emulators that the mini systems and compilations are using is the same one that people are using illegal roms with
@kurtg54055 жыл бұрын
Love videos like this! I've been a user of emulators since I was very young (my first emulator was a DOS game boy emu playing a poorly translated version of Pokemon Gold version, that locked up once walking to a certain point in the game. Finding out how all of these emulators work is fascinating. All the best!
@taylorwoolston88565 жыл бұрын
Before watching, I would think it would just save the contents of RAM (and whatever else) every X number of frames. Then when you hit the rewind button, the emulator would go backwards through the saved RAM by X number of frames until you stop pressing it, and load the saved RAM and continue from there.
@larysk2275 жыл бұрын
I like the direction of trying to explain the concepts in little more depth from the programmers perspective. Didn't understood it all, but I'm planning to rewatch. I use emulators so much that it would be nice to understand a little more of how they work, so I'm looking forward to seeing more videos like this, even though honestly they might push away some people because of complexity and requirement of understanding basic programming concepts and the programming language used.
@darek44885 жыл бұрын
Rewind didn't appear in the last 6-7 years. I've used a rewind function playing NES games on my DS Lite with R4DS more than a decade ago.
@NesGaming08015 жыл бұрын
I would’ve probably never been as active in getting my retro consoles and games if it weren’t for discovering them with emulation and it’s something I’ll be grateful for forever!
@ifi37634 жыл бұрын
"now things can be done in different ways of course, but you certainly get the idea" me: 😶
@johnsaxston60044 жыл бұрын
The very first red emu menu I remember, the emu menu with the hand that looks like its dripping blood. My brother years ago introduced me to that emulator on a windows 7 desktop. Ever since my brother passed away a year ago, you MVG, have had me interested in every thing of old. I have been looking into all these emulators that run on windows 10, mainly the dolphin master build that runs gamecube and wii games. Its quite amazing what is possible with just a little bit of knowledge and you mr MVG, have given me enough knowledge through your videos to be able to code and fix things. Thank you mr MVG!!
@stanislav87945 жыл бұрын
Do you have any "how to make emulator" or any kind of basic for making one? Or maybe you plan on making one? Would be great. Love how you explain things and I would love to start some way making my own emu if only for practicing my coding skills
@michael.andreae5 жыл бұрын
You could watch javidx9 Videos about a NES Emulator Part 1 --> kzbin.info/www/bejne/fGnOqWhshL-Ensk
@themrnobody98195 жыл бұрын
Haven't seen these videos myself, so I can't say anything about them but resources for NES Emulation can be found at wiki.nesdev.com. You can find all the concepts and how the NES works there, for actual example code you can e.g. look up the source for Nintendulator/Mesen/FCEUX/...
@vladtomoiaga47215 жыл бұрын
I'm excited about the following series on emulation! Merry Christmas, MVG, and a Happy New Year!
@primezone4165 жыл бұрын
Oooooh im early Merry Christmas everyone ;)
@lxmcf5 жыл бұрын
My thoughts are we need whatever you decide to put out, you deserve so much more attention!
@phatboi2025 жыл бұрын
without emulation my whole shelf of PS2 games would be unplayable for me. as my PS2 has thrown it's laser, why should i spend more money fixing something that's out of manufacture? i'll just emulate those games. I just wish there was better steering wheel support in pcsx2 so i can run GT 2-4 better with my sim setup :/
@BulletFever15 жыл бұрын
Well if I'm being honest I'd say that repair can be as fun as emulation
@fifaworldcup19945 жыл бұрын
Mine luckily still works.
@phatboi2025 жыл бұрын
@@BulletFever1 i can, but i have shakey hads, so if i messed up the mod chip at the same time would make it worse... lol :/
@phatboi2025 жыл бұрын
@@fifaworldcup1994 glad it does, it a fat original though?
@fifaworldcup19945 жыл бұрын
@@phatboi202 Nope. PS2 Slim. The silver model.
@SuperSanjuro5 жыл бұрын
I've enjoyed every single one of your videos, but yes, this one was really cool. I only have a very rudimentary understanding of code, but you make it easy to understand. I come here for the joy of learning. Thanks for all the work you've put in so far.
@bitelaserkhalif5 жыл бұрын
I wonder.. what if you can implement hibernate features for one app without shutting down the pc?
@renakunisaki5 жыл бұрын
It's difficult if the app has any files or network connections open. They might not still be there when you resume.
@GameplayandTalk5 жыл бұрын
Man, you're really cranking these out, yet the quality remains top notch. I have no idea how you do it!
@BIGwillTHEGAME5 жыл бұрын
Good Topic
@TLS2SN5 жыл бұрын
I tried to go to college for game programming, unfortunately I only got the content of programming and not the context. I don't know how any institution can take someone from pre-coding to C#/C++ and expect them to just understand on the spot and learn such a major language in six weeks. I loved websites like Tehskeen, and I love your programs MVG! I may not be able to program, but that doesn't mean I am not interested in learning the context of how things work and operate. Thank you for producing this video, it really does open your eyes as to how things work. I would love to see more information about this topic in the future. Please, do keep things up! :)
@AlwaysEngland5 жыл бұрын
Can't wait till I start to build my own Emulation Station. Got all the games ready. Merry Christmas!
@AlwaysEngland5 жыл бұрын
@@WiiUniverse That's what I'm getting, only found out about the Raspberry PI a few months back.. I've already designed the casing & the layout of the inside. I had a ZX Spectrum 48k when they came out & looking forward to playing some old favourites.
@Adioownz15 жыл бұрын
I’m trying to figure out which console has like ALL the retro games, ps1, ps2, Xbox, Xbox 360, wii and Wii U games. Which console has the most games emulated on?
@Adioownz15 жыл бұрын
singularon1 there’s not a lot of videos on the Wii U modding just the original wii. Which the og wii can have over 10,000 games but most of them are ones I wouldn’t even want. What kind of pc setup would you have to have? I don’t actually want ALL the games from those consoles but I want to be able to have a setup that I can download every game I’d ever want to play
@Adioownz15 жыл бұрын
singularon1 and why would I need a super good pc to play those games that run on low spec hardware? I’m only talking about running everything up to last gen (ps3 360 wii Wii U)
@Adioownz15 жыл бұрын
Kryštof Píštěk sounds dope but would a high end pc be able to run them all?
@karehaqt5 жыл бұрын
What a great start to Christmas week, an MVG video.
@karliskorlass1965 жыл бұрын
Wii U emulation is quite far along. I can play BoTW on a Wii U emulator without any artifacting or graphical bugs at 50fps on a Ryzen 5 3600 and a GTX 1070.
@karliskorlass1965 жыл бұрын
@@BlindBison 1080p. I get no differene in fps between 1080p and 720p.
@karliskorlass1965 жыл бұрын
@@BlindBison Yeah, I get 40% GPU usage during gameplay.
@32th5 жыл бұрын
You are definitely one of my favourite retro game KZbinrs and a big reason for that are your programming skills and technical knowledge
@timovandam5 жыл бұрын
Back in 2006 or 2007 I used a NES emulator on my Nintendo DS that had rewind 🤓
@bobafruti5 жыл бұрын
Timo van Dam yeah, I was thinking that same thing. If you think about it the DS has more than enough memory to do what he is talking about. In fact once you’ve gone to the effort of writing the emulator the extra 20 lines of code to enable rewind is a no brainer.
@ClokworkGremlin4 жыл бұрын
Yep. I played games on emulators as early as 1999(I remember having to disable transparent layers to get a playable framerate) that included a "rewind" feature. It wasn't the Prince of Persia-style "warp backwards through time until the desired moment" rewind, but it did allow me to jump back several seconds in increments of a second or two at a time.
@edavila81715 жыл бұрын
Yes! Series on emulation, please! I enjoy your videos tremendously! Specially the technical aspects with code you include, those are awesome!
@sonichuizcool74455 жыл бұрын
May I ask a question? Im the loner type with my gaming and in life. (Autism) .. Years ago I puchased on Xbox Arcade the Teenage mutant ninja turtles game. I really really enjoyed that game. At the point I had issues keeping my life together and gaming went out the window for several years. Now that I am able to keep a life together (employment and relationships) I got back into gaming. TMNT was delisted from what I have researched. I paid for that game and I feel its mine. I dont think its fair im not allowed to redownload it since I was given no way to archive it to begin with. Whats the easiest way of getting it up and running? Im not asking for the rom just what to do to make it run. Thanks
@antilad5 жыл бұрын
If you're referring to Turtles In Time Re-Shelled this also happened to me and I've found the only way to play it on the original hardware these days is to mod your Xbox 360/PS3.
@gadget78945 жыл бұрын
its either with a modded 360, or there is a 360 emulator, of which MVG has spoke of im sure in a past video, but unsure of which one it was ! ...
@sonichuizcool74455 жыл бұрын
@@mezzb Thanks for the reply. Im looking into it now. Sounds like for me this is the best option. I did find an Odroid XU4 option that sounds pretty reasonable to run this game and others like it in the future. I guess my best bet for a more portable way would be the purchase one of those boards or the Sheild I just saw which seems to be pretty capable too.
@o_d-chan5 жыл бұрын
I barely understand most of your technical explanations, but they're really fun to watch because it makes me want to learn so much more!