Port del AGD de Z-80 a 6809

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 28 Ago 2018 19:41

Último mensaje de la página anterior:

Y ahora vayamos a por la versión mas reciente …
En el zip adjunto encontraréis dos carpetas, una "CoCo" y otra "Dragon"
Ambas contienen los binarios PM3 y PM4 que se pueden usar directamente en cualquier emulador (supongo)
Además incluyen un disco (DSK para CoCo y VDK para Dragon)
Vamos a lo práctico. Los POKEs de vidas extra son ahora:
- PMODE3: POKE&H2788,99
- PMODE4: POKE&H276E,99

Obviamente, podéis poner la cifra que deseéis asumiendo que la pantalla seguirá mostrando la tercera cifra (ya inexistente)
cuando os queden menos de 100 vidas …

saludos
pere
FOG0T2.ZIP
(98.23 KiB) Descargado 61 veces

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 28 Ago 2018 19:52

¡Pa' la saca!

Los gráficos PM4 caerán, de hecho, debería haberte pasado ya la nueva versión PM3; pero un bug de última hora en el conversor me ha frenado un poco. Los siguientes, los monocromos adaptados. Tomo nota de lo de la pantalla 26.

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 28 Ago 2018 20:21

jltursan escribió:¡Pa' la saca!
Los gráficos PM4 caerán, de hecho, debería haberte pasado ya la nueva versión PM3; pero un bug de última hora en el conversor me ha frenado un poco. Los siguientes, los monocromos adaptados. Tomo nota de lo de la pantalla 26.

Espero que no sea demasiado grave el problema ...
Gracias por plantearte el tema del PM4, ganará mucho también

Por cierto, le pasé el fuente a Kees y me dijo que ya incluyó el código que yo convertí en los eventos de usuario en el compilador
Así que en nada podremos empezar a utilizar el AGDX para hacer juegos de cero -thumbup
Por supuesto si aceptamos que Foggy ha implicado convertir el 80% del motor AGD, pues todavía falta algo para tenerlo liquidado
A ver que programa de combate a tiros me propone para tomarlo como siguiente juego a convertir ...

saludos
pere

Avatar de Usuario
minter
Mensajes: 4826
Registrado: 22 Jul 2014 18:51
Agradecido : 6762 veces
Agradecimiento recibido: 2602 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor minter » 29 Ago 2018 10:43

Lo que comento es anecdotico.
He tenido que jugar con la versión de Coco ya que anteriormente estaba jugando con la de Dragón pero no me fijé que estaba emulando el 64 además que cargo la ROM de DOS para controladora de discos.

No se si esto desplaza algunas partes del programa y por eso no me funcionaban los POKES como debían y por consecuencia me hacía esas cosas raras comentadas anteriormente con las vidas.

Esta noche jugué en modo 3 y tiene su encanto, ahora que ya se calcular los saltos. El problema lo tengo con mi portatil, que no aguanta la emulación mas allá de 15 minutos hasta que peta por alta temperatura.

La pantalla de inicio en Coco modo 3 me salen algunos caracteres raros, pero no se si es cosa mia o que tiene algun grafico aún sin asignar.

La jugabilidad es impresionante. Como comentaba anteriormente, parece nativo de Dragón.

El Kees debe de estar flipando con el trabajo que os estáis pegando. Un 20% para finalizar ya es pecata minuta. :D

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 29 Ago 2018 12:37

minter escribió:Lo que comento es anecdotico.
He tenido que jugar con la versión de Coco ya que anteriormente estaba jugando con la de Dragón pero no me fijé que estaba emulando el 64 además que cargo la ROM de DOS para controladora de discos.
No se si esto desplaza algunas partes del programa y por eso no me funcionaban los POKES como debían y por consecuencia me hacía esas cosas raras comentadas anteriormente con las vidas.

Yo pruebo con XRoar emulando un Dragon 64 (obligatorio!) y con unidad de discos para cargar el programa desde el VDK
Los pokes tal como los puse en la última versión funcionan *siempre*
Esta noche jugué en modo 3 y tiene su encanto, ahora que ya se calcular los saltos. El problema lo tengo con mi portatil, que no aguanta la emulación mas allá de 15 minutos hasta que peta por alta temperatura.
La pantalla de inicio en Coco modo 3 me salen algunos caracteres raros, pero no se si es cosa mia o que tiene algun grafico aún sin asignar.

Uso XRoar para emular CoCo, 64k por supuesto y en PM3 no veo caracteres raros por ninguna parte. Si te aparecen de nuevo, sube un pantallazo
por favor ... gracias!
La jugabilidad es impresionante. Como comentaba anteriormente, parece nativo de Dragón.
El Kees debe de estar flipando con el trabajo que os estáis pegando. Un 20% para finalizar ya es pecata minuta. :D

Yo sigo 'picado' por los cambios de velocidad que no recuerdo en que versión se empezaron a producir.
Ahora me toca tratar de optimizar algunas zonas de código para reducir espacio ocupado / reducir ciclos de reloj y luego vendrá el tema
del sincronismo con la frecuencia de cuadro (/FS) que me da la impresión de que no furrula porqué podría ser que esté utilizando mas ciclos de los que hay entre dos interrupciones de borrado vertical (50 por segundo = 20mseg)
En fin, veremos en que acaba todo esto. El próximo juego va a ser de tiros, láseres o lo que sea que permita completar el 'motor'
saludos
pere

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 29 Ago 2018 13:16

Acabo de probar una 'reducción' de 82 bytes de código, que son bastantes y he probado en XRoar
con Dragon64K y PMode3.
He llegado al final sin 'problemas'
FInalPM3.jpg
FInalPM3.jpg (53.36 KiB) Visto 2266 veces

saludos
pere

Avatar de Usuario
minter
Mensajes: 4826
Registrado: 22 Jul 2014 18:51
Agradecido : 6762 veces
Agradecimiento recibido: 2602 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor minter » 29 Ago 2018 15:15

pser1 escribió:Uso XRoar para emular CoCo, 64k por supuesto y en PM3 no veo caracteres raros por ninguna parte. Si te aparecen de nuevo, sube un pantallazopor favor ... gracias!


Pues ahí va. Sin meter Pokes ni nada. Me salen esos DOSES tan raros. -shock

Presentacion M3 FOG0T2CM3.JPG
Presentacion M3 FOG0T2CM3.JPG (72.15 KiB) Visto 2458 veces


EDITO:
Ah! Por lo que veo, a tí también te salen. -grin

Imagen

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 29 Ago 2018 17:00

-rofl
Esos "doses" tan raros los he corregido un poquito en la última versión de los gráficos que todavía no le he hecho llegar a Pere, sorry!

Una vez lo ví en pantalla, me dí cuenta que resultaban ser "doses" y que no conseguían tener buen aspecto; es lo que tiene tener un sólo color y 4 píxeles de ancho (hablando de la fuente claro) -banghead

Con esta versión la cosa ha mejorado exponencialmente, de hecho, el único problema es el ya mencionado del sincronismo tal como dice Pere. De todas formas no veo por qué se manifiesta como lo vemos, supongo que es la forma en la que está implementado y el Dragon proporciona la información la responsable -shock

De paso, ya he conseguido descubrir que naranjas era una "basurilla" que seguía viendo en la pantalla de la flor que se emplea como plataforma para llegar a las nubes. Arriba a la izquierda se encuentran los "bricks" un objeto. Creo recordar que los objetos se tratan como sprites, ¿no?, pintando con EOR; de ser así, el objeto se mezclaría raro.

Finalmente, confirmame por favor, cuales eran los requisitos para cada familia de gráficos:

FUENTE: tiles 4x8, sin rotaciones, fondo verde y tinta roja.
BLOQUES: tiles 4x8, sin rotaciones y "full color".
OBJETOS: tiles 8x16, sin rotaciones y EOR $AA.
SPRITES: tiles 8x16, con 4 rotaciones a la derecha y EOR $AA.

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 29 Ago 2018 19:35

Y un reporte de bug:

Al dinamitar la entrada a la pirámide y bajar, hay dos enemigos que no se mueven pero asustan, más abajo tendremos que usar los "bricks" para alcanzar la llave. Al usar los "bricks" el enemigo de la derecha se corrompe, da la impresión de que los ladrillos tambien se han EOReado sobre él.

Aquí el snapshot antes de entrar a la pirámide. Sólo hay que usar la bomba, bajar y usar los ladrillos.

BeforeEnteringPyramid.zip
(30.95 KiB) Descargado 43 veces

De paso ya aprovecho la sugerencia de cambiar el color del inventario. Descartando el azul/amarillo original nos quedan con suficiente contraste:

- rojo/amarillo
- amarillo/azul
- amarillo/rojo

A gusto del consumidor... :-)

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 29 Ago 2018 20:47

jltursan escribió:Con esta versión la cosa ha mejorado exponencialmente, de hecho, el único problema es el ya mencionado del sincronismo tal como dice Pere. De todas formas no veo por qué se manifiesta como lo vemos, supongo que es la forma en la que está implementado y el Dragon proporciona la información la responsable -shock

Ya veremos como se puede evitar este problema, de momento relegado como última prioridad
De paso, ya he conseguido descubrir que naranjas era una "basurilla" que seguía viendo en la pantalla de la flor que se emplea como plataforma para llegar a las nubes. Arriba a la izquierda se encuentran los "bricks" un objeto. Creo recordar que los objetos se tratan como sprites, ¿no?, pintando con EOR; de ser así, el objeto se mezclaría raro.

Muy bien visto!
Ya os dije que como he 'añadido' una función para tirar objetos de forma que ya no se vean mas, hay que saber en que casos emplearla ...
Los bricks se pintan como bloques y además luego los tiran, y como yo llamo a DrpOb pues se ven donde no deben!
Lo cambiaré por DrpObI y problema resuelto.
Aprovecho tu texto:
Finalmente, confirmame por favor, cuales eran los requisitos para cada familia de gráficos:
FUENTE: tiles 4x8, sin rotaciones, fondo verde y tinta roja. ------ OK (color modificable)
BLOQUES: tiles 4x8, sin rotaciones y "full color" --------------------- OK (colores fijos en diseño!)
OBJETOS: tiles 8x16, sin rotaciones y EOR $AA --------------------- OK (deben llegar ya con el fondo azul, pues no se aplican cambios)
La diferencia con los objetos es que debo añadirles 9 bytes al final de cada uno, por lo que lo 'ideal' es que me los envíes
de forma que cada objeto ocupe una fila en lugar de cuatro (32 bytes) -thumbup
SPRITES: tiles 8x16, con 4 rotaciones a la derecha y EOR $AA --- OK (igual que antes en lo que respecta a color de fondo)
saludos
pere

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 29 Ago 2018 21:49

El caso es que me pasó también algo muy raro pero no he sido capaz de reproducirlo. Más o menos a la misma altura y a partir de un instante dado, cada vez que podía usar el inventario, el gráfico de Foggy cambiaba, cuando salía del inventario volvía a su ser. Ocasionalmente también creo que lo acompañaba algún otro cambio en la pantalla.

Muy raro, seguiré insistiendo a ver si doy con algún patrón.

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 30 Ago 2018 18:03

Hola,
con esta versión, espero haber ya recuperado el máximo posible de espacio para funciones todavía no convertidas por no ser utilizadas
en el juego Foggy. Ni que decir tiene que lleva la última versión de gráficos PM3 de José Luis Tur
Os subo un zip que contiene los dos binarios (PM3 y PM4).
Con los cambios realizados, los pokes han cambiado bastante de lugar:
PM3 - POKE&H2509,99
PM4 - POKE&H24F4,99

Para los que les gusta conocer los entresijos …
En la versión FOG0S0 (creo que la última que subí) quedaban libres 4.537 bytes
Se me ha ido la pinza y he decidido eliminar la única llamada a la ROM de Basic que había (lectura global de teclado)
así que he añadido algo de código, pero a cambio ahora TODA la RAM baja es mia -drinks
Esto me ha permitido mover la mayoría de variables a la primera página de RAM (entre $0000 y $00FF)
De esta forma todos los accesos de lectura / escritura en dichas variables se realiza usando direccionamiento directo que solo requiere un byte
en lugar de dos (el $00 de delante es gratuito) reduciendo también un ciclo de reloj en cada operación.
Un montón de trabajo para que ahora queden libres 5.248 bytes. O sea solamente he reducido 711 bytes de código, algo es algo!
saludos
pere
FOG0U1-RetroWiki.ZIP
(28.27 KiB) Descargado 57 veces

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 30 Ago 2018 18:13

