So I was trying this evening to fix a strange bug in Laser Squad : the game does not work correctly if you insert a RAM expansion in your MSX (game crashes after you select the map).
I first suspected the usual problems (RAM detection error, subslot issue, etc...). Checked the code, debugged on openMSX, everything seemed OK.
After several hours of head scratching and tests, I noticed that the game was working if the RAM expansion has no mapper ("WTF, that's an MSX 1 game !"). I then searched the game code and found those lines:
inc d ex af,af' dec d ld a,00FH out (0FEH),a ld hl,0B114H push hl jp L4330
So the game is writing 15 to memory mapper port 0FEH! I checked the Spectrum version, the code is identical here.
Wondering what that was intended for? Maybe a debug port on Spectrum (or this port has a specific function), and the developpers forgot to remove this code for the MSX version ?
Anyway, just wanted to let you know of that (might be interesting to check for people doing Spectrum ports).