The bootrom source code here has been adapted from the SameBoy project The MIT license is included in these files.
Bootrom compilation follows the same approach as SameBoy.
The following tools and libraries are required to build bootroms:
The Makefile contains to following targets:
default
compilesdmg_boot.bin
,cgb_boot.bin
andsgb_boot.bin
and concatenates them intocgb_boot.mif
bootroms
compiles alldefault
binaries as well asmgb_boot.bin
,cgb0_boot.bin
andsgb2_boot.bin
checksum
compiles a program to calculate simple checksums of binary filesall
all of the aboveclean
delete all bootroms and object files, as well ascgb_boot.mif
A tool is provided to calculate the checksum of a binary file. These checksums are used in the core to verify if the enhanced boot features are available.
Note: If these bootroms are edited and recompiled in future, the checksums should be recalculated and updated in Gameboy.sv
For convenience, two enhancements have been added to the bootroms which enables the on-screen display to change the default boot behaviour without the user needing to load a new bootrom.
Some of these enhancements extend to alternative roms in the binary folder
Fast boot skips the boot animation for the following bootroms:
cgb_boot.bin
(built-in)cgb0_boot.bin
dmg_boot.bin
(built-in)
The Game Boy Advance had a slightly different CGB bootrom, which enabled special features in a small number of games. AGB emulation is available for:
cgb_boot.bin
(built-in)cgb0_boot.bin
- The original CGB bootrom (not provided)