├── .github └── FUNDING.yml ├── .gitignore ├── .travis.yml ├── LICENSE ├── README.md ├── docs ├── GBCribSheet000129.pdf ├── GB_CPU_Manual.pdf └── pandocs.htm ├── gb ├── core │ └── core.go ├── cpu │ ├── cb_opcodes.go │ ├── common.go │ ├── cpu.go │ ├── functors.go │ ├── normal_opcodes.go │ ├── registers.go │ ├── serial.go │ ├── timers.go │ └── timing.go ├── input │ └── input.go ├── mapper │ └── mapper.go ├── mbcs │ ├── common.go │ ├── io.go │ ├── iovalues.go │ ├── mbc1.go │ └── romonly.go ├── util │ ├── constants.go │ ├── functions.go │ └── types.go └── video │ ├── background.go │ ├── sprites.go │ ├── video.go │ └── window.go ├── glfw └── glfw.go ├── main.go ├── opengl └── opengl.go ├── screenshots ├── screenshot1.png └── screenshot2.png ├── slides └── Golang Emus.pdf └── test_roms ├── cpu_instrs ├── cpu_instrs.gb ├── individual │ ├── 01-special.gb │ ├── 02-interrupts.gb │ ├── 03-op sp,hl.gb │ ├── 04-op r,imm.gb │ ├── 05-op rp.gb │ ├── 06-ld r,r.gb │ ├── 07-jr,jp,call,ret,rst.gb │ ├── 08-misc instrs.gb │ ├── 09-op r,r.gb │ ├── 10-bit ops.gb │ └── 11-op a,(hl).gb └── readme.txt ├── instr_timing ├── instr_timing.gb └── readme.txt ├── testgb ├── PUZZLE.GB ├── RPN.GB ├── SOUND.GB ├── SPACE.GB ├── SPRITE.GB └── TEST.GB └── workshop.rom /.github/FUNDING.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/.github/FUNDING.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/.gitignore -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/.travis.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/README.md -------------------------------------------------------------------------------- /docs/GBCribSheet000129.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/docs/GBCribSheet000129.pdf -------------------------------------------------------------------------------- /docs/GB_CPU_Manual.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/docs/GB_CPU_Manual.pdf -------------------------------------------------------------------------------- /docs/pandocs.htm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/docs/pandocs.htm -------------------------------------------------------------------------------- /gb/core/core.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/core/core.go -------------------------------------------------------------------------------- /gb/cpu/cb_opcodes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/cb_opcodes.go -------------------------------------------------------------------------------- /gb/cpu/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/common.go -------------------------------------------------------------------------------- /gb/cpu/cpu.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/cpu.go -------------------------------------------------------------------------------- /gb/cpu/functors.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/functors.go -------------------------------------------------------------------------------- /gb/cpu/normal_opcodes.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/normal_opcodes.go -------------------------------------------------------------------------------- /gb/cpu/registers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/registers.go -------------------------------------------------------------------------------- /gb/cpu/serial.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/serial.go -------------------------------------------------------------------------------- /gb/cpu/timers.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/timers.go -------------------------------------------------------------------------------- /gb/cpu/timing.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/cpu/timing.go -------------------------------------------------------------------------------- /gb/input/input.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/input/input.go -------------------------------------------------------------------------------- /gb/mapper/mapper.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mapper/mapper.go -------------------------------------------------------------------------------- /gb/mbcs/common.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mbcs/common.go -------------------------------------------------------------------------------- /gb/mbcs/io.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mbcs/io.go -------------------------------------------------------------------------------- /gb/mbcs/iovalues.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mbcs/iovalues.go -------------------------------------------------------------------------------- /gb/mbcs/mbc1.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mbcs/mbc1.go -------------------------------------------------------------------------------- /gb/mbcs/romonly.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/mbcs/romonly.go -------------------------------------------------------------------------------- /gb/util/constants.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/util/constants.go -------------------------------------------------------------------------------- /gb/util/functions.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/util/functions.go -------------------------------------------------------------------------------- /gb/util/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/util/types.go -------------------------------------------------------------------------------- /gb/video/background.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/video/background.go -------------------------------------------------------------------------------- /gb/video/sprites.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/video/sprites.go -------------------------------------------------------------------------------- /gb/video/video.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/video/video.go -------------------------------------------------------------------------------- /gb/video/window.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/gb/video/window.go -------------------------------------------------------------------------------- /glfw/glfw.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/glfw/glfw.go -------------------------------------------------------------------------------- /main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/main.go -------------------------------------------------------------------------------- /opengl/opengl.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/opengl/opengl.go -------------------------------------------------------------------------------- /screenshots/screenshot1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/screenshots/screenshot1.png -------------------------------------------------------------------------------- /screenshots/screenshot2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/screenshots/screenshot2.png -------------------------------------------------------------------------------- /slides/Golang Emus.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/slides/Golang Emus.pdf -------------------------------------------------------------------------------- /test_roms/cpu_instrs/cpu_instrs.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/cpu_instrs.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/01-special.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/01-special.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/02-interrupts.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/02-interrupts.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/03-op sp,hl.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/03-op sp,hl.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/04-op r,imm.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/04-op r,imm.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/05-op rp.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/05-op rp.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/06-ld r,r.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/06-ld r,r.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/07-jr,jp,call,ret,rst.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/07-jr,jp,call,ret,rst.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/08-misc instrs.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/08-misc instrs.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/09-op r,r.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/09-op r,r.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/10-bit ops.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/10-bit ops.gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/individual/11-op a,(hl).gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/individual/11-op a,(hl).gb -------------------------------------------------------------------------------- /test_roms/cpu_instrs/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/cpu_instrs/readme.txt -------------------------------------------------------------------------------- /test_roms/instr_timing/instr_timing.gb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/instr_timing/instr_timing.gb -------------------------------------------------------------------------------- /test_roms/instr_timing/readme.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/instr_timing/readme.txt -------------------------------------------------------------------------------- /test_roms/testgb/PUZZLE.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/PUZZLE.GB -------------------------------------------------------------------------------- /test_roms/testgb/RPN.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/RPN.GB -------------------------------------------------------------------------------- /test_roms/testgb/SOUND.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/SOUND.GB -------------------------------------------------------------------------------- /test_roms/testgb/SPACE.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/SPACE.GB -------------------------------------------------------------------------------- /test_roms/testgb/SPRITE.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/SPRITE.GB -------------------------------------------------------------------------------- /test_roms/testgb/TEST.GB: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/testgb/TEST.GB -------------------------------------------------------------------------------- /test_roms/workshop.rom: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/drhelius/demo-emulator/HEAD/test_roms/workshop.rom --------------------------------------------------------------------------------