[ATARI] problemas con las teclas

Luis Manuel Asensio Royo lasensio at airtel.net
Sun Nov 11 21:35:37 CET 2001


Atari Emulación España (Gabriel Huertas) wrote:

> No si al final tendremos que hacer nuestro propio programa... de todas
> formas, si me lo puedes enviar perfecto (si lo tienes a mano y no cuesta
> mucho trabajo, pues creo que lo tengo por ahí en algún sitio).

Por mi parte no hay problema. Te lo envío directamente a tu buzón en
otro mensaje. Hace tiempo que ni lo miro, y hoy durante un rato he
intentado compilarlo con el PureC, pero sin conseguirlo por error del
compilador. cuando tenga más tiempo ya me pelearé con él. Por cierto, en
éste programa utilizaba mi propia impliementación de cajas de diálogo en
ventanas 8muy artesanal como verás), y necesita unos ficheros .H que
tendrás que poner dentro del directorio INCLUDE del Pure C, y que te
adjuntaré junto con el programa.

> Pues sí que estamos bien... y lo malo es que teóricamente habrás respetado
> el GEM en todo momento, lo cual no es sino otro punto en contra del MagiC.

El problema no viene por la parte en GEM, que aunque implemento como
decía mis propias rutinas de cajas siempre usa llamadas estándar al GEM.
El problema viene por el programa TSR. Para hacer el primer programa ADK
examiné con un programa monitor el programa de Atari ACENTT.PRG, que era
el ACENTOS.PRG pero para máquinas con 68.030.

Una vez que entendí el mecanismo de funcionamiento, decidí implementarlo
para los procesadores 68.000 y 68.030 teniendo en cuenta con éste último
el cambio que se produce en la pila cuando ocurre una excepción. Para
ello usé la documentación sobre el protocolo XBRA de Atari para añadir
más funciones a las diferentes llamadas al sistema operativo (BIOS,
XBIOS, GEMDOS), pero lamentablemente éste mecanismo no funciona bajo
MagiC. Para que funcionara tengo que examinar el programa TSR del CKBD
para ver cómo intercepta las pulsaciones del teclado.

Personalemente éste es otro punto en contra del MagiC.

> Que por cierto, me he puesto a comprobar a ver que tal responde el teclado,
> y resulta qeu cuando empezaba a alegrarme de que la promera tanda de
> caracteres SHIFT + numeros daban el resultado correcto, al tropezar con Ç se

Si quieres también te paso mi tabla de teclado. Tampoco me fué fácil
implementarlo, y hoy a base de probar he encontrado la combinación de
teclas para el carácter '\': CTRL + ALT + 4. Una combinación extraña,
pero es la que hay cuando se trabaja con el MagiC PC.

> acabó la suerte, y para colmo, ¡tampoco me saca la "ñ"!!!. Quizás el mío que
> es la 1.1 es demasiado antiguo, pero aún así, me ha dado una impresión
> terrible.

El MagiC tiene configurado el teclado alemán, y el CKBD no incluye el
español, que me lo tuve que hacer yo con un editor de textos. Te lo
incluyo en el mensaje con el resto de ficheros.

> Volviendo al ADK, creo que distribuías libremente las fuentes en C, así que

De hecho estoy pensando en liberar el código fuente de los pocos
programas que hice, por si puede servir de ayuda para animar a la
programación de aplicaciones sencillas para Atari. He de hacer notar que
crear un programa GEM no es sencillo. Primero has de crear los menús y
cajas de diálogo con programas editores de ficheros de recursos como el
Wercs, el Interface, etc.

Éstos además de crear los ficheros .RSC, dependiendo del lenguaje que
escojas, te genera un fichero que son una lista de constantes para
acceder a las estructuras de árboles del fichero .RSC. Para manejarlos
puedes usar la función del AES form_do por ejemplo, pero entonces tienes
las cajas de diálogo estándar del TOS, que en cuanto aparecen bloquean
todo el sistema y por ello son poco recomendables si usas un sistema
operativo multitarea. Para evitarlo has de usar librerías que
implementen las llamadas de manejo de cajas en ventanas, y hay varias,
desde la GEMLib, las del MagiC, unas propias (como hice yo), etc.

> las tendré por ahí. ¿Para que compilador eran?¿Quizás para el Pure C por
> casualidad?

No estoy seguro, pero el ADK 1 lo compilé con el Lattice C, pero la
versión 2 ya la hacía con el Turbo/Pure C.
-- 
 |||   Saludos | Salutations | Greetings | Grüße
_/|\_  Luis Manuel Asensio Royo

"La violencia es el último recurso del incompetente". Isaac Asimov



More information about the Atari mailing list