CODINGLES COURS DU PROFESSEUR ALI GATOR ★ TAG ET LES MODES GRAPHIQUES ★

Ali Gator - 03. TAG et les Modes Graphiques (Micro-Mag)

Voici, tant attendue, la suite que laissait présager l'étude des modes graphiques abordée le mois dernier.

Outre le mode XOR déjà évoqué (qui per met de déplacer des caractères sans altérer le décor), d'autres modes graphiques restent à étudier dont voici un bref rappel

I - Les modes graphiques

  • Mode transparent : CHR$(22) + CHR$(1)
  • Desactive : CHR$(22) + CHR$(0)
  • Mode XOR : CHR$(23) + CHR$(1)
  • Mode AND : CHR$(23) + CHR$(2)
  • Mode OR : CHR$(23) + CHR$(3)
  • Desactive: : CHR$(23) + CHR$(0)

Laissons de côté le mode transparent désormais connu, pour aborder le principe des expressions logiques XOR, AND et OR et l'effet qu'elles provoquent sur les bits d'un octet Voici trois exemples pour chacune d'entre -elles Le premier opérande représente l'octet de dépan (le décor), le suivant, l'octet affiché et le troisième, le résultat obtenu à l'écran.

Il est donc évident que la superposition de deux caractères subissant une des trois opérations précitées, suscitera toutes sortes d'effets spéciaux. Pour vous en convaincre, nous allons raisonner au niveau du pixel. En mode 1, le codage d'un pixel se fait sur deux bits.

Pour les quatre couleurs, nous disposons des combinaisons suivantes :

  • encre 0 : valeur des deux bits : 00
  • encre 1 : 01
  • encre 2 : 10
  • encre 3 : 11

Superposons deux pixels en leur appliquant un XOR

  • Pixel du fond à l'entre 1:01
  • Pixel affiché à l'encre 2:10

Mode XOR
00000000
11111111
-----------
11111111
11111111
00000000
-----------
11111111
00001111
00001111
-----------
00000000
Mode AND
00000000
11111111
-----------
00000000
00000000
11111111
-----------
00000000
00001111
00001111
-----------
00001111
Mode OR
00000000
11111111
-----------
11111111
11111111
00000000
-----------
11111111
00001111
00001111
-----------
00001111

Résultat après XOR : 11

Soit un pixel à l'encre 3 Maintenant, réaffichons ce pixel au même endroit.

  • Pixel actuel encre 3: 11
  • Pixel réaffiché encre 2:10

Résultat sous XOR : 01

Et voilà notre pixel de fond récupéré Ainsi apparaît clairement pourquoi un double affichage- sous XOR, permet un déplacement de caractères (au prix d'un changement de couleur) sans altération du décor Le principe est identique avec les modes AND et OR, où seule change la fonction logique. En mode AND, le pixel ne sera affiché que si le pixel du fond est différent de 0. Cet affichage se réalise lui aussi au prix d'un changement de couleur. Le mode OR, qui a pour effet d'afficher tous les pixels différents de 0, correspond ni plus ni moins au mode transparent Mais alors pourquoi ce double-emploi ? Tout simplement parce que le mode transparent, activé avec CHR$(22) + CHR$( 1 ), perd tout pouvoir lorqu'il est employé avec TAG. Pour palier à cet inconvénient, une seule solution : le mode OR qui permet de retrouver l'effet désiré.

Voir le court listing ci-dessus destiné à clarifier notre exposé.

II - La commande TAG

Afin d'obtenir les effets XOR, AND et OR lors de l'affichage d'un caractère, il est nécessaire que cet affichage se réalise sous mode graphique L'activation de ce mode s'effectue par la commande TAG, dont la mise en œuvre un tantinet complexe, ne doit pas occulter les avantages offerts. L'affichage d'une chaîne de caractères avec un LOCATE en MODE 1, limite de par les quarante positions horizontales et les vingt-cinq lignes verticales possibles. Avec TAG, cette chaîne de caractères peut être affichée à n'importe quelle position graphique Le nombre de positions offertes n'est plus de 40 x 25 mais de 640 x 400. Néanmoins. il faut impérativement respecter quelques règles, la principale étant le point virgule après la variable à afficher

PLOT -10,-10,1:TAG:MOVE 200,200:PRINT « MICRO MAG »

TAGOFF

Le PLOT en début de ligne permet de définir le stylo utilisé pour I affichage Les possesseurs de 6128 le remplaceront avantageusement par un Graphie Pen ou mieux encore, par MOVE 200. 200. I car le Basic du 6128 admet jusqu'à quatre paramètres après un MOVE En I absence de point virgule apparaissent après la variable deux caractères de contrôle bizarres: les CHR$(13) et CHR$(10).

Pour un simple affichage, le MOVE n est pas obligatoire il sert surtout pour les déplacements de la variable (cf La récréation de ce mois). Le TAGOFF en fin de ligne déconnecte l'affichage en mode graphique et redonne la main à l'affichage texte Nous voici arrivés au terme de notre leçon La prochaine traitera des fichiers et de la façon de les manipuler.

MICROMAG n°3

★ EDITEUR: MICROMAG
★ ANNÉE: 1989
★ AUTEUR: CLAUDE LE MOULLEC
 

Page précédente : Ali Gator - 02. Les Modes Graphiques
★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» TAG  et  les  Modes  Graphiques    (Micromag)    LISTINGDATE: 2020-05-28
DL: 178
TYPE: PDF
SiZE: 96Ko
NOTE: 1 page/PDFlib v1.6

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

Lien(s):
» Coding » Ali Gator - 08. La mémoire écran (Micro-Mag)
» Coding » Clefs1 34 Circuit Ppi8255 - Generalites
» Coding » Ali Gator - 02. Les Modes Graphiques (Micro-Mag)
» Coding » Ali Gator - 10. Le nouveau discours de la méthode (Micro-Mag)
» Coding Src's » Equalisers horizontal et vertical
» Coding » Ali Gator - 12. Le Fichier de REM (Micro-Mag)
Je participe au site:
» Pour ce titre nous ne disposons de fichier executable sur CPC (Saisie du listing) , alors si vous avez ça dans vos cartons ou vous désirez usé vos petit doigts boudinés sur votre clavier faites le nous savoir.
» Vous avez des infos personnel ?
» 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 449 millisecondes et consultée 885 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.