CODING ★ BIDOUILLE BIZARRES ★

Bidouilles ACPC n°16 - Bidouilles bizarres

C'est que c'est de plus en plus difficile de faire des jeux de mots avec bidouilles. Si ça continue, foi de Sined, cette rubrique va s'appeler autrement. Bref, ce mois-ci j'ai encore mon mot à dire, que cela se sache, femme !

Comme je J'avais dit le mois dernier (si vous ne l'avez pas lu c'est parce que cela a été censuré par les secrétaires de rédaction délicieuses mais têtues), le Prout d'or de l'année est décerné à l'AFPF (Association française de la presse fanzine). Je sais, l'année n'est pas finie, mais ils gagnent quand même haut la main. Pour en finir avec les fanzines, bravo aux petits Chicos qui font Croco Dingo. Leur truc est super et on voit qu'ils le font dans la joie et la bonne humeur.

En ce qui concerne les bidouilles passées les mois derniers pour le gai taré, j'ai oublié de préciser une toute petite chose quelque peu importante. Il est bien entendu que tous les OUT donnés pour les encres et la palette ne peuvent être utilisés dans de bonnes conditions, si vous laissez les interruptions telles qu'elles sont. En effet le CPC remet les pendules à l'heure tous les cinquantièmes de seconde et en profite pour réajuster les encres. Ce qui explique qu'il existe sous Basic deux paramètres de palette pour une valeur d'encre donnée. Si vous tapez les listings fournis avec un petit JR DEBUT à la fin de chaque routine et si vous lancez le tout, vous vous apercevrez que tout marche à merveille car, dans ce cas, les interruptions sont moins efficaces. Si je précise, c'est pour espérer ne plus recevoir de courrier désobligeant. Les bidouilles servent à vous apprendre comment fonctionnent les périphériques du Z80. au niveau machine. Alors, ne venez pas nous parler d'interruptions perturbantes, de Basic gênant, et Jean passe. Nous vous avons déjà appris à détourner les interruptions pour qu'elles restent sous votre coupe et à vos ordres. Donc, Prout encore à ceux du fond de la classe, près du radiateur, qui ne suivent pas et qui veulent que tout leur tombe tout cuit dans le bec, Je cite ici mon grand-père : Toute connaissance est obtenue par un travail acharné, et la fainéantise n'est pas une excuse valable."

LISTINGS PETOUILLARDS

Ô combien de lecteurs, ô combien de lectrices se sont retrouvés le bec dans l'eau à cause d'une erreur dans un listing. Que c'est énervant et décourageant de se retrouver avec un message indestructible et imperturbable qui revient irrémédiablement à la même ligne, de la même manière, quoi que l'on lasse et quoi que l'on dise (à ce sujet, l'ordinateur se fout pas mal de ce que l'on peut lui dire). Comment' faire lorsqu'on en arrive là ? Pas grand-chose, si ce n'est analyser la situation clairement et logiquement. Avant tout, se poser la question suivante : quel est le message d'erreur exactement rencontré ? Cela parait bête, mais c'est simplement la première chose à faire. Un message d'erreur est, dans 99 % des cas, significatif de l'erreur rencontrée (le contraire serait triste). De là, il est simple de définir quelle a été l'erreur réellement décelée par l'interpréteur Basic. Une erreur de syntaxe (hug ! petite poussière) est générée par un manque de parenthèse, ou une faute dans un mot clef du Basic. Pour éviter les bètes erreurs de syntaxe, nous vous conseillons de taper vos programmes en minuscule. Il est certain que seuls les mots clefs Basic doivent être saisis ainsi, car le contenu des guillemets et des Datas doivent rester dans un état précis, à des lins de tests ou simplement dans le but d'avoir une présentation convenable à l'écran. Si vous utilisez cette petite astuce, vous verrez qu'un mot clef mal saisi ne passera pas en majuscule. Facile de déceler une erreur due à l'inattention ou au manque de concentration dans de telles conditions (cela marche aussi pour les cas de nuits blanches consécutives).

