See Mr. Challenger patent pdf page 45, source code says:
set R12 (is CS) set R6 (is M0) wait read K reset R6 <-- I assume DATA is still readable here too reset R12
If I do a quick hack in tms6100.cpp(MAME), the jingles and beeps work fine in the game. Otherwise sound is buggy.
I haven't looked at the disassembly, but maybe that's the M0 rising edge for the next byte? The timing diagram from the data sheet shows that the data isn't valid until after the falling edge, but it also shows the next rising edge while the old data is valid.