APPLICATIONSPROGRAMMATION ★ LE MESSIE/COMPILATEUR INTÈGRAL ★

COMPILATEUR BASIC INTÈGRAL (CPC Revue)LE MESSIE/COMPILATEUR INTÈGRAL
Il est enfin arrivé ! Mais qui ? Le Messie bien sûr. Un compilateur de BASIC sur Amstrad c'est plutôt rare. Il faut donc en profiter pour expliquer aux néophytes le comment du pourquoi.

Un compilateur c'est un programme qui transforme un langage évolué (le BASIC par exemple) en langage machine. Quel est l'intérêt de la manœuvre ? Vous savez tous qu'un programme en BASIC n'est pas exécuté directement après un RUN, il y a d'abord une phase de "traduction". Le microprocesseur va transformer les instructions BASIC en code compréhensible par la machine. C'est cette traduction qui explique la relative lenteur d'exécution du BASIC par rapport au langage machine. Le Messie se propose donc de vous éviter cette phase de traduction en transformant immédiatement le programme en code. Ce qui veut dire que la vitesse d'exécution va augmenter. Il n'est plus alors nécessaire de connaître les secrets du Z80 pour obtenir du langage machine. Cela est malheureusement théorique puisqu' en fait le programme obtenu est rarement aussi compact et optimisé que celui créé directement en code machine. Le mode d'emploi de Messie est plutôt simple. Il suffit décharger par LOAD le programme BASIC à compiler puis de taper LOAD"ERE" :CALL &C000. Il s'agit surtout de respecter cette syntaxe car le programme principal occupe la mémoire écran, il ne faut donc absolument pas qu'il y ait une écriture à ce moment.

Si tout se passe bien, l'écran se "brouille" puis une certaine agitation se fait entendre au niveau du lecteur de disque. Vous devez donc avoir préala-blemeni introduit une disquette déprotégée contenant le programme de compilation puisque la procédure est automatique. Prévoyez une copie de l'original, on ne sait jamais... Sur votre disquette, vous devriez donc trouver un programme P.COM représentant le résultat des cogitations de Messie. Il ne reste qu'à lancer ce programme et le tour est joué ! Il s'agissait là du cas idyllique : aucun problème ne venant se glisser malicieusement dans le déroulement de la procédure. Mais il faut savoir qu'il y a parfois des erreurs. Celles-ci peuvent provenir d'instructions non comprises par Le Messie (voir liste) ou bien de la syntaxe particulière du compilateur. Les datas doivent être guillemetés lorsqu'il s'agit de caractères alphabétiques. LOAD et SAVE ne traitent que les fichiers binaires ; FILL ne fonctionne pas toujours.

Du côté des performances, si l'on laisse de côté les limitations de reconnaissance des instructions BASIC, la compilation génère un code plus important (en taille) que l'original. Prévoyez de la place sur vos disquettes !

Vous trouverez sur la disquette quelques programmes BASIC et leurs équivalents compilés. Le gain en vitesse est d'environ 4 secondes sur le programme CARTE. (Un dessin calculé s'affiche par rangée de points). En revanche, le programme compilé est 3 fois plus rapide sur le tri à bulles portant sur SO éléments. En général, tout ce qui concerne les graphismes n'est pas la meilleure démonstration des possibilités de Messie. Il est plus à l'aise dans le domaine des calculs. En effet, il accepte les variables en virgule flouante. Vous n'êtes donc pas limité aux nombres entiers, à vous les sinus, cosinus et autres tangentes.
Après un bref aperçu de ce nouveau produit, il semblerait que Le Messie soit un compilateur simple d'emploi ne demandant pas un apprentissage compliqué. Par contre, il n'est pas vraiment "intégral" malgré la prise en compte des variables autres que les entières. En effet. les instructions incomplètes nécessiteront des modifications de vos programmes. De plus, contrairement à ce qui est indiqué sur la pochette, les instructions de BASIC 1.1 (6128-664) ne sont pas implantées sur Le Messie. Les programmes comportant ces instructions ne peuvent être compilés directement ni sur le 6128 ni sur le 664 à fortiori...

C'est à peu près tout pour l'instant. Le peu de temps qui m'a été imparti pour essayer ce programme est peut-être la cause de certaines erreurs de jugement. Les prochaines versions apporteront sans doute de nouvelles possibilités. A suivre...

Liste des Instructions non
Implantées sur le MESSIE

AFTER
AUTO
CAT
CHAIN/CHAIN MERGE
CLEAR
CONT
COPYCHR$
DECS
DEF FN
DEFSTR
DELETE
DERR
EDIT
ENT
ERASE
ERL
EVERTY
FN
KEY DEF
UNE INPUT
FRAME
IMP
OUT
SQ
WAIT
WIDTH
LIST
MASK
MAX
MERGE
MID
MIN
ON BREAK
ON SQ GOSUB
RENUM
RESUME/RESUME NEXT
ROUND
RUN
SPC
SPEED WRITE
STRINGS
TAB
TRON/TROFF
ZONE
CALL
CLEAR INPUT
DI
EI
ENV
ERR
ERROR

CPC n°36 - Juillet/Août 1988

★ EDITEUR: ERE INFORMATIQUE
★ ANNÉE: 198X
★ CONFIG: ???
★ LANGAGE: ???
★ LiCENCE: COMMERCIALE

★ AMSTRAD CPC ★ DOWNLOAD ★

Aucun fichier de disponible:
» Vous avez des fichiers que nous ne possédons pas concernent cette page ?
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Compilation : Demon PD - PD 23 - Games #4
» Applications » Compilation : Demon PD - PD 25 - Misc #5
» Applications » Compilateur Basic (LMC Software)
» Applications » Compilation : Demon PD - PD 53 - Slideshow #3
» Applications » CP/M-Hilfsprogramme für CPC und JOYCE
» Applications » Compilation : Soft-Box 10/86
Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce programme ?
» Vous avez remarqué une erreur dans ce texte ?
» Aidez-nous à améliorer cette page : en nous contactant via le forum ou par email.

CPCrulez[Content Management System] v8.7-desktop/c
Page créée en 154 millisecondes et consultée 2664 fois

L'Amstrad CPC est une machine 8 bits à base d'un Z80 à 4MHz. Le premier de la gamme fut le CPC 464 en 1984, équipé d'un lecteur de cassettes intégré il se plaçait en concurrent  du Commodore C64 beaucoup plus compliqué à utiliser et plus cher. Ce fut un réel succès et sorti cette même années le CPC 664 équipé d'un lecteur de disquettes trois pouces intégré. Sa vie fut de courte durée puisqu'en 1985 il fut remplacé par le CPC 6128 qui était plus compact, plus soigné et surtout qui avait 128Ko de RAM au lieu de 64Ko.