Port optimizations from Rosa, but 80-column didn’t work last time you tried it in desktop emulator
Need to also mark regions by softswitch and only update those regions when that softswitch changes.
Maybe just have RAM and ROM in an array and have the regions_by_page just be a pointer or an offset (use regions to help initialize ROM areas from the ROM blob)
Attempt to have everything templatized so it can be mostly inlined
Make mainboard in main() a static and not a pointer or put in bus
Templatize on display and audio functions and board array