Skip to content
/ gamekun Public

Experimental Game Boy emulator written in Elixir

Notifications You must be signed in to change notification settings

jac/gamekun

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

33 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

GameKun

GameKun is an incomplete Game Boy emulator written in elixir.

I wrote GameKun to better learn Elixir and challenge myself by creating an application with many moving parts and lots of state. Ultimately the immutability proved too detrimental to performance and it only ran at ~1fps which is why development was stopped.

If for some reason you want to build the executable, clone the project and run the follow command in the root of the project directory.

mix escript.build

This will generate an executable file. To run the emulator simply use the following command where <path_to_rom> is a path to a .gb rom. The height of the game is 72 characters so you many need to reduce your terminal font size to fit more characters vertically. Otherwise scrolling will occur.

./gamekun <path_to_rom>

Here is an image of the emulator running in my terminal. Only the background layer is implemented so the menu select icon is not shown. There is also no user input or memory banking so few games will run let alone be playable. The instructions should be nearly all be correct although interrupts are broken. The cpu_instrs.gb rom is from Blargg's Test ROMS and is read from by many of the unit tests. Running the test rom itself results in failures followed by a crash.

Mario Title Screen

About

Experimental Game Boy emulator written in Elixir

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages