Accueil > Bienvenue > Journal de bord > Première plongée dans SDCC
Première plongée dans SDCC
dimanche 22 janvier 2023, par
Toutes les versions de cet article : [Deutsch] [English] [français]
Je pense que je vais travailler sur ce projet-là, parce que davantage que développer des jeux, j’ai envie de développer des outils. C’est chouette de fabriquer soi-même ses outils. Et puis au fond, qui n’a jamais rêvé d’écrire un compilateur ?
Je rigole. L’idée ça va être d’essayer de rajouter un processeur à un compilateur existant. C’est déjà suffisamment compliqué comme ça !
Pourquoi SDCC ?
- il est adapté pour les microcontrôleurs et les petits processeurs qu’on retrouve sur les vieilles consoles
- il permet déjà de générer du code pour le Toshiba TLCS-90 (qui d’après la doc du TLCS-900 est compatible au niveau du jeu d’instructions).
Ce soir j’ai téléchargé le code source du compilateur et j’ai commencé à regarder. La documentation technique ne permet pas de comprendre grand-chose à comment rajouter un nouveau processeur à ce compilateur, donc ma stratégie va être de regarder comment c’est fait pour un processeur existant, et d’essayer d’adapter pour le processeur de la Neo Geo Pocket.
Première recherche, première déception : le code source relatif au processeur TLCS-90 n’est pas réellement indépendant - il a été implémenté comme une extension du Z80. Et donc ça rend la lecture très difficile car tout est mélangé. De plus, le TLCS900 n’a plus rien à voir avec le Z80 : c’est un processeur 16 bits au lieu de 8... La façon de générer un programme pour ce processeur doit être très différente (plus de banques mémoires à gérer par exemple).
Le mieux sera peut-être de regarder comment un processeur plus "propre" est codé, et de refaire à partir de 0. Par exemple le processeur AVR ?
A suivre...
Voir en ligne : The Small Device C Compiler