Je viens d'aider l'auteur de nDoom à corriger le bug qui provoquait un plantage/redémarrage en fin de programme.
En effet, l'écran est originellement en mode 4-bits, et il le passait en mode 8-bits.
Mais, le buffer d'écran fourni par l'OS fait juste la taille qu'il faut pour stocker un écran 4-bits, pas plus.
Le programme écrivant au delà de ce buffer, il modifiait des données en RAM qui n'avaient rien à voir avec l'écran.
Il faut donc réserver en RAM de l'espace pour un buffer d'écran perso plus grand (malloc) et changer l'adresse de ce buffer.
Bien sûr, tout est à défaire en fin de programme.
Je me suis rendu compte de tout ça lors du développement de mViewer, qui utilise le mode 16-bits.
Bientôt donc une version de nDoom qui ne vous forcera pas à redémarrer l'OS en fin de jeu!
![Tire la langue :#langue#:](./images/smilies/05.gif)