055 ¿De dónde vienen las ROMs? Preservación de cartuchos
S01:E55

055 ¿De dónde vienen las ROMs? Preservación de cartuchos

Episode description

En qué consisten los cartuchos de videoconsolas de tipo (principalmente NES), cómo tienen guardados los datos, y cómo con el tiempo se han convertido en archivos compatibles con emuladores.

Y de paso, con qué aparatos puedes hacer tú lo mismo, para preservar tus propios cartuchos: Open Source Cartridge Reader (OSCR), INL Retro USB Dumper, Retrode, o las consolas FPGA Analogue y MiSTer.

No-Intro: https://datomatic.no-intro.org/

Ejemplo de uso del OSCR: https://www.youtube.com/watch?v=coxgx3-tuR8

Sintonías:

https://opengameart.org/content/completion-2a03

https://opengameart.org/content/hyperrealistic-water-2a03

https://opengameart.org/content/ni-idea-2a03-3-n163

Download transcript (.vtt)
0:01

Muy buenas, soy Titanio Verde y estás escuchando Panda Disk System, preservación de videojuegos

0:09

y medios digitales, cultura en peligro de extinción.

0:18

¿Y qué se ha extinguido hoy?

0:20

Algún cartucho de videoconsola al cual se le han oxidado los contactos o se le ha corroído

0:27

la batería y se ha perdido la partida que tenía guardada.

0:35

Los cartuchos de consolas de Nintendo 64 para atrás son muy duraderos.

0:45

Por lo menos el contenido es muy duradero, potencialmente puede durar siglos, pero el

0:55

resto de piezas pueden fallar.

0:59

¿En qué se diferencia de otros soportes?

1:02

Los discos ópticos y las tarjetas flash volátiles.

1:08

Voy a explicar en qué consiste este formato de cartuchos, así sin entrar en mucho detalle

1:15

técnico y cómo se obtiene de ellos un archivo ROM, esos que utilizas en los emuladores.

1:25

Empiezo por el principio.

1:29

¿Hasta dónde he podido entender?

1:32

Los cartuchos de consolas de 8 y 16 bits, entiéndase NES o Famicom, Super Nintendo,

1:41

Sega Master System, Mega Drive, Atari 2600 y de todas esas generaciones, utilizan una

1:51

tecnología muy similar, una placa de circuitería impresa dentro de la cual colocan como mínimo

2:00

un microchip.

2:03

Este microchip se fabrica mediante más Chrome, que originalmente es como una torta, una

2:11

oblea que lo llaman, con un montón de agujeritos que representan los datos del software que

2:20

contiene del juego, en este caso.

2:24

Estos agujeritos servirán para que a la hora de fabricar los chips pase luz de una

2:31

manera microscópica y se grabe dentro del chip.

2:36

Y esto es lo que luego las consolas irán leyendo, de manera que los datos están grabados

2:44

físicamente ahí en el chip.

2:47

Por eso son tan duraderos en comparación con las memorias flash, con las tarjetas SD

2:53

y con los cartuchos de Nintendo DS, 3DS, Vita, Switch, que mantienen los electrones

3:00

atrapados y con el desuso se pueden escapar.

3:06

Eso en un chip no puede pasar.

3:10

Pero claro, era la mejor tecnología que había en ese momento, era cara de producir, excepto

3:19

así en masa, hubo un momento en que era especialmente cara, que fue cuando Nintendo

3:26

optó por usar disquetes en su Famicom Disk System y Sega hizo algo parecido con las Sega

3:34

Cards para Master System, pero lo que se conseguía era una memoria duradera y sobre todo rápida

3:43

y estable, pero especialmente rápida, en comparación con los ordenadores que habían

3:48

en la época, que leían de cintas o de disquetes y tardaban segundos y segundos en cargar cualquier

3:58

cosa, los chips se leían instantáneamente.

4:02

Ahora bien, podían contener bastante menos información.

4:07

Pero bueno, me estoy adelantando.

4:09

Vuelvo atrás.

4:12

Para estos ejemplos me voy a basar principalmente en los cartuchos de NES, que son los que están

4:20

hasta donde he visto mejor documentados, se han explorado de cabo a rabo y hay información

4:29

tanto para su preservación como para programar ROM hacks o incluso juegos nuevos para la

4:35

consola.

4:37

Fue una consola muy popular y la sigue y sigue siendo popular hoy día, así que tiene sentido.

4:45

Aunque me da un poco de lástima no encontrar tanta información sobre Master System, por

4:49

ejemplo.

4:51

Lo dicho, abres un cartucho de NES o de Famicom y lo que encuentras es una placa que lleva

4:58

a como mínimo dos microchips, el CHROM con todos los gráficos y el PRGROM que contiene

5:10

todo lo demás, sonidos, escenarios, mecánicas, físicas, todo.

5:19

La consola se encarga a través de los pines de llegar hasta ese microchip e ir leyendo

5:26

los datos en función del código que se vaya encontrando ahí.

5:31

Ahora leo esta dirección, ahora esta otra, ahora esta otra y voy renderizando todo esto

5:36

en pantalla, voy respondiendo a los controles de esta manera, voy haciendo sonar esta canción

5:41

o este sonido y así 60 veces por segundo o 50 si estás en Europa.

5:49

A partir de cierto año, la manera de aumentar la capacidad de estos chips de ROM era añadir

5:58

más bancos de memoria.

6:01

Para acceder a cada uno de estos, o sea, porque la consola solo podía acceder a uno o a otro

6:07

a la vez, hacía falta otro chip de tipo Mapper para indicarle a cuál debía dirigirse en

6:15

cada momento.

6:17

Vendría a ser lo más parecido a un índice de contenidos de un disco.

6:23

O sea, le va indicando para leer el gráfico de Luigi tienes que ir al banco de memoria

6:27

1, para sacar estos Pokémon tienes que sacar al banco 3 y así sucesivamente.

6:36

Aparte de esto, podían haber más chips, principalmente el CIC que era como una especie

6:45

de licencia por parte de Nintendo.

6:48

Si un cartucho no contenía esa parte, especialmente algún juego que no fuera de Nintendo, significa

6:57

que no es autorizado, que no es licenciado, que es un juego que ha lanzado alguien cualquiera,

7:04

lo ha fabricado a su manera y lo ha comercializado a su manera.

7:08

Nintendo no te va a dar su beneplácito.

7:11

O bueno, no te lo iba a dar en esa época.

7:17

Todo juego licenciado tiene esa partecita, ese CIC.

7:21

Es una tecnología que se ha usado hasta Nintendo 64 y que normalmente es la más difícil de

7:30

descifrar de cara a la emulación.

7:34

Otra parte muy común es la SRAM, que no solo es la más importante para bastante gente,

7:45

sino que es la más urgente a la hora de preservar cartuchos.

7:51

La SRAM es donde se guarda la partida.

7:56

La diferencia con los chips de ROM, que por cierto, para quien no lo sepa, ROM significa

8:03

Read Only Memory, la memoria de solo lectura, la gracia que tienen es esa, que el contenido

8:12

No hay absolutamente ninguna manera de sobreescribirla una vez ha sido empresa.

8:20

Por el contrario, el chip de RAM sí.

8:24

Pero no es una memoria RAM al uso, como la que tiene la consola.

8:30

Bueno, mentira, algún juego sí utilizaba esta parte como una RAM adicional porque no

8:34

tenía suficiente con la de la consola.

8:37

Pero lo más normal es ir guardando las propiedades de la partida actual, el progreso del jugador,

8:43

las puntuaciones, qué niveles tiene desbloqueados, etc.

8:48

Esa tecnología no se empezó a usar hasta después de que saliese Famicom Disk System

8:54

y Final Fantasy la pusiese de moda, ya que era un juego demasiado largo y demasiado amplio

9:04

con muchas posibilidades como para andar tirando de contraseñas, como iban haciendo todos los

9:09

juegos anteriores, aquellos que tenían a bien de dejarte continuar el progreso de alguna

9:16

manera si no esperaban que te hicieses todo el progreso de una tarde.

9:22

El gran inconveniente de los chips de RAM es que son volátiles, al contrario que los

9:29

ROM.

9:31

Se puede contener información, se puede escribir super rápido, pero solo mientras recibe electricidad.

9:39

A los pocos segundos de dejar de recibir electricidad se apagan y su información desaparece.

9:47

Es por eso que este tipo de cartuchos necesitan una batería, una pila de botón normalmente,

9:55

conectada a esta SRAM para ir recibiendo corriente de manera constante.

10:01

