mgba-emu / gbdoc

Open Game Boy Documentation Project
https://mgba-emu.github.io/gbdoc/
Creative Commons Attribution 4.0 International
27 stars 1 forks source link

$FEA0 area details are incorrect #3

Open aaaaaa123456789 opened 5 years ago

aaaaaa123456789 commented 5 years ago

The memory map section says:

$FEA0$FEFF: Unmapped (pulled high, reads $FF)

This is not correct; this area is mapped to something. That "something" tends to be its own block of memory, with some very weird timing and aliasing rules; there's no guarantee that you'll read $FF from it (and in fact, you often won't), and the area might even be R/W.

endrift commented 5 years ago

I've conferred with @LIJI32 a bit on this and corrected it some, but it needs more detail.

LIJI32 commented 5 years ago

In short: This area is only readable while OAM is readable (Otherwise it reads $FFs). When it is readable, the value it reads depends on the model and revision: