LOGLAN pour ATARI STE Le langage LOGLAN-82 est maintenant disponible sous ATARI. Il se présente sous la forme de trois fichiers exécutables : * LOGLAN.TTP : première partie du compilateur. * GEN.TTP : générateur de code ( 2ème partie du compilateur). * INTGEM.PRG : interprèteur du code. Ces trois fichiers sont à mettre en correspondance avec les fichiers LOGLAN.EXE, GEN.EXE et INT.EXE des IBM PC. Ils ont les memes fonctionnalité. Pour l'utilisation du compilateur se reporter au manuel de l'utilisateur pour LOGLAN sous DOS. Cet additif ne traite que des différences entre la version ATARI ST(E) et la version PC. La configuration minimale pour utiliser ces programmes est la suivante : - 1 Mo de RAM. - un lecteur double-face. Il est conseillé pour se servir plus facilement du compilateur d'avoir : - 2 Mo de RAM ( ou plus ) - un disque dur ( ou deux lecteurs à la rigueur ) Comment compiler un programme : A la différence d'une machine sous DOS, l'atari ne possède aucun mode ligne qui permettrait d'entrer directement les commandes suivies de paramètres. A la place, le bureau propose des programmes dits TOS et TTP (tos avec paramètres) ce sont des programmes exploitables uniquement en mode texte. Les premiers n'ont pas besoin de paramètres (comme CLS du DOS) d'autres ont besoin que l'on spécifie un ou plusieurs paramètres (FORMAT A:). En fait, la différence entre les deux programmes se situent simplement au niveau de leur extension. Les premiers se terminent par TOS et les seconds par TTP (on appellera un TOS ou un TTP un programme ayant l'extension correspondante). La différence entre un programme texte et un programme dit GEM, c'est-à-direutilisant les bibliothèques graphiques situés dans les ROMS de votre ATARI (VDI et AES). LOGLAN.TTP et GEN.TTP sont des programmes utilisant le mode texte. INTGEM.PRG est un programme utilisant le mode GRAPHIQUE meme si à l'exécution de programmes n'utilisant pas les primitives graphiques du LOGLAN il ne présente pas de différence avec les deux autres programmes, il réalise en fait des initialisations que le bureau fait à la place des programmes TOS et TTP. Cela est du au fait que ce programme peut à tout moment basculer en mode graphique, revenir au mode texte, etc... Quand on lance un programme TOS, le bureau cache la souris, efface l'écran et donne la main au programme appelé. Quand on lance un programme TTP, le bureau suppose que l'utilisateur veut passer des paramètres au programme appellé. C'est pour cela qu'il ouvre une boite de dialogue avec une ligne vide pour que l'utilisateur entre ce qu'il veut indiquer au programme. LOGLAN.TTP : Indiquez simplement ce que vous mettriez après la commande LOGLAN sous DOS. exemple : pour compiler un programme sous DOS vous pourriez entrer : LOGLAN MONPROG.LOG L+ O- pour réaliser la meme chose sous ATARI, double-cliquez sur l'icone LOGLAN.TTP et entrez dans la boite de dialogue : MONPROG.LOG L+ O- et cliquez enfin sur le bouton OK et le bureau lancera l'application LOGLAN.TTP avec 'MONPROG.LOG L+ O-' en paramètres. Si vous lancez LOGLAN.TTP sans aucun paramètres, l'application vous demandera le nom du fichier à compiler. Entrez à ce moment-là le nom complet (avec l'extension .LOG ) de votre fichier. Le compilateur supposera que vous voulez compiler ce fichier à l'aide des options standards. GEN.TTP: L'utilisation de fichier est identique à LOGLAN.TTP. GEN.TTP ne prend pas de paramètres, il convient simplement de lui donner le nom de votre application ( sans aucune extension ). INTGEM.PRG : Comme son extension l'indique, il s'agit d'un programme utilisantles graphiques. Le bureau considère que ce type de programme n'utilise pas de paramètres pour son exécution. En fait, INTGEM utilise les memes paramètres que son homologue sous DOS. Pour utiliser ce programme vous pouvez : le lancer directement : Comme LOGLAN.TTP, il vous demandera le nom du proramme à exécuter et demarrera en supposant que vous voulez utiliser les options par défaut du compilateur. Cette utilisation ne provoque aucune restrictions. Cependant, pour la programmation des processus, les options par défaut doivent etre modifiees dans certains. Le programme GSORT.LOG par exemple,utilise les processus pour trier un ensemble de valeurs et peut créer plus de 30 processus. Avec la taille mémoire standard qui est de 30000 mots mémoires par processus, c'est-à-dire 60000 octets il faudra 60000 * 30 = 1800000 octets (1.6 Mo ) de memoire disponible. Aussi l'utilisation de GSORT se fait-elle avec l'option -m 10000 ( voire 7000 ) pour pouvoir l'exécuter. Pour remédier à ce problème, deux solutions : Soit vous renommez INTGEM.PRG en INTGEM.TTP : Il devient pour le bureau un programme texte acceptant des paramètres. Dans ce cas, la souris sera inutilisable dans les applications. Soit vous utilisez un bureau alternatif comme NEODESK ou les dernières version du bureau ATARI ( à partir des TOS 2.0 - MEGA STE ) qui elles connaissent les programmes GEM qui prennent des paramètres. Le problème est que soit il coutent cher, soit il consomment de la mémoire vive. Pour une utilisation normale, l'utilisation de INTGEM.PRG suivant la première méthode est amplement suffisante. PROBLEMES : La est le plus délicat et c'est pourquoi je conseille une configuration avec deux lecteurs ou mieux, un disque dur. Voici le problème : LOGLAN.TTP pour créer un fichier LCD commence par créer deux ou trois fichiers temporaires qu'il efface à la fin de la compilation. Ces fichiers sont généralement proportionnels à la complexité et à la taille de vos programmes. Il peuvent aller de 30 Ko jusqu'à 100 Ko. Sans indications contraire, il les crée dans le répertoire courant (là où se trouve votre programme source ), un rapide calcul permet de s'apercevoir que l'ensemble des fichiers exécutables sources et fichiers intermédiaires ne tiennent pas sur une disquette double-face normale. Il arrive que pour les fichiers importants, le compilateur vous réponde par 'I/O Trap 29' cela signifie qu'il n'y a plus de place sur la disquette et la compilation s'arretera. Il vous faudra faire de la place sur la disquette afin qu'il y ait assez de place. Pour information, la compilation du programme TEST1 utilise 150 Ko d'espace disque ( à peu près ) alors que la compilation du programme LOGDEB utilise environ 600 Ko. Pour éviter ce genre de désagrément, plusieurs solutions : - ACHETEZ UN DISQUE DUR : il ont beaucoup baissé alors n'hésitez plus... - Indiquez à LOGLAN.TTP qu'il doit créer ses fichiers temporaires ailleurs ( sur le lecteur B: par exemple ou mieux dans un RAM disque ). Pour cela, comme sous DOS, il faut positionner la variable d'environnement TEMP sur le chemin où créer les fichiers temporaires. Voilà, vous savez à peu près tout sur comment compiler un programme écrit en LOGLAN sur ATARI. J'aimerai attirer l'attention sur un dernier détail : le paramétrage des applications. Cette option permet de démarrer une application automatiquement en double cliquant simplement sur un fichier ayant l'extension adéquate. Un fichier DESKTOP.INF est compris dans les fichiers qui sont mis à votre disposition. Il contient la configuration pour les applications suivantes: APPLICATION EXTENSION =========== ========= LOGLAN.TTP .LOG INTGEM.PRG .CCD Autre chose, il est fournis dans la distribution deux autres application : ME.TTP et MS.TOS ME.TTP est l'éditeur de texte micro-emacs donné pour que l'on puisse éditer des ourt et ne nécéssite pas un apprentissage très ardu. MS.TOS est un micro-shell qui vous permettra de lancer vos applications plus facilement qu'avec le bureau. Il est destiné à faciliter le cyclecompilation -> erreur -> correction(s) des erreurs -> compilation -> etc... Il ne permet pas de modifier les variables d'environnement mais il peut rendre quelque services quand meme... BONNE PROGRAMMATION !!! Sebastien BERNARD à Pau, le 12 Novembre 1992