Vermeille's blog

Resume && contactProjetsC++BullshitLanguage TheoryArtificial Intelligence¬LinkedIn

Chip8 Emulator

Après être tombé sur une série d'articles sur un émulateur de gameboy en javascript, je me suis senti tenté par coder un émulateur en C++(11). Après une discussion avec delroth sur le chan de l'Epita, l'émulateur gameboy semblait trop ambitieux. Au lieu de quoi il me conseilla plus modeste : le chip-8, le hello world de l'émulation.

La documentation se trouve facilement, le jeu d'instruction du processeur est relativement réduit, bref, tout ce qu'il faut pour que ça soit simple, tout en permettant d'apprendrele principe général d'un émulateur, et d'approfondir mon trop peu de connaissances en archi.

Bref, mon émulateur est totalement fonctionnel, exception faite du son.

chip8.png

Voir le Doxygen

Interpréteur Befunge.

l y a quelques temps (mois, en fait), accompagné de Antoine "Serialk" Pietri, dans le train en partance pour Marseille, je m'ennuyais quelque peu. Notre discussion s'est orientée sur ce merveilleur langage qu'est Befunge, et je décidai de coder un interpréteur Befunge interactif.

Le voilà.

Pour simplifier, Befunge est un langage ésotérique stack based. Un programme Befunge est en réalité un tableau de caractères bidimensionnel sur lequel se déplace notre pointeur d'instruction, en fonction du sens du flux. Chaque instruction ne correspond donc qu'à une seule lettre. Je vous laisse regarder la page Wikipédia.

L'idée toute simple de cet interpréteur était de pouvoir exécuter le code Befunge à vitesse "humaine" de façon à pouvoir débugguer, en voyant le pointeur d'instruction se déplacer, et en affichant la stack.

Cet interpréteur codé en C utilise ncurses. Vous pouvez retrouver les sources sur mon bitbucket.

L'interface ncurses est négligée, donc ça ne gère pas les redimensionnements du terminal etc, donc mettez votre terminal en fullscreen.

befunge.png

Voir le doxygen.

Voir le dépôt Bitbucket

Algo génétique

Bonsoir,

Il y a quelques temps, dans le train, je repensais à la grande curiosité que j'éprouve pour les algos génétiques, et tout ce qui concerne la logique floue de façon générale. 

J'ai donc décidé de tenter ma chance et de coder un algo génétique. Vous pouvez retrouver les sources de cet essai, et voir un petit rapport pdf sur l'expérience en annexe du post.

Nécessite pygame.

Que pensez-vous des algos génétiques ? Ma démarche était-elle pertinente ?

geneticite.png