BubbleNES
BubbleNES copied to clipboard
NES emulator written in Go
BubbleNes
A Nes emulator written in Go.
https://github.com/badbubble/BubbleNES/assets/25291611/7565fafd-8183-43ce-91cd-ff655f10b374
Install
Requirements
# MAC
brew install sdl2{,_image,_mixer,_ttf,_gfx} pkg-config
# Ubuntu
apt install libsdl2{,-image,-mixer,-ttf,-gfx}-dev
for other operating systems you can see this
Build
git clone [email protected]:badbubble/BubbleNes.git
cd BubbleNes/
go mod tidy
go build -o BubbleNes
Play
./BubbleNes NES_GAME_PATH
Game buttons
Keyboard | joypads |
---|---|
W | Up |
S | Down |
A | Left |
D | Right |
P | Start |
O | Select |
K | A |
L | B |
Features & TODOs
- CPU emulation:
- official instructions
- unofficial instructions
- tracing
- PPU emulation
- Cartridge emulation
- Mappers
- MAPPER_000
Still working on:
- [ ] Mapper_001
- [ ] Mapper_002
- [ ] Mapper_003
- [ ] Mapper_004
- [ ] Mapper_005
- [ ] APU
- [ ] Game Saving
- [ ] Online multiplayer
- [ ] Cheat mode
- [ ] Change sdl2 to a better 2d game engine
Tests
nestest
Official | Unofficial |
---|---|
![]() |
![]() |