Canon X-720 video interface
guillaume.tello@orange.fr

Retour au Canon X-07
Back to Canon X-07




Vue du Canon sur son extension Video X-720 reliée à une télé, on voit également les deux imprimantes et l'interface cassettes.

Français
View of the Canon plugged into the X-720 video interface connected to a TV set, you can see the two printers and the cassette interface.

English
Très agréable d'utiliser l'éditeur plein écran pour éditer un programme. A better way to edit your programs using this full page editor.
Le mode TEXTE
Mode SCREEN 1, on dispose d'une fenetre de 32x16 caractères. Au niveau des couleurs, c'est très limité:
  • jeu 1: vert clair et foncé
  • jeu 2: rouge clair et foncé.
La commande COLOR x,y,z permet de chosir la couleur (x) des caractères, (y) du fond et (z) le jeu. Regardez l'exemple ci-contre, avec COLOR 1,2,2 les caractères sont en couleur (1) claire sur (2) foncée du jeu (2) c'est à dire rouge. Donc le CLS suivant remplit tout de rouge foncé. Les couleurs 3 et 4 se réfèrent donc au vert.

Dans le second exemple, on change pour COLOR 1,2,1 (c'est à dire le jeu de couleurs 1). Le fond par CLS est vert et les couleurs 3 et 4 se réfèrent au rouge.

Impossible de mélanger sur le même caractère le rouge et le vert.

En mémoire, chaque caractère utilise l'une des 512 positions entre $8000 et $81FF où est stocké son code ASCII. Mais il y a en plus 512 octets entre $9000 et $91FF pour les attributs de chaque caractère.
Octet caractère: abcdefgh code ASCII
Octet attribut:  xxxxxijk
           i=0 pour du texte,
           j=jeu de couleur,
           k=inversion clair/sombre.




TEXT mode
Mode SCREEN 1, we have a window with 32x16 characters. Colors are limited:
  • set 1: light and dark green
  • set 2: light and dark red
The command COLOR x,y,z sets the character color (x), the background color (y) and the set (z). Have a look at the listing next: with COLOR 1,2,2 characters are in color 1=light on a 2=dark background with set (2=red). So, the CLS fills all with dark red. Colors 3 and 4 refer to light and dark green.

In the second example, the command is changed to COLOR 1,2,1, changing the set to 1. So the CLS fills all with dark green and colors 3 and 4 refer to light and dark red.

Note that it's not possible to mix green and red on a same character

In memory, each character occupies one of the 512 positions from $8000 to $81FF where you find its ASCII code. Another 512 bytes zone from $9000 to $91FF is used for each character's attributes.
Byte character: abcdefgh ASCII code
Byte attribute: xxxxxijk
              i=0 for text,
              j=color set,
              k=reverse light/dark.
Le mode SEMI-GRAPHIQUE
Le mode SCREEN 2 permet d'écrire du texte et d'utiliser une basse résolution graphique de 64x48 en 8 couleurs. En fait, en mémoire, si l'octet d'attribut a son bit i fixé à 1 ($04) alors la case bascule en mode semi graphique et les 8 bits de l'octet caractère sont interprétés ainsi:
Octet caractère: abcdefgh
   ab = code couleur
   cdefgh = 6 pixels de la case
            organisés ainsi 2x3:
            pixel c pixel d
            pixel e pixel f
            pixel g pixel h
Octet attribut : xxxxxijx
   i = 1 graphique
   j = jeu de couleur
   (inversion non supportée)
Les couleurs sont:
   Jeu 1        Jeu 2
00 Vert clair   Blanc
01 Jaune        Bleu clair
10 Bleu         Violet
11 Rouge        Orange 
Dans l'exemple ci-contre, la valeur $B3 = 10110011 indique la couleur "10" et les pixels c,d et g,h allumés faisant deux lignes.

Premier bloc: l'attribut est 4 (=0100 en $9000) donc graphique en jeu 1, la couleur "10" est bleue.

Deuxième bloc: l'attribut est 6 (= 0110 en $9002) donc graphique en jeu 2, la couleur "10" est violet.

Troisième bloc: l'attribut est zéro (en $9004), donc mode texte, on affiche simplement le caractère $B3.

SEMI-GRAPHIC mode
SCREEN 2 mode allows to mix text and low resolution graphics 64x48 in 8 colors. In memory, if the bit i in the attribute byte is set to 1, then the box is converted into a semi-graphic zone. The bits are interpreted as this:
Byte character: abcdefgh
   ab = color code
   cdefgh = 6 pixels 2x3
         organised as this:
            pixel c pixel d
            pixel e pixel f
            pixel g pixel h
Byte attribute: xxxxxijx
   i = 1 for graphics
   j = color set
   (reverse not supported)
Colors are:
   Set 1        Set 2
00 Light green  White
01 Yellow       Light blue
10 Blue         Violet
11 Red          Orange 
In the example next, the value $B3 = 10110011 sets color to "10" and the pixels c,d and g,h on, drawing two lines.

First bloc: attribute is 4 (=0100 in $9000) so graphic with set 1, color "10" is blue.

Second bloc: attribute is 6 (= 0110 in $9002) so graphic with set 2, color "10" is violet.

Third bloc: attribute is zero (in $9004), so text, display character $B3.

MASTER MIND
C'est un bon exemple d'utilisation du mode semi-graphique.
Les textes apparaissent avec leur fond propre alors que le fond graphique est toujours noir.
Cliquez sur le début de listing sous l'image pour obtenir un scan complet du programme. Pour la vitesse d'affichage, j'utilise plutot des "poke" que les instructions graphiques.


MASTER MIND
It's a good example for the use of this semi-graphic mode.
Text appears with its own background while graphic background is always black.
Clic on the listing under the image to get a full scan of the program. For speed reasons, I used "poke" instead of graphic instructions.
Mode graphique couleur
Le SCREEN 3 permet 4 couleurs simultanées sur un écran de 128x96 points et occupe 3Ko de mémoire entre $8000 et $8BFF. Chaque octet représente 4 pixels contigus, ceci permet sur 2 bits d'avoir 4 couleurs par pixel selon la même table que dans le mode SCREEN 2. La couleur de fond et de bordure est celle de la couleur 00 selon le jeu (vert clair ou blanc).

Remarque: tous les modes graphiques utilisent le même système de coordonnées de 0-255 sur X et 0-191 sur Y. Les instructions graphiques se chargent de la translation vers les coordonnées réelles selon la résolution.

128x96, 4 colors, color set 1

128x96, 4 colors, color set 2
Color graphic mode
SCREEN 3 mode allows the use of 4 simultaneous colors on a 128x96 pixels screen and occupies 3KB of RAM from $8000 to $8BFF. Each byte represents four contiguous pixels, with 2 bits/pixels following the same encoding as SCREEN 2. Border color and background color is color 00 (light green for color set 1 and white for color set 2).

Note: every graphic mode uses the same coordinate system 0-255 for X and 0-191 for Y. The system routines manage the translation to the real coordinates according to the screen resolution.


Couleur haute résolution
Le mode SCREEN 5 est similaire au précédent sauf qu'il double la résolution verticale allant à 128x192. Les pixels sont aussi larges, mais deux fois plus fins en hauteur.

Notez la différence sur les lignes violettes, elles sont deux fois plus fines!

Ce mode occupe les 6Ko de la mémoire du X-720 entre $8000 et $97FF.

128x192, 4 colors, color set 2
Color high resolution
SCREEN 5 mode is similar to the previous one but it doubles the vertical resolution bringing it up to 128x192. Pixels have the same width but their height is half than before.

Note the difference on the violet lines, they are twice as thin!

This mode uses the whole 6KB of the X-720 from $8000 to $97FF.


Mode graphique duochrome
Le mode SCREEN 4 permet la résolution 128x192 en deux jeux différents de couleur:

Jeu 1: pixels vert clair sur fond vert foncé, bordure vert clair.

Jeu 2: pixels blancs sur fond noir, bordure blanc.

3 ko de mémoire sont nécessaires de $8000 à $8BFF. Chaque octet représente 8 pixels contigus.


128x192, color set 1
128x192, color set 2
Duochrome graphic mode
SCREEN 4 gives a resolution of 128x192 pixels with two different color sets:

Set 1: light green pixels, dark green background and light green border.

Set 2: white pixels, black background, white border.

3 KB are requiered from $8000 to $8BFF. Each byte represents 8 contiguous pixels.



Duochrome haute résolution
le mode SCREEN 6 est identique au mode 5 mais porte la résolution à 256x192. Les pixels sont donc deux fois moins larges.
Il nécessite 6Ko de $8000 à $97FF.

La différence se note sur les ligne verticales qui apparaissent plus fines.

256x192, color set 2
Duochrome high resolution
SCREEN 6 mode is similar to mode 5 but brings the resolution up to 256x192. Pixels are twice as thin than before.
This mode uses 6KB from $8000 to $97FF.

Note the difference on the vertical lines, they are thinner!

De manière générale, les modes utilisant 3Ko donnent également accès à une page TEXTE.

SCREEN n,2,2 affiche la page graphique

SCREEN n,3,3 affiche la page texte.

Ceci permet de visualiser des graphiques tout en basculant vers un menu texte.

Les modes utilisant 6Ko n'ont pas de page texte disponible.

In general, the modes that uses 3KB have a second TEXT page.

SCREEN n,2,2 swap to the graphic page

SCREEN n,3,3 swap to the text page.

So you can view graphics and use a text menu at the same time.

Modes using 6KB don't have free memory to use a TEXT page at the same time.

15 décembre 2007