APPLICATIONSCREATION GRAPHIQUE ★ DES GRAPHIQUES RÉUTILISABLES ★

Des graphiques réutilisablesApplications Creation Graphique
De nombreuses fois, dans cette rubrique, nous avons utilisé divers symboles notamment pour la réalisation de jeux. Ce mois-ci, nous avons réuni la majorité d'entre eux dans le programme que nous vous proposons. Il permet de les visualiser directement sous les trois modes que possède l'Amstrad et d'examiner la manière dont ils sont construits.

En effet une fois la figure choisie sélectionnée, le programme fournira directement la position, le nombre et le contenu des symboles nécessaires à sa représentation et ce, directement, sous forme des instructions à réutiliser dans un programme quelconque.

Notons enfin que certains graphiques utilisés au départ sur le Spectrum ont été adaptés ici à l'Amstrad.

Pour en venir à l'écriture du programme, on remarquera que l'ensemble des données nécessaires à la représentation de chaque illustration a été mémorisé sous forme de DATA. Les premières lignes du programme (lignes 30 à 960) sont donc réservées à cet effet. Nous avons fait précéder chaque groupe de DATA d'une indication, sous forme de REM, de manière à savoir à quel objet il se rapporte afin de simplifier l'étude du programme.

Enfin précisons que la première ligne de DATA de chaque groupe, ne comportant que deux données, permet à l'ordinateur de savoir de combien de symboles graphiques se compose la figure. La première donnée indique le nombre de symboles dans le sens horizontal, la seconde, dans le sens vertical. Si nous prenons, par exemple, le cas de la locomotive, nous trouvons en ligne 400 : DATA 6,2. Ceci indiquera à l'ordinateur que sa représentation occupe six symboles dans le sens horizontal et deux dans le sens vertical. Les lignes DATA suivantes contiendront les données nécessaires à la redéfinition de chacun de ces symboles.

Ensuite le programme affichera sur l'écran l'ensemble des dessins mémorisés.'Cette opération sera assurée par la quadruple boucle FOR... NEXT des lignes 1000 à 1120.

Précisons que les boucles formées à l'aide de P et Q ont pour mission de positionner le dessin sur l'écran et que celles utilisant X et Y contrôlent la position de chaque symbole graphique à l'intérieur d'un même dessin. Notons ici que NBX et NBY seront utilisées pour lire les deux premières données de chaque dessin et prendront donc respectivement pour valeur le nombre de symboles horizontaux et verticaux utilisés. Ceci permettra au programme de solliciter le nombre de fois nécessaires la sous-routine 1530, de manière à redéfinir chaque symbole.

L'ensemble des figures ainsi présenté, nous nous attacherons maintenant au contrôle du curseur permettant de sélectionner le graphique choisi. Cette fonction est assurée par les lignes 1130 à 1200 du programme. Les variables XC et YC contrôleront la position horizontale et verticale du curseur et Z permettra de déterminer sous quelle figure il se trouve. Notons que la variable auxiliaire ZP permet d'obtenir un déplacement relativement doux du curseur et autorise également une large tolérance sur sa position par rapport à celle du dessin désiré. Enfin Z sera utilisée pour diriger le programme vers la sous-routine correspondant à la figure choisie (ligne 1210).

Cette sélection effectuée, une procédure de visualisation de la figure choisie sera entamée. Le programme effacera donc l'écran, puis présentera cette dernière ainsi que, sous forme de lettres, la position des divers symboles graphiques qui la composent. Notons que la position de ces lettres est importante ; en effet, elle correspond à l'agencement des instructions “SYMBOL” nécessaires à sa représentation. Par la suite, le programme fournira le contenu de chaque instruction précédé de la lettre relative à sa position; c'est-à-dire sous une forme directement compréhensible par l'ordinateur, sous réserve que la lettre soit remplacée par un numéro. Comme dans un programme une série de redéfinitions de caractères peut porter sur n'importe quels nombres , nous avons choisi ici de figurer ces nombres par des lettres. Pour prendre un exemple, choisissons le cas du domino. Il comporte au total deux symboles graphiques. Si, pourquoi pas?, le premier de ces symboles correspond à 130, A sera donc 130 et B 131.

Cette forme de présentation de l'instruction SYMBOL est donc très souple et sera acceptée par l'ordinateur quelle que soit la position de départ choisie pour la redéfinition du jeu de caractères et quel que soit leur nombre. Ii ne faudra cependant pas oublier d'utiliser l'instruction SYMBOL AFTER xx, avant toute tentative de redéfinition des caractères ; xx représente ici le nombre immédiatement inférieur à celui choisi pour la création du premier caractère à redéfinir. Pour les dessins suivants, A, dans notre système de notation, correspondra au numéro du dernier symbole du dessin précédent, plus un.

