Port del AGD de Z-80 a 6809

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 04 Jul 2018 19:46

Último mensaje de la página anterior:

jltursan escribió:En fin, que poco a poco. El ejercicio de convertir Foggy parece muy interesante ya de por sí, en Dragon (o CoCo) no hay cantidades ingentes de esos plataformas.
El C64 no está soportado en el AGD,...ni otros muchos equipos. Lo bueno que tiene el AGD es que con unos cambios muy concretos se puede migrar a nuevas plataformas y luego beneficiarse de mucho software. Al C64 le pasa lo que a otros equipos con sprites hardware, que la lógica cambia bastante y complica un poco la migración.

Hola José Luis,
desconozco el interés que pueda tener ahora mismo por el C64, pero en su momento Simon Jonassen estaba muy metido en este mundo.
Después de liarse con el CoCo2-Dragón y ahora ya de lleno con el CoCo3 no sé si querrá apuntarse al proyecto ...
Y sé que le gustan los 'retos imposibles'
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: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor luiscoco » 04 Jul 2018 20:05

Que interesante Pser1, ya me lo leo

Avatar de Usuario
Chema
Mensajes: 1854
Registrado: 21 Jun 2012 20:13
Ubicación: Gijón
Agradecido : 928 veces
Agradecimiento recibido: 326 veces
Contactar:

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor Chema » 04 Jul 2018 21:29

dancresp escribió:
pser1 escribió:Los colegas de Oric podrían usar también su trabajo

chema, llaman a la puerta !!! ( con voz de Pedro Picapiedra)


Qué interesante está este hilo! No me cabe duda de que portar el motor al Oric es factible, aunque habría que ver si se puede hacer para que vaya tan rápido como el original.

El problema con él Oric es el modo gráficos, donde los bloques de 1 byte no representan 8 pixels, sino 6. Eso hace que sea necesario rehacer todos los gráficos, además de complicar las rutinas de pintado.

Lo más inmediato es reducir el tamaño de los gráficos para que ocupen los mismos bytes que el original, es decir, un factor de 3/4. Eso no se va a ver bien, pero es lo más sencillo. Otras opciones pasan por muchas más modificaciones, más memoria que mover para pintar y más ocupación de la misma para almacenar los gráficos. Es lo que hice en SkoolDaze y tiene su miga.

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 05 Jul 2018 13:00

Chema escribió:Qué interesante está este hilo! No me cabe duda de que portar el motor al Oric es factible, aunque habría que ver si se puede hacer para que vaya tan rápido como el original.
El problema con él Oric es el modo gráficos, donde los bloques de 1 byte no representan 8 pixels, sino 6. Eso hace que sea necesario rehacer todos los gráficos, además de complicar las rutinas de pintado.
Lo más inmediato es reducir el tamaño de los gráficos para que ocupen los mismos bytes que el original, es decir, un factor de 3/4. Eso no se va a ver bien, pero es lo más sencillo. Otras opciones pasan por muchas más modificaciones, más memoria que mover para pintar y más ocupación de la misma para almacenar los gráficos. Es lo que hice en SkoolDaze y tiene su miga.

