So how does this work for CD games? Do you hook an interrupt vector to monitor the game pad port? If you're stalling/pausing the game for disassembly, you could always map a code bank into page $0000 (no commercial games put code banks there) to read from page $4000.
The turbo express uses the gamepad port both for serial communication as well as gamepad controls simultaneously. It first looks to see if there is a single on the port, much-much faster than the gamepad and if detected it reads/writes to it - else just read the data as gamepad input. I don't remember all the details, but it looked like it was replicable on the base systems. Anyway, this is awesome Chris!