COURS209.TXT/fr: Difference between revisions
Jump to navigation
Jump to search
(Created page with "<pre> ****************************************************************** * * * COURS D'ASSEMBL...") Â |
No edit summary |
||
Line 4: | Line 4: | ||
* COURS D'ASSEMBLEUR 68000 SUR ATARI ST * |
* COURS D'ASSEMBLEUR 68000 SUR ATARI ST * |
||
* * |
* * |
||
− | * par Le |
+ | * par Le F�roce Lapin (from 44E) * |
* * |
* * |
||
− | * Seconde |
+ | * Seconde s�rie * |
* * |
* * |
||
− | * Cours |
+ | * Cours num�ro 9 * |
****************************************************************** |
****************************************************************** |
||
− | Ce petit cours va |
+ | Ce petit cours va �tre un peu sp�cial, car il va fournir des indi- |
− | cations sur la |
+ | cations sur la fa�on de r�aliser des programmes GEM qui fonction- |
nent correctement. |
nent correctement. |
||
− | Il y a en effet quelques "trucs" |
+ | Il y a en effet quelques "trucs" � respecter. Sur MAC, les pro- |
− | grammeurs ont |
+ | grammeurs ont � leur disposition des bouquins traitant de l'ergo- |
nomie des logiciels. Qu'est ce que c'est ? Et bien c'est simple- |
nomie des logiciels. Qu'est ce que c'est ? Et bien c'est simple- |
||
− | ment un ensemble de |
+ | ment un ensemble de r�gles � respecter afin que l'utilisateur ne |
− | soit pas perdu d'un programme |
+ | soit pas perdu d'un programme � l'autre. Il faut en effet bien se |
− | souvenir que vous |
+ | souvenir que vous �tes programmeur et que votre ouvrage sera uti- |
+ | lis� par des utilisateurs! R�fl�chissons un peu: qu'est ce que |
||
− | lis‚ par des utilisateurs! R‚fl‚chissons un peu: qu'est ce que |
||
l'utilisateur recherche dans un programme de dessin: |
l'utilisateur recherche dans un programme de dessin: |
||
− | 1) avoir une sauvegarde de fichier |
+ | 1) avoir une sauvegarde de fichier compress� avec un algorithme |
+ | sp�cial, qui compresse plus que les copains. |
||
− | sp‚cial, qui compresse plus que les copains. |
||
− | 2) avoir la |
+ | 2) avoir la possibilit� de r�cup�rer le plus facilement possible |
ces dessins dans d'autres softs. |
ces dessins dans d'autres softs. |
||
+ | Il para�t �vident que c'est la seconde solution qui est la bonne! |
||
− | Il paraŒt ‚vident que c'est la seconde solution qui est la bonne! |
||
− | Pourtant nous assistons |
+ | Pourtant nous assistons � une prolif�ration de formats de fi- |
− | chiers, tous plus |
+ | chiers, tous plus d�biles les uns que les autres! Ah bien s�r, le |
+ | fichier compress� avec le logiciel de dessin Bidulmuche est plus |
||
− | fichier compress‚ avec le logiciel de dessin Bidulmuche est plus |
||
petit que le fichier issu de Degas, mais il n'est reconnu par per- |
petit que le fichier issu de Degas, mais il n'est reconnu par per- |
||
− | sonne! Pourquoi chercher |
+ | sonne! Pourquoi chercher � �pater la galerie avec des nouveaux |
formats ? Pourquoi ne pas charger et sauver en PI1, PI2, PI3, PC1, |
formats ? Pourquoi ne pas charger et sauver en PI1, PI2, PI3, PC1, |
||
− | PC2, PC3 et c'est tout ? |
+ | PC2, PC3 et c'est tout ? Premi�re r�gle: il faut donc penser � |
l'utilisateur et ne pas chercher de trucs tordus! Le premier menu |
l'utilisateur et ne pas chercher de trucs tordus! Le premier menu |
||
c'est celui du copyright, le second celui des fichiers avec tout |
c'est celui du copyright, le second celui des fichiers avec tout |
||
Line 44: | Line 44: | ||
distinguer! |
distinguer! |
||
− | De plus, par convention, les |
+ | De plus, par convention, les entr�es de menus qui d�bouchent sur |
un dialogue seront suivis de 3 points. |
un dialogue seront suivis de 3 points. |
||
− | Pensez aux grands |
+ | Pensez aux grands �crans et au TT !!!!! Lorsque vous tapez dans |
− | des adresses |
+ | des adresses syst�me document�es, pr�voyez un adressage sur 32 |
bits. Par exemple $FF8800 marchera sur ST mais plantera sur TT. |
bits. Par exemple $FF8800 marchera sur ST mais plantera sur TT. |
||
− | C'est en effet une adresse invalide si on cherche |
+ | C'est en effet une adresse invalide si on cherche � s'en servir en |
32 bits (avec le 68030). Il faut donc utiliser $FFFF8800 qui mar- |
32 bits (avec le 68030). Il faut donc utiliser $FFFF8800 qui mar- |
||
chera sur toutes les machines. |
chera sur toutes les machines. |
||
− | Ne testez pas la |
+ | Ne testez pas la r�solution avec Xbios4 ! C'est p�rilleux car, en |
− | cas de grand |
+ | cas de grand �cran, vous recevrez n'importe quoi! Pour l'ouverture |
+ | maxi d'un fen�tre, demandez au GEM la taille de la station de tra- |
||
− | maxi d'un fenˆtre, demandez au GEM la taille de la station de tra- |
||
− | vail (voir le source avec la |
+ | vail (voir le source avec la fen�tre). Une copie de blocs � faire |
? Utilisez la fonction Vro_cpy, mais si c'est une copie avec |
? Utilisez la fonction Vro_cpy, mais si c'est une copie avec |
||
+ | l'�cran, il y a une solution simple: vous serez obliger de fabri- |
||
− | l'‚cran, il y a une solution simple: vous serez obliger de fabri- |
||
quer une structure FDB (Form Definition Block). C'est une struc- |
quer une structure FDB (Form Definition Block). C'est une struc- |
||
ture qui indique la largeur de la surface de travail, sa longueur, |
ture qui indique la largeur de la surface de travail, sa longueur, |
||
le nombre de plans etc... Au lieu de demander au GEM toutes les |
le nombre de plans etc... Au lieu de demander au GEM toutes les |
||
+ | donn�es, remplissez la de 0, et le GEM saura de lui m�me que vous |
||
− | donn‚es, remplissez la de 0, et le GEM saura de lui mˆme que vous |
||
− | voulez parler de l' |
+ | voulez parler de l'�cran, et se d�brouillera tout seul! |
− | Pour vos accessoires, testez vos ressources en basse |
+ | Pour vos accessoires, testez vos ressources en basse r�solution! |
− | Un accessoire, comme son nom l'indique doit |
+ | Un accessoire, comme son nom l'indique doit �tre accessoire, |
+ | c'est-�-dire fonctionner sans g�ner le reste de la machine : Pe- |
||
− | c'est-…-dire fonctionner sans gˆner le reste de la machine : Pe- |
||
tite taille (un accessoire de formatage de 100Ko hum!!!). |
tite taille (un accessoire de formatage de 100Ko hum!!!). |
||
Line 74: | Line 74: | ||
dessins et de construire sa ressource avec l'option SNAP active |
dessins et de construire sa ressource avec l'option SNAP active |
||
dans K_Ressource. Cette option permet d'avoir les boutons bien |
dans K_Ressource. Cette option permet d'avoir les boutons bien |
||
+ | plac�s quelle que soit la r�solution d'utilisation de la res- |
||
− | plac‚s quelle que soit la r‚solution d'utilisation de la res- |
||
− | source. Si possible placez la ressource |
+ | source. Si possible placez la ressource � l'int�rieur de l'acces- |
soire en la relogeant (voir listing de relocation ci-joint) cela |
soire en la relogeant (voir listing de relocation ci-joint) cela |
||
+ | �vite d'avoir plusieurs fichiers � manier quand on d�place les ac- |
||
− | ‚vite d'avoir plusieurs fichiers … manier quand on d‚place les ac- |
||
cessoires. |
cessoires. |
||
+ | N'h�sitez pas � mettre des raccourcis clavier dans vos ressources. |
||
− | N'h‚sitez pas … mettre des raccourcis clavier dans vos ressources. |
||
− | Si vous utilisez K Ressources vous verrez qu'il y a un |
+ | Si vous utilisez K Ressources vous verrez qu'il y a un acc�s � des |
+ | bits inutilis�s pour les objets. En effet, si l'on prend, par |
||
− | bits inutilis‚s pour les objets. En effet, si l'on prend, par |
||
− | exemple, les bits |
+ | exemple, les bits d�finissant les flags de l'objet, on se rend |
− | compte que seul les bits 0 |
+ | compte que seul les bits 0 � 8 sont utilis�s. Or le codage est |
fait sur un word, il nous reste donc 7 bits de libres. Ces bits |
fait sur un word, il nous reste donc 7 bits de libres. Ces bits |
||
+ | sont laiss�s au programmeur pour y stocker ce qu'il veut. A titre |
||
− | sont laiss‚s au programmeur pour y stocker ce qu'il veut. A titre |
||
indicatif voici ce que j'y mets: |
indicatif voici ce que j'y mets: |
||
Line 92: | Line 92: | ||
cet objet. |
cet objet. |
||
− | Extended_flag Touche(s) devant |
+ | Extended_flag Touche(s) devant �tre enfonc�e simultan�ment pour |
rendre ce raccourci valide. |
rendre ce raccourci valide. |
||
Bit 15 -> Alternate |
Bit 15 -> Alternate |
||
Line 99: | Line 99: | ||
Bit 12 -> Shift droit |
Bit 12 -> Shift droit |
||
Bit 11 et 10 -> position du soulignement. |
Bit 11 et 10 -> position du soulignement. |
||
− | (0=pas de soulignement, 1=on souligne la |
+ | (0=pas de soulignement, 1=on souligne la premi�re |
lettre etc...) |
lettre etc...) |
||
Extended_state Indication de la musique sur un octet |
Extended_state Indication de la musique sur un octet |
||
− | + | associ� � la s�lection de cet objet |
|
0 pas de musique |
0 pas de musique |
||
1 clochette |
1 clochette |
||
Line 113: | Line 113: | ||
Tout ceci me permet d'avoir des raccourcis clavier inscrits DANS |
Tout ceci me permet d'avoir des raccourcis clavier inscrits DANS |
||
la ressource ce qui permet des modifications ultra-rapide. Pour |
la ressource ce qui permet des modifications ultra-rapide. Pour |
||
− | les raccourcis, il faut utiliser de |
+ | les raccourcis, il faut utiliser de pr�f�rence la touche Alter- |
− | nate, car son utilisation avec un autre touche ne |
+ | nate, car son utilisation avec un autre touche ne g�n�re aucun ca- |
+ | ract�re. Cependant, 6 raccourcis claviers utilisent Control. Ils |
||
− | ractŠre. Cependant, 6 raccourcis claviers utilisent Control. Ils |
||
− | sont issus du MAC et ont tendance |
+ | sont issus du MAC et ont tendance � se g�n�raliser. Ces raccourcis |
+ | sont utilis�s dans les formulaires avec champs �ditables (entre |
||
− | sont utilis‚s dans les formulaires avec champs ‚ditables (entre |
||
autres choses) afin de faire du couper/coller entre ces champs. |
autres choses) afin de faire du couper/coller entre ces champs. |
||
− | CONTROL X | pour couper (place en buffer en l' |
+ | CONTROL X | pour couper (place en buffer en l'effa�ant |
− | | au |
+ | | au pr�alable) |
− | SHIFT CONTROL X | pour couper (mettre |
+ | SHIFT CONTROL X | pour couper (mettre � la suite dans le buffer); |
CONTROL C et | Comme avec X sauf que, dans le cas de X, le |
CONTROL C et | Comme avec X sauf que, dans le cas de X, le |
||
− | SHIFT CONTRL C | champ |
+ | SHIFT CONTRL C | champ �ditable est effac�, alors qu'avec C, il |
| conserve son contenu. |
| conserve son contenu. |
||
− | CONTROL V | colle le contenu du buffer en |
+ | CONTROL V | colle le contenu du buffer en effa�ant au |
− | | |
+ | | pr�alable le champ �ditable. |
− | SHIFT CONTROL V | idem mais sans effacement du champ |
+ | SHIFT CONTROL V | idem mais sans effacement du champ �ditable. |
Une autre remarque concernant les formulaires avec plusieurs en- |
Une autre remarque concernant les formulaires avec plusieurs en- |
||
+ | tr�es �ditables: j'ai remarqu� que par habitude l'utilisateur |
||
− | tr‚es ‚ditables: j'ai remarqu‚ que par habitude l'utilisateur |
||
tapait RETURN quand il avait fini de remplir un champ, et que, |
tapait RETURN quand il avait fini de remplir un champ, et que, |
||
− | souvent, le bouton ANNULER est mis en |
+ | souvent, le bouton ANNULER est mis en d�faut: l'appui sur RETURN |
donc, fait sortir du formulaire! |
donc, fait sortir du formulaire! |
||
+ | J'ai donc d�cid� de supprimer les boutons d�faut lorsqu'il y a des |
||
− | J'ai donc d‚cid‚ de supprimer les boutons d‚faut lorsqu'il y a des |
||
+ | entr�es �ditables et de g�rer diff�remment RETURN qui permet alors |
||
− | entr‚es ‚ditables et de g‚rer diff‚remment RETURN qui permet alors |
||
− | de passer au champ |
+ | de passer au champ �ditable suivant (comme TAB). |
+ | J'ai �galement rajout� quelques autres touches. Alors qu'avec TAB, |
||
− | J'ai ‚galement rajout‚ quelques autres touches. Alors qu'avec TAB, |
||
− | il est possible de passer d'un champ |
+ | il est possible de passer d'un champ �ditable au suivant, j'ai |
+ | ajout� Shift+TAB pour remonter au champ �ditable pr�c�dent. |
||
− | ajout‚ Shift+TAB pour remonter au champ ‚ditable pr‚c‚dent. |
||
− | CLR HOME permettant de revenir au premier champ |
+ | CLR HOME permettant de revenir au premier champ �ditable du formu- |
laire. Il serait possible d'ajouter UNDO. |
laire. Il serait possible d'ajouter UNDO. |
||
+ | R�-�crire une gestion totale de formulaire (en prenant comme base |
||
− | R‚-‚crire une gestion totale de formulaire (en prenant comme base |
||
+ | de d�part un article de ST Mag qui faisait �a en GFA par exemple) |
||
− | de d‚part un article de ST Mag qui faisait ‡a en GFA par exemple) |
||
− | n'est pas |
+ | n'est pas tr�s dur. Ce qui est sympa �galement c'est de rajouter |
+ | un petit carr� en haut � droite, afin de d�placer le formulaire. |
||
− | un petit carr‚ en haut … droite, afin de d‚placer le formulaire. |
||
− | Pour toutes ces options, vous pouvez bien |
+ | Pour toutes ces options, vous pouvez bien s�r faire �a � votre |
− | propre sauce, mais les raccourcis clavier dont je parle sont |
+ | propre sauce, mais les raccourcis clavier dont je parle sont d�j� |
+ | un peu utilis�s. Autant continuer afin que le syst�me se |
||
− | un peu utilis‚s. Autant continuer afin que le systŠme se |
||
+ | g�n�ralise, plut�t que de chercher � se distinguer par des trucs |
||
− | g‚n‚ralise, plut“t que de chercher … se distinguer par des trucs |
||
mal commodes. |
mal commodes. |
||
− | Je terminerai ce chapitre sur le GEM en vous invitant |
+ | Je terminerai ce chapitre sur le GEM en vous invitant � d�couvrir |
− | le Protocole de Communication GEM. Pour y avoir |
+ | le Protocole de Communication GEM. Pour y avoir acc�s, d�compactez |
le fichier PROTOCOL.AR avec ARCHIVE.PRG. Vous placez ce fichier en |
le fichier PROTOCOL.AR avec ARCHIVE.PRG. Vous placez ce fichier en |
||
− | ram_disque (par exemple D). Vous |
+ | ram_disque (par exemple D). Vous pr�parez une disquette vierge, |
vous lancez Archive vous choisissez Unpack avec D:\PROTOCOL.AR et |
vous lancez Archive vous choisissez Unpack avec D:\PROTOCOL.AR et |
||
comme destination A:\*.* et vous attendez. |
comme destination A:\*.* et vous attendez. |
||
Il y a tous les sources, la biblio, la doc, les exemples etc... |
Il y a tous les sources, la biblio, la doc, les exemples etc... |
||
− | Tous vos softs doivent |
+ | Tous vos softs doivent �tre compatibles avec ce syst�me s'ils veu- |
+ | lent �tre dans le coup!!! C'est facile et cela permet des d�lires |
||
− | lent ˆtre dans le coup!!! C'est facile et cela permet des d‚lires |
||
assez fabuleux! |
assez fabuleux! |
||
Revision as of 15:07, 23 November 2023
****************************************************************** * * * COURS D'ASSEMBLEUR 68000 SUR ATARI ST * * * * par Le F�roce Lapin (from 44E) * * * * Seconde s�rie * * * * Cours num�ro 9 * ****************************************************************** Ce petit cours va �tre un peu sp�cial, car il va fournir des indi- cations sur la fa�on de r�aliser des programmes GEM qui fonction- nent correctement. Il y a en effet quelques "trucs" � respecter. Sur MAC, les pro- grammeurs ont � leur disposition des bouquins traitant de l'ergo- nomie des logiciels. Qu'est ce que c'est ? Et bien c'est simple- ment un ensemble de r�gles � respecter afin que l'utilisateur ne soit pas perdu d'un programme � l'autre. Il faut en effet bien se souvenir que vous �tes programmeur et que votre ouvrage sera uti- lis� par des utilisateurs! R�fl�chissons un peu: qu'est ce que l'utilisateur recherche dans un programme de dessin: 1) avoir une sauvegarde de fichier compress� avec un algorithme sp�cial, qui compresse plus que les copains. 2) avoir la possibilit� de r�cup�rer le plus facilement possible ces dessins dans d'autres softs. Il para�t �vident que c'est la seconde solution qui est la bonne! Pourtant nous assistons � une prolif�ration de formats de fi- chiers, tous plus d�biles les uns que les autres! Ah bien s�r, le fichier compress� avec le logiciel de dessin Bidulmuche est plus petit que le fichier issu de Degas, mais il n'est reconnu par per- sonne! Pourquoi chercher � �pater la galerie avec des nouveaux formats ? Pourquoi ne pas charger et sauver en PI1, PI2, PI3, PC1, PC2, PC3 et c'est tout ? Premi�re r�gle: il faut donc penser � l'utilisateur et ne pas chercher de trucs tordus! Le premier menu c'est celui du copyright, le second celui des fichiers avec tout en bas l'option Quitter. Quelle merde de devoir chercher l'option Quitter tout au bout d'un menu parce que le programmeur a voulu se distinguer! De plus, par convention, les entr�es de menus qui d�bouchent sur un dialogue seront suivis de 3 points. Pensez aux grands �crans et au TT !!!!! Lorsque vous tapez dans des adresses syst�me document�es, pr�voyez un adressage sur 32 bits. Par exemple $FF8800 marchera sur ST mais plantera sur TT. C'est en effet une adresse invalide si on cherche � s'en servir en 32 bits (avec le 68030). Il faut donc utiliser $FFFF8800 qui mar- chera sur toutes les machines. Ne testez pas la r�solution avec Xbios4 ! C'est p�rilleux car, en cas de grand �cran, vous recevrez n'importe quoi! Pour l'ouverture maxi d'un fen�tre, demandez au GEM la taille de la station de tra- vail (voir le source avec la fen�tre). Une copie de blocs � faire ? Utilisez la fonction Vro_cpy, mais si c'est une copie avec l'�cran, il y a une solution simple: vous serez obliger de fabri- quer une structure FDB (Form Definition Block). C'est une struc- ture qui indique la largeur de la surface de travail, sa longueur, le nombre de plans etc... Au lieu de demander au GEM toutes les donn�es, remplissez la de 0, et le GEM saura de lui m�me que vous voulez parler de l'�cran, et se d�brouillera tout seul! Pour vos accessoires, testez vos ressources en basse r�solution! Un accessoire, comme son nom l'indique doit �tre accessoire, c'est-�-dire fonctionner sans g�ner le reste de la machine : Pe- tite taille (un accessoire de formatage de 100Ko hum!!!). Un seul fichier ressource. Cela implique de ne pas utiliser de dessins et de construire sa ressource avec l'option SNAP active dans K_Ressource. Cette option permet d'avoir les boutons bien plac�s quelle que soit la r�solution d'utilisation de la res- source. Si possible placez la ressource � l'int�rieur de l'acces- soire en la relogeant (voir listing de relocation ci-joint) cela �vite d'avoir plusieurs fichiers � manier quand on d�place les ac- cessoires. N'h�sitez pas � mettre des raccourcis clavier dans vos ressources. Si vous utilisez K Ressources vous verrez qu'il y a un acc�s � des bits inutilis�s pour les objets. En effet, si l'on prend, par exemple, les bits d�finissant les flags de l'objet, on se rend compte que seul les bits 0 � 8 sont utilis�s. Or le codage est fait sur un word, il nous reste donc 7 bits de libres. Ces bits sont laiss�s au programmeur pour y stocker ce qu'il veut. A titre indicatif voici ce que j'y mets: Extended_type scan code de la touche de raccourci pour cet objet. Extended_flag Touche(s) devant �tre enfonc�e simultan�ment pour rendre ce raccourci valide. Bit 15 -> Alternate Bit 14 -> Control Bit 13 -> Shift gauche Bit 12 -> Shift droit Bit 11 et 10 -> position du soulignement. (0=pas de soulignement, 1=on souligne la premi�re lettre etc...) Extended_state Indication de la musique sur un octet associ� � la s�lection de cet objet 0 pas de musique 1 clochette 2-63 digits 64-127 Xbios(32) 128-190 son au format Gist 191-255 musique format Mad Max ou Musexx Tout ceci me permet d'avoir des raccourcis clavier inscrits DANS la ressource ce qui permet des modifications ultra-rapide. Pour les raccourcis, il faut utiliser de pr�f�rence la touche Alter- nate, car son utilisation avec un autre touche ne g�n�re aucun ca- ract�re. Cependant, 6 raccourcis claviers utilisent Control. Ils sont issus du MAC et ont tendance � se g�n�raliser. Ces raccourcis sont utilis�s dans les formulaires avec champs �ditables (entre autres choses) afin de faire du couper/coller entre ces champs. CONTROL X | pour couper (place en buffer en l'effa�ant | au pr�alable) SHIFT CONTROL X | pour couper (mettre � la suite dans le buffer); CONTROL C et | Comme avec X sauf que, dans le cas de X, le SHIFT CONTRL C | champ �ditable est effac�, alors qu'avec C, il | conserve son contenu. CONTROL V | colle le contenu du buffer en effa�ant au | pr�alable le champ �ditable. SHIFT CONTROL V | idem mais sans effacement du champ �ditable. Une autre remarque concernant les formulaires avec plusieurs en- tr�es �ditables: j'ai remarqu� que par habitude l'utilisateur tapait RETURN quand il avait fini de remplir un champ, et que, souvent, le bouton ANNULER est mis en d�faut: l'appui sur RETURN donc, fait sortir du formulaire! J'ai donc d�cid� de supprimer les boutons d�faut lorsqu'il y a des entr�es �ditables et de g�rer diff�remment RETURN qui permet alors de passer au champ �ditable suivant (comme TAB). J'ai �galement rajout� quelques autres touches. Alors qu'avec TAB, il est possible de passer d'un champ �ditable au suivant, j'ai ajout� Shift+TAB pour remonter au champ �ditable pr�c�dent. CLR HOME permettant de revenir au premier champ �ditable du formu- laire. Il serait possible d'ajouter UNDO. R�-�crire une gestion totale de formulaire (en prenant comme base de d�part un article de ST Mag qui faisait �a en GFA par exemple) n'est pas tr�s dur. Ce qui est sympa �galement c'est de rajouter un petit carr� en haut � droite, afin de d�placer le formulaire. Pour toutes ces options, vous pouvez bien s�r faire �a � votre propre sauce, mais les raccourcis clavier dont je parle sont d�j� un peu utilis�s. Autant continuer afin que le syst�me se g�n�ralise, plut�t que de chercher � se distinguer par des trucs mal commodes. Je terminerai ce chapitre sur le GEM en vous invitant � d�couvrir le Protocole de Communication GEM. Pour y avoir acc�s, d�compactez le fichier PROTOCOL.AR avec ARCHIVE.PRG. Vous placez ce fichier en ram_disque (par exemple D). Vous pr�parez une disquette vierge, vous lancez Archive vous choisissez Unpack avec D:\PROTOCOL.AR et comme destination A:\*.* et vous attendez. Il y a tous les sources, la biblio, la doc, les exemples etc... Tous vos softs doivent �tre compatibles avec ce syst�me s'ils veu- lent �tre dans le coup!!! C'est facile et cela permet des d�lires assez fabuleux! Bons programmes GEM!!!!!
Back to ASM_Tutorial