Jul 052015
 

Got this Pretty Soldier Sailor Moon PCB from my friend Ifog:

Pretty_Soldier_Sailor_Moon_PCB

He told me that gameplay was fine but some of the audio/voice samples were missing or played wrongly.This was confirmed once I fired it up, here’s a brief audio recording:

As beginning of my troubleshooting, for first, I identified the audio digital circuitry:

audio_circuitry_

As you can see from picture above, PCM samples data contained in the two MASK ROMs (40 and 42 pins) are read by two OKI MSM6295 PCM voice synthesis chips (while music is generated by a YM2151).So, I went to probe the MASK ROMs and found that the one @U47 had some address lines stuck as well as the control lines /CE and /OE.

Most of the address lines are directlty connected to the respective OKI MSM6295 chip so I replaced it but with no luck.Instead, I could trace the /CE and /OE lines back to a GAL16V8B @U28.Probing the outputs of this GAL revealed they were all stuck LOW.So. I tried to read it in my EPROM programmer which failed reporting an error:

GAL16V8B.U28_error

I also read and  disassembled it with my dedicated hardware, it was like empty  :

/* Dedicated input pins */

pin 1 = I0; /* Unused input */
pin 2 = I1; /* Unused input */
pin 3 = I2; /* Unused input */
pin 4 = I3; /* Unused input */
pin 5 = I4; /* Unused input */
pin 6 = I5; /* Unused input */
pin 7 = I6; /* Unused input */
pin 8 = I7; /* Unused input */
pin 9 = I8; /* Unused input */
pin 11 = I9; /* Unused input */

/* Input and/or bidirectional pins */

pin 12 = B0; /* Unused input */
pin 13 = B1; /* Unused input */
pin 14 = B2; /* Unused input */
pin 15 = B3; /* Unused input */
pin 16 = B4; /* Unused input */
pin 17 = B5; /* Unused input */
pin 18 = B6; /* Unused input */
pin 19 = B7; /* Unused input */

This confirmed definitively  that the device was bad.At this point the only possibility was taking a good GAL chip from another PCB or dumping and reproducing it.

Luckily my friend Ifog had a same board with a good GAL and he was able to provide me the binay dump which I took care of analysing and reversing it (see my latest PAL updates here).Once programmed a blank GAL16V8 device and fitted it on PCB, all the PCM samples were restored.Job done.

 

 

 Posted by at 9:51 pm