Voici encore une erreur que l'on rencontre souvent lors de la saisie des listings : MEMORY FULL. Bien des logiciels freewares offerts par les magazines contiennent des petites commandes du genre SYMBOL AFTER CHEVRE. Ces ordres Basic paraissent très inoffensifs. mais méfiez-vous de l'os qui dort, car il peut rapidement se transformer en coup de bambou. Si vous exécutez cette commande, une partie de la mémoire vive sera réservée pour la copie de la matrice des caractères située normalement en ROM. Jusqu'ici, aucun problème. Imaginez qu'une petite erreur vous force à modifier le listing à n'importe quel endroit sans que cela ne porte préjudice à cette commande. Vous corrigerez donc cette erreur simplement et relancerez le programme. Et là, hélas, héla : Ella elle l'a... le MEMORY FULL. Le mot incontournable vous échappe : m.... prout, zut. flûte. Eh oui, vous avez mis le doigt dessus, la mémoire réservée par la commande SYMBOL AFTER n'a pas été restituée au système ce qui entraîne un message d'erreur lors du second appel de cette fonction. Certaines fois, un CLEAR suffit à se débarrasser de ce bug, mais lorsque le SYMBOL AFTER est trop petit, il faut sauver le programme, initialiserle CPC et relancer le programme après l'avoir chargé. Il existe des pokes pour remédier à cet ennui, mais je ne m'en souviens pas. Si vous les avez, envoyez-les-nous.

ERRARE CEPECUM ARE

Parfois, une erreur se produit dans une ligne, mais elle ne vient pas de cette même ligne. Par exemple, vous allez rencontrer dans une ligne du genre : 100 A(I,J)=1000 l'erreur : Subscript out of range in 100 Dans ce cas. il n'y a pas 50 solutions. En fait, il n'y en a que deux. Soit c'est I qui est trop grand, soit c'est J. Malheureusement pour les fainéants, c'est ici que les choses se corsent (tt un corse fainéant, je ne vous raconte pas le travail). Il faut alors faire preuve de logique et de patience. La technique permettant de retrouver où est la faute dans le listing est assez simple. Il faut suivre le déroulement du programme et voir à quel endroit les variables I et J sont utilisées. Lorsque vous avez trouvé ces lignes, il vous suffit de les comparer avec celles de votre revue et le tour est joué. Il est vrai que cela peut être laborieux de lire tout un listing pour trouver le petit caractère qui sème la pagaille, mais c'est toujours payant et ça permet d'apprendre le Basic de la meilleure façon qui soit. Si vous êtes vraiment fainéant, vous pouvez vous faire un petit programme qui cherchera, dans le fichier Basic sauvé en Ascii, tous les endroits où se cachent les I et les J. Dans tous les cas. bon courage.

CREATEURS BASIC ET FICHIERS BINAIRES

Dans Cent Pour Cent, vous avez pu remarquer que bon nombre de programmes sont en langage machine. La seule façon pour nous de vous les donner est de les transformer en programme Basic, pour que vous puissiez les saisir. Dans ce cas, les octets à poker sont stockés sous forme de Datas, ce qui est la manière la plus compacte de ranger des données en mémoire sous Basic. Pour utiliser les listings, il vous faut faire la démarche suivante : avant toul, il faut taper et sauver le programme Basic chargeur et lanceur des routines binaires. Il faut ensuite taper tous les générateurs et les sauver sur une cassette différente de celle utilisée plus tard pour le lancement (CPC 464 seulement car les possesseurs de 6128 à lecteurs de disquettes ne sont pas ennuyés par ce genre de problème). Vient ensuite la phase finale où vous devez lancer les programmes générateurs depuis la première cassette en vous débrouillant pour que les programmes binaires générés arrivent à la suite du programme Basic lanceur, dans le bon ordre bien entendu. Dans ces conditions, tout se passera au quart de poil et vos saisies seront un régal pour le peut CPC.

LE MOIS QUI VIENT SERA BIEN

C'est toujours quand j'ai fini d'écrire ces enf... de bidouilles que les idées me viennent. Ah, je vous le dis comme je le pense, c'est dur la vie d'artiste. Heureusement que ma bonne étoile (cirée) veille sur moi. Bref, le mois prochain, petite étude sur le catalogue et les petites disquettes. Si vous êtes sages, vous aurez aussi tous les secrets du FDC en personne, mats pas de promesses, des actes. Je suis fatigué et je vais me coucher. Baille baille les amis !

A100% n°16 , Juin 1989 , Sined le Bailleur

Page précédente : Bidouilles ACPC n°15 - Les secrets du GATE ARRAY (2/2)

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

Lien(s):
» Coding » Bidouilles ACPC n°03 - Catalogue décorés
» Coding » ASM 48: Quand Elmar fait des siennes
» Coding » Assembleur ACPC n°46 - La multiplication et la division
» Coding » Assembleur ACPC n°49: Assemblez vos vumetres
» Coding » Bidouilles ACPC n°12 - Création de RSX
» Coding » Assembleur ACPC n°10 - Initiation : Les decalages
Je participe au site:

» 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 456 millisecondes et consultée 1845 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.