Note how when ROM size > 2MB or RAM size > 32KB, ROM is mapped to 70-7f|f0-ff:8000-ffff. This is required for Fire Emblem: Torakia 776, otherwise the graphics will be corrupted.
And when you have a ROM size <= 2MB and RAM size <= 32KB, you have to map RAM to 70-7f|f0-ff:8000-ffff. This is required to save your progress in Ys 3: Wanderers from Ys.
Thank Nach for that observation.
while we are at this, byuu, I have a question about LinearMap of cartram (cartrom is understood).
Say a cart has 32k of SRAM, and we map it "linearly" in 64k (0x1000) of memory. what happens if a write occurs at 0xc00? does the cart save the value written there? and how, given it only have 32k of SRAM? or does the upper half (0x800-0x1000) become RAM (i.e. it gets written and read, but not saved at exit)?
this is the last missing bit to make our handling the same as yours...
EDIT: as you can see, I haven't hesitated