★ AMSTRAD CPC ★ GAMESLIST ★ SERPENT MADNESS (c) CPC REVUE ★

CPC Revue
Je suis sûr que vous avez toujours rêvé de vous mettre dans la peau d'un serpent ! Réjouissez-vous, car aujourd'hui, ça y est ! Votre marraine vous a enfin transformé en un gentil petit serpent. Mais vous allez découvrir que la vie quotidienne d'un cobra n'est pas toujours rose.

Votre but est de grandir le plus possible, pour accéder au monde des "grands". Mais le chemin est semé d'embûches, et devient de plus en plus difficile, au fur et à mesure que vous progressez. Il vous faut donc manger les vivres qui jonchent la plaine, tout en évitant les nombreux obstacles et les falaises qui bordent votre territoire. Et même si vous avez une faim énorme, il vous est interdit de vous manger vous-même (pas de cannibalisme, voyons) ! Pour jouer, vous pouvez utiliser, au choix, le joystick ou le clavier. Vous avez la possibilité de redéfinir vos propres touches pour jouer dans le clavier principal de l'AMSTRAD (la touche ENTER, le pavé de curseur et le pavé numérique ne sont pas autorisés). Pour plus de détails, voyez les instructions dans le jeu et essayez les différentes options. Avant le chargement du programme, n'oubliez pas de "reseter" l'ordinateur !

STRUCTURE DU PROGRAMME

Le programme est réalisé en Basic, à l'exception de deux routines en langage machine, destinées à faciliter et à accélérer la vitesse de jeu. Il est donc aisément modifiable, et il est très facile, par exemple, de rajouter de nombreux autres tableaux si vous le désirez.

  • Lignes 130 à 330 Initialisations diverses (variables, scores, touches par défaut, etc.).
  • Lignes 360 à 570 Initialisations propres à chaque partie (tableau de jeu, vitesse, coordonnées au départ, adresses-mémoires, etc.).
  • Lignes 610 à 860 Routine principale du jeu (test clavier, tests collisions, routine de déplacement du serpent).
  • Lignes 900 à 1090 : Saut à cette routine si le serpent a mangé quelque chose (allongement du corps, score, etc.).
  • Lignes 1130 à 1180 Routine en LM destinée à "vider" la partie de la mémoire où sont stockées des valeurs utilisées par le programme.
  • Lignes 1220 à 1600 Initialisation des symboles graphiques.
  • Lignes 1640 à 2090 Mise en place du tableau de jeu (une partie de cette routine est utilisée en cours de jeu pour rajouter aliments et monstres dans le tableau).
  • Lignes 2130 à 2250 Fin du jeu (remise à zéro des variables, "GAME OVER", test de HI-SCORE).
  • Lignes 2290 à 2360 Deuxième routine en LM. Elle est utilisée pour les tests de collision. On stocke les coordonnées (X,Y) de l'endroit à tester en (&9EFE, &9EFF), le CALL &9E00 donne en &9EFD la valeur ASCII du caractère testé.
  • Lignes 2400 à 2520 Menu d'accueil du jeu (aiguille sur les différentes options).
  • Lignes 2560 à 2730 Changement clavier/joystick et inversement.
  • Lignes 2770 à 3030 Redéfinition du clavier (la routine utilise une table de conversion entre les valeurs ASCII et les valeurs en INKEY pour le positionnement des touches sur le clavier AMSTRAD).
  • Lignes 2990 à 3030 : entrée et vérification des touches (ne fonctionne pas pour ENTER et le pavé du curseur). Lignes 3070 à 3370 Instructions du jeu.
  • Lignes 3420 à 3440 Abandon.
  • Lignes 3460 à 3780 Les 4 tableaux de jeu différents.


LES PRINCIPALES VARIABLES

Utilisées par le programme, ainsi que les adresses-mémoires sont :

  • OPT$ Option (clavier/joystick).
  • KH, KB, KD, KG Contiennent les valeurs des dernières touches redéfinies.
  • HT, BS, DT, GH Contiennent les valeurs en entrée (valeurs du joystick ; ou KH, KB, KD et KG pour le clavier).
  • VIT Vitesse du jeu (valeur de la pause en 850).
  • TABLEAU Numéro du tableau dans lequel on joue.
  • TTAB Nombre de tableaux déjà passés.
  • NMONS Nombre de "monstres" présents dans le tableau.
  • EATMONS Nombre de "monstres" mangés par le serpent.
  • HISCORE, SCORE Comme leur nom indique... (équivalent alphanumérique SC$, HISC$).
  • X,Y, TETX, TETY, FINX, FINY, QUEUX, QUEUY Coordonnées des différents points du serpent intervenant dans la routine de déplacement.
  • PT, PG, DIR Pointeurs de direction (signalent les changements de direction ; PT sert aussi à l'affichage des différents têtes et corps, PQ servant à la queue).
  • ADX, ADY, ADD Pointeurs-mémoires servant à "poker" les coordonnées et le sens des changements de direction.
  • AQX, AQY, AQD Pointeurs-mémoires vérifiant si la queue doit effectuer un changement de direction.
  • &9CFF Vérifie si le SYMBOL AFTER a été exécuté ou non.
  • &9CFD Vérifie si le joueur a fait le tour des 4 tableaux, pour maintenir la vitesse au maximum.
  • &9EFE Coordonnée X de l'emplacement à tester.
  • &9EFF Coordonnée Y.
  • &9EFD Contient le résultat du test (valeur ASCII).
  • &9E00 Adresse d'implantation de la routine de test.
  • &9D00 Adresse d'implantation de la routine d'effacement de la mémoire.
Si vous trouvez le jeu trop difficile, ou au contraire trop facile, il n'y a que peu de choses à modifier pour l'adapter à votre convenance :
– On peut diminuer (ou augmenter) le nombre de "monstres" à manger. Lignes 990 et 1070 (utilisez toujours un multiple de 4).
– En augmentant la valeur de VIT (ligne 450), on diminue la vitesse du jeu (pour la mettre au maximum, cette vitesse, vous pouvez toujours supprimer la boucle d'attente ligne 850).
– Pour faire apparaître moins (ou plus) d'obstacles à la fois, il suffit de modifier la valeur de la bande ligne 1800 (attention à la compatibilité avec vos variables NMONS et EATMONS - on n'a plus alors la contrainte d'un multiple de 4, mais d'un multiple de la valeur que vous avez introduite dans la boucle !).
– Enfin, le jeu au joystick est plus difficile que le jeu au clavier : avis aux amateurs... Et comme le disent les AngJais : "Type it and hâve fun !".

CPC n°9

SERPENT MADNESS
(c) CPC REVUE

AUTEUR: Stephane Cloirec

★ ANNÉE: 1985
★ LANGAGE:
★ GENRE: INGAME MODE 1 , ARCADE , SNAKE GAME
★ LiCENCE: LISTING

 

★ AMSTRAD CPC ★ DOWNLOAD ★

Type-in/Listing:
» Serpent  Madness    FRENCHDATE: 2015-11-20
DL: 231
TYPE: ZIP
SiZE: 11Ko
NOTE: 40 Cyls
.HFE: Χ

Je participe au site:
» Vous avez des infos personnel, des fichiers que nous ne possédons pas concernent ce jeu ?
» 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 392 millisecondes et consultée 1620 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.