"Juego" de la vida de Conway

Programando el Amstrad en Ensamblador.
Reglas del Foro
Debido a que hay varios temas pidiendo ayuda para programar en ensamblador máquinas distintas al Amstrad CPC, con micro distinto al Z80 y que incluso dependen del sistema operativo, nos vemos en la necesidad de poner por escrito que estos posts son bienvenidos pero que no es el lugar adecuado ya que por estos lares nos dedicamos más al ensamblador del Z80, un microprocesador de 8 bits que tuvo su gran auge en ordenadores y consolas de los años 80.

De todas formas, esto no quita que alguien que sepa del asunto pueda postear alguna respuesta pero es más fácil encontrar foros dedicados a programar en ensamblador en Windows o MS-DOS que ayudarán más que nosotros:
http://www.lawebdelprogramador.com/news ... nsamblador
Urusergi
Megaforero
Megaforero
Mensajes: 301
Registrado: Sab 25 Feb , 2006 5:45 pm

Re: "Juego" de la vida de Conway

Mensajepor Urusergi » Mié 10 Sep , 2014 4:16 pm

Coño! y yo que estaba convencido que era porque no entraba ningún chiste entero en memoria, te lo tenía que haber comentado en su momento #-o
:-k porque ¿que pasaría si se ejecuta el programa en un cpc de 64k? no se me ocurre otra causa, de todas formas voy a intentar encontrar el archivo en mi disco y vuelvo a probar...

EDIT: Expediente x resuelto! el programa no detecta la cantidad de memoria ram disponible y lo ejecuta sin quejarse, pero al llegar a "y le dice oiga porf...." ahí se queda :lol: (joer lo bien que suena =D> ) y es que resulta que a mi me gustaba tener el winape configurado como un 464 con amsdos :oops:

opqa
Forero habitual
Forero habitual
Mensajes: 131
Registrado: Jue 14 Mar , 2013 12:45 pm

Re: "Juego" de la vida de Conway

Mensajepor opqa » Jue 11 Sep , 2014 6:58 pm

Bueno, pues toca otra de videos, esta vez para poder afirmar con números que esto va mucho más rápido que el Commodore. Éste es el patrón que usó el propio autor de Xlife-8 para sus pruebas ejecutándose con mi código:



Ronda las 5.25 generaciones por segundo, según las pruebas del autor en su Commodore va a 2.17 gen/seg sin mostrar la evolución en pantalla y a 1.28 gen/seg mostrándola. Vamos, que de momento gana el Amstrad la partida por goleada. :wink:

Está claro que no sólo es cosa del hardware, por azar o por insistencia me he topado con un algoritmo (no es mío) más rápido que el que usa él. Estaría por ver si le da por recoger el testigo y adaptar ese algoritmo (o uno similar) al Commodore para ver quién ganaría entonces.

En la versión adjunta está el código que genera este patrón y cambiando una línea del main.asm también se pueden cargar algunos otros patrones famosos (los mismos que había hasta ahora). Otra novedad es que he añadido opciones de ensamblado para elegir entre color/monocromo, esperar o no a VSYNC, y otra opción para usar doble buffer que elimina el parpadeo en la versión monocroma (en la versión a color esto no es posible).
Adjuntos
lifecolour02.zip
(17.18 KiB) Descargado 43 veces
Última edición por opqa el Vie 12 Sep , 2014 3:13 pm, editado 2 veces en total.

pacomix
Forum Addict
Forum Addict
Mensajes: 381
Registrado: Dom 11 Nov , 2012 8:05 pm

Re: "Juego" de la vida de Conway

Mensajepor pacomix » Vie 12 Sep , 2014 1:39 pm

Uno que me encanta y no he visto por ahí.
Se configura toda la pantalla con un patrón estable a base de cuadrados de 2x2 celdas. Y luego se le mete una interferencia en cualquier punto de la pantalla. Todo se empieza a desmoronar.

Urusergi
Megaforero
Megaforero
Mensajes: 301
Registrado: Sab 25 Feb , 2006 5:45 pm

Re: "Juego" de la vida de Conway

Mensajepor Urusergi » Vie 12 Sep , 2014 4:10 pm

¿hay alguna noticia del ruso? parece que no va recoger el guante o8)

opqa
Forero habitual
Forero habitual
Mensajes: 131
Registrado: Jue 14 Mar , 2013 12:45 pm

Re: "Juego" de la vida de Conway

Mensajepor opqa » Sab 13 Sep , 2014 11:52 am

pacomix escribió:Uno que me encanta y no he visto por ahí.
Se configura toda la pantalla con un patrón estable a base de cuadrados de 2x2 celdas. Y luego se le mete una interferencia en cualquier punto de la pantalla. Todo se empieza a desmoronar.

¿Algo así?
pacomix.zip
(16.81 KiB) Descargado 44 veces


En el archivo pacomix.asm hay una linea comentada en la que puedes jugar con un valor para poner una deformación inicial simétrica o asimétrica. Aparte en el main.asm (debajo de los comentarios) puedes configurarlo para que te salga en color o monocromo.
Urusergi escribió:¿hay alguna noticia del ruso? parece que no va recoger el guante o8)

Según su perfil entró al foro por última vez el 6 de septiembre y mi publicación fue el 10 así que es muy posible que no lo haya visto todavía, espero que no se lo tome a mal.

opqa
Forero habitual
Forero habitual
Mensajes: 131
Registrado: Jue 14 Mar , 2013 12:45 pm

Re: "Juego" de la vida de Conway

Mensajepor opqa » Lun 15 Sep , 2014 4:06 pm

Pues ya he retocado el asm para poder crear binarios ejecutables, no era tan difícil después de todo. Adjunto el código y un dsk con los patrones que vengo incluyendo ya pre-ensamblados (en monocromo y a color), por si alguien le apetece probar en la máquina real.

El único que falta es el benchmark del xlife-8, para ese aún tendría que escribir una rutina adicional de carga, y ya que estamos... ¿hay alguna herramienta que permita crear/editar pantallas para el CPC en resoluciones no estándar y que funcione bien? He probado con el ConvImgCPC pero no va bien con la resolución que uso (128x256 pixeles en modo 0), si lo configuro como Overscan a 64 columnas y 256 líneas me saca un archivo de casi 30KB (cuando debería ocupar 16KB exactos) y al meterlo en el CPC me sale bien sólo la mitad superior de la pantalla.

He mirado también el Paint del JavaCPC y el RGAS pero no tienen opción para resoluciones no estándar. :(
Adjuntos
lifecolour03.zip
(15.03 KiB) Descargado 48 veces
life.dsk
(190.21 KiB) Descargado 52 veces


Volver a “Ensamblador”

¿Quién está conectado?

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

La Comunidad Española
ESP Soft, juegos para tu CPC Foro de Amstrad CPC Todos los juegos para CPC en un CD El portal del CPC Web dedicada al Amstrad CPC (utilidades) Información útil para el CPC (talleres) El sitio del Amstrad CPC Mundo CPC Pree Play then any Key CPC Basic