Un émulateur chip 8 codé en typescript qui tourne dans le navigateur.
Ce projet est né de l’envie de relever un défi technique stimulant. Émuler une architecture comme le CHIP-8 demande de comprendre en profondeur son fonctionnement, tout en traduisant ces mécanismes dans un langage typé et structuré. C’est une excellente façon de progresser à la fois en algorithmie, en architecture logicielle et en TypeScript.
Le CHIP-8 est connu pour sa simplicité, ce qui en fait un bon point de départ pour créer un premier émulateur. C’est une manière concrète d’apprendre le fonctionnement d’un processeur virtuel, les instructions machines et le rendu graphique, sans se perdre dans la complexité d’une vraie console. Ce projet m’a permis de découvrir les bases de l’émulation en profondeur.
Le CHIP-8 est un système embarqué utilisé dans les années 70-80 pour des jeux très simples. Pour en savoir plus, il est possible de se référer à la page Wikipédia du CHIP-8.
Pour l'intégration de mon émulateur, j'ai choisi d'utiliser la programmation orientée objet (POO) en TypeScript. La POO m'a permis de séparer les différentes parties de l'émulateur en objets distincts: CPU, affichage, mémoire, etc. Cela m'a aidé à mieux représenter les différents composants à émuler tout en conservant une architecture claire.
Pour réaliser ce projet, j'ai dû me plonger dans la documentation du CHIP-8 et des émulateurs en général. Voici quelques liens utiles pour en apprendre davantage et consulter le code source :