Skip to content
Saku Kaarakainen edited this page Aug 30, 2016 · 13 revisions

Welcome to the WinBoyEmulator wiki!

I write here stuff related Game Boy and emulation. At the moment I don't maintain this. I am focusing the actual work of game boy emulation. On the future I may write here How to: write (Game Boy emulator).


1.1 Specsing

CPU

  • Run, Reset - methods
  • Registers as properties
  • Instruction set

Instruction set

I haven't decided how to implement it. I think the memory must be implement first.

Memory

See IMemory.cs/Memory.cs interface/class from the source

GPU

At the moment I am doing (almost) exatcly like http://imrannazar.com/GameBoy-Emulation-in-JavaScript:-GPU-Timings https://github.com/Two9A/jsGB/blob/master/js/gpu.js It's javascript version, so it's fairly easy.

1.2 Sources

Sources I have used:

Game Boy CPU Manual
http://marc.rawer.de/Gameboy/Docs/GBCPUman.pdf

Gameboy CPU (LR35902) instruction set
http://www.pastraiser.com/cpu/gameboy/gameboy_opcodes.html

Z80 OP Code for ZINT
http://www.z80.info/z80code.htm

Z80 CPU User Manual - Zilog
https://www.zilog.com/appnotes_download.php?FromPage=DirectLink&dn=UM0080&ft=User%20Manual&f=YUhSMGNEb3ZMM2QzZHk1NmFXeHZaeTVqYjIwdlpHOWpjeTk2T0RBdlZVMHdNRGd3TG5Ca1pnPT0=

VBA - a GameBoy Advance emulator
https://github.com/visualboyadvance/visualboyadvance

RealBoy
https://realboyemulator.wordpress.com/

CrystalBoy Game Boy Emulator
https://github.com/GoldenCrystal/CrystalBoy