Análisis del Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 28 Nov 2014 14:03

Último mensaje de la página anterior:

pser1 escribió:Hola Luis,

el bin que tu me enviaste es el largo, de 42.240 bytes mientras que el de Ramón es exactamente de 40.000 bytes
De cualquier forma, nuestro fichero de trabajo, genera el bin de 40.000 bytes exactamente aunque con unos cuantos ceros mas por el final.
Los comentarios que añadimos con tu utilidad, recuerdo haberlos revisado y eran coherentes así que por mi parte no veo problema alguno.
Podrías pasar tu utilidad a los dos binarios que tienes ahora (el grande y el corto) y comparar los ficheros de salida que generen cada uno

saludos
pere


El problema que tenia (ya resuelto porque son idénticos si le quitas &h500 bytes de cabecera), es que las rutinas iniciales que hice, las que ponian los LABELS nuevos , al comienzo del proyecto, comparaban y tomaban este BIN como bueno y lo usaban, es mas lo use para varias tablas, usaba el bin en vez de leer el ASM , me era mas facil.
menos mal que todo esta bien

Por cierto te lo envio

Como curiosidad desde la posición &h9400(37888) del HOBBITv4.BIN son ceros pero en este no y hasta el final
Adjuntos
hobbit de nosotros sin cabecera.zip
(27.23 KiB) Descargado 77 veces

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 28 Nov 2014 15:04

@luis

el que me envías es distinto del que se obtiene con el fichero de trabajo V9_08
Y difiere bastante (aparte de la longitud, entiendo que hay alguna área de datos que no cuadra con la situación actual.

Piensa que para conseguir que compilara correctamente tuve que corregir tablas que tenian
DB $00, L_xxxx
y esto es un desastre porqué Pasmo se queda con el byte bajo de la etiqueta perdiendo el byte alto -banghead
Además algunos bloques de datos no cuadraban en longitud por 1 byte.
Pero ahora la V9_08 es exacta al binario de Ramón.
Yo lo dejaría como tema cerrado y a por los comentarios de Chema que son terriblemente interesantes
Estoy seguro de que te encantará patearte la zona de scripts donde he ido añadiendo sus notas y además algunas rutina de proceso de scripts
que ponen los pelos de punta -507

Saludos
pere

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 28 Nov 2014 15:20

pser1 escribió:@luis
el que me envías es distinto del que se obtiene con el fichero de trabajo V9_08
Y difiere bastante (aparte de la longitud, entiendo que hay alguna área de datos que no cuadra con la situación actual.

Si quieres cerramos tema.
Pero son idénticos hasta el byte &h9400 (37800) , prácticamente casi todo esta OK
Después el de la v9_08 o cualquiera dan ceros y este ultimo, que te envié, tiene cosas, pero no importa (es la zona de duplicados), creo que vas muy rápido y no me estas entendiendo, pero bueno, sigamos.

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 28 Nov 2014 16:02

lo que quiero decir es que mientras los 40000 primeros bytes sean iguales, que es el caso, el resto tal como indicas como son copias de datos, no nos han de importar.
Lo importante era conseguir que el fuente compilara
Y luego que fuera igual al original
Pero el resultado es muy alentador, vamos por el buen camino.

¿Se te ocurre alguna tema para atacar?
Chema está empezando a querer poner nombres a las variables (mi sueño!), pero esto va a requerir mucho seguimiento
de código, muchas rutinas y anotaciones sobre la marcha, parece digno de una utilidad
No se si se podría intentar recopilar los puntos de programa en los que son utilizadas las variables (como fuente o destino)
Igual un listado que muestre Etiqueta (de datos)
y tras ella todas las lineas (enteras) de código en que aparece podría ayudar al acotar los puntos donde hay que mirar
para intentar entender para que se utiliza la variable en cuestión

Posiblemente, lo mejor sería pedir un rango de datos a analizar, por ejemplo estos bloques son áreas sin aclarar:
L_7574 - L_7584
L_793D - L_795F
L_8D99 - L_8D9C
L_A210 - L_A243
L_A49C - L_A4BF
L_B6DA - L_B6EA
L_B6EB - L_B707
L_B708 - L_B71E

Igual entrando como parámetros el fuente y dos cadenas tipo:
programa fichero_fuente $7574 $7584
podría bastar para que analizara solamente las solicitadas ... lo digo por evitar que se patee todo de una vez
aunque tampoco le vería un gran problema (solo partir el listado en varias partes)
Antes de lanzarse habría que creerse que con esto podremos avanzar ... sinó no vale la pena el esfuerzo
Ya me dirás que te parece ...

saludos
pere

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 28 Nov 2014 16:10

Bueno pasemos al foro de utilidades, por mi se puede, buscaría todas las lineas que lean o escriban en esas direcciones, no?

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 28 Nov 2014 16:37

OK, cambio de tercio

hasta luego
saludos
pere

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 28 Nov 2014 17:39

hola,

subo nueva versión tras unos cuantos cambios realizados. Se ha empezado a poner nombre alas variables mas usadas en scripts
sigue generando el mismo binario -thumbup


@luis
podemos tomar éste como base para el tema de tu utilidad


saludos
pere
Adjuntos
HOBASM_V9_08b - en obras.asm.zip
(172.96 KiB) Descargado 78 veces

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 28 Nov 2014 18:58

Vale, pero creo que no afecta

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 01 Dic 2014 11:21

Hola,

ya tocaba nueva versión para iros manteniendo actualizados de los cambios que se van haciendo ...

saludos
pere
Adjuntos
HOBASM_V9_08e - en curso.asm.zip
(175.06 KiB) Descargado 94 veces

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 10 Dic 2014 14:41

Hola amigos,

después de comentar y estructurar prácticamente todo lo relacionado con los scripts, es un buen momento para subir nueva versión
del fuente, que sigue compilando y obteniendo un binario idéntico al inicial a pesar de los golpes que se va llevando.

Unas pocas cifras positivas ... sobre objetos ya etiquetados con nombre: -thumbup
- 25 áreas de datos
- 18 variables (ya era hora de empezar con esta parte)
- 83 subrutinas
- 56 partes vinculadas a Scripts

Venga, a ver si alguno mas se anima a echar un cable en el hilo de las consultas técnicas. -please -nb
He enviado allí un mensaje con temas pendientes de estudio

saludos
pere
Adjuntos
HOBASM_V9_09.zip
Versión 9.09
(184.59 KiB) Descargado 87 veces

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 10 Dic 2014 16:34

Tengo ganas de probar una traducción directa a ver que sale se que lo más probable es que sea una pérdida de tiempo, y que el resultado no se aplique, pero no me gustaría dejar de explorar esa ruta y ver que se aprende

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 10 Dic 2014 17:55

Hola Luis,

valiente como siempre ...
puedes empezar por donde quieras ... pero para ver algo tendrás que rascar kilómetros de código ...
Como bien dices, algo aprenderemos en el camino, jejeje

Saludos
pere

Pd. Ya tengo tres bloques de datos nuevos estructurados y con nombres puestos
Si quieres te subo la versión con ésto añadido

Avatar de Usuario
luiscoco
Mensajes: 2337
Registrado: 15 May 2011 04:23
Ubicación: Caracas, Venezuela
Agradecido : 34 veces
Agradecimiento recibido: 46 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor luiscoco » 11 Dic 2014 05:23

Claro, dentro de poco me pongo al día con los scrips y ayudare con otras zonas

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 11 Dic 2014 13:29

Buenos días,

lo prometido es deuda ... adjunto versión nueva con las áreas de datos ya resueltas, a saber:
#D23# trata la búsqueda de palabras para indicar el movimiento elegido por un personaje y/o muestra el estado de un objeto
#D24# resulta ser una tabla de datos para poder hacer resucitar a los Goblins a través de la nueva rutina "CreateNewGoblin"
#D42# contiene rutinas para procesar resurrecciones de personajes / reactivaciones de acciones de otros objetos y la posible muerte de Bilbo

Además he tenido que cambiar el nombre de la rutina GetLocDescPtr por la correcta GetLocExitPtr por un error de apreciación en lo que se cocía
en su interior. Veréis que le suma 7 bytes al puntero a la Localización con lo cual se queda apuntando a nada ...
La descripción tiene offset +8 y el segundo adjetivo offset +6 o sea que entre ambos, pero afortunadamente, al ir nombrando variables ha resultado
que cuando trabajan con un puntero a una tabla de las de 3 bytes (ID+dirección) tienen por costumbre poner el puntero 3 bytes antes del inicio puesto
que siempre le añaden 3 bytes antes de empezar a buscar ...
Como la subtabla de posibles salidas de una Localización empieza en offset +10, resulta curioso, ¿no? En realidad el +7 era para quedarse
3 bytes antes de esta tabla!

Bueno, he decidido liarme la manta a la cabeza y atacar un área maldita: La zona de 8 registros de 25 bytes en L_B738 que está muy relacionada con
el área de 8 bytes en L_7958 y tienen que ver con parseo de las órdenes del usuario (eso espero). A ver que sale de todo ésto!

Saludos
pere
Adjuntos
HOBASM_V9_09c -#23,24,42#.asm.zip
(187.06 KiB) Descargado 89 veces

Avatar de Usuario
Chema
Mensajes: 1975
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 1175 veces
Agradecimiento recibido: 387 veces
Contactar:

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor Chema » 11 Dic 2014 13:47

¡Brutal! Genial trabajo Pere. A ver si das con cómo se hace el parseo, que es un paso importante. Quizás la primera rutina (o serie de ellas) que podría portarse a Dragon a ver cómo queda y que se pueda probar de manera sencilla.

Ahora me has dejado atrás... Tendré que ponerme las pilas :)

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 11 Dic 2014 14:59

después de haber encontrado todo el follón de los scripts ... me sueltas que te quedas atrás, ya será menos -thumbup

Lo que pasa es que, a pesar de lo mucho que estamos currando, cuando buscas cosas en el documento asusta la gran cantidad de etiquetas
del tipo L_nnnn, cosa que implica que no las hemos analizado todavía -banghead

Pero, a base de pasitos, acabaremos la maratón -507

saludos
pere

Avatar de Usuario
pser1
Mensajes: 2224
Registrado: 08 Dic 2012 18:34
Agradecido : 302 veces
Agradecimiento recibido: 327 veces

Re: Fuente The Hobbit V1.2 ASM Z80 ZX Spectrum 48K.

Mensajepor pser1 » 11 Dic 2014 20:28

subo versión de nuevo para quienes deseen echar un cable y mirar el mensaje (que voy subir a continuación)
en el hilo de Consultas técnicas referente a datos

saludos
pere
Adjuntos
HOBASM_V9_09d - numerados datos.asm.zip
(187.04 KiB) Descargado 94 veces


Volver a “Proyecto The Hobbit 6809 por pser1”

¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 1 invitado