	Vue d'ensemble


Visual Assembleur 4.0


Outil de d‚veloppement pour le Falcon 030


	1 ~ Mat‚riel et logiciels requis


Pour acc‚der … toutes les possibilit‚s offertes par le Visual Assembleur (V.A.), vous devez pos-
s‚der au minimum un Atari Falcon 030 (TOS 4.0x) avec 4Mo de m‚moire minimum ainsi qu'un 
disque dur ayant une place libre de 4 Mo minimum.
Le V.A. se pr‚sente sous la forme d'un ensemble de sources en langage assembleur. Toutes ces 
sources ont ‚t‚ ‚crites pour l'assembleur DEVPAC 3.10 de Hisoft et il est donc imp‚ratif de 
poss‚der ce programme, ainsi que les librairies donn‚es avec.
Si vous d‚sirez r‚aliser un programme fonctionnant sous environnement graphique (GEM), 
vous aurez besoin d'un ‚diteur de ressource graphique. Le plus connu est INTERFACE 2 de Shift. 
Mais tout ‚diteur comportant l'option de cr‚ation d'un fichier .H associ‚ au fichier .RSC doit nor-
malement ˆtre utilisable. Il suffit que le format des lignes du fichier .H soit du style :

#include nom_objet_graphique=num‚ro_objet_ressource   /* commentaire */ 

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

	2 ~ Que pouvez vous faire avec ce kit


Le Visual Assembleur n'est pas un langage … part entiŠre, mais plut“t une bibliothŠque de luxe 
pour les programmeurs en assembleur. Il intŠgre un c“t‚ visuel, car le dessin de l'interface de l'ap-
plication se fait comme pour ses confrŠres "Visual..." dans un ‚diteur de ressource. Il est bien sur 
orient‚ objet afin d'ˆtre le plus ‚volutif possible. Enfin, il est con‡u pour que le programmeur n'ait 
… g‚rer aucun appel direct aux fonctions systŠme, le tout ‚tant pris en charge par le noyau "Vi-
sual".
De cette conception macro-modulaire du V.A., d‚coulent des propri‚t‚s trŠs int‚ressantes, 
comme par exemple la portabilit‚ du code assembleur ! Eh, oui il suffit de r‚-‚crire les macros 
pour la plate-forme destination (Mac, Amiga, Bee ...) et de re-compiler le tout pour avoir un ex‚-
cutable.
En effet, tous les systŠmes … base de fenˆtre fonctionnent sur le mˆme principe : le d‚place-
ment, le redimensionnement ... des fenˆtres, les ‚vŠnements menu, les ‚vŠnements souris, cla-
viers, les messages systŠme et inter-applications et enfin le d‚coupage en rectangles de la fenˆtre 
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 conforme au format V.A., il pourrait ˆtre compati-
ble avec n'importe quel systŠme de fenˆtre.

Le Visual Assembleur permet de tirer parti de toutes les particularit‚s du TOS et de l'AES 
dans leurs version les plus avanc‚es, i.e : TOS 4.04 & AES 4.1. La plupart des nouvelles fonc-
tions sont totalement transparentes pour le programmeur qui oublie tous les soucis de clipping, de 
scrolling des fenˆtres ...
- Pour une fenˆtre bitmap, par exemple, il se concentre sur une seule chose : le contenu buf-
fer Visual qui sert … l'affichage.
- Les fenˆtres formulaires sont encore plus simple, puisque le seul paramŠtre quant au con-
tenu est le num‚ro de l'arbre ressource !
- Vous voulez g‚rer vous-mˆme le dessin interne de votre fenˆtre ? Pas de problŠme : on in-
tercepte les messages de redraw, on clippe et on vous passe les coordonn‚es des rectan-
gles !
- Vous pouvez ˆtre pr‚venu d'absolument tous les ‚vŠnements systŠme, il suffit d'ins‚rer 
l'adresse de votre routine au bon endroit et un JSR sera effectu‚ quand cet ‚vŠnement arri-
vera (exemple : "AP_TERM", "WM_ALLICONIFY" ... )
- Enfin, fini le problŠme des accessoires et de leurs initialisations, votre application sera g‚-
r‚e de fa‡on transparente pour vous, qu'elle soit lanc‚e en accessoire ou en programme.

	Voici la liste des caract‚ristiques du Visual Assembleur 4.0 au 26 Avril 1996 :

- Fonctionne sur tout micro-processeur 68030 ou plus.
- Toute application fonctionnera parfaitement sous MiNT/Multitos et tirera parti de ses pos-
sibilit‚s.
- Gestion des nouveaux messages AES 4.1.
- Scripts de d‚marrage 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 reloger ensuite.
- Initialisation et stockage en retour des paramŠtres de la station virtuelle.
- Possibilit‚ d'assigner un fond graphique … votre application.
- Possibilit‚ de mettre des menus attach‚s (sous-menus) avec gestion transparente (AES 
3.3).
- Gestion irr‚prochable des raccourcis claviers, applicables … n'importe quel menu ou objet 
cliquable ; fonctionne dans tous les pays !
- Aucune restriction sur le nombre de fenˆtres autre que celle impos‚e par le systŠme.
- Namification de n'importe quelle fenˆtre (laisse juste le titre & l'info).
- Possibilit‚ de mettre une barre d'outil dans n'importe quelle fenˆtre !
- Gestion des popups dans une fenˆtre formulaire entiŠrement automatique (AES 3.3), af-
fichage, remplissage du champs de texte, et pour l'utilisateur un message d'avertissement de 
changement avec l'index du nouvel objet s‚lectionn‚.
- Gestion des appels Venus / Accessory. ("VA_START").
- BibliothŠque sp‚ciale pour la gestion des fichiers, ouverture, donne la taille, alloue la pla-
ce m‚moire n‚cessaire et charge le fichier.
- BibliothŠque sp‚ciale pour le s‚lecteur de fichiers (gŠre selectricTM).
- BibliothŠque sp‚ciale pour la RS-232 & Midi.
- BibliothŠque sp‚ciale pour les dates & heures.
- BibliothŠque de gestion des Cookies & vecteurs XBRA.
- BibliothŠque de conversion bidirectionnelle du num‚rique vers l'ASCII.
- BibliothŠque d'appels XHDI.
- BibliothŠque de recherche r‚cursive de fichiers selon un chemin de d‚part et un masque 
avec appel d'une routine de traitement personnalis‚e ...
- Gestion du multi-document.


	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 "fenˆtre cus-
tom" permet tout, ‚tant donn‚ que c'est le programmeur qui gŠre les redraw.
Elles sont :
- On ne peut pas compiler de CPX.
- On ne peut pas faire de fenˆtre terminal VT-100 en utilisant l'objet fenˆtre texte.
- En mode non-plan (true-color), les couleurs des ic“nes couleurs des ressources int‚gr‚s au 
programme ne correspondent pas aux couleurs voulues.
- L'iconification des fenˆtres n'est pas encore support‚e de fa‡on automatique.
- Les menus dans les fenˆtres ne sont pas encore impl‚ment‚s.
