Anuncios Google

El programa que dice A: ¿primer homebrew en Pesepe para MSX?

Éste no es propiamente un port, sino más bien una variación sobre El Programa que Dice A. No hace lo mismo que el Programa Que Dice A, aunque se le parezca superficialmente.

Funcionamiento

Este programa pone una A en pantalla (sólo una), que podemos mover con las teclas del cursor. Al apretar la barra espaciadora, el programa se detiene y vuelve al BASIC en SCREEN 0¹. De hecho, en vez de poner el carácter, lo que pone en pantalla es un sprite. Hubiera sido más fácil y lógico usar un LOCATE y PRINT, por ejemplo, pero el uso de sprites permite que, modificando el código, podamos poner cualquier cosa en pantalla (con tal que mida 8x8 píxeles).

¹ Modo de texto de baja definición, de 40 columnas (80 en MSX2 o superiores)

Podéis acceder al código fuente (licencia de software libre) con el comando LIST, una vez terminado el programa. Para modificar el sprite, tenéis que introducir (exactamente) los ocho valores correspondientes a la nueva forma en la sentencia DATA final. Hay más posibilidades de cambio (por ejemplo, cambiar el modo a modo ampliado de sprites, usar sprites de 16x16 en vez de 8x8, cambiar el color de fondo o del sprite a cualquiera de los 16 colores del MSX, muchísimos más en MSX2, etc...)

Para que la tarea os resulte más sencilla, he creado un editor de sprites estilo MSX². El funcionamiento de éste es muy sencillo: basta desplazar el cursor sobre los cuadritos, y hacer clic sobre ellos para cambiar su estado (pintado/no pintado). Abajo a la izquierda tenéis una vista previa a tamaño real de cómo se verá el sprite; abajo, en la barra "grande" (es un decir), la lista de valores que sirven para definir el sprite. Copiadla tal cual a continuación del DATA para definir vuestro nuevo sprite (sobreescribiendo los valores originales, claro está).

² Vale, creé el editor de sprites para otra cosa, es cierto. Pero os servirá igualmente :)

Carga

El zip adjunto del Programa Casi Completamente, Pero No Del Todo Distinto Al Programa Que Dice A³ (para MSX) contiene una imagen de diskette de, creo, simple cara y simple densidad (360 KB) perfectamente compatible con los emuladores al uso. Basta que descomprimáis el archivo donde queráis, lo carguéis en el emulador y arranquéis el emulador. En el paraMSX (que uso para PC), se cargan los diskettes desde la pestaña Media, y click en el botón Add file que hay al lado de la unidad de disco A; una vez cargado el disco, dad al botón general POWER. Para el fMSX de PSP, pestaña System, Drive A, botón cruz y elegir el disco, y click en el botón círculo para arrancar el MSX.El programa está grabado como autoejecutable (AUTOEXEC.BAS), con lo que arrancará automáticamente.

³ Que, evidentemente, también es casi completamente distinto, pero no del todo, al té y al número 42.

El Programa Casi Completamente, Pero No Del Todo Distinto Al Programa Que Dice A ocupa 687 bytes (el resto del disco es espacio vacío; podéis usarlo para grabar vuestros programas :D). El editor de sprites ocupa 3,3 KB (3,42 en zip: otra vez las cabeceras del archivo zip, se ve, ocupan más que la compresión).


Strength is irrelevant. Resistance is future. We wish to improve ourselves.

La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.

4.615385
Tu voto: Ninguno Votos totales: 4.6 (13 votos)

Anuncios Google

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Unicorn

Sin duda

le sacaras mas de una sonrisa a los afortunados propietarios de MSX :-).

Imagen de Kosh

Buenas:

Ahora entiendo, más o menos, a qué te referías con lo de que era una prueba para otra cosa, cuando te escribí que me parecía muy surrealista pero genial en la versión para PSP ;)

Un saludo.


"La avalancha ha comenzado, es demasiado tarde para que voten los guijarros."

Imagen de ZYX3D

Espera, espera :)

Que de hecho esto es sólo el principio... :)

Sí que hay una cierta relación entre ambos, pero es más estrambótica de lo que puede parecer (suele suceder conmigo XD). Hay varias cosas del MSX que quería traducir a Actionscript de Flash; una era, por pura nostalgia, los sprites. Otra, el macrocomando DRAW, este porque era tremendamente práctico. Esto se unió a una vieja idea, que era hacer "algo" con el AutoREALM¹. Y, por otra parte, tengo por ahí un motorcete 3D para Actionscript, que de momento tengo parado a la espera de hacer un motor 2D decente (ya llegó a un momento en que era necesario trabajar con formas mínimamente complejas para poder hacer la revolución en condiciones, unas cuantas extrusiones y esas cosas que se hacen con la tercera dimensión). De ahí nacieron unas cuantas clases más de Actionscript que ahora tengo en proceso: Polyline (serie de líneas), Polycurve (ídem, curvas), Polygon y Curvegon (polígonos de lados rectos y curvos), Pantaline y Pantacurve (series de Polylines y Polycurves)... y tres métodos distintos de poner polígonos en pantalla (Flash MX no tiene ninguna herramienta polígono), una de las cuales me puede servir para crear, p.e., prismas y antiprismas combinado con el motor 3D (y al fin y al cabo una esfera es una bipirámide, aunque lo disimule muy bien XD). Las As del primer programa son una Pantaline de dos Polylines (una es el ángulo, la otra el trazo central).

