Désolé, pas trop eu le temps de regarder...
Par contre :
095 unite = compteur % 10;
096 dizaine = compteur / 10 % 10;
097 SCBDATA(_SCB_UNITES) = chtab[unite%10];
098 SCBDATA(_SCB_DIZAINES) = chtab[dizaine%10];
Ca module à fond là
Au niveau perf, un modulo est pas forcément ce qu'il y a de plus efficace, alors le faire 2 fois sur chaque variable unite et dizaine, c'est pas forcément utile. Déjà, sur dizaine, c'est pas utile à partir du moment ou compteur est < 100 (cf ce que fait Vince, qui est équivalent, mais sans la redondance).
Une solution, pour se passer du modulo serait :
dizaine = compteur/10;
unité = compteur -10*dizaine;
(mais je ne sais pas quelle solution est la plus efficace, en terme de performance et de taille de code généré)