APPLICATIONSUTILITAIRES RSX/LIGNE DE COMMANDE ★ LE CERCLE EN RSX ★

Cercle|Microstrad)Applications Utilitaires Rsx/ligne De Commande

Une nouvelle commande graphique pour votre CPC ; l'occasion d'utiliser quelques routines arithmétiques du système.

La cruelle absence de commande graphique destinée au tracé des cercles et ellipses se fait souvent sentir. Microstrad se devait donc de combler cette lacune... Mais pour faire preuve d'originalité, nous avons concocté un RSX très spécial, qui utilise les routines arithmétiques du Basic Locomotive. Nous obtenons donc une routine didactique mais assez performante, qui vous montrera - si vous voulez vous pencher un peu sur elle - l'art d'utiliser ce que votre CPC met à votre disposition.

La liste n° 1 est celle d'un programme Basic qui a servi de base à l'élaboration de notre RSX. Elle permet de tracer assez rapidement un cercle ou une ellipse, et utilise les fonctions trigonomé-triques classiques en pareille circonstance. Pour limiter le nombre de calculs trigo (qui sont grands consommateurs de temps), et accélérer le tracé, nous dessinons la courbe par quarts, et nous utilisons un pas angulaire de 10 degrés. Du même coup, le nombre de calculs se limite à 9 : de 80 à 0 degrés! Le programme est relativement long, mais le tracé du cercle devient beaucoup plus rapide, et plus harmonieux à regarder.

La liste n° 2 (page de droite) est la liste source du RSX, rédigée avec notre petit Assembleur favori. Cette liste est là pour vous aider à comprendre le fonctionnement du RSX. Rappelons une fois encore que le langage utilisé ici n'est pas du Basic et que la frappe de ce programme n'est possible que si vous utilisez un logiciel d'assemblage.

Cette liste est une version pour CPC 6128. Cinq routines arithmétiques système y sont utilisées (voir lignes 8 à 12), dont les points d'entrée sont différents sur les trois modèles de CPC. Si vous utilisez un Assembleur, modifiez seulement ces cinq lignes en vous aidant du tableau de conversions des routines arithmétiques que vous trouverez dans ce numéro, page 48.
La liste n° 3 est un chargeur Basic de la routine RSX, pour CPC 6128. Pour l'adapter à un autre modèle, prenez de préférence un Assembleur, et utilisez la liste n° 2 comme indiqué précédemment. Si vous ne possédez pas d'Assembleur, vous aurez un petit travail à faire à la main, en utilisant d'abord la liste n° 2.

Imaginons que vous souhaitiez adapter la routine cercle à votre CPC 464. Le processus à suivre sera le suivant :

1 - Repérez dans le tableau de conversions les adresses des points d'entrée des cinq routines utilisées (entflo, floent,..., cosinu). Par exemple, entflo correspond à BD64 sur le CPC 6128, donc à BD40sur le CPC 464.
2 - Retrouvez dans la liste source n° 2 tous les appels à ces cinq routines. Par exemple, entflo apparaît pour la première fois en ligne 33. Il y a neuf lignes à trouver : 33, 44, 72, 79, 81, 82, 96, 98 et 99.
3 - Modifiez sur chacune de ces lignes les octets de la colonne 3. En ligne 33, vous remplacerez CD64BD par CD40BD. Respectez l'inversion de l'écriture : BD40 s'écrit 40BD...
4 - Il ne reste plus qu'à retrouver dans le chargeur Basic (liste n° 3) les octets que vous avez changés et à les modifier de la même façon. C'est par exemple en ligne 310 que se trouvent les cd,64,bd, que vous remplacerez comme nous l'avons vu par CD,40,bd.
5 - Supprimez, dans la liste du chargeur Basic, les lignes 150 et 170. Supprimez aussi les lignes 340, 460, 580, 700, 820 et 880, car elles contiendraient des valeurs fausses. Sauvegardez votre programme et seulement ensuite essayez-le. Si vous ne faites aucune erreur dans ce travail, le fonctionnement est assuré. Dans le cas contraire, vous aurez sans doute droit à un « plantage ». Vérifiez alors toutes vos modifications.

Lorsque votre routine aura fait la preuve de son bon fonctionnement, vous pourrez sauvegarder la zone mémoire qui la contient en tapant :

SAVE “cercle”,b,&A000,&189

... Ce qui vous permettra de la recharger rapidement et à tout moment en tapant :

MEMORY &9FFF:LOAD “CERCLE”,&A000:CALL &A000.

Pour utiliser la routine, vous pouvez lui transmettre un paramètre pour obtenir un cercle, ou
deux paramètres pour une ellipse. Par exemple : |CERCLE,100 dessinera un cercle de cent points de rayon ; |CERCLE,100,50 dessinera une ellipse de cent points de rayon horizontal et de cinquante points de rayon vertical.

N'oubliez pas, auparavant, de vous placer en mode degrés (avec l'instruction deg), faute de quoi les cercles obtenus auraient un aspect inattendu, bien qu'esthétique !

MICROSTRAD n°5

★ EDITEUR: MICROSTRAD
★ ANNÉE: 1986
★ CONFIG: 64K + AMSDOS
★ LANGAGE:
★ LICENCE: LISTING
★ AUTEUR: JEAN-PIERRE LALEVEE

★ 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 » Abbreviated Printer Codes (Popular Computing Weekly)
» Applications » DigitExtension v1.2
» Applications » Scrolls Lacaux (Microstrad)
» Applications » Bstack (CPC Infos)
» Applications » Windows
» Applications » Proportionale Vector Schrift (CPC Amstrad International)

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 068 millisecondes et consultée 858 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.