Le programme de puissance 4 de la page précédente est fonctionnel mais la présentation est particulièrement sommaire. Il est facile de l’améliorer tout en restant en mode texte grâce à la librairie conio.h
. Cette dernière ne fait pas partie de la librairie standard du C et vient du monde MS-DOS, mais il existe une implémentation pour les processeurs 6502, fournie avec cc65.
La mise en œuvre est très simple et la documentation est disponible ici. Voici un programme d’exemple commenté pour Apple II :
/* Essai de la lib conio.h sous Apple II*/
#include <stdio.h>
#include <conio.h>
int main(void) {
char c ;
clrscr(); /* Efface l'écran */
printf("THIS IS A NICE TRY OF CONIO.H\n") ;
gotoy(5); /* Positionne le curseur à la 6eme ligne */
revers(1); /* Texte en mode inversé */
printf("TEXTE EN MODE INVERSE\n");
cprintf("Minuscules en mode inverse\n");
cprintf("grace a...\n\r");
cprintf("cprint.\n\r");
/*
* Avec cprintf le \n passe à la ligne suivante mais reste à la même
* colonne. Le \r permet de revenir à la colonne la plus à gauche.
*
* cprintf permet également d'afficher les lettres minuscules en
* mode inverse, alors que printf n'affiche que les majuscules en
* mode inverse.
*/
revers(0); /* Retour en mode normal */
printf("Back to normal\n");
c = cgetc(); /* Attente de saisie d'un caractère */
clrscr();
gotoxy(0, 22); /* déplace le curseur colonne 0 et ligne 22 */
cputc(c); /* Affiche le caractère */
chlinexy(10,10,25); /* Affiche d'une ligne horizontale aux coord
10,10 et de longueur 10 */
cvlinexy(8,8,5); /* Affichage d'une ligne verticale aux coord
8,8 et de longueur 5 */
c = cgetc(); clrscr();
return 0;
}
La librairie est ensuite utilisée pour rendre notre puissance 4 plus beau.
Voici le programme C correspondant : puissance4-conio.tar.gz.
Pour compiler et installer le jeu sur une « disquette » (ici fichier DISKTST.do
) :
tar xvzf puissance4-conio.tar.gz
cd puissance4
make all
make install
Vous pouvez ensuite jouer avec, par exemple, Applewin. Voici le résultat :
Il est ainsi facile d’améliorer la présentation d’un programme en mode console grâce à l’implémentation de conio.h de cc65.
A vous de jouer, maintenant !