ACTU
On se fait une ligne ?
par CBL,
email @CBL_Factor
L'Univers est rempli de mystères et parmi eux se trouvaient une question fondamentale : y'a-t-il une fin à Tetris ? On a eu une sorte de réponse en début d'année en tout cas pour la version NES. La vitesse des pièces qui tombent augmente à chaque niveau jusqu'au niveau 29. Elle reste constante après mais seuls les mutants utilisant l'hypertapping peuvent aller plus loin de toute façon. Blue Scuti fait partie de ces mutants et a fait une partie historique en allant plus loin que n'importe qui.
Le problème est que le jeu n'a jamais été conçu pour aller aussi loin : les nombres utilisés (genre le score) deviennent trop gros pour les espaces mémoires qui leur sont associés donc ils débordent sur d'autres zones mémoires en provoquant des effets de bord. A partir du niveau138 par exemple, les palettes de couleur commencent sérieusement à déconner et certains pièces sont quasi invisibles à partir du niveau 146. Mais l'apocalypse arrive au niveau 157. En finissant la 1511ème ligne, le jeu plante. Le joueur a battu la machine. Game over ?
Pas complètement. En utilisant des programmes comme Stack Rabbit permettant de jouer parfaitement, des développeurs ont pu reproduire le crash et comprendre ce qui se passe. Le crash peut arriver à partir du niveau 155 et arrive car la NES met trop longtemps à calculer le nouveau score entre le rendu de deux images. Le jeu se retrouve dans un état instable et tape dans une zone mémoire qui permet d'exécuter du code.
Pour entrer le code en question, les hackers doivent utiliser une manette mais pas n'importe laquelle. Sur la Famicom (la NES japonaise), les deux manettes de la console sont connectées directement à la bête sans utiliser de port afin d'économiser quelques yens. Mais un port d'extension situé sur l'arrière de la console permet de brancher des manettes NES via un adaptateur et il se trouve que le code de Tetris lit les données venant du port d'extension.
En utilisant une méthode super compliquée, Displaced Gamers est arrivé à injecter et exécuter des instructions en langage machine et leur premier programme consiste à reprogrammer le jeu pour éviter le crash en question. On ne s'attend pas à des choses aussi folles que comme quand TASBot reprogramme Super Mario World vu la faible quantité de RAM de la NES mais on est curieux du résultat.
Le problème est que le jeu n'a jamais été conçu pour aller aussi loin : les nombres utilisés (genre le score) deviennent trop gros pour les espaces mémoires qui leur sont associés donc ils débordent sur d'autres zones mémoires en provoquant des effets de bord. A partir du niveau138 par exemple, les palettes de couleur commencent sérieusement à déconner et certains pièces sont quasi invisibles à partir du niveau 146. Mais l'apocalypse arrive au niveau 157. En finissant la 1511ème ligne, le jeu plante. Le joueur a battu la machine. Game over ?
Pas complètement. En utilisant des programmes comme Stack Rabbit permettant de jouer parfaitement, des développeurs ont pu reproduire le crash et comprendre ce qui se passe. Le crash peut arriver à partir du niveau 155 et arrive car la NES met trop longtemps à calculer le nouveau score entre le rendu de deux images. Le jeu se retrouve dans un état instable et tape dans une zone mémoire qui permet d'exécuter du code.
Pour entrer le code en question, les hackers doivent utiliser une manette mais pas n'importe laquelle. Sur la Famicom (la NES japonaise), les deux manettes de la console sont connectées directement à la bête sans utiliser de port afin d'économiser quelques yens. Mais un port d'extension situé sur l'arrière de la console permet de brancher des manettes NES via un adaptateur et il se trouve que le code de Tetris lit les données venant du port d'extension.
En utilisant une méthode super compliquée, Displaced Gamers est arrivé à injecter et exécuter des instructions en langage machine et leur premier programme consiste à reprogrammer le jeu pour éviter le crash en question. On ne s'attend pas à des choses aussi folles que comme quand TASBot reprogramme Super Mario World vu la faible quantité de RAM de la NES mais on est curieux du résultat.