Buenos días Chema,
Creo que voy a abrir un nuevo hilo para consultas sobre ensamblador ZX-80 ya que empiezo a tropezar con serias dudas ...
Yendo al tema de Oric, si parece duro convertir info de 8 pixels/byte al sistema de solamente 6 pixels/byte, por lo que parece mas
que razonable hacer un escalado de 8 a 6 aunque con ello se pierda definición ...
En CoCo-Dragón si queremos colores, pasamos de 8 pixels/byte a solamente 4 pixels/byte. La conversión es mucho mas simple ciertamente, pero
la pérdida de definición es aun mayor. Ya veremos como quedan las pantallas que José Luis va a pasar a PMODE3 (4 colores, solo :-()
Referente a velocidad, creo que el Atom Acorn solamente funciona a 1MHz y si con ésto consiguen emularlo quiere decir que la conversión para Oric con la misma CPU debería ser factible ...

saludos
pere

jltursan
Mensajes: 2197
Registrado: 20 Sep 2011 13:59
Agradecido : 101 veces
Agradecimiento recibido: 270 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor jltursan » 05 Jul 2018 21:25

Sí, definitivamente también estoy seguro de que el Oric es más que capaz, por supuesto. El Atom maneja sólo 6KB como máximo de VRAM, el Oric unos 8KB pero nunca se va a dar el caso de manipular toda la memoria así que las diferencias en los objetos móviles deberían ser escasas.

Además el AGD tampoco es el state-of-the-art, es más que suficiente para mover muchas cosillas pero ni de lejos está optimizado como Dios manda.

Y efectivamente la conversión de gráficos es un dolor, lo de tener 4 píxeles de ancho reduce mucho las posibilidades de los tiles y la paleta (a ver para cuando la versión CoCoVGA :-D) no ayuda. En el Oric no sería terrible adaptarlos a 6 píxeles pero nunca he dominado el sistema de atributos del Oric y no tengo claro como encaja con los gráficos de un ZX.

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 05 Jul 2018 21:48

jltursan escribió:Sí, definitivamente también estoy seguro de que el Oric es más que capaz, por supuesto. El Atom maneja sólo 6KB como máximo de VRAM, el Oric unos 8KB pero nunca se va a dar el caso de manipular toda la memoria así que las diferencias en los objetos móviles deberían ser escasas.
Además el AGD tampoco es el state-of-the-art, es más que suficiente para mover muchas cosillas pero ni de lejos está optimizado como Dios manda.
Y efectivamente la conversión de gráficos es un dolor, lo de tener 4 píxeles de ancho reduce mucho las posibilidades de los tiles y la paleta (a ver para cuando la versión CoCoVGA :-D) no ayuda. En el Oric no sería terrible adaptarlos a 6 píxeles pero nunca he dominado el sistema de atributos del Oric y no tengo claro como encaja con los gráficos de un ZX.

Siento decirte José Luis que el CoCo-VGA solo ayudaría en el tema de manejar mayor número de colores (16)
pero la resolución horizontal sigue siendo de 128 (mitad que ZX) y además la vertical solamente es de 96,
otra vez la mitad de los 192 que permite el PMODE3 así que los sprites serían bastante 'gruesos'
Tendremos que conformarnos con el PM3 a 128x192 con cuatro colores haciendo mezclas como buenamente se pueda!
saludos
pere

jltursan
Mensajes: 2197
Registrado: 20 Sep 2011 13:59
Agradecido : 101 veces
Agradecimiento recibido: 270 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor jltursan » 07 Jul 2018 13:06

Bueno, la resolución de 128x96x16 es extremadamente retro y se pueden hacer cosas muy majas :-)

MIra la comunidad Arduboy lo que está sacando...¡y en dos colores!. Los juegos serían muy portables dado que están programados en C con un kit de desarrollo. La velocidad sería el único problema con los más intensos.
En el ZX-UNO también tienes el "modo radastiano"; pero prácticamente no hay nada.

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 07 Jul 2018 14:45

jltursan escribió:Bueno, la resolución de 128x96x16 es extremadamente retro y se pueden hacer cosas muy majas :-)
MIra la comunidad Arduboy lo que está sacando...¡y en dos colores!. Los juegos serían muy portables dado que están programados en C con un kit de desarrollo. La velocidad sería el único problema con los más intensos.
En el ZX-UNO también tienes el "modo radastiano"; pero prácticamente no hay nada.

