-(G)-(E)-(M)-(A)- [G]enPC [E]lite [M]acro [A]ssembler (C)oderite

-(G)-(E)-(M)-(A)-
[G]enPC [E]lite [M]acro [A]ssembler
(C)oderite SECTOR ONE 1994-95
Documentation francaise de la version 2.6
I. Introduction
1. Shareware
2. Credits
3. Greetings
II. Generalites
1. Modes d'adressage
2. Arithmetique
3. Directives d'assemblage
III. Mnemoniques
IV. Conclusion
--==--
I. Introduction
_______________
GenPC alias GEMA est un nouvel assembleur symbolique pour MS-DOS.
Il est
tres largement inspire de la reference en matiere d'assembleur : GenST
sur Atari. De
plus les normes et mnemoniques Intel ont etees un peu adaptes a la norme
Motorola 680x0
qui est beaucoup plus simple et logique. Contrairement a TASM qui se
donne un style
pseudo-structure qu'on doit trainer comme un boulet, qui buggue a mort
sur les
instructions 386+, et qui ne nous laisse pas vraiment controler
l'assemblage des
mnemoniques, GEMA vous laisse libre de coder comme des porcs et doit
bugger un peu
moins. Il supporte desormais tous les opcodes des processeurs Intel, du
8086 au P6, y
compris les opcodes non documentes !
De plus il est beaucoup plus rapide que TASM, ne necessite pas de
linker, et
possede des directives d'assemblages tres pratiques, en particulier le
INCBIN qui a
toujours fait atrocement defaut sur TASM et MASM.
Si vous ne codez pas encore en assembleur, GEMA est celui qu'il
vous faut pour
vous initier a la joie (heu...) des 80x86. De plus vous n'aurez aucun mal
a passer au
680x0 par la suite.
Si vous codez deja en 680x0 vous n'aurez pas a vous prendre la tete
pour
ingurgiter les bizarreries d'Intel et ne serez pas degoutes que TASM soit
aussi lourd a
utiliser que les 80x86 sont complexes.
Si vous codez deja en 80x86, vous devez en avoir marre de TASM et
MASM. GEMA
est l'assembleur qu'il vous faut ! Il est particulierement adapte a la
programmation en
mode flat (V86) ou protege et est tres simple a utiliser en 32-bits
contrairement aux
assembleurs cites precedemment.
Un environnement avec un editeur sympa du style Borland C++ et la
possibilite
d'assembler et de debugguer directement en memoire, est en finition.
I.1 Shareware
_____________
GEMA est un SHAREWARE. L'installer sur votre disque dur implique de
votre part
l'acceptation des conditions suivantes :
- Si vous travaillez au Centre de Facturation et de Recouvrement de
France-
Telecom a Savigny, vous devez faire sauter ma derniere facture, ainsi que
les suivantes
si possible,
- Si vous aimez le COBOL vous devez vous tirer une balle,
- Si vous etes surveillant a l'Epita, vous ne devez pas m'accuser a
tort de
gruger pendant les interros,
- Si vous etes un coder, graphiste, zikos ou courrier solitaire,
vous devez
entrer dans Sector One,
- Si vous etes une jeune fille d'une vingtaine d'annees, vous
devez
etre folle amoureuse de moi,
- Si vous pouvez avoir du matos pas cher, vous devez m'en faire
part,
- Si vous trouvez des bugs vous devez aussi m'en faire part,
- Si vous n'en trouvez pas c'est que vous ne l'avez jamais utilise,
c'est mal,
A propos, cette version n'est qu'une beta donc si il reste des bugs
c'est normal
mais n'hesitez pas a me les signaler en precisant bien ce que vous avez
fait, ce qui
aurait du se passer et ce que vous avez a la place, ainsi que la date de
votre version de
GEMA.
Les points suivants en particulier ne fonctionnent pas encore
(c'est pas un bug
c'est la flemme), mais ne sauraient tarder :
- Instruction CMPXCHG que je n'ai jamais reussi a assembler avec
TASM,
- Macros : uniquement presentes dans les versions enregistrees :
Si vous desirez vous enregistrer en tant qu'utilisateur legal de
GEMA, envoyez
la modique somme de 50 F a l'adresse figurant plus bas. Vous beneficierez
alors des
avantages suivants :
- Vous aurez bonne conscience,
- Vous encouragerez l'auteur a continuer de coder des sharewares,
- Vous recevrez en avant-premiere les mises a jour par InterNet
ou par courrier,
- Votre nom ou pseudo sera cite dans les prochaines versions.
Ca me ferait aussi tres plaisir de recevoir des programmes codes
avec GEMA...
I.2 Credits
___________
Assembleur : Doc, code, gfx (Heu...), musique (Ou ca ?) ......
Jedi/Sector One
Support moral :
.................................................... Stephanie
Correction des fautes d'orthographe de la doc francaise
................ Mogar
Softs utilises : Qedit, Gema, Hacker's View, DJGPP
Beta-testeurs : MJS, Altomcat/Sector One, ODC/Sector One,
Createur/Eko, Oxygene, Keops/Equinox,
Alexey Voinov
Vous pouvez nous contacter a l'adresse suivante :
Frank DENIS
2, Rue Madeleine Laffite
F-93100 MONTREUIL
Ou sur RTEL, bal SECTOR ONE, JEDI/SECTOR ONE ou ODC,
Ou par Email : j@nether.net
Vous pouvez recevoir la derniere version de l'assembleur par
InterNet en
envoyant un E-Mail avec le sujet GET GEMA a l'adresse precedente, ou par
ftp sur
ftp.nether.net dans le repertoire /pub/gema/* . Il est aussi disponible
en
telechargement gratuit sur ACE BBS au [+33] (1) 45 88 75 48 et par
FidoNet avec le
mot-cle GEMA sur la node 2:320/305. Vous pouvez aussi le telecharger par
Minitel au
prix d'un simple appel sur Paris sur RTC-One au (1) 48 70 10 29 ou (1) 48
58 46 17
( acces V34 possible au (1) 49 88 76 91 ) . GEMA doit trainer sur
d'autres BBS et
FTP mais c'est avec les moyens precedents que vous avez le plus de
chances d'avoir
la derniere version le plus rapidement possible.
Mais par pitie ne me telephonez pas...
I.3 Greetings
_____________
Un gros bisou a : Infiny (LCA), Eclipse (Hacker Croll), CyberPunk
(qui m'a tout
appris d'Unix et du C), Gerald (merci pour les bouquins sur le C++),
Trash, Dream
Syndicate, Underground Tectonics (Sexo, Online, Clocky), Eko (Maxx, McDo,
Createur),
Eagles (Ard), Equinox (Checksum, Al Cool, Keops), Lego System (Skill),
Dune (Meerclaw, Evil Metal, Chuck, Floopy...), Fantasy (Deneb, Remalon :
Hep faut vous
mettre a l'asm), Genesis (Lachez le TP), DBA (Bonus Software), Sentry
(Eagle), Isiolis,
Imphobia, Dead Hacker Society, Control Team, Quicky, Anixter, Fantasy,
Live!,
Fongus, Bresil, DSK, Alexey Voinov, Oxygene, Jared, Impact Studios,
Kloon,
Antares, Pulse, RealTech, Animal Mine, Oxyron, Max in the Star System,
Epsilon, EMF, Plant, Cascada, Cubic Team, et a vous...
Une liste plus complete est disponible dans la version anglaise
de la doc.
II. Generalites
_______________
GEMA necessite un 386, un 486, un Pentium ou un P6 (32 bits
oblige). Il prend un
ou deux parametres qui sont le nom du fichier source et eventuellement le
nom du fichier
executable.
Genre : gema youpla.s
ou : gema youpla.s yahoga.exe
Si il n'y a pas de second parametre, le fichier cree sera le nom
du fichier
source avec l'extension EXE ou COM.
Quelques options peuvent preceder les noms de fichiers :
-E ou --preprocess : affiche chaque ligne traitee
-v ou --verbose : affichage etendu
-q ou --quiet : affichage reduit
-o ou --optimize : optimisations automatiques ( 3 passes
necessaires )
-nw ou --nowarning : n'affiche plus les warnings
-a ou --autoalign : alignement automatique ( experimental )
-86, -88, --cpu=86 ou --cpu=88,
-186 ou --cpu=186,
-286 ou --cpu=286,
-386 ou --cpu=386,
-486 ou --cpu=486,
-586, -pentium, --cpu=586 ou --cpu=pentium,
-686, -p6, --cpu=686 ou --cpu=p6 : assemble uniquement les
opcodes
reconnus par le type de processeur designe. Par default, toutes les
instructions
du 8086 au p6 sont reconnues.
II.1 Modes d'adressage
______________________
Les modes d'adressage sont au format Motorola 680x0, a savoir :
Designation Intel GEMA
------------------------------------------------------------------
Immediat court 12 #12.b
Immediat (mot) 32000 #32000.w
Immediat (mot long) 99999 #99999.l
.b, .w et .l sont facultatifs, il permettent en fait de forcer un
type, par exemple pour faire reconnaitre une valeur qui se coderait sur
un octet comme
1 / 24 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !