Lector cabeceras .TAP y .Z80

Emuladores y aplicaciones que ayudarán a la perpetuación del Spectrum y su software en el futuro

Moderador: Sir Cilve Sinclair

Responder
Avatar de Usuario
papalapa
rst 0
Mensajes: 17
Registrado: Lun Jun 03, 2019 8:23 am
Ubicación: Can Fanga

Lector cabeceras .TAP y .Z80

Mensaje por papalapa » Mié Jun 10, 2020 10:24 am

Tengo una cantidad ingente de ficheros .TAP y .Z80 para el Spectrum y los nombres de ficheros MS-DOS al ser de máximo 8 caracteres son crípticos.

He abierto algunos ficheros con el Notepad buscando una cabecera o campo que llevara el título del juego pero no he encontrado nada. ¿Hay algún programa de gestión de este tipo de ficheros que al crear el database extraiga el título del juego? ¿Quizás alguno que se conecte a Internet y con el CRC del fichero muestre el título del juego?

zup
Freddy Hardest
Mensajes: 666
Registrado: Vie Ago 15, 2008 2:43 pm

Re: Lector cabeceras .TAP y .Z80

Mensaje por zup » Mié Jun 10, 2020 3:52 pm

A un fichero .tap lo máximo que vas a poder sacarle es el nombre que muestra detrás de "Program:". A un .z80 ni eso.

En cuanto a lo del CRC... vamos por partes:
- Existen al menos dos bases de datos llenas de CRCs para ficheros de ROMs. Una la tienes en el MAME (es un xml gigante) y la otra la puedes descargar de TOSEC.
- Las dos bases de datos tienen el mismo problema: no reconocen cualquier CRC, sino solo los que las organizaciones consideran que son válidos. Es decir, que un fichero .z80 descargado de WoS es muy posible que figure en la base de datos de TOSEC, pero si tu estás jugando en ZX Spin y sacas un snapshot del juego vas a crear un fichero que no figura en ninguna base de datos.
- ¿Herramientas? Para tratar con los ficheros de TOSEC yo uso principalmente romcenter. Otra opción es usar clrmamepro, pero este es más puñetero a la hora de utilizarlo con ficheros .dat específicos (eso sí, es imbatible con MAME).

Además de esto, si tienes Linux yo te recomendaría usar este script para juntar ficheros .dat. La base de datos de TOSEC es muy buena, pero tiene el inconveniente de que está muy desgranada por categorías y formatos de fichero, lo que significa que tienes más de 40 ficheros diferentes para comprobar tu CRC. Con este script puedes unir varios y así te llevará menos tiempo comprobar el CRC.

(Estaría bien una utilidad por línea de comandos que le indiques un fichero y un .dat para que lo busque... es más rápido que crear una base de datos en romcenter y clrmame).
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start...

Avatar de Usuario
papalapa
rst 0
Mensajes: 17
Registrado: Lun Jun 03, 2019 8:23 am
Ubicación: Can Fanga

Re: Lector cabeceras .TAP y .Z80

Mensaje por papalapa » Mié Jun 10, 2020 7:12 pm

zup escribió: Mié Jun 10, 2020 3:52 pm A un fichero .tap lo máximo que vas a poder sacarle es el nombre que muestra detrás de "Program:". A un .z80 ni eso.

En cuanto a lo del CRC... vamos por partes:
- Existen al menos dos bases de datos llenas de CRCs para ficheros de ROMs. Una la tienes en el MAME (es un xml gigante) y la otra la puedes descargar de TOSEC.
- Las dos bases de datos tienen el mismo problema: no reconocen cualquier CRC, sino solo los que las organizaciones consideran que son válidos. Es decir, que un fichero .z80 descargado de WoS es muy posible que figure en la base de datos de TOSEC, pero si tu estás jugando en ZX Spin y sacas un snapshot del juego vas a crear un fichero que no figura en ninguna base de datos.
- ¿Herramientas? Para tratar con los ficheros de TOSEC yo uso principalmente romcenter. Otra opción es usar clrmamepro, pero este es más puñetero a la hora de utilizarlo con ficheros .dat específicos (eso sí, es imbatible con MAME).

Además de esto, si tienes Linux yo te recomendaría usar este script para juntar ficheros .dat. La base de datos de TOSEC es muy buena, pero tiene el inconveniente de que está muy desgranada por categorías y formatos de fichero, lo que significa que tienes más de 40 ficheros diferentes para comprobar tu CRC. Con este script puedes unir varios y así te llevará menos tiempo comprobar el CRC.

(Estaría bien una utilidad por línea de comandos que le indiques un fichero y un .dat para que lo busque... es más rápido que crear una base de datos en romcenter y clrmame).
Muchas gracias por la completa explicación. En un retroPC tengo xubuntu instalado así que probaré el script e intentaré identificar las ROMs cruzando los dedos para que estén en alguno de los dos databases.

zup
Freddy Hardest
Mensajes: 666
Registrado: Vie Ago 15, 2008 2:43 pm

Re: Lector cabeceras .TAP y .Z80

Mensaje por zup » Mié Jun 10, 2020 9:56 pm

Si son pocas, puedes usar cualquier programa para generar el CRC y luego compararlo usando type nombre.dat | find "CRC". Las herramientas tipo romcenter vienen bien cuando tienes directorios llenos de ficheros sin identificar.

De hecho, podrías hacer una búsqueda en todos los ficheros .dat al mismo tiempo con este comando (Windows):

Código: Seleccionar todo

for %z in (*.dat) do type "%z" | find "1a2b3c4d" >> resultado.txt
(suponiendo que tu CRC sea 1a2b3c4d, en resultado.txt deberías encontrar el nombre)

Para calcular CRCs yo suelo usar RapidCRC. Por otra parte, si te gusta Linux se puede hacer un script que calcule los CRC o MD5 de los ficheros y luego los compare contra una serie de ficheros dat...
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start...

Avatar de Usuario
papalapa
rst 0
Mensajes: 17
Registrado: Lun Jun 03, 2019 8:23 am
Ubicación: Can Fanga

Re: Lector cabeceras .TAP y .Z80

Mensaje por papalapa » Vie Jun 12, 2020 10:45 am

zup escribió: Mié Jun 10, 2020 9:56 pm Si son pocas, puedes usar cualquier programa para generar el CRC y luego compararlo usando type nombre.dat | find "CRC". Las herramientas tipo romcenter vienen bien cuando tienes directorios llenos de ficheros sin identificar.

De hecho, podrías hacer una búsqueda en todos los ficheros .dat al mismo tiempo con este comando (Windows):

Código: Seleccionar todo

for %z in (*.dat) do type "%z" | find "1a2b3c4d" >> resultado.txt
(suponiendo que tu CRC sea 1a2b3c4d, en resultado.txt deberías encontrar el nombre)

Para calcular CRCs yo suelo usar RapidCRC. Por otra parte, si te gusta Linux se puede hacer un script que calcule los CRC o MD5 de los ficheros y luego los compare contra una serie de ficheros dat...
Gracias por la información. La verdad es que las ROMs que más me interesaban ya las tengo identificadas (habrá unas 100 en total) y las tengo en .TZX para usarlas con el TZXduino que tenía hasta ahora.

El follón ha venido al comprar el DivIDE porqué no carga .TZX ya que de hecho son ficheros de audio y tampoco hay forma fácil de converrtir .TZX a .Z80 o TAP debido a que algunos .TZX usan rutinas de carga no estandar. Entonces lo que he hecho es bajar una compilación de ROMs que contiene más de 10.000 pero es un coñazo ir buscando una por una porqué los nombres de fichero son de 8 caracteres y no siempre es fácil. Yo pensaba que instalando algún programa tipo MAME él ya sabía que ROM era cada fichero con su .DAT propio pero parece que es más complicado que eso...

zup
Freddy Hardest
Mensajes: 666
Registrado: Vie Ago 15, 2008 2:43 pm

Re: Lector cabeceras .TAP y .Z80

Mensaje por zup » Mié Jun 17, 2020 8:40 am

Si es el fichero que yo creo (una ISO), busca el fichero GAME.DAT. Ahí está la base de datos de los juegos, que relaciona el nombre del fichero con el nombre descriptivo... aunque no es demasiado de fiar.
I have traveled across the universe and through the years to find Her. Sometimes going all the way is just a start...

Responder

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 5 invitados