¹ AutoREALM es un programa GPL de diseño gráfico, orientado principalmente a los mapas de mundos fantásticos (juegos de rol, &c.). Tiene unas fantásticas rutinas fractales. Hace un tiempo que Andy Gryc (pronunciado "grits") no puede dedicarse a ello, y ahora se están estudiando posibilidades de desarrollo en varios lenguajes/plataformas, como independiente y/o plugin, como...

Y el desarrollo final donde lleva esto es a la clase Font, que debería ser un sustituto de las fuentes y tipografías True Type. En esencia el concepto es el mismo: una serie de vectores que se dibujan en pantalla. El potencial de Font, para según qué cosas, mayor: cualquier letra de TrueType siempre será igual a sí misma, pero con la clase Font se pueden hacer N variantes a una misma letra. Estéticamente hablando, esto es muy valioso si queremos imitar una letra hecha a mano (o, extrapolando, un mapa antiguo hecho a mano, un dibujo hecho a mano, etc.) que siempre será más o menos imperfecto. Lo que está por ver es el rendimiento y bajo qué condiciones. P.e., en El Programa Que Dice... el trazo izquierdo de la A era más grueso, como si se hubiera hecho con un pincel o rotulador plano orientado paralelo a las líneas de la caja. En True Type haríamos un rectángulo, mientras que aquí basta especificar el grueso de línea para valores de 0-10. Pero quizá esta virguería no sea necesaria, y sea más rápido dibujar el rectángulo que ir cambiando el trazo de la línea. Habrá que probarlo. Pero, embajador Kosh, es que trabajar con TrueTypes siempre tiene algo de...¿cómo lo diría? Son como el tipo ese que siempre iba de negro... ¿cómo se llamaba, Chejov? Ah, no, Bester :) Siempre traen problemillas, problemas o problemones, y son una agonía. Y, encima, el menor de los males posibles. Así que una alternativa suena muy interesante.

Lo que pasa es que, como funciono como una bola de nieve, pues la cosa se fue liando. Porque a la que me he puesto el fMSX no vean Vds. cómo se me ha hinchado la vena MSXera (aún conservo un buen montón de revistas... a la que reconfigure el scanner ya veréis, ya XD), y qué me costaba juntar el editor de Sprites para la clase Sprite y usarlo directamente sobre emulador de MSX. Y, bueno, el Programa Que Dice A ya tiene una versión 2.0; lo que pasa es que pierde toda la gracia, porque está hecho, justamente, para comprobación de rendimiento. Tengo que escribir aún el informe, pero ha dado resultados muy, muy curiosos (y que dicen mucho de cómo funciona el Flash Player de la PSP).

Y bueh, todo esto y mucho más tenía que haber salido ya en el anterior episodio, de ¿este martes? ¿el de la semana pasada?, pero como me ha atropellado una entrega de ultimísima hora, aún estoy un tanto apenas sacando cabeza... pero creo que durará poquito ya. Creo... ¡lo descubrirán en el próximo capítulo: El regreso del Escuadrón Decrépito!

PS: Y buah, a qué negarlo. Las surrealistadas, humoradas, vueltas de hoja, chorradas y cosas así me encantan. Nunca he negado que tengo el plan de conquistar el mundo con chistes malos. (Menos esa pequeña granja al oeste de Wisconsin que a nadie quiere para nada). Algún día traduciré un yambo de Arquíloco o un soneto de Shakespeare al Visual Basic sólo por hacerlo XD.).


Strength is irrelevant. Resistance is future. We wish to improve ourselves.

La fuerza es irrelevante. La resistencia es futuro. Queremos mejorarnos.

Imagen de Kosh

Diossss...

eres la repera O_O

Y encima conoces a Bester XDDDDDD

Qué absoluto Crack, gracias por amenizarnos WWW.

Imagen de Unicorn

jajajaja

Abis tiene suerte de conocerte. Cuanto mas te leo, mas curioso me resultas ZYX3D.

Un saludo de otro "friki" (aunque de otros temas, y con menos experiencias que contar, jeje). 


Para recibir ayuda más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda revisar el Manual del perfecto forero y las Normas de la Comunidad.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.