Salut à vous tous, fans de CPC, novices passionnés et bidouilleurs de génie ! L’initiation continue avec, ce mois-ci, un « truc » qui ravira certainement ceux qui ont décidé de se mettre au CP/M, et qui leur évitera bien des frais d’oculiste…

RĂ©flĂ©chissez bien : quelle a Ă©tĂ© votre rĂ©action la première fois que vous avez lancĂ© CP/M. je veux dire juste après l’avoir lancĂ©, lorsque le message CP/M 22… s’est affichĂ© devant vos yeux Ă©blouis ? Hum. dites ? Relisez bien la première phrase, la rĂ©ponse s’y trouve pour au moins quatre-vingt-dix-neuf pour cent des utilisateurs de ce système… AlleĂ® une fois, je vous la donne la rĂ©ponse, hein, que c’est pas jour de fĂªte tout le temps : vous avez Ă©tĂ© littĂ©ralement EBLOUIS! Si ce n’est plus. L’Amstrad a de fort belles couleurs, c’est un fait.

Entre autres, des bleus sublimes. Mais de lĂ  Ă  mettre un fond bleu turquoise hyper-lumineux dans le CP/M c’est un pas qui n’aurait pas dĂ» Ăªtre fait ! J’avoue avoir passĂ© de longues nuits avec le vĂ©nĂ©rĂ© Robby.

PenchĂ© sur son Amstrad, Ă  dĂ©couvrir le monde de merveilles que celui-ci nous offrait. Mais Ă  3 heures du matin, alors que nos yeux rougis par quinze heures de programmation menaçaient de tomber de leur orbite, le passage au CP/M devenait une vĂ©ritable Ă©preuve de force… Bien sĂ»r. notre grande sagacitĂ© (non non. je n’ai pas la grosse tĂªte…) finit par avoir raison de ce problème, et c’est avec un plaisir non dissimulĂ© que je vous fais part, aujourd’hui, de la solution de cet Ă©pineux problème !

 

APRES LE MINITEL, LE CP/M ROSE, ET TOC !

Quoique le rose, en matière de couleurs, j’aime pas… Bon. au boulot. CHARGEEEEEEEEZ ! (votre CP/M tiens, quelle question…) CPM pour les ceusses qui ont un clavier qwerry, Ă¹CPM pour les autres, nous voilĂ  parĂ©s. VĂ©rifiez que le programme SETUP.COM est bien prĂ©sent sur votre disquette, c’est lui que nous allons utiliser. Fin de l’intermède, on continue.

 

UN LOOK PRO ? PAS D’PROBLEM’ MON BON SEIGNEUR…

Pour moi. le look professionnel en CP/M 2.2 serait du style caractères noirs sur fond gris. CarrĂ©ment noirs sur fond gris mĂªme, n’ayons pas peur des mots. Ma dĂ©cision Ă©tant prise (irrĂ©vocablement !). je vais vous expliquer les dessous de l’histoire (dessous, c’est le genre de mot qui me fait toujours penser Ă  Miss X, allez savoir pourquoi… ).

La première chose à faire, sachant que nous allons modifier un programme vital pour le CP/M, est de créer une copie de la disquette complète, sur laquelle nous prendrons l’habitude de travailler, au cours des formations à venir.Je ne dis pas ça pour rire, il m’est arrivé plus d’une fois de ne pas pouvoir démarrer mon CP/M après certaines petites modifications… Je ne vous explique pas la procédure, je suis sûr que vous avez tous un bon copieur…

Bien, ceci étant dit et surtout fait je l’espère, nous allons lancer le programme en tapant :

SETUP
Suivi, bien entendu, d’un appui sur la touche Return. Certains d’entre vous, parmi les plus perspicaces, poseront la question suivante : ‘Dis donc toi. t’es un marrant, mais tu nous dis que le programme s’appelle SETUP.COM. et ensuite faut juste taper SETUP, comment se fait-ce ? » A quoi je rĂ©ponds : « Bonne question, fils, et pour m avoir coupĂ© dans mon cours, tu me feras cent ArkanoĂ®d et un Barbarian. Amen. » En fait, le CP/M cherchant par dĂ©faut Ă  exĂ©cuter les fichiers d’extension .COM, il devient inutile de prĂ©ciser celle-ci… Notre fichier est maintenant chargĂ©, il est l’heure de faire face Ă  la première question…

 

