INFORME: SINTAC G1

Por... Juan Manuel Medina

Ya está aquí. Ya llegó. La primera versión del párser SINTAC que soporta gráficos (de ahí lo de "G1") es una realidad. Y curiosamente no es la existencia de los nuevos comandos de gráficos lo que más llama la atención de esta entrega del párser. Pero vayamos por partes.

El sistema de gráficos que se ha añadido al SINTAC requiere una tajeta VGA y es, básicamente, una reimplementación con mejoras del visualizador de gráficos PCX que incluía con la versión T2. El condact GRAPHIC permite cargar un fichero gráfico en formato PCX de 320x200 a 256 colores o de 640x400 a 16 colores y volcarlo en la ventana activa. Si esta ventana es menor que el gráfico, este será recortado por sus partes (con perdón) inferior y/o derecha. Si, por el contrario, la ventana es más grande que el gráfico, la parte de aquélla que no quede cubierta por éste aparecerá llena de basura, por lo que habrá que tener cuidado con el tamaño que le damos a la ventana (¿no se podría hacer que el resto de la ventana apareciera en negro, o mejor aún, que conservara el contenido anterior permitiendo así cierta superposición de los gráficos?). De esta forma se pueden tener a la vez textos y gráficos en pantalla con lo que desaparece el "efecto Quill-Illustrator" de la versión T2. El comando GRAPHIC permite, además, controlar si el gráfico que vamos a volcar adoptará los colores de la paleta actual o viceversa y también da la opción de dejar la pantalla en negro mientras se vuelca el gráfico por razones de estética (un gráfico que ocupa una cuarta parte de la pantalla tarda aproximadamente medio segundo en volcarse en mi 386 a 33 MHz).

Otro de los nuevos condacts es el "REMAPC registro R G B", que permite escribir directamente en los registros de la paleta los valores de rojo, verde y amarillo que deseemos (todos los colores que vemos en la pantalla están formados a partir una combinación de esos tres colores). Una de las principales utilidades de este condact sería la implementación de fundidos de color (que siempre quedan muy monos a la hora de borrar la pantalla), desgraciadamente, la limitación de poder usar sólo indirección en los dos primeros parámetros impedirá poder utilizar bucles en los fundidos. De todas formas, las rutinas de fundido que yo escribí para Chichén Itzá con el DAAD, y que en Atari y Amiga funcionaban correctamente, en PC resultaron tan lentas (y eso que las probé en un 386 a 25 MHz) que al final tuve que eliminarlas, así que igual me equivoco y no sea esa la mejor manera de hacer fundidos.

Se han incluido nuevos condacts para el control de tiempo. Así, ahora es posible definir un límite de tiempo para que el jugador teclee sus comandos, como en el PAW. Por otra parte, el nuevo comando GTIME nos da la hora del sistema.

El comando INPUT también ha sido mejorado y ahora permite repetir la última frase tecleada con sólo pulsar la tecla de "cursor arriba". Hubiera sido aconsejable, por aquello de la compatibilidad de interfaces ahora tan en boga, haber respetado también las funciones DOS de edición, por lo menos las de las teclas F1 (repetición de la ultima línea carácter a carácter) y F3 (repetición de la última línea entera). Un histórico más grande, al estilo DOSKEY sería ideal, pero, la verdad, con todo lo que ya tiene el SINTAC pedir estas cosas son ganas de abusar.

Todo esto, sin embargo, son minucias al lado del ENTORNO DE PROGRAMACION que es "la estrella" de esta versión. Este entorno incluye un editor con el que se puede escribir el código fuente de manera muy cómoda ya que permite, con sólo elegir una opción del menú que aparece en la parte inferior de la pantalla, acceder a la parte del código fuente que nos interese (Vocabulario, Mensajes, Procesos, etc.). Un aspecto de esto que, en mi modesta opinión, debería mejorarse es el hecho de que para acceder a un proceso determinado haya que teclear su número. No sé cómo programarán los demás, pero yo nunca utilizo números directamente para referirme a los procesos, sino símbolos (así, yo sé que tengo un proceso que se llama, por ejemplo, "ChequeaPuertas" y me acuerdo de ese nombre, pero ni idea de qué número tiene). Alguna forma de referirse a los procesos por un "Nombre de Proceso" en vez de por un número sería maravilloso (y vuelvo a repetir lo del abuso).

El entorno permite, una vez generado el fuente, compilarlo. Si hay errores (que los habrá) se puede acceder rápidamente a las partes del fuente que hay que corregir. Una vez se ha conseguido una compilación correcta se puede ejecutar la aventura, con debugger incluido si se quiere. Todo esto se lleva a cabo simplemente eligiendo las opciones pertinentes en el menú antes citado.

También se puede acceder desde el entorno a una nueva versión del editor de caracteres que ya incluye un selector de ficheros entre otras mejoras. Sigue fallando, sin embargo, en que al salir del editor no se controla si se han realizado cambios desde la última vez que guardamos nuestro trabajo. Basta hacer click accidentalmente en el botón de Salir para perder todo lo hecho desde entonces.

El entorno trae además, por si fuera poco, un sistema de ayuda en línea que será muy útil, sobre todo, para recordar cuál es la sintaxis exacta de un condact. Hacer en una futura versión que la ayuda fuera sensible al contexto sería ya la reoca.

Aunque desde el entorno podamos acceder al compilador, intérprete, debugger y editor de caractéres, estos son programas ejecutables independientes, por lo que podemos llamarlos desde DOS exactamente igual a como se hacía en versiones anteriores. Tendréis que hacerlo así si, por ejemplo, sentís tanto cariño por vuestro editor de texto habitual como para preferir usarlo aunque tengáis que prescindir de las ventajas del entorno. O si preferís usar otro editor de caractéres como el Set Designer de José Luis Cebrian (que no se diferencia demasiado del del SINTAC, elegir uno u otro dependerá del gusto de cada cual; por cierto, el Set Designer tampoco controla lo de guardar antes de salir).

Me gustaría saber de dónde saca Javier San José el tiempo y las energías para hacer él sólito algo que recuerda tanto a lo que hacen entre un montón de gente en Borland o Microsoft. Chapó.

NOTA: Esta es la crítica de la versión registrada de SINTAC. Puedes hacerte usuario registrado enviando una carta a:

                Javier San José
                Ronda del Ferrocarril 75, 7ºA
                09200 - Miranda de Ebro (BURGOS)

y en pocos días recibirás el programa completo totalmente funcional. El sistema de pago es contrarrembolso y el precio 1500 ptas (más gastos de envío).
Si tienes alguna duda al respecto escribe a la dirección arriba indicada.

La versión completa del programa incluye:

Una cosa más. Esta versión incluye una aventura de demostración que se copia en el directorio DATOS. Puedes cargarla desde el entorno (fichero DEMO.BD), compilarla y ejecutarla. No se trata de una aventura completa y sólo incluye unas pocas pantallas y unos pocos gráficos.