Con muy poquita potencia, muy poquito a poco, pero que no deje de recibir corriente.

10:09

Este problema seguro que te lo has encontrado o alguien te lo habrá contado, especialmente

10:15

con cartuchos de Pokémon, que es donde más hemos valorado mantener las partidas guardadas

10:22

de gente que coge un cartucho de Pokémon al cabo de varios años y se encuentra que

10:27

todos sus Pokémon están vacíos.

10:31

Tiene que empezar desde cero.

10:33

En algunas entregas incluso le sale algún mensaje de memoria corrupta, vuelve a empezar

10:40

o no se ha podido leer la información, etc.

10:46

Podía pasar con Game Boy, con Game Boy Advance, con 64, con una pila que, como todas las pilas,

10:54

de temprano se iba a gastar.

10:58

También habían otros cartuchos que, en lugar de SRAM, utilizaban otro tipo de tecnología

11:05

para guardar los datos, conocido como EEP ROM.

11:11

En NES no era común, lo han usado en unos juegos, pero en consolas postereras sí era

11:16

más habitual, igual que en otros tipos de electrodomésticos.

11:22

La ventaja era que no requería batería para mantenerse viva, o sea, se mantenía por sí

11:28

sola.

11:29

El inconveniente es que era más lenta de manejar.

11:34

Había que leerla de manera secuencial, de principio a fin, y para escribirla también

11:40

había que recorrerla desde cero.

11:44

Mientras que lees SRAM podías apuntar a una dirección concreta cada vez y leer solamente

11:49

esa información, así a grandes rasgos.

11:55

En Nintendo 64 y en Game Boy Advance era mucho más común la EEP ROM.

12:03

En algunos casos particulares los cartuchos podían contener más cosas específicas,

12:09

como por ejemplo procesadores adicionales o memoria RAM extra.

12:16

El caso más famoso en Super Nintendo era el chip Super FX, el que utilizaba en sus

12:22

poquitos juegos en 3D como Star Fox.

12:27

Era una manera de ir más allá de la potencia nativa de la consola.

12:33

A ver, admitámoslo, ni NES ni Super Nintendo estaban sobradas de potencia.

12:40

En algunos casos incluso ni se utilizaba el procesador de la consola porque no era suficiente

12:46

y usaban directamente el del cartucho.

12:50

Era una técnica muy flexible, sí.

12:52

Lo malo es que esos cartuchos eran carísimos de la muerte.

12:56

En resumen, lo que ves dentro de un cartucho son chips con datos guardados en crudo, impresos

13:06

una única vez y que no van a ser alterados nunca.

13:12

Mientras tengas la circuitería necesaria puedes leer esos datos.

13:17

Pero es mucho más difícil que con un disquete, un disco óptico o una tarjeta SD porque no

13:24

son formatos estándar.

13:27

No hay lectores estándar para eso.

13:31

Es por eso que la preservación de estos cartuchos es un desafío adicional, el cual paso a explicar

13:39

ahora.

13:41

Y aquí entramos en campo de emulación.

14:16

Para empezar, ¿qué es un archivo ROM?

14:21

Por sí solo, una ROM lo que contiene es los bytes que hubiera en los chips de ROM de ese

14:29

cartucho.

14:31

Los bits que tuviera desde el principio a fin en el orden que estuvieran guardados.

14:37

Como decía antes, los datos ahí están guardados en crudo.

14:43

Esto significa que no hay un sistema de archivos como puede haber en un disco.

14:52

No hay ninguna indicación, así al principio ningún árbol de contenidos, ningún índice

14:59

ni nada que indicase dónde empieza cada archivo.

15:02

O sea, directamente no hay archivos.

15:05

Son todo bits desde el principio hasta el final.

15:10

Entonces luego el propio código máquina del juego el que va indicando en qué dirección

15:16

exacta empieza cada cosa.

15:19

Dónde está cada gráfico, dónde está cada canción, dónde está cada nivel, dónde está

15:26

cada magia, cada arma, cada enemigo, etcétera.

15:32

Todo eso le tiene que ir indicando explícitamente que se encuentra en este byte, en esta dirección.

15:39

Todo eso está guardado tal cual en la ROM.

15:43

Y el archivo de ROM lo tiene que mostrar así tal cual.

15:47

Pero además, para que un amolador lo puede interpretar fácilmente, se le añaden unas

