I finally got a good dump from the TMC0355 in MrChallenger, so I posted that info, too: www.seanriddle.com/tmc0270.html

I've dumped TMS6100s and TMC0430s before, so I figured the TMC0355 wouldn't be too hard, but it gave me some trouble. It outputs 4 bits at a time instead of 1 bit like the other chips I've dumped, but that was easy to fix. But it looks like it is using an internal oscillator that I couldn't figure out how to disable, which gave my PIC-based dump hardware issues.

If I tried to clock it with the PIC, it mixed its clock with mine and bytes were skipped. If I left its clock disconnected or tied low, no data came out. If I tied it high, then data came out, but because I wasn't clocking it, the M0/M1 signals I sent to load addresses and read nibbles weren't synced. For large stretches of bytes, everything was OK, but occasionally nibbles were missed.

I was going to have the PIC sync to the ROM's clock, but the datasheet says that the M0/M1 edges need to be within 1 uS of the clock, which is pretty tight. So first I checked 144 of the dumps that I had made with the clock tied high, and found that 27 of them matched. I examined that data and figured out it was a simple dictionary of the words the game uses; top of ROM has 2-byte pointers to the words, which are stored 0=A, 1=B, ..., 25=Z, with the high bit set on the last letter. I wrote a program to make sure the data was consistent, so I'm sure the dump is good. I can decap the chip and visually compare if needed.