- Joined
- Apr 29, 2007
- Messages
- 2,124
- Reaction score
- 82
- Trophies
- 1
- Age
- 126
- Location
- Kikkoman Factory
- XP
- 1,152
- Country

Hi everyone, I've just released emibios, an open, accuracy-focused GBA BIOS replacement.
Originally based on Cult-of-GBA BIOS by Fleroviux and DenSinH, it has been almost completely rewritten from the ground up with accuracy and compatibility as the primary goals.
What is the difference with this BIOS?
I took care to match the behavior and the timing of each software interrupt (SWI) in the BIOS under every tested input. I believe it currently has the highest compatibility of any open BIOS replacement.
I also implemented Multiboot functionality (send and receive programs to/from other GBAs, from accessories, and from GameCube) as well as a subset of sound mixer functionality that is only used in a few Japanese/Digital Eclipse games.
There is also an extensive test suite that exercises each SWI and asserts the behavior/timing under various inputs.
Because care was taken to match not only the behavior of each SWI, but also the timing, it also successfully TAS syncs with many games.
It is not perfect yet, mostly because the tricks used to match timing do not work under all conditions (mostly bus contention from DMA and IRQ). I would love for people to test it and report bugs, and the ultimate goal is to match the retail BIOS 100% for commercial games and most homebrew.
Why do this?
I originally started this project to see if it was even possible, and then ended up with something I was comfortable with releasing. My goal is to create a freely redistributable BIOS so that emulation projects no longer need to require the proprietary one to run games as accurately as possible.
Originally based on Cult-of-GBA BIOS by Fleroviux and DenSinH, it has been almost completely rewritten from the ground up with accuracy and compatibility as the primary goals.
What is the difference with this BIOS?
I took care to match the behavior and the timing of each software interrupt (SWI) in the BIOS under every tested input. I believe it currently has the highest compatibility of any open BIOS replacement.
I also implemented Multiboot functionality (send and receive programs to/from other GBAs, from accessories, and from GameCube) as well as a subset of sound mixer functionality that is only used in a few Japanese/Digital Eclipse games.
There is also an extensive test suite that exercises each SWI and asserts the behavior/timing under various inputs.
Because care was taken to match not only the behavior of each SWI, but also the timing, it also successfully TAS syncs with many games.
It is not perfect yet, mostly because the tricks used to match timing do not work under all conditions (mostly bus contention from DMA and IRQ). I would love for people to test it and report bugs, and the ultimate goal is to match the retail BIOS 100% for commercial games and most homebrew.
Why do this?
I originally started this project to see if it was even possible, and then ended up with something I was comfortable with releasing. My goal is to create a freely redistributable BIOS so that emulation projects no longer need to require the proprietary one to run games as accurately as possible.