15:54

cabeceras.

15:58

Al menos en el caso de NES, estas cabeceras no se encuentran en el propio cartucho.

16:04

Las han tenido que ir ingeniando los fans o los preservadores por su cuenta.

16:11

Normalmente siguen un estándar llamado INES, vamos para el emulador homónimo, en el cual

16:19

se indican varias propiedades del juego.

16:22

El nombre, qué tamaño tiene, qué características técnicas tiene, por ejemplo si tiene SRAM

16:31

o no.

16:32

Si espera que guarde partidas o no.

16:35

Si tiene algún hardware adicional.

16:38

Cosas así.

16:40

Por supuesto estas características tienen que ser reconocidas por el emulador en cuestión.

16:45

Si el emulador no tiene capacidad para guardar partidas, pues le va a dar igual esa opción.

16:53

Hoy día es muy raro, pero hace 30 años me imagino que sí era importante.

17:00

Además que hoy día tenemos bases de datos completas de presuntamente todos los juegos

17:09

lanzados en el mundo para NES.

17:13

Una de las bases de datos más famosas es NoIntro, en la cual buscas el juego y ahí

17:20

puedes obtener la cabecera.

17:23

En el caso de que tú obtengas tu propia ROM, o sea la obtengas de tu propio cartucho,

17:29

te pasas por NoIntro, buscas ese juego y puedes encadenar esa cabecera que ha encontrado la

17:36

gente con el contenido que tú has extraído del cartucho.

17:42

¿Cómo se extrae esa ROM?

17:44

Esa es la parte interesante.

17:47

Hoy día es bastante fácil si estás dispuesto a comprar algún aparato para esto.

17:55

Aviso legal.

17:58

Estamos hablando solamente de extraer datos de cartuchos que tú posees para tu propia

18:07

preservación, para tener tu propia copia de seguridad, no para distribuir online.

18:16

¡Escerrohoms de manera no autorizada es ilegal!

18:20

No vas a querer arruinar a Nintendo ni a Sega, ¿verdad?

18:25

Tanto para NES como para consolas contemporáneas hay varios aparatos que se conocen como DUMBER,

18:33

a los cuales les insertas el cartucho, los enchufas a un ordenador, abres un programa

18:40

específico que normalmente vendrá incluido o lo descargas de la web oficial de ese aparato

18:47

y empieza a recibir los datos.

18:50

Va leyendo el chip que hay dentro y va bajando todos esos bits tan valiosos y te los va guardando

18:57

en una ROM compatible con cualquier emulador.

19:01

También podrá operar con la SRAM, tanto leer el contenido que hay dentro, para guardarte

19:07

como mínimo una copia de seguridad de dos partidas, como para sobreinscribirla.

19:14

Lo cual es interesante, es un caso muy habitual con cartuchos de Pokémon que se quieran guardar

19:21

una copia de sus Pokémon para luego cambiarle la batería antes de que se agote por completo.

19:29

Entonces, pues le reemplaza la batería, en ese tiempo la SRAM ya se habrá vaciado y

19:35

con este programa y este DUMBER le vuelven a sobreinscribir la SRAM y a la vuelven a

19:42

tener como antes, restaurándose y su partida.

19:47

Un par de ejemplos de aparatos así de la vieja escuela son INL RETRO USB DUMBER y RETRODE.

19:57

Ambos funcionan más o menos igual, los enchufas por USB, abres este software y operas de esta

20:03

manera.

20:06

Una alternativa más moderna, creo que salió en 2020, 2021, por ahí, es el OPENSOURCE

20:14

CARTRIDGE READER, para los amigos Oscar, el cual pues está basado en Arduino, pero lo

20:25

puede, o sea, si tienes un Arduino lo puedes montar por tu cuenta, pero el web oficial

20:32

está también montado por su propia cuenta y tiene un diseño bastante mono para mi gusto

20:39

e incluye ranuras pues para NES, Super NES, Mega Drive, Master System, Game Boy, Nintendo

20:47

64 e incluso un puerto para un mando de Nintendo 64 y guardar de un memory pack metido en

20:58

un mando, las tarjetas de memoria de la 64. Lo bueno de este aparato es que es autónomo,

21:06

puedes operar ahí y guardar en una tarjeta SD que le introduces ahí directamente, la

21:12

pantalla es bastante clara, los controles son bastante claros y bueno, hay muchos vídeos