Hola José Luis,
no me hagas mucho caso!
He estado trabajando con Brendan Donahe, de hecho la conversión de los programas de CoCo a Dragón la he estado haciendo yo,
hasta ahora, incluso hice un editor de paleta (16 colores de entre los 512 posibles) aparte del editor en modo 64 que ya publiqué.
La verdad es que estoy centrado en la conversión del código Z-80 del FOGGY área de sonido a 6809, así que me he creado una rutina
de servicio par el IRQ del retrazado vertical que se limita a incrementar un contador para tratar de que el código 6809 pueda imitar
en todo lo posible al del Z-80, espero poder probarlo pronto ...
Posiblemente para el tema de gráficos en PMODE3 para el AGD nos irá mejor un hilo aparte para no 'mezclar' los temas ...
Buen fin de semana!
saludos
pere

jltursan
Mensajes: 2197
Registrado: 20 Sep 2011 13:59
Agradecido : 101 veces
Agradecimiento recibido: 270 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor jltursan » 07 Jul 2018 15:08

Estoy de acuerdo :-)

Lamentablemente con el tema "sonido" he estado siempre muy pez, muy, muy pez. Por cierto, recuerda que cada compilador ofrece (o puede ofrecer) una solución personalizada y adaptada a cada máquina.
La verdad es que no me he mirado a fondo esa parte en el AGD así que no se como se las apaña para dar sonido a los diferentes ports de la suite. Por ejemplo, los Sinclair funcionan o bien mediante audio de 1-bit o bien el AY, el Amstrad sólo con este último y ambas soluciones son extremadamente diferentes en cuanto a resultados.

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 07 Jul 2018 15:19

jltursan escribió:Estoy de acuerdo :-)
Lamentablemente con el tema "sonido" he estado siempre muy pez, muy, muy pez. Por cierto, recuerda que cada compilador ofrece (o puede ofrecer) una solución personalizada y adaptada a cada máquina.
La verdad es que no me he mirado a fondo esa parte en el AGD así que no se como se las apaña para dar sonido a los diferentes ports de la suite. Por ejemplo, los Sinclair funcionan o bien mediante audio de 1-bit o bien el AY, el Amstrad sólo con este último y ambas soluciones son extremadamente diferentes en cuanto a resultados.

En el caso del FOGGY, creado con el AGD, para el ZX-Spectrum de 48k utilizan el sonido de 1-bit, yo voy a emplear el DAC de 6 bits aunque
para hacer lo mismo voy a enviarle los valores limite 0 y 63 (desplazados 2 bits a la izquierda por exigencias hardware).
De esta forma un simple EORA #252 invierte de uno al otro valor
saludos
pere

jltursan
Mensajes: 2197
Registrado: 20 Sep 2011 13:59
Agradecido : 101 veces
Agradecimiento recibido: 270 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor jltursan » 11 Jul 2018 21:41

Bueno, como ya tengo novedades y se había comentado lo de abrir un hilo dedicado a los gráficos, actualizaré ese en lugar de este :-)

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 13 Jul 2018 19:15

Actualización de estado:
Por fin aparece la primera pantalla del juego!
Solo se ven los bloques, lo siguiente van a ser los sprites y objetos ...
Ojalá los colores lo mejoren -thumbup

saludos
Buen fin de semana!
pere
PrimeraPantalla6809.jpg
PrimeraPantalla6809.jpg (81.18 KiB) Visto 339 veces

PrimeraPantallaZ80.jpg
PrimeraPantallaZ80.jpg (104.51 KiB) Visto 339 veces

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 13 Jul 2018 19:27

El resultado en 4 colores no será peor que esta conversión directa
He forzado el modo PMODE3 paleta normal y esto es lo que sale .... trabajo para el artista José Luis!
saludos
pere
Pantalla4Colores.jpg
Pantalla4Colores.jpg (92 KiB) Visto 337 veces

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Nuevo reto: port del AGD de Z-80 a 6809

Mensajepor pser1 » 16 Jul 2018 01:33

luiscoco escribió:Que interesante Pser1, ya me lo leo

