Yep you can do most things with JTAG etc, I still don't have a good feel for what exactly you can do and what the tradeoffs are and how intrusive it is. Things like single stepping are mostly great but useless in a time-critical piece of code. You can also get real time streaming of data I think if you go into one wire mode.
preferable to an external custom-made FPGA...
So far all I've added is two flip flops, these will allow me to do what I think is the all-time most useful thing and that is generate a couple of pulses. I still don't think accurate timing and counting is possible with the current tools although I may be wrong. A third output allows you to trigger an LA when data is written to the bus, this will allow the LA to see variable values easily.
There is also access to the extended memory bus and that can be used in future to do the clever stuff if I ever get the urge.
So really almost no added hardware and anybody that's serious will already have a logic analyzer, it's another $100 for an ICE to get JTAG.