Writing Emulators For Fun And Self Loathing
Rebecca Martin
NI Dev Conf 2020
Introductions
- Parrot, software engineer at Flexera
- Did I say I really like parrots?
- Did I also say that I stan Dwayne "The Rock" Johnson and also you should stan as well?
- stan twice and loona ;)
- In all seriousness...
- Send all hatemail, flames to @laches1sm on Twitter and Github
![](https://media3.giphy.com/media/1TYNBZOcoMmOXvm5iJ/giphy.gif)
What we're going to talk about
- What is emulation, exactly?
- Why do we emulate?
- Brief overview of Assembly and Game Boy/DMG processor
- How to start building your own emulator
![](https://media1.giphy.com/media/3ofT5VgD5NOgKbYlna/giphy.gif)
What is emulation?
- Bascially, the process which a computer can emulate another processor or system, or behave like it
- Emulators you may have heard of before:
- Visual Boy Advance (GB/GBA -> Windows/MacOS/Linux)
- Pizza Boy (GB/GBA -> Android)
- Dolphin (GameCube -> Windows/MacOSLinux)
- DOSBox (DOS -> Windows/MacOS/Linux)
- ZSNES (SNES/Super Famicom -> Windows/MacOS/Linux)
- Can also be used for simulating processors, terminals... etc
Why emulate in the first place?
- Preservation - older hardware is becoming harder to find in a working condition
- Ease of access - fan translations, ROM hacks...
Why emulate in the first place?
- Preservation - older hardware is becoming harder to find in a working condition
- Ease of access - fan translations, ROM hacks...
deck
By laches1sm
deck
- 509