Reprenons ici un exemple et redéfinissons'les symboles correspondant au domino et au sous marin. Supposons que le premier symbole du domino soit logé en 128 ; le second occupera, par voie de conséquence, le symbole 129. Pour le sous-marin on comprendra donc aisément que, lors de l'affichage des instructions SYMBOL, A correspondra à 130, B à 131, C à 132, D à 133, E à 134 et F à 135. Il en sera de même pour toute génération de symboles graphiques succédant à des caractères déjà déterminés ou à un numéro spécifique de redéfinition.

Les lignes 1320 à 1380 permettent d'afficher le dessin sélectionné sous les trois modes que comporte l'ordinateur et ainsi de juger de son aspect. Enfin le programme principal s'achèvera par l'affichage du contenu de chaque instruction SYMBOL. Cette fonction est assurée par les lignes 1390 à 1520. Afin de disposer d'une place suffisante sur l'écran, l'Amstrad passera en mode 2 puis l'affichage sera assuré par la double boucle FOR... NEXT des lignes 1430 à 1490. Reste les deux sous-routines auxquelles le programme principal fait régulièrement appel.

La première, lignes 1530 à 1620, concerne la redéfinition de chaque caractère graphique des dessins. Notons que nous utiliserons ici toujours le symbole 128 ; nous le redéfinirons donc pour chacune des étapes intervenant dans la formation du dessin.

Dans le cas de la locomotive, par exemple, nous le modifierons 12 fois de suite pour la représenter entièrement. Pour cela, à chaque fois, la sous-routine viendra lire le contenu de la chaîne DATA correspondant au caractère à afficher. Cette opération est effectuée par les lignes 1530 à 1600 de la sous-routine, puis la redéfinition du caractère sera assurée par la ligne 1610.

La seconde sous-routine a pour fonction d'initialiser, donc de sélectionner, le groupe d'instructions DATA que viendra lire la sous-routine précédente en fonction du dessin choisi. Il ne sera donc pas surprenant qu'elle soit exclusive-
ment composée d'instructions RESTORE.

L'utilisation de ce programme est extrêmement simple. Après l'avoir entièrement tapé, puis demandé RUN, l'ensemble des dessins disponibles apparaîtra sur l'écran. Le curseur sera alors placé sous la figure choisie en maintenant la touche ESPACE enfoncée aussi longtemps que nécessaire. Il suffira alors de maintenir la touche D appuyée un court instant pour que l'écran affiche le dessin sélectionné ainsi que la disposition des symboles qui le composent. Il sera alors possible de changer de mode en répondant oui à la question: “Voulez-vous changer de mode (O/N)”. On tapera O pour oui et N pour non.

Dès que N sera frappé, la composition de chaque symbole, sera affichée sur l'écran. Si la barre d'espace est de nouveau enfoncée, l'ensemble des dessins sera réaffiché. Il sera ainsi possible de sélectionner une seconde figure et ainsi de suite.

Henri-Pierre PENEL , Science&Vie n°843

★ EDITEUR: Science&Vie
★ ANNÉE: 1987
★ LANGAGE:
★ LiCENCE: LISTING
★ AUTEUR: Henri-Pierre PENEL

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listings:
» Des  Graphiques  Reutilisables    (Science  et  Vie)    FRENCHDATE: 2020-04-22
DL: 227
TYPE: ZIP
SiZE: 7Ko
NOTE: Uploaded by CPCLOV ; 40 Cyls
.HFE: Χ

» Des  Graphiques  Reutilisables    (Science  et  Vie)    LISTING    FRENCHDATE: 2016-03-11
DL: 263
TYPE: PDF
SiZE: 1277Ko
NOTE: 3 pages/PDFlib v1.6

★ AMSTRAD CPC ★ A voir aussi sur CPCrulez , les sujets suivants pourront vous intéresser...

Lien(s):
» Applications » Quadratic Equation Solver (Amstrad Computer User)
» Applications » Amstel Free Disk #4
» Applications » Printer-Protokoll (CPC Amstrad International)
» Applications » Druckerspooler unter CP/M 2.2 (CPC Amstrad International)
» Applications » Modus 2 (CPC Magazin)
» Applications » Bolsa (Amstrad Semanal)
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
Page créée en 202 millisecondes et consultée 1510 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.