Thanks - both for the help and the interest in the project.
I'll make the IRQ go into an endless loop, and see what happens. I doubt putting the bankswitch code into page $1f will be possible, as there is not a lot of room in there. All the room I know is good to work with resides from $9cc4 to $9fff, and $a000 to $aeda, since I am eventually re-mapping all level data to WRAM at $6000, and am going to try to put a hook in to load this WRAM with new level data from ROM every time the original code loads a new world number, so essentially, each world can have its own ~8K set of maps (saving some of the WRAM as working storage for my code, of course) and after that I might even put a menu in on startup to allow selection of a set of worlds.
So far, since my last post, I have gotten all the pointers to level data re-mapped, and the game still works perfectly (except, of course, this prior problem that existed before re-mapping). They're not mapped to WRAM yet as I haven't written the WRAM loading code, but it's still an excellent proof-of-concept that I can re-map the level data pointers to anywhere in memory, opening the way for WRAM mapping (one thing at a time is KEY to projects like this!)
I'll keep the forum posted!