21:18

de YouTube demostrando su uso, nos pinta muy bien, cualquier día me compro uno, si

21:25

todavía tuviera cartuchos que conservar, jeje. Otra manera moderna es con consolas

21:33

de tipo FPGA, consolas retro como la MISTER o las ANALOG, las que aceptan cartuchos de

21:40

verdad, también pueden tener utilidades para extraer la ROM, se guardará, me imagino,

21:49

la propia memoria de la consola, la tarjeta que le introduzcas y con eso también tienes

21:57

tu propia copia de seguridad, o sea hoy día es bastante fácil y seguramente te darán

22:06

ayudas para obtener las cabeceras para las ROMs que estás obteniendo, además al menos

22:14

en el caso del OSCR te pondrá el voltaje correcto para estos cartuchos, que esto es algo muy

22:22

importante si vas a utilizar aparatos más viejos o te lo vas a montar por tu cuenta

22:27

de alguna manera, mira como mínimo que voltaje utilizan estos cartuchos, aunque la regla

22:34

es por lo general hasta donde he visto, Game Boy Advance y Nintendo 64 usan 3,3 voltios

22:41

y todas las demás, las de Nintendo y las de Sega, 5 voltios, otras consolas menos populares

22:50

pues supongo que irán también por ese rango pero eso, busca antes de arriesgarte, sí

22:57

puede pasar con cartuchos piratas, flashcards, no autorizados, no licenciados, etcétera,

23:05

que puedan usar algún voltaje distinto que no lo cojan del todo bien, ahí supongo que

23:13

mejor usa un tester o investiga antes de introducirlo en ninguna parte, si utilizas un voltaje

23:20

superior al autorizado puedes correr el riesgo de quemar el chip y que ya no se pueda volver

23:26

a leer, no quieres que suceda eso, aparte de vigilar el voltaje ten las mismas precauciones

23:35

que al tocar cualquier circuitería, vigila que no tengas electricidad estática en las

23:42

manos, que no tengas nada que pueda corroer los metales o oxidarlos o demás y por favor

23:52

no le soples, por mucho que lo hayamos hecho todos, que todos lo hayamos soplado a los

23:59

cartuchos de NES o de Game Boy cuando dejan de funcionar, eso en realidad es contraproducente,

24:05

lo que hace es oxidar los contactos con el tiempo, no le soples, en caso de dudas coge

24:13

un bastoncillo de algodón, le echas un poco de alcohol y se lo pasas y con eso ya limpias

24:19

prácticamente todo, como mucho no te pases limpiando, no estés ahí media hora frotando,

24:27

también se supone que puedes usar papel de lija pero con eso le puedes quitar la superficie

24:34

dorada de los contactos, así que tampoco lo veo recomendable, salvo si está muy manchado.

24:44

Aparte de eso, ¿qué dificultades te puedes encontrar al extraer una ROM? Pocas, estos

24:52

aparatos suelen funcionar bien, suelen funcionar fácilmente y obtienen un 100% de fidelidad

24:59

de los datos, los va leyendo uno por uno, no hay canal analógico ni nada de por medio

25:06

que pueda alterar datos, siempre y cuando los contactos estén limpios, lo dicho, si tienen

25:14

alguna mancha, alguna sociedad, algo que provoque interferencias, entonces sí va a haber problemas

25:19

para leer los datos o si el chip está oxidado o lo que sea, y poco más que contarte, sobre

25:29

preservar juegos en discos ópticos, en soportes magnéticos, en tarjetas volátiles, ya hablaré

25:39

otro día, si me apetece, aunque discos ópticos es mucho más fácil que esto ya que tener

25:48

un lector de discos ópticos en ordenador es muy común, bueno hoy día no tanto, pero

25:55

siguen existiendo, se siguen fabricando como mínimo lectores de DVD y de Blu-ray que puedas

26:01

enchufar por USB, de hecho si no tienes uno y no tienes nada mejor que comprar ahora mismo,

26:08

busca uno, antes de que terminen de desaparecer o suban más de precio, nunca está de más,

26:15

y bueno, si eso, pues, ya grabaré otro día, me voy a tomar un largo descanso, no sin antes

26:23

recordarte que si quieres que algo te dure toda la vida, presérvalo, da igual en qué formato se

26:29

encuentre, hasta pronto.