AGB (and CGB-E) handles this memory range differently than the CGB-D (which is what Gambatte seems to be emulating for some reason). Simply, the byte read will have both nibbles equal the third nibble of the address (e.g. a read in FEA0 will return AA), and writes will have no effect. Unsure if keeping around the old cgb code is the best idea, but it can be changed if needed. EDIT: After some talk with entr, getting rid of old revision code seems to be the best option forward.
AGB (and CGB-E) handles this memory range differently than the CGB-D (which is what Gambatte seems to be emulating for some reason). Simply, the byte read will have both nibbles equal the third nibble of the address (e.g. a read in FEA0 will return AA), and writes will have no effect. Unsure if keeping around the old cgb code is the best idea, but it can be changed if needed. EDIT: After some talk with entr, getting rid of old revision code seems to be the best option forward.
Also, porting this code over to Bizhawk should resolve this: https://github.com/TASVideos/BizHawk/issues/1987