All Projects → binji → pokegb

binji / pokegb

Licence: MIT License
A gameboy emulator that only plays Pokemon Blue, in ~50 lines of c++.

Programming Languages

C++
36643 projects - #6 most used programming language
Makefile
30231 projects

Projects that are alternatives of or similar to pokegb

goboy
Playing GameBoy Emulation in GoLang (ported from https://github.com/racerxdl/GameBoyEmulator)
Stars: ✭ 37 (-96.83%)
Mutual labels:  emulator, gameboy
khedgb
Experiments in Game Boy emulation
Stars: ✭ 15 (-98.71%)
Mutual labels:  emulator, gameboy
worldwide
A toy GameBoy Color emulator written in golang.
Stars: ✭ 563 (-51.72%)
Mutual labels:  emulator, gameboy
jsGBC-core
jsGBC Core Emulator
Stars: ✭ 14 (-98.8%)
Mutual labels:  emulator, gameboy
Kotlin-Gameboy-Emulator
A GameBoy emulator written in Kotlin
Stars: ✭ 12 (-98.97%)
Mutual labels:  emulator, gameboy
gameboi
An Original GameBoy emulator?
Stars: ✭ 20 (-98.28%)
Mutual labels:  emulator, gameboy
awesome-emu-resources
A curated list of emulator development resources
Stars: ✭ 26 (-97.77%)
Mutual labels:  emulator, gameboy
Binjgb
Gameboy emulator implemented in C
Stars: ✭ 222 (-80.96%)
Mutual labels:  emulator, gameboy
redstarbluestar
An upgrade to Pokémon Red/Blue. Ports graphics and features from the Space World 1997 Gold/Silver prototype.
Stars: ✭ 67 (-94.25%)
Mutual labels:  pokemon, gameboy
Hades
🔥 A Nintendo Game Boy Advance emulator
Stars: ✭ 44 (-96.23%)
Mutual labels:  emulator, gameboy
emulators
development methodology software emulators
Stars: ✭ 24 (-97.94%)
Mutual labels:  emulator, gameboy
rusty-boy
Gameboy emulator in Rust
Stars: ✭ 20 (-98.28%)
Mutual labels:  emulator, gameboy
newbark-unity
🌳 A proof-of-concept Pokémon-style Retro RPG game framework created with Unity 🔥🌿💧⚡️
Stars: ✭ 139 (-88.08%)
Mutual labels:  pokemon, gameboy
dashboy
Gameboy Emulator implemented by pure Dart
Stars: ✭ 130 (-88.85%)
Mutual labels:  emulator, gameboy
Rustyboy
A Gameboy emulator written in Rust.
Stars: ✭ 224 (-80.79%)
Mutual labels:  emulator, gameboy
NeoGB-Printer
An open-source and standalone Gameboy Printer emulator 100% compatible with all officially released games (110 in total) that support the accessory. Just print and save the images as BMP
Stars: ✭ 61 (-94.77%)
Mutual labels:  emulator, gameboy
Gopher Boy
🎮 A Game Boy emulator written in Go
Stars: ✭ 206 (-82.33%)
Mutual labels:  emulator, gameboy
Goboy
Multi-platform Nintendo Game Boy Color emulator written in Go
Stars: ✭ 2,403 (+106.09%)
Mutual labels:  emulator, gameboy
SkyEmu
Game Boy, Game Boy Color, and Game Boy Advanced Emulator
Stars: ✭ 59 (-94.94%)
Mutual labels:  emulator, gameboy
gameboyGO
Gameboy emulator in go
Stars: ✭ 24 (-97.94%)
Mutual labels:  emulator, gameboy

pokegb

A gameboy emulator that only plays Pokemon Blue, in ~50 lines of c++.

See the technical write-up.

Features

Plays Pokemon Blue (and Red).

Building

Only builds on Linux and macOS AFAIK.

$ make

On macOS, you'll need to create a save file too (just the first time):

$ make rom.sav

Running

Get a Pokemon Blue (or Pokemon Red) ROM file. The files that are known to work have the following sha1s:

Name sha1
Pokemon - Blue Version (USA, Europe) (SGB Enhanced).gb d7037c83e1ae5b39bde3c30787637ba1d4c48ce2
Pokemon - Red Version (USA, Europe) (SGB Enhanced).gb ea9bcae617fdf159b045185467ae58b2e4a48b9a

Others might work too, but these are the ones that I've tried.

Rename the file to rom.gb and put it in the current directory. Then run:

$ ./pokegb

The save file is written to rom.sav.

Keys:

Action Key
DPAD-UP
DPAD-DOWN
DPAD-LEFT
DPAD-RIGHT
B Z
A X
START Enter
SELECT Tab

Updating keys

Look for line 24 the source. The following table shows which numbers map to which keyboard keys:

number default key gameboy button
27 X A Button
29 Z B Button
43 Tab Select Button
40 Return Start Button
79 Arrow Right DPAD Right
80 Arrow Left DPAD Left
81 Arrow Down DPAD Down
82 Arrow Up DPAD Up

Replace the numbers on this line with one from the SDL scancode list.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].