[Reparación] Great 1000 Mile Rally, gráficos corruptos
Publicado: Mar Feb 12, 2013 2:44 pm
Este juego me había llamado la atención desde hacía tiempo, me recordó al clásico Neo Driftout de Neo Geo, aunque cabe señalar que este juego salió 2 años antes, pero en su momento no lo conocí.
Surgió la oportunidad de comprarlo en un lote, sin embargo a pesar de que el juego funcionaba tenía barras verticales en todos los layers de fondos. Los sprites se mostraban perfectamente, y el juego era jugable.
Además, tenía daño en un par de capacitores de la sección de audio. Uno fue arrancado - probablemente causado por apilarlas - y el otro se nota que fue resoldado por la parte de arriba después de romperse:
Empecé por resolver el detalle del audio, desoldando el capacitor y los restos de las patitas del que fue desprendido:
Quitar esas patitas siempre es un problema. Lo más fácil es sostener la placa con un soporte o ayudado por otra persona, y utilizar el desoldador d eun lado con la pieza de metal sostenida por unas pinzas del otro lado. Esto con el fin de no tapar la herramienta para desoldar y no dejar el hoyo en la PCB lleno de soldadura.
Si el hoyo llega a quedar tapado, uso uno de varias técnicas. Ya sea la placa sostenida en vertical y utilizar el cautín de un lado y el desoldador del otro, o con una patita de capacitor o resistencia ir avanzando mientra se calienta con el cautín, para después desoldar de manera normal.
En fin, ese problema se soluciono y quedaban los gráficos en todos los fondos del juego. Ya que el problema se encontraba perfectamente delimitado a los fondos, y los sprites siempre se mostraban mal, supuse que tenía que ser una de las siguientes cosas:
1) Algo mal en la lógica de video, ya sea el chip encargado de hacer la mezcla de gráficos o un problema de RAM
2) Algún problema de conexión entre ambas placas, ya que es una PCB de dos pisos unida por conectores.
3) Alguna pista dañada
4) Daño en alguna de las ROMs de gráficos.
La verdad debido al tipo de error, me inclinaba más por 2, 3 o 4. Esperando que fuese la cuarta opción por experiencia previa, y porque suponía sería la más fácil de resolver.
Debido a que se trataba de un aplaca de dos pisos, diagnosticar se hace más difícil pues no se tiene acceso a todos los chips cuando esta funcionando el juego. Mientras romident identificaba el dump de la eprom que extraje del juego, busqué la documentación en el driver de MAME para el Kaneko System 16, para saber si había información de la configuración física de la placa e identificar las ROMs encargadas de los gráficos.
Y como en varias ocasiones, MAME tenía respuestas a mis preguntas. La opcion -romident de MAME me hizo saber que se trataba de la versión USA del juego, conocida como "gtmrusa", y los detalles interesante se contraban comentados en el código, los puntos de interés están marcados con negritas:
Ya desoldada, la reemplacé con una 27C160 de la misma capacidad y pinout. Cabe aclarar que no investigué el pinout de la Mask ROM, sólo asumí que por tratarse de la misma capacidad (basado en los datos arriba presentados) y del mismo número de pines, debía funcionar. Para comprobarlo antes de ponerla en la PCB, realicé un dump de la Mask ROM con mi lector configurado para una 27c160. Sin embargo como los datos no coincidían tome eso como señal de que la Mask ROM estaba dañada. Soldé tiras de pines a manera de base en donde estaba la Mask ROM:
Y ya con los datos grabados, procedí a probarla:
Ahora sólo quiero grabarle un set de la versión europea del mismo juego, cuando consiga unas 27c4001, pues no me gusta mucho tener banderas de estados unidos en la pista en un juego ubicado en Italia...
Surgió la oportunidad de comprarlo en un lote, sin embargo a pesar de que el juego funcionaba tenía barras verticales en todos los layers de fondos. Los sprites se mostraban perfectamente, y el juego era jugable.
Además, tenía daño en un par de capacitores de la sección de audio. Uno fue arrancado - probablemente causado por apilarlas - y el otro se nota que fue resoldado por la parte de arriba después de romperse:
Empecé por resolver el detalle del audio, desoldando el capacitor y los restos de las patitas del que fue desprendido:
Quitar esas patitas siempre es un problema. Lo más fácil es sostener la placa con un soporte o ayudado por otra persona, y utilizar el desoldador d eun lado con la pieza de metal sostenida por unas pinzas del otro lado. Esto con el fin de no tapar la herramienta para desoldar y no dejar el hoyo en la PCB lleno de soldadura.
Si el hoyo llega a quedar tapado, uso uno de varias técnicas. Ya sea la placa sostenida en vertical y utilizar el cautín de un lado y el desoldador del otro, o con una patita de capacitor o resistencia ir avanzando mientra se calienta con el cautín, para después desoldar de manera normal.
En fin, ese problema se soluciono y quedaban los gráficos en todos los fondos del juego. Ya que el problema se encontraba perfectamente delimitado a los fondos, y los sprites siempre se mostraban mal, supuse que tenía que ser una de las siguientes cosas:
1) Algo mal en la lógica de video, ya sea el chip encargado de hacer la mezcla de gráficos o un problema de RAM
2) Algún problema de conexión entre ambas placas, ya que es una PCB de dos pisos unida por conectores.
3) Alguna pista dañada
4) Daño en alguna de las ROMs de gráficos.
La verdad debido al tipo de error, me inclinaba más por 2, 3 o 4. Esperando que fuese la cuarta opción por experiencia previa, y porque suponía sería la más fácil de resolver.
Debido a que se trataba de un aplaca de dos pisos, diagnosticar se hace más difícil pues no se tiene acceso a todos los chips cuando esta funcionando el juego. Mientras romident identificaba el dump de la eprom que extraje del juego, busqué la documentación en el driver de MAME para el Kaneko System 16, para saber si había información de la configuración física de la placa e identificar las ROMs encargadas de los gráficos.
Y como en varias ocasiones, MAME tenía respuestas a mis preguntas. La opcion -romident de MAME me hizo saber que se trataba de la versión USA del juego, conocida como "gtmrusa", y los detalles interesante se contraban comentados en el código, los puntos de interés están marcados con negritas:
Como se puede apreciar, sólo hay una ROM que contiene los tiles para hacer los backgrounds del juego. Por pura corazonada me decidí a desoldar la Mask ROM que contenía estos datos. Es muy raro, pero no imposible, que una Mask ROM falle. En realidad en estos días he aprendido que esta misma falla más bien se debe a otras causas como se detallará en dos logs de reparación más que aún tengo pendientes. Pero en esta ocasión aún esperaba dar con una solución rápida.Great 1000 Miles Rally
Kaneko 1994
TOP BOARD: Z09AF-005
CPU - Toshiba TMP68HC000N - 16
SOUND - OKI M6295 x2
QUARTZ OSCILLATORS AT 27.0000MHz, 16.0000MHz, 20.0000MHz and 33.3330MHz
RAM - LC3664 x6, 424260 x2, LH52B256D x6, D42101C x2
Custom Chips
231609-509 View2-Chip x2
KC-002 L0002 023 9321EK702
9343T - 44 pin PQFP (NEAR JAMMMA CONNECTOR)
BOTTOM BOARD: Z09AF-ROM5
TBS0P01 452 9339PK001 - 74 pin PQFP (NEC uPD78324 series MCU)
GMMU2+1 512K * 2 68k
GMMU23 1M OKI6295: 00000-2ffff + chunks of 0x10000 with headers
GMMU24 1M OKI6295: chunks of 0x40000 with headers - FIRST AND SECOND HALF IDENTICAL
GMMU27 2M sprites
GMMU28 2M sprites
GMMU29 2M sprites
GMMU30 512k sprites
GMMU64 1M sprites - FIRST AND SECOND HALF IDENTICAL
GMMU65 1M sprites - FIRST AND SECOND HALF IDENTICAL
GMMU52 2M tiles
Ya desoldada, la reemplacé con una 27C160 de la misma capacidad y pinout. Cabe aclarar que no investigué el pinout de la Mask ROM, sólo asumí que por tratarse de la misma capacidad (basado en los datos arriba presentados) y del mismo número de pines, debía funcionar. Para comprobarlo antes de ponerla en la PCB, realicé un dump de la Mask ROM con mi lector configurado para una 27c160. Sin embargo como los datos no coincidían tome eso como señal de que la Mask ROM estaba dañada. Soldé tiras de pines a manera de base en donde estaba la Mask ROM:
Y ya con los datos grabados, procedí a probarla:
Ahora sólo quiero grabarle un set de la versión europea del mismo juego, cuando consiga unas 27c4001, pues no me gusta mucho tener banderas de estados unidos en la pista en un juego ubicado en Italia...