DESCRIPTION DU PROGRAMMERègles du jeu : l'écran est divisé en cases, ou cellules ; chaque case a 8 voisines. La vie apparaît dans une cellule ayant 3 (exactement) voisines vivantes ; une cellule survit si elle a 2 ou 3 voisines vivantes. Une cellule meurt si elle a moins de 2 ou plus de 3 voisines vivantes. Le programme autorise jusqu'à 24 lignes de 78 colonnes. Pour les limites de l'écran, on a le choix entre deux options : soit il n'y a pas de lien entre la première et la dernière ligne, et entre la première et la dernière colonne, soit la première ligne est considérée comme voisine de la dernière et de même la première colonne est rendue voisine de la dernière. On obtient une bonne compréhension de ce deuxième cas en imaginant que le jeu se déroule, non pas sur un plan, mais sur un tore fermé (chambre à air de bicyclette). La partie Basic fait appel à deux routines en code objet : – la routine &3200 met toutes les cellules à l'état mort et affiche la grille initiale ; – la routine &3000 réalise les fonctions suivantes : Calcul de l'état futur d'une cellule à partir de l'état actuel de ses 8 voisines. Le calcul teste le bit 0, le, résultat (1 =vie, 0 = mort) est stocké dans le bit 7 de l'octet associé à une cellule. Actualisation : après avoir terminé les calculs, il faut que l'état actuel soit remis à jour. Pour cela, le bit 7 (état futur) est recopié dans le bit 0 (état actuel). Affichage :. pour gagner du temps, on n'affiche pas de point à l'emplacement des cellules mortes, car l'affichage prend plus de temps que les calculs. Bords : si on a choisi l'option première et dernière lignes (colonnes) voisines, la routine bord introduit des lignes (colonnes) fictives ; ainsi, si on a 36 lignes, on ajoute une ligne 0 et une ligne 37 ; 0 est la copie de la ligne 36, et 37 la copie de la ligne 1. OCCUPATION MEMOIRE Les routines se trouvent de &3000 à &3236. L'état des cellules est stocké de &4101 à &5940 (pour 24 lignes et 64 colonnes). La première ligne (avec 64 colonnes) occupe les octets de &4101 à &4140. Pour conclure, signalons une structure intéressante : le "planeur". Pour des compléments sur le jeu de la vie, voir "POUR LA SCIENCE", août 1985. CPC n°5
|