La parte negativa es que esta conversión la he hecho demasiado orientada al 6809 y en algunos
casos me he tomado la libertad de modificar el orden en que se envían los parámetros desde los eventos
de usuario a las funciones del 'motor' AGD, generalmente las posiciones X-Y que en el bendito sistema Z80
suelen estar invertidas por aquello de que cargando HL con posXY y luego grabando en dos variables contiguas en memoria
llamémosles posX y posY pues resulta que la coordenada X que está en H acaba en la variable posY y la coordenada Y que está en L
acaba en la variable posX, maravilloso para hacerse la #~% un lío -banghead
Ya podrían haber nombrado las variables al revés y sería mas comprensible. Desgraciadamente yo he invertido el orden en los eventos
pero Kees me dice que esto, al ser generado por el compilador en C, vendrá así de mal para todas las máquinas.
Resultado, espero que me facilite un fichero AGD ya hecho en 6809 para pegarlo al motor convertido y a pelearme modificando el
motor de marras para que se entienda con el generador de código.
A todo esto, fijaros que Kees ya ha conseguido crear código 6809 con el generador de aventuras, solo tuve que enviarle el fuente
de una versión y el separó el motor por una parte y los eventos por otra, para meter las instrucciones tipo en el programa C -thumbup
saludos
pere

jltursan
Mensajes: 5619
Registrado: 20 Sep 2011 13:59
Ubicación: Madrid
Agradecido : 990 veces
Agradecimiento recibido: 2040 veces
Contactar:

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 30 Ago 2018 19:55

Buen trabajo, efectivamente ya no aparece el problema de los "bricks" en la pirámide. Ahora mismo sólo soy consciente del problema del sincronismo -drinks

Por otra parte habrá más gráficos, me he colado con uno de los gráficos de tuberia y no encaja -banghead. Por otro lado Foggy ya se mueve como toca cuando va a la izquierda y los cristales y llaves se han intentado encajar un poco al color sugerido por la descripción. Se me ocurre que igual podemos cambiar el literal "Key pink" por "Key purple", se ajustaría más a la realidad :-)

Avatar de Usuario
minter
Mensajes: 4826
Registrado: 22 Jul 2014 18:51
Agradecido : 6762 veces
Agradecimiento recibido: 2602 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor minter » 30 Ago 2018 21:58

y mientras vosotros avanzáis con la conversión, yo soy incapaz de avanzar en el juego. -banghead

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 30 Ago 2018 22:33

minter escribió:y mientras vosotros avanzáis con la conversión, yo soy incapaz de avanzar en el juego. -banghead

Por favor, descárgate el walkthrough que comentó José Luis y utiliza el POKE para darte 99 vidas.
Es casi imposible no terminarse el juego con tanta info y tantas vidas -thumbup
saludos
pere

Avatar de Usuario
pser1
Mensajes: 4094
Registrado: 08 Dic 2012 18:34
Agradecido : 1352 veces
Agradecimiento recibido: 1118 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 30 Ago 2018 22:40

jltursan escribió:Buen trabajo, efectivamente ya no aparece el problema de los "bricks" en la pirámide. Ahora mismo sólo soy consciente del problema del sincronismo -drinks
Por otra parte habrá más gráficos, me he colado con uno de los gráficos de tuberia y no encaja -banghead. Por otro lado Foggy ya se mueve como toca cuando va a la izquierda y los cristales y llaves se han intentado encajar un poco al color sugerido por la descripción. Se me ocurre que igual podemos cambiar el literal "Key pink" por "Key purple", se ajustaría más a la realidad :-)

Se puede probar, ¿Porqué no?
De momento nos hemos pegado un castañazo de narices con el fuente que genera el sistema automático.
No funciona casi nada … y sin entrar en el tema de coordenadas …
El texto inicial va bien, pero luego al presentar localizaciones se arma un lio de mil demonios.
En fin, paciencia, ya podrían utilizar el 'convenio' que yo he adoptado para 6809 en lugar de quererlo unificar todo
A fin de cuentas el código se genera para cada máquina en 'case' aparte por lo que no dolería tanto que fuesen líneas
específicas para 6809, en fin ya veremos como acaba esto.
saludos
pere


Volver a “Software Dragon”

¿Quién está conectado?

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