Ok, I found the Button on the main screen which overrides the "ignore M01" in the GeneralConfig. And deleted it from the .set file with screen4.exe. It seems like a rather dangerous and not-too-useful button to have.
Unfortunately, I don't know if it was inadvertently clicked, and the cause of my problem. Anyhoo, now M01 stops OK.
However, it doesn't stop on a toolchange gcode command: ie.
T98
for tool #98. In fact, the Tool number displaybox on Mach's main screen always stays at zero. GeneralConfig has ToolChanges set to "stop and wait", as well as another dangerous button on the "Settings" (Alt-6) page is not enabled. Any ideas?