It is supported officially in Matrix Brandy, and you're right, it is not supported in RISC OS. It is noted that the behaviour is different to the BBC Micro, in that &7C00 always refers to the top left character cell even after scrolling, whereas the BBC does clever tricks with the screen memory wrapping to speed up text scrolling.Richard Russell wrote: ↑Wed Aug 12, 2020 10:48 pmI'm not sure if this is a bug or a feature, or even if Matrix Brandy's 'virtualising' of MODE 7 to address &7C00 is officially supported (ARM BASIC doesn't do it AFAIK), but there's a difference in how it behaves compared with BeebEm as you can see below. I discovered this when experimenting with MODE 7 sprites for pixelblip:
I see the difference here being that the BBC stores the unshuffled character, Matrix Brandy stores the shuffled character value when the high bit isn't set. I can fix this (not straight away as I'm away on holiday) but the array it's reading holds the values by the screen update code and GET(x,y) so I would rather not change that - most likely I'd shuffle in the read and write memory calls for that address block.