
	3 .	Vue d'ensemble


Visual Assembleur 4.0


Outil de dveloppement pour le Falcon 030


	3.1 Matriel et logiciels requis


Pour accder  toutes les possibilits offertes par le Visual Assembleur 
(V.A.), vous devez possder au minimum un Atari Falcon 030 (TOS 
4.0x) avec 4Mo de mmoire minimum ainsi qu'un disque dur ayant une 
place libre de 4 Mo minimum.
Le V.A. se prsente sous la forme d'un ensemble de sources en langa-
ge assembleur. Toutes ces sources ont t crites pour l'assembleur DEV-
PAC 3.10 de Hisoft et il est donc impratif de possder ce programme, 
ainsi que les librairies donnes avec.
Si vous dsirez raliser un programme fonctionnant sous environne-
ment graphique (GEM), vous aurez besoin d'un diteur de ressource gra-
phique. Le plus connu est INTERFACE 2 de Shift. Mais tout diteur 
comportant l'option de cration d'un fichier .H associ au fichier .RSC 
doit normalement tre utilisable. Il suffit que le format des lignes du fi-
chier .H soit du style :

#include nom_objet_graphique=numro_objet_ressource   /* com-
mentaire */ 

pour qu'il puisse tre trait automatiquement par le V.A.. 

	3.2 Que pouvez vous faire avec ce kit


Le Visual Assembleur n'est pas un langage  part entire, mais plutt 
une bibliothque de luxe pour les programmeurs en assembleur. Il intgre 
un ct visuel, car le dessin de l'interface de l'application se fait comme 
pour ses confrres "Visual..." dans un diteur de ressource. Il est bien sur 
orient objet afin d'tre le plus volutif possible. Enfin, il est conu pour 
que le programmeur n'ait  grer aucun appel direct aux fonctions syst-
me, le tout tant pris en charge par le noyau "Visual".
De cette conception macro-modulaire du V.A., dcoulent des propri-
ts trs intressantes, comme par exemple la portabilit du code assem-
bleur ! Eh, oui il suffit de r-crire les macros pour la plate-forme desti-
nation (Mac, Amiga, Bee ...) et de re-compiler le tout pour avoir un ex-
cutable.
En effet, tous les systmes  base de fentre fonctionnent sur le mme 
principe : le dplacement, le redimensionnement ... des fentres, les v-
nements menu, les vnements souris, claviers, les messages systme et 
inter-applications et enfin le dcoupage en rectangles de la fentre lors du 
redraw. On voit ainsi qu'un programme de traitement d'image peut faire 
ce qu'il veut avec ses buffers internes : tant que son affichage est confor-
me au format V.A., il pourrait tre compatible avec n'importe quel syst-
me de fentre.

Le Visual Assembleur permet de tirer parti de toutes les particularits 
du TOS et de l'AES dans leurs version les plus avances, i.e : TOS 
4.04 & AES 4.1. La plupart des nouvelles fonctions sont totalement 
transparentes pour le programmeur qui oublie tous les soucis de clipping, 
de scrolling des fentres ...
- Pour une fentre bitmap, par exemple, il se concentre sur une seu-
le chose : le contenu buffer Visual qui sert  l'affichage.
- Les fentres formulaires sont encore plus simple, puisque le seul 
paramtre quant au contenu est le numro de l'arbre ressource !
- Vous voulez grer vous-mme le dessin interne de votre fentre ? 
Pas de problme : on intercepte les messages de redraw, on clippe 
et on vous passe les coordonnes des rectangles !
- Vous pouvez tre prvenu d'absolument tous les vnements sys-
tme, il suffit d'insrer l'adresse de votre routine au bon endroit et 
un JSR sera effectu quand cet vnement arrivera (exemple : 
"AP_TERM", "WM_ALLICONIFY" ... )
- Enfin, fini le problme des accessoires et de leurs initialisations, 
votre application sera gre de faon transparente pour vous, 
qu'elle soit lance en accessoire ou en programme.

	Voici la liste des caractristiques du Visual Assembleur 4.0 au 6 
Septembre 1996 :

- Fonctionne sur tout micro-processeur 68030 ou plus.
- Toute application fonctionnera parfaitement sous MiNT/Multitos 
et tirera parti de ses possibilits.
- Gestion des nouveaux messages AES 4.1.
- Scripts de dmarrage fournis pour tous les types de projets (TOS, 
ACC, APP, ACC/APP).
- Gestion transparente des ACC et des APP.
- Possibilit d'inclure le ressource dans le programme et de le relo-
ger ensuite.
- Initialisation et stockage en retour des paramtres de la station 
virtuelle.
- Possibilit d'assigner un fond graphique  votre application.
- Possibilit de mettre des menus attachs (sous-menus) avec ges-
tion transparente (AES 3.3).
- Gestion irrprochable des raccourcis claviers, applicables  n'im-
porte quel menu ou objet cliquable ; fonctionne dans tous les pa-
ys !
- Aucune restriction sur le nombre de fentres autre que celle im-
pose par le systme.
- Namification de n'importe quelle fentre (laisse juste le titre & 
l'info).
- Possibilit de mettre une barre d'outil dans n'importe quelle fen-
tre !
- Gestion des popups dans une fentre formulaire entirement auto-
matique (AES 3.3), affichage, remplissage du champs de texte, 
et pour l'utilisateur un message d'avertissement de changement 
avec l'index du nouvel objet slectionn.
- Gestion des appels Venus / Accessory. ("VA_START").
- Gestion de l'iconification des fentres.
- Bibliothque spciale pour la gestion des fichiers, ouverture, don-
ne la taille, alloue la place mmoire ncessaire et charge le fichier.
- Bibliothque spciale pour le slecteur de fichiers (gre Selec-
tricTM).
- Bibliothque spciale pour la RS-232 & Midi.
- Bibliothque spciale pour les dates & heures.
- Bibliothque de gestion des Cookies & vecteurs XBRA.
- Bibliothque de conversion bidirectionnelle du numrique vers 
l'ASCII.
- Bibliothque d'appels XHDI.
- Bibliothque de recherche rcursive de fichiers selon un chemin 
de dpart et un masque avec appel d'une routine de traitement per-
sonnalise ...
- Gestion du multi-document.


	3.3 Que ne pouvez-vous pas faire avec ce 
kit

Les limitations du V.A sont peu nombreuses car, comme nous l'avons 
vu, l'objet "fentre custom" permet tout, tant donn que c'est le pro-
grammeur qui gre les redraw.
Elles sont :
- On ne peut pas compiler de CPX.
- On ne peut pas faire de fentre terminal VT-100 en utilisant l'ob-
jet fentre texte.
- En mode non-plan (true-color), les couleurs des icnes couleurs 
des ressources intgrs au programme ne correspondent pas aux 
couleurs voulues.
- Les menus dans les fentres ne sont pas encore implments.


	3.4 Futures versions


Un effort tout particulier a t apport au fait que les futures versions 
ne doivent pas obliger autre chose qu'une re-compilation pour tre op-
rantes. Toutes les futures amliorations sont d'ores et dj prvues autant 
que faire se peut.

La planification des versions  venir est la suivante :

V 4.1.y	Gestion des menus dans les fentres.
V 4.2.y	Gestion amliore des champs de texte ditables.

V 5.x.y	Utilitaire de cration du fichier .OBJ de faon graphi-
que et trs	simple.
