Code Monkey home page Code Monkey logo

gbemu's Introduction

GBEmu

Important References:

https://gbdev.io/pandocs/

https://problemkaputt.de/pandocs.htm

https://www.pastraiser.com/cpu/gameboy/gameboy_opcodes.html

https://archive.org/details/GameBoyProgManVer1.1/page/n85/mode/2up

https://github.com/rockytriton/LLD_gbemu/raw/main/docs/The%20Cycle-Accurate%20Game%20Boy%20Docs.pdf

https://github.com/rockytriton/LLD_gbemu/raw/main/docs/gbctr.pdf

NOTE: Designed to run on Linux, but you can build on Windows with MSYS2 and mingw-w64

Windows Environment Setup:

Install MSYS2: https://www.msys2.org/

Follow instructions 1 through 7 on the MSYS2 page.

pacman -S cmake

pacman -S mingw64/mingw-w64-x86_64-SDL2 mingw64/mingw-w64-x86_64-SDL2_mixer mingw64/mingw-w64-x86_64-SDL2_image mingw64/mingw-w64-x86_64-SDL2_ttf mingw64/mingw-w64-x86_64-SDL2_net

pacman -S mingw-w64-x86_64-check

After above steps you should be able to build from Windows using MSYS2 just like in the videos.

Build For Original Version

cd build
make
./gbemu.exe
# then you can drag rom to the window to play, asdw for d-pad and jk for ab and enter for start

Build For Wasm Version

# First you should install emsdk for the build
cd build
make clean
make wasm
make deploywasm
cd ../js
# Then you can startup a web server to execute the js code, for simple you can just start a http server by python
like under cmd
python -m http.server

# You can change the rom in the js/single.js

gbemu's People

Contributors

nkapotoxin avatar

Stargazers

Roman avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.