Skip to content

magia is a toy GBA emulator written in golang.

License

Notifications You must be signed in to change notification settings

akatsuki105/magia

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

45 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Magia

Go Report Card GitHub stars GitHub license

Magia is GBA emulator written in golang.

Warning: This emulator is WIP, so many ROMs don't work correctly now.

exe6g firered

mother12 dqm

Run

Please download latest binary from Release.

$ magia XXXX.gba

Build

# go1.16.x
$ make build
$ ./build/darwin-amd64/magia XXXX.gba

Key

keyboard game pad
← button
↑ button
↓ button
→ button
X A button
Z B button
S R button
A L button
Enter Start button
Backspace Select button

ToDo

  • Window
  • GUI
  • Serial communication
  • GameBoy Compatibility
  • Debug feature
  • Fix some bugs

Game Compatibility List

Game Title Compatibility
バトルネットワーク ロックマンエグゼ2
バトルネットワーク ロックマンエグゼ3 BLACK
ロックマンエグゼ4 トーナメント ブルームーン
ロックマンエグゼ6 電脳獣グレイガ・電脳獣ファルザー
ドラゴンクエストモンスターズ キャラバンハート
MOTHER1+2
ポケットモンスター ファイアレッド

Accuracy

Test Result
Memory tests 1102/1552
I/O read tests 21/123
Timing tests --/1660
Timer count-up tests 326/936
Timer IRQ tests 0/90
Shifter tests 140/140
Carry tests 93/93
Multiply long tests 52/72
BIOS math tests 625/625
DMA tests 964/1256
Misc. edge case tests 5/10

References