Both of them set the RV bit when they start and clear it on exit, which makes sense, as that can't be done when running from 88xxxx or subsequent ROM bank as those mappings disappear when RV bit is set.
But look at second function, it transfers 8 bytes to $A130F1, what could that be for? Chaotix seems to be using first function with a1 set to $A130F1 and d0 to 0. I assume it's not for accessing the SRAM register?
Does anyone know?
I guess SEGA expected some 32X games to be larger than the usual 4 MB rom space so they included the bank switch code (used by super SF2 game on genesis) as an interrupt function
It writes 8 values to 8 addresses, each two bytes apart - $A130F1, $A130F13, $A130F5, etc. There's an increment of two on the destination address at $EA. This code sets all banks from an array of bank indices.