...
By searching the two application banks for OS_Mgb calls we can find where the code determines the current running bank. Using this it determines which slot it is running from and combines this information with the static bank numbers when switching banks.
This patching task was complicated by the WordFinder bank switching code being situated before the executable entry point, nestled in between the two Application DORs. My initial disassembly starting at file offset $01D1 (entry point) had missed this, wasting a lot of time.
...