ARGHHH ! POURQUOI MOI ?

Cet l’exclamation poussée par tous ceux qui ne comprennent pas le moindre petit mot d’anglais : n’ayez pas peur, je suis là. La première question posée par ce fichier est celle-ci

**! initial command buffer empty
Is this correct Y/N :__

RĂ©pondez Y Y=Yes=Oui. on s’en serait douté… si vous ne voulez pas Ăªtre embĂªtĂ©, et cela sans appuyer sur la touche Return. ApparaĂ®t alors la commande qui nous intĂ©resse, et qui s’affiche sous la forme suivante :

Sign-on string :
^@ww^a@@^JwwCPM 2.2
Amstrad Consumer Electronics plc^J^M

Is this correct Y/N :__
Pour les possesseurs de CPC AZERTY. la deuxième ligne comme ceci :

^çàww^çaàà^§wwCPçM 2.2
Amstrad Consumer
Electronics plc^sJ^M

Is this correct (Y/N) :

Le moins que l’on puisse dire est que ça n’est pas correct de nous sortir une chose pareille… Si la vue de cette ligne n’a pas déclenché de crises cardiaques prématurées parmi mes lecteurs adorés, je vais pouvoir continuer, dès que vous aurez appuyé sur N (N = Non). De toute façon, n’ayez pas peur, je vais prendre mon temps, et vous verrez que ce nest pas aussi compliqué que cela en a l’air…

 

C’EST MEME TRES SIMPLE !

Mon propos n’étant pas de vous assommer, nous allons oublier le cĂ´tĂ© « technique » dans ce chapitre, et voir simplement la façon de changer nos couleurs. Les initiĂ©s, et tous ceux qui le dĂ©sirent trouveront des informations plus prĂ©cises dans le chapitre suivant… A ceux qui ne sentent pas prĂªts pour ce genre de choses. je demanderai simplement d’apprendre les choses suivantes :

– » ( ^ ç en AZERTY) est équivalent à INK en Basic (définition des couleurs d’écriture). Pour avoir ces caractères, appuyez simultanément sur la touche Ctrl (Contrôle sur les 6128) et la touche » « . ou la touche « ç » sur les claviers AZERTY.

– ^] est équivalent à BORDER en Basic (définition de la couleur du bord de l’écran). Cette ibis-ci. appuyez simultanément sur Ctrl et la touche » D » pour les claviers QWERTY, ou CTRL et la touche « 3 » sur les claviers AZERTY.

– Les caractères allant de @ à Z correspondent au numéro de couleur @ étant
égal à 0, A à 1,B à 2,.. Z à 26. Vous pouvez taper ces signes indifféremment en majuscules ou minuscules, c’est déjà ça…

Relisez plusieurs fois ce passage si vous n’avez pas saisi du premier coup, sinon on se retrouve tout de suite pour les initiés et les fanas, un peu après pour les autres…

 

TOUT DE SUITE !

Vous voulez en savoir plus, vous Ăªtes sĂ»r ? D’accord, mais vous 1 aurez voulu… Vous nâ€™Ăªtes pas sans savoir, je suppose, que les lettres et autres caractères qui apparaissent sur nos Ă©crans obĂ©issent Ă  une norme de codage, l’ASCII. Ainsi, que ce soit sur un ZX81 ou sur un PC, la lettre A aura toujours le code 65… Cependant, certains caractères non affichables sont appelĂ©s « codes de contrĂ´le », et ce sont ceux-ci que le CP/M utilise pour dĂ©finir, entre autres, les couleurs. Ils sont aisĂ©ment repĂ©rables, puisque toujours prĂ©cĂ©dĂ©s du signe « ». Il n’y a pas d’explication prĂ©cise Ă  donner pour le choix des codes de contrĂ´le gĂ©rant les couleurs : ceux-ci sont assignĂ©s par le constructeur, et le fait qu’ils soient lĂ  devrait suffire Ă  notre bonheur…

