A talk given at the Cape Town Microsoft Developer User Group - @CPTMSDUG in Cape Town on 23/10/2019 on emulators and writing a CHIP8 emulator in .NET Core
Unfortunately this talk was not recorded, however the slides are available here
The talk was version 2.0 of the talk I gave at the Developer UG a few months ago
The emulator code is available on Github
As mentioned in the talk this all started because I wanted to learn how emulators work and what better way than write my own.
The talk started off with describing what an emulator is, how it works and then moved on to explaining how to write your own. Eventually we do a little time travel to 1977 and talk about the Telmac 1800 and COSMAC VIP computers and then finally the CHIP8 platform.
After the basics are all covered its Demo Time and I show off my emulator running various ROM images and walk through the code and show off the disassembler and debugger. This is the perfect opportunity to re-explain things like the opcodes and how they work as you step through the CHIP8 instructions showing what they’re disassembled to and what they do.
This talk is aimed to appeal to everyone from junior developers just starting out all the way to the grumpy old farts.
As mentioned in the talk the majority of the emulator was written based on the information in the CHIP8 - Wikipedia Page.
A few tweets with photos from the evening.
"Writing an emulator in .Net Core and #skia" with @dale_nunns at @cptmsdug @XamarinEvents @dotnet @dotnetfdn @MicrosoftSA pic.twitter.com/G17hLvrrLq
— Allan Pead πΏπ¦ #mvpbuzz (@adpead) October 23, 2019
Kicking off with @dale_nunns pic.twitter.com/QLKNVdMTE4
— Brett Miller (@WrathZA) October 23, 2019
Space invaders, Tetris and Blitz for Chip8 in .Net Core ππ. @dale_nunns @MicrosoftSA @XamarinEvents @dotnetfdn @cptmsdug pic.twitter.com/ezVyD9ESBe
— Allan Pead πΏπ¦ #mvpbuzz (@adpead) October 23, 2019
Chip8 Disassembler and debugger in .NET Core @dale_nunns ππ. @cptmsdug @dotnetfdn @XamarinEvents @MicrosoftSA pic.twitter.com/lrFfAON4La
— Allan Pead πΏπ¦ #mvpbuzz (@adpead) October 23, 2019
Links to everything mentioned in the talk
CHIP8 - Wikipedia Page
Telmac 1800
COSMAC VIP
Accuracy takes power: one manβs 3GHz quest to build a perfect SNES emulator
Octo - CHIP8 IDE