Discussion about software development for the old-school Gameboys, ranging from the "Gray brick" to Gameboy Color
(Launched in 2008)
You are not logged in.
Hi,
I've been watching videos featuring multicarts and I've noticed something: once a game has been selected, it will reset the Gameboy to the bootrom:
https://youtu.be/oHtt52kp884?t=433 (At 7:13)
I know it resets to the bootrom and not to a copy of it that's embedded in the cart because on another video featuring a DMG hardware clone, it resets to the clone's own bootrom:
https://youtu.be/0pmZOE95o80?t=894 (At 14:54)
Does someone here know how this works? I thought it wasn't possible as there's no way to access the bootrom after it's been disabled by writing to $FF50 without power cycling the Gameboy.
Thanks in advance!
Offline
According to the Pan Docs, writing non-zero to FF50 disables the boot room, so presumably, writing 0 will enable it.
Offline
I'm pretty sure you can't write to $FF50 again after the bootrom writes to it
Offline
It pulls the /RESET line (pad 30) on the cartridge bus low for a short period of time, which resets the CPU. This restores the boot ROM, but also restarts CPU execution from address 0 (in the boot ROM). So this cannot be used to dump/access the boot ROM, because it's essentially the same as turning on the power for the first time. (Maybe it could be done using short pulses that would glitch the CPU, but at least it can't be done with a normal reset pulse.)
Offline
Ah I see, that makes sense! So it does it in hardware rather than software, I should have thought about that. Thanks!
Offline