Nick Wessing

Bio coming soon...



Hardware Education Through Game Boy Emulation

You can write code but do you understand how the processor actually executes it? Let’s learn about hardware by taking a look at the Nintendo Game Boy. This talk will follow me on my journey to write a Game Boy emulator. We will learn how the system works and techniques for writing low-level code.

I wrote a Game Boy emulator in an effort to learn a new language (Rust) and to learn systems level programming. The process was enjoyable and I learned a variety of things I would like to share with the developer community. Many developers do not know how the hardware that runs their code actually works. This talk combines low-level programming topics with an interesting subject matter (video games). The Game Boy happens to be great machine to study since it is so simple compared to the computers of today.

Some topics I will touch on:

  • CPU registers
  • Instructions and opcodes
  • Memory mapped I/O
  • Rendering graphics