14. Building an Emulator
January 07, 2020
Senior Software Engineer at SmartBear working on mobiles @ CrossBrowser Testing
Come hang out and eat pizza with Memphis developers.
Have you ever wondered how you’re able to grab a piece of software, load in a PlayStation 2 disc into your DVD-ROM drive, and boot up a good ol’ session of Soul Calibur 2? Or how about people playing a seemingly modified version of Pokemon Red where every Pokemon has been replaced by Zubat? How in the world are people playing these games on their computers and smartphones?
Join us for a shallow dive into the world of emulation and what goes into writing one. We’ll take a look at a “virtual” computing platform from the 1970s called CHIP-8 and how it works and how you would write an emulator to run CHIP-8 programs on your own machine, no porting necessary! We’ll talk about how ROMs are structured, how to read them, and how to execute them. We’ll also compare and contrast how a CHIP-8 emulator would work versus other consoles and discuss some of the problems of executing programs on hardware they were not designed for.