Hola Luis,
esto es parecido al tema del Hobbit en cuanto a conversión de código Z-80 a 6809
El problema es que los juegos usan gráficos y aquí hay muuuchas diferencias entre ambas máquinas
Yo ya llevo 'sufridos' fuertes encontronazos con el mapeo de pantalla de la Spectrum que no es precisamente
lineal como en Dragon/CoCo y convertir estas fuertes discrepancias de forma general (para el motor del AGD) tiene miga!
Por la experiencia ya vivida con el Hobbit me ha quedado claro que lo ideal es que la conversión del programa la
asuma un único programador y que exista un hilo para aclarar las dudas sobre el Spectrum ... ya quisiera yo saber mas ... -banghead
Además, en el tema de los gráficos, léase bloques que conforman las pantallas, objetos y sprites ya se ha ofrecido
amablemente José Luis (jltursan) para convertir los gráficos PMODE4 a PMODE3.
Yo no tengo problema alguno en publicar el fuente en 6809 que voy ampliando por si alguien quiere investigar ...
Personalmente, Luis, mi situación familiar ha empeorado horrores desde hace poco mas de dos meses así que si
deseas contactar conmigo, agradeceré que uses mi correo electrónico normal: psergm@gmail.com
Por otros canales no puedo garantizar inmediatez, lo siento!
saludos
pere

dancresp
Mensajes: 5192
Registrado: 13 Nov 2010 02:08
Agradecido : 75 veces
Agradecimiento recibido: 147 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor dancresp » 17 Jul 2018 13:19

Me he perdido un poco, ya que he estado unos días ausente.

¿Estáis haciendo una versión monocroma y otra en 4 colores?
La monocromo queda bien, la monocromo es muy confusa.

Sea lo que sea, te estás volviendo a pegar un currazo de narices.
Felicidades Pere.

-drinks

Avatar de Usuario
pser1
Mensajes: 2211
Registrado: 08 Dic 2012 18:34
Agradecido : 294 veces
Agradecimiento recibido: 307 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor pser1 » 17 Jul 2018 13:51

dancresp escribió:Me he perdido un poco, ya que he estado unos días ausente.
¿Estáis haciendo una versión monocroma y otra en 4 colores?
La monocromo queda bien, la monocromo es muy confusa.
Felicidades Pere.

En realidad estoy haciendo el port / conversión del motor del AGD para 6809
Y como los movimientos son dos pixels a la vez a dcha o izda, el sistema será utilizable
tanto en monocromo PMODE4 como en modo de cuatro colores PMODE3
jltursan se está peleando con el tema del PMODE3, es una batalla horrorosamente dura ya que
directamente perdemos el 50% de la definición al contener cada byte info de 4 pixels en lugar
de info sobre ocho pixels como tenemos en PM4. Y dejando un color para el fondo, en realidad
solo te quedan tres para los objetos aunque en algunos puntos puedas utilizar el color elegido
como fondo también.
De momento, es un único fichero fuente que puede utilizar datos del juego (FOGGY) pensados para
PM4 o bien para PM3 cambiando un byte en la rutina de configuración gráfica

Sea lo que sea, te estás volviendo a pegar un currazo de narices.

Va a ser peor de lo que imaginé ya que para cada uno de los 150 juegos que YA existen creados
para Spectrum con el entorno AGD habrá que hacer la conversión de sus eventos y datos, pero
no hay prisas ya analizaremos si hay alguna forma mas o menos automática de hacer la parte
de código pues la idea es integrarlo en la suite Windows AGDX que crearía directamente el
juego 'completo' para 6809

saludos
pere

jltursan
Mensajes: 2197
Registrado: 20 Sep 2011 13:59
Agradecido : 101 veces
Agradecimiento recibido: 270 veces

Re: Port del AGD de Z-80 a 6809

Mensajepor jltursan » 17 Jul 2018 18:10

Y el caso es que con la AGDX todavía no tengo claro que se pueda descompilar correctamente un AGD a partir de su snapshot (pensaba que sí). Con el Foggy no tuve éxito :-(


Volver a “Software Dragon”

¿Quién está conectado?

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