APPLICATIONSPROGRAMMATION ★ COMPILATEUR BASIC INTÈGRAL ★

Le Messie/Compilateur Intègral|CPC Revue)Applications Programmation

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 manoeuvre ? 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 ★

Je participe au site:
» Newfile(s) upload/Envoye de fichier(s)
★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Mi - c - Compiler (CPC Amstrad International)
» Applications » Compilation : Demon PD - PD 26 - Misc #6
» Applications » Compilation : Demon PD - PD 41 - Starter Pack Two
» Applications » Compilation : Demon PD - PD 13 - DW Software 1
» Applications » Compilation : Demon PD - PD 39 - Amiga Graphics pt 2
» Applications » Compilation : Demon PD - PD 71 - Demo Mania!

QUE DIT LA LOI FRANÇAISE:

L'alinéa 8 de l'article L122-5 du Code de la propriété intellectuelle explique que « Lorsque l'œuvre a été divulguée, l'auteur ne peut interdire la reproduction d'une œuvre et sa représentation effectuées à des fins de conservation ou destinées à préserver les conditions de sa consultation à des fins de recherche ou détudes privées par des particuliers, dans les locaux de l'établissement et sur des terminaux dédiés par des bibliothèques accessibles au public, par des musées ou par des services d'archives, sous réserve que ceux-ci ne recherchent aucun avantage économique ou commercial ». Pas de problème donc pour nous!

CPCrulez[Content Management System] v8.7-desktop/cache
Page créée en 100 millisecondes et consultée 906 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.