Reparar cartuchos Sega con chips BIOS antiguos
Por una razón u otra, [Dragao] tiene un viejo cartucho de Sonic The Hedgehog que arroja una instrucción ilegal en algún lugar del escenario Marble Zone. Aunque la causa de esta instrucción ilegal probablemente sean los rayos cósmicos, no está tan claro cómo reparar este cartucho. Sin embargo, se puede hacer usando chips BIOS de una computadora vieja.
[Dragao] Tuve la idea de arreglar este cartucho de carritos de rayos de Game Boy. Estos cartuchos usan chips que son una interfaz paralela simple a la dirección y las líneas de datos de la CPU de Game Boy, y una tarjeta flash Sega Genesis / Mega Drive funcionaría de la misma manera. El problema era encontrar chips flash DIP antiguos que funcionaran. Finalmente encontró algunos chips de 8 bits de ancho en el circuito base de una computadora vieja y, apilando los chips, tenía un chip Flash de 16 bits de ancho.
Para programar las fichas, [Dragao] conecté todo a un Arduino Mega, coloqué una ROM en el chip y lo conecté al viejo cartucho Sega. Sorprendente o sorprendentemente, todo funcionó, y ahora [Dragao] tiene una copia completamente funcional de Sonic The Hedgehog.
Mark Sherman dice:
¡Fresco!
Creo que si comparas una basura de la ROM rota con la basura funcional, solo habría 1 dirección rota; tal vez incluso solo 1 bit se rompe. Probablemente podría conectarlo, por lo que usa el lado bajo (o alto, donde no esté el defecto) del chip ROM original y una sola ROM de 8 bits para reemplazar la salida del lado roto.
De hecho, si es solo 1 bit roto, es posible que pueda tener alguna lógica que fuerce uno de los bits hacia arriba o hacia abajo si y solo si la dirección defectuosa está en el bus.
Robson Couto dice:
Hola,
Cuando obtuve el juego, el problema estaba solo en un cinturón de canicas, pero antes de reemplazar el chip la semana pasada no era nada bueno. El logotipo de la sierra no se mostró correctamente y los mensajes sobre "instrucción ilegal" aparecieron solo después de reiniciar. No hay forma de usar el chip antiguo.
w dice:
¿Podría un evento de radio cósmico causar un problema constante como este?
Josh dice:
Lo que corrompe el hardware en el espacio solo necesita un golpe desafortunado para lanzar un transistor. Sin embargo, obtienes muchos más golpes en el espacio.
w dice:
Lo sé, pero ¿causa el mismo problema en el mismo transistor * cada vez que inicia el juego? Parece poco probable.
Las interacciones de radio cósmica son básicamente aleatorias, ¿verdad?
mcncugget dice:
Una vez que se invierte ligeramente, es un trato hecho. No se vuelca. Estos son chips de rayos, solo se necesita un rayo cósmico para lanzar el bit, luego permanece lanzado incluso por ciclos de energía.
Yarr dice:
Bueno, no lo son. Casi todos los cartuchos de juegos de los años 90 y anteriores son ROM de máscara o, en casos raros, EPROM. De ninguna manera la radio cósmica puede afectar permanentemente a ambos tipos de ROM.
Brian dice:
Los rayos cósmicos pueden afectar permanentemente a la EPROM, pero no estoy seguro acerca de las ROM de máscara. Teniendo en cuenta que puede eliminar las EPROM con luz ultravioleta, debe realizarse con algo de radiación iónica. La única diferencia entre la EPROM de limpieza UV y la EPROM normal es el embalaje.
Mate dice:
De hecho.
Aunque estos chips probablemente no sean chips relámpago. Si los rayos cósmicos fueran los culpables, esperaría, porque el chip era un PROM (como un EPROM, menos la ventana de limpieza). Se fabrican en masa (en blanco) y se programan más tarde, lo que significa que es más barato de usar que una ROM de máscara, especialmente si usa el mismo chip / placa / etc. para todos tus juegos. He visto gente capaz de borrar algunas PROMS (aunque se supone que es imposible) al golpearlas con radiación gamma que puede penetrar la caja del chip, a diferencia de los rayos UV. Si es así, algún rayo UV aleatorio podría haberlo golpeado un poco y fue suficiente para estropearlo.
Alternativamente, estos chips son viejos y es posible que la carga utilizada para programar esto haya pasado a través de las puertas del transistor con suficiente tiempo para leerse incorrectamente. Esto también es más probable si es cierto que se han dañado otras cosas, ya que esto indicaría un problema en más de un área aislada.
Es posible que el chip incluso haya empeorado simplemente porque estaba peor. He oído hablar de chips lógicos antiguos (de algunas marcas) que son comunes en las reparaciones de salas de juegos que tienen pines muertos por cualquier motivo y que a menudo se encuentran protegiendo buenos chips en la parte superior. Incluso vi terminales de IBM que tenían placas de ram con chips soldados deliberadamente uno encima del otro, de modo que si un pin fallaba o las señales del chip comenzaban a debilitarse lo suficiente como para no hacer las transiciones entre alto y bajo, el compañero del chip podría detectar el relajación y en su lugar empujar las señales.
Una vez leí sobre los fabricantes de chips que intentaban cortar chips al azar, mejorando enormemente la limpieza de su conjunto, creyendo que era causado por pequeñas cantidades de elementos radiactivos (¿como el carbono 14?), Solo para descubrir que las liberaciones fueron causadas por rayos cósmicos (y que la solución era hacer las piezas más grandes y más difíciles de atrapar, o más y menos impactantes). Esta falta de limpieza en los chips anteriores podría causar problemas con los chips de mayor densidad, como los arietes, y es posible que el problema no aparezca de inmediato, pero los transistores pueden fallar con el tiempo. Esto sería algo interesante de explorar, y será interesante ver si los chips modernos no se pueden usar en algún momento en un futuro lejano. ¿Alguien sabe de algo que cubra esto?
Greenaum dice:
Es casi seguro que enmascara una ROM. Sonic 1 fue el juego de paquete para el Megadrive. Hicieron decenas de millones de copias, tal vez cientos de millones. Usar un poco menos de tinta en la etiqueta ahorraría suficiente dinero para comprarle a alguien un auto nuevo. No molestarán a PROM cuando una máscara sea mucho más barata.
¿Pueden los rayos cósmicos dañar la ROM de una máscara? No lo sé, tal vez realmente enérgico. Mask-ROM es un conjunto de diodos, ¿verdad? Es más difícil destruir un diodo que interrumpir una pequeña carga estática en una EPROM. Aún con millones de cartuchos en el mundo podría suceder. Lo más probable es que sea electricidad estática.
También hay transistores en la lógica de selección de línea de decodificación de direcciones en la ROM. Quizás uno de esos se fue.
jeff dice:
¡Simplemente reiniciar el chip original podría haber funcionado!
Sprite_tm dice:
Probablemente no. Los cartuchos comerciales para sistemas de esa época están basados en ROM de máscara en un 99,9%.
Gerardo dice:
Solo me preguntaba ... ¿Descartó los datos del chip del cartucho antiguo en nuevos chips flash? Pero si algunos datos fueran dañados por los rayos cósmicos, los mismos datos dañados también tendrían que ser copiados. Entonces, ¿el problema probablemente no fueron los datos dañados o me falta algo?
Genki dice:
Probablemente descargó la ROM para programar EPROM con. Probablemente no se descarte el chip defectuoso original.
CRJEEA dice:
Una buena metáfora de la vida, a veces hay que ser un sombrerito gris.
Robson Couto dice:
Hola, no sé cuándo surgió esta historia de radio cósmica.
Puse una nueva imagen ROM en los chips flash, sin descartar la anterior.
Justicia_099 dice:
Este podría ser un buen momento para señalarles a las personas que al usar memorias de algún tipo, el orden real de los datos o las líneas de dirección no es particularmente importante si el chip está programado en el mismo orden mixto. En algunos casos, esto simplifica su cableado cuando hace placas de 1 capa.
Esto también se usó como una técnica de seguridad simple en hardware muy antiguo (no lo había visto en mucho tiempo) con procesadores personalizados para los cuales no se podían obtener las hojas de datos. Mezclarían la dirección y las líneas de datos y si intentaras releerlo con el pinout del flash / ram / eeprom, terminarías con un binario mixto.
Siempre que su procesador esté conectado con el mismo patrón mixto, no notará la diferencia.
SavannahLeón dice:
Un poco triste, como todos olvidan, lo que alguna vez fueron ideas comunes como esta.
Me di cuenta de esto desde el principio al ensamblar circuitos de una sola vez. Algunos scripts de Perl que actúan como "traductores de bits y direcciones" se encargan del resto de la cadena de herramientas y de mi tiempo soldando puentes en placas de dos caras casi a cero.
Clorf dice:
¿Cuál es la diferencia entre este truco y las reproducciones de juegos que puedes encontrar en todas partes? Un amigo mío creó y me dio unos carritos de sierra génesis con rones sin licencia y juegos picados en el interior; Los carros fueron una vez juegos minoristas que reemplazaron sus roms con nuevos eproms con otros juegos en su interior. Existe una comunidad completa de usuarios que han realizado reproducciones de juegos transformando juegos baratos y comunes en juegos raros y costosos utilizando el método descrito en este truco. Quiero decir, este truco es un procedimiento muy antiguo y común.
Robson Couto dice:
Es un asno inteligente.
La diferencia es que creé todo esto yo solo con un bote de basura, sin conocer su "comunidad completa", y no solo lo compré.Justicia_099 dice:
-2 por esa respuesta. ¡Ven ahora!
Era una pregunta válida. No ha dejado su trabajo. Le preguntaron cuál era la diferencia sobre eso, y su segunda oración fue una buena respuesta. No se llamó a la designación.
Probablemente haya disuadido a mucha gente de responder a este artículo.
Robson Couto dice:
Entiendo, solo cálmate.
No estoy orgulloso de mi frase, pero creo que lo que dijo en la última línea vacía por completo mi trabajo.
Mira mis otros comentarios, no soy el idiota aquí. Simplemente no quiero que nadie "llueva en mi playa".
Estoy muy feliz de estar aquí por primera vez y de intentar responder a todas las preguntas que muestran lo que podría ser mejor en mi trabajo con una buena respuesta.
Leo aquí todos los días y casi nunca comento, no hay necesidad de decir cosas malas sobre algo que creo que es fácil o que no es la invención del siglo.
Creo que lo que desanima a la gente son los comentarios con odio.
Clorf dice:
Perdóname por no molestarme en dejar tu trabajo; Estoy un poco sorprendido de que su procedimiento no se haya manejado antes en La-Tecnologia. Tiene razón cuando dice que la principal diferencia es quitar partes de computadoras viejas, aparte de eso, no es la primera vez que veo reutilización de eprom antiguas para reparar o modificar cartuchos de genesis, pero la forma habitual es utilizar eprom nuevas.
Además, el truco del sándwich eprom es una forma genial de aumentar el tamaño de un cartucho, mi amigo hizo un sándwich para que coincidiera con el ekidna en sonic the hedgehog rom en sonic the hedgehog cart (también tuvo que reescribir el pad extra en uno de los enlaces gratuitos en el encabezado de la carta).Robson Couto dice:
Lo siento, realmente no lo logré de esa manera, mis disculpas.
No uso eproms porque, si no me equivoco, necesitan un voltaje más alto del que Arduino puede manejar en sus salidas.
Tampoco son fáciles de encontrar y son caros donde vivo.Gregkennedy dice:
Realmente, la mayoría de las EPROM necesitan una fuente de + 12v para la programación.
Si tuviera una fuente de alimentación de + 12v, podría usarla para alimentar Vpp (con un controlador) y aún usar el Arduino para controlar los pines de dirección / datos. Cuando todavía había puertos paralelos, construí un programador EPROM que usaba el puerto paralelo + contadores binarios para manejar las líneas de dirección, y luego un bloque de alimentación externo proporcionaba los + 12v necesarios para programar el voltaje.
Robson Couto dice:
Hola chicos, gracias por publicar esto.
No conoces mi felicidad de ver mi trabajo aquí.
¿Podrías arreglar mi nombre? "Dragao" simplemente significa "Dragón" en portugués, ya que mi página parece "Dragón sin llama"
Gracias.Coronel Panick dice:
Si mal no recuerdo, el 27c322 es adecuado para estos carros, ofrece 4 MB y ya funciona a 16 bits. Para juegos más pequeños, puede comprar chips más pequeños como el 27c160, o recortar / atar las líneas de direcciones no utilizadas en alto.
Robson Couto dice:
Suena muy bien, lo notaré.
Pero si no me equivoco, estos chips necesitan más de 5V de Arduino para ser programados, también necesitan que se elimine la luz ultravioleta, por lo que la depuración llevaría mucho tiempo. Y vivir en Brasil no ayuda, no encontramos estas cosas fáciles (y no un poco baratas) aquí y ordenar en eBay puede llevar meses.
Entonces tuve que improvisar con lo que tenía.Coronel Panick dice:
Es cierto, VPP es 12 o 12,5, creo. Tenía un clon chino de Willem y un adaptador de 16 bits de eBay mientras me divertía con ellos. ¿Me las arreglé para estropear una rom y se sienta en una caja hasta que obtengo un raspador uv chino barato?
Probé algo similar hace unos años con un par de plcc 49f040s revelados por circuitos base antiguos, usando otro circuito base para reclutar el chip bios y usar el programa flashrom dos. Terminé fallando y protegiendo el proyecto después de pintar un tablero grabado en polvo y no me di cuenta hasta que soldé los circuitos integrados.
Gregkennedy dice:
O duplicar la ROM: pon los 2mb allí dos veces por 4mb.
copiar / b rom.img rom.img doubled_rom.img (o similar)Coronel Panick dice:
Podría publicar el carrito "dev" que pirateé con más fuerza en la-tecnologia .io uno de estos días. Soldé en un enchufe y corté algunas pistas que conecté a interruptores, lo que me permitió cambiar el tamaño de la rom a 1,2,4 mb y elegir los bancos. Es difícil, pero funcionó lo suficientemente bien como para reproducir una copia de darxide con el código de región modificado a NTSC: D
David Maas dice:
Aunque probablemente no pueda pasar el cinturón de mármol. ¡Los juegos de Soundwave son difíciles!
Bob Szymanski dice:
¡Buena cosa!
Casualmente, pero ayer terminé un carrito de NES con estos mismos chips. (39SF020A). Escribí al desarrollador y lector en C para el Arduino Mega 2560. De hecho, compré estos chips para ese propósito en Mouser, así que si está buscando más, tienen muchos suministros. Miré el código de su grabadora y el nuestro es casi idéntico, pero elegí usar una tarjeta SD en lugar de Serial. ¡Buen trabajo!
Jordán dice:
necesita nuestra ayuda https://www.youtube.com/watch?v=RsEccnwkr3A