A point worth noting; using feedhold stops the program at the end of the line it's on within the main program. So if that line is M98 P5 L100, and p5 takes 5 minutes, you will have a long wait for it to actually stop.
No, that is not true. FeedHold stops as quickly as it conveniently can. It does not wait until the end of the current move. Sometimes it will stop quickly sometimes it may take a few seconds, but it absolutely WILL stop before reaching the end of any particular move. Try entering a long, slow move on the MDI line, or in a file, and execute it, then press FeedHold. You'll see it does indeed stop mid-move.
Regards,
Ray L.