IntĂ©ressons-nous plutĂ´t Ă  la mĂ©thode employĂ©e par notre CPC pour transformer de simples caractères en couleurs visibles par tous et toutes : celui-ci va simplement dĂ©coder les caractères, puis diviser le chiffre trouvĂ© afin de pouvoir l’utiliser. Mais une division de type classique offre deux inconvĂ©nients : la valeur trouvĂ©e peut tout de mĂªme Ăªtre trop grande (une soustraction offrirait le mĂªme inconvĂ©nient) et d’autre part, le rĂ©sultat serait le plus souvent un nombre Ă  virgule, le processeur perdant alors un temps fou en calcul… La solution porte un nom simple : MOD. MOD est une fonction de calcul, qui, comme son nom l’indique, donne le « modulo » d’une division.

Cette fonction est très simple, mais son explication étant difficile, un bon exemple en Basic s’impose :

PRINT 5 MOD 2 nous donnera comme rĂ©ponse 1. Pour arriver Ă  ce rĂ©sultat notre machine procède en gros de cette façon : 5 est Ă©gal Ă  deux fois 2 et il reste 1, cela Ă©tant le rĂ©sultat Ă  afficher. Simple, non ? Ainsi, quel que soit le chiffre donnĂ©, la rĂ©ponse Ă  un modulo 2 ne peut Ăªtre que 0 ou 1. Sur notre CPC. 16 encres sont dĂ©finissables, dans 27 couleurs possibles. Pour arriver Ă  ces chiffres, CP/M demandera donc un modulo 16 pour le numĂ©ro d’encre, et un modulo 32 pour la couleur : par cette mĂ©thode, il retombera toujours sur un chiffre compris entre 0 et 15 pour l’encre, et 0 et 31 pour la couleur.

Un modulo 32 dites-vous ? Mais puisqu’il n’y a que 27 couleurs, pourquoi un modulo 32 ? Tout simplement parce que les multiples de 8 sont beaucoup plus faciles Ă  gĂ©rer pour la machine que n’importe quel autre chiiĂ¯re… VoilĂ , c’est tout ce que j’avais Ă  vous dire Ă  ce propos, ce qui n’était somme toute pas si compliqué…

UN PEU APRES…
Vous avez tout assimilé, c’est compris, digéré, analysé ? Le moment est donc venu pour vous d’écrire votre propre message, et d’assigner vos propres couleurs : dans mon cas, un bord gris, un fond gris et des caractères noirs. Le gris est la couleur numéro 13. ce qui nous donne le caractère M. La couleur noire est la première, soit 0, ce qui nous donne @ Logique non ? Donc, à la ligne « Enter new sign-on string:__ » je réponds la chose suivante :

^@mm^a@@^]mmCP/M v5.2
Turbo Agruik

Je vous décode tout ça, s’il vous reste encore un doute :

^ @ mm signifie : assigne à l’encre 0 la couleur 13 (gris)
^@a@@ signifie : assigne à l’encre 1 la couleur 0 (noir)
^] mm signifie : assigne la couleur 13 (gris) pour le bord de l’écran.

Le reste du texte est lĂ  pour Ă©pater les copains: rien ne vous empĂªche de vous faire un CP/M « Version 5.6 » pour « Ă©pater » les copains…

Il ne vous reste plus qu’à répondre Y (Yes) à toutes les questions suivantes, et le tour est joué… Pas mal, non ? Si, je trouve… Voilà, c’est fini, et comme je ne voudrais pas me répéter, écrivez-moi si vous avez le moindre problème, j’adore recevoir des lettres… Merci d’avoir lu ces lignes, et à bientôt, tous !

Brice