stardot / b-em

An opensource BBC Micro emulator for Win32 and Linux
http://stardot.org.uk/forums/viewtopic.php?f=4&t=10823
GNU General Public License v2.0
112 stars 57 forks source link

ROM configuration/menu breaks a little when enabling tube #147

Closed ZornsLemma closed 3 years ago

ZornsLemma commented 3 years ago

This is with commit d3ac42ea967ac78853cbb60d06a096c58a77a470 (current master).

I haven't investigated too deeply, but here's one series of steps to show a problem. I have a disc in drive 1 with the MAMMFS ROM image on it; I'm not using MAMMFS, this is just a way to test sideways RAM.

I hope that makes sense. I think the underlying issue is that when adding a copro, the newly added sideways RAM bank is lost but the ROM menu isn't updated and after that things are always a bit of sync and confusing. I could accept keeping or losing the newly added sideways RAM bank when adding the copro, but the ROM menu should stay consistent.

SteveFosdick commented 3 years ago

Yes, when adding or removing a co-pro the machine is hard reset, i.e. the model, as defined in the config file, is re-loaded. That means the assignment of RAM vs. ROM is as per the model config.

For some machines that is hard-coded - the Master and B+, for example, have sideways RAM exactly where it would be on a real machine. Most other models have sideways RAM wherever there isn't a ROM loaded.

So that's another place the ROM menu needs to be refreshed.

SteveFosdick commented 3 years ago

Try https://github.com/stardot/b-em/tree/sf/issue147

ZornsLemma commented 3 years ago

Sorry it took me so long to get back to you on this. I've just tried that branch and I can't reproduce this, thanks very much for the quick fix!

SteveFosdick commented 3 years ago

This is now merged.