Variables en BASIC Applesoft

Après avoir porté le jeu « La maison du fou » du BASIC Applesoft vers le GW-BASIC, je me suis aperçu d’une différence de comportement difficilement explicable entre les deux versions. Le fonctionnement du monte-charge de la maison n’était pas le même. Comment expliquer cela ? Après quelques tâtonnements, j’ai réalisé que cela était dû à une limitation forte sur les noms de variables en Applesoft. Regarder l’exemple suivant :

Confusion entre pommes et poires ?

Mais kesskisspassdonc ?!!? L’Apple II mélange-t-il les pommes et les poires ? C’est en quelque sorte ce qu’il se passe, en effet.

Le BASIC Applesoft permet de nommer vos variables avec un nombre de caractères important (je ne connais pas la limite réelle). Cependant, il ne prend en compte que les deux premiers caractères ! Ainsi pour ce interpréteur, POMME et POIRE sont les mêmes variables, ce qui est trompeur quand on ne connait pas cette contrainte.

Ainsi dans « La maison du fou » version Applesoft, les variables MCH (Monte Charge Haut) et MCB (Monte Charge Bas) sont les mêmes ! Le correctif est très simple, il suffit de renommer ces deux variables avec des noms de deux caractères seulement (MH et MB). J’ai donc repris le programme, et vous pouvez télécharger la version corrigée sur la page de la maison du fou.

Et c’est l’occasion de rejouer à cette aventure sur votre ordinateur favori. La correction du bogue rend le jeu un peu moins facile.

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *