Oooooo... I hate to be a negative nancy... but I'm a real stickler on technical hacks. This hack does some highly questionable things, and if you don't get the right startup state you can have graphical glitches or possibly crashes. Plus it'll just crash if used as intended.
- You never reset the MMC1 toggle (do a single write of $80 to any MMC1 reg). This should be done in reset before doing anything else MMC1 related.
- MMC1 makes no guarantee as to what bank is swapped in $8000-BFFF at startup, so you either have to move the reset vector to the fixed bank, or duplicate the 'Start' routine so it exists in every bank.
- Since you're swapping 8K CHR pages ... and there's no routine to change to 4K mode .... SwapChrBank1 is completely useless.
- You never actually swap a CHR bank in. Fine if there's only 1 bank, but if someone expands to add more CHR, it might lead to corrupted graphics at startup due to the wrong bank being swapped in (and possibly a crash if Spr-0 hit misses)
- In your CHR swapping routine, you swap to PRG bank 1 (to get more space), but you never swap back to the original bank. So if a hack decides to actually use that routine, if it doesn't manually restore the original bank, the game will
crash. And if the hack calls the routine from the $8000-BFFF swappable region, the game will crash before it even has the opportunity
to swap the original bank back in.
Sorry to be a jerk