dimanche 22 mars 2026

R110B: CPU Monitor embarqué

Le récepteur R110B dispose d'un port RS232 accessible après avoir enlevé le coffret. Il est indiqué que ce port série sert de 'moniteur': comprendre un logiciel embarqué permettant de visualiser, voir de modifier les registres et la mémoire de la CPU. La connexion se fait en direct depuis un PC et un terminal série - ici 'putty' - en 1200bauds par défaut.


Et l'on accède bien à un moniteur / débuggeur 'à l'ancienne' avec une aide minimaliste. Il faut maintenant identifier les commandes lesquelles semblent utiliser les mnémonique habituelles. Les dumps de l'EPROM et de l'EEPROM sont ici bien utiles pour vérifier les hypothèses.


En règle générale, 'G' vaut pour GO à l'adresse indiquée, 'D' pour DUMP de l'adresse indiquée sur un octet ou plusieurs, 'E' pour ENTRER une valeur à l'adresse indiquée, 'M' pour MOVE d'une adresse à l'autre sur la longueur indiquée (non encore vérifié) et 'C' pour Clear d'une adresse avec une valeur donnée sur la longueur indiquée (non encore vérifié). Les indices 'I', 'C' et 'X' indiquent ici une action sur les registres de la CPU (I), le code (C) en EPROM ou l'extension (X) en E2PROM/

Il est ainsi possible d'intervenir en cours de fonctionnement sur l'état du système avec toutefois le risque de le 'planter'... Plus intéressante est la possibilité de modifier le contenu de l'E2PROM laquelle contient le numéro de série du récepteur ainsi que les options activées.

L'analyse du firmware se poursuit donc de manière dilettante ayant trouvé la technique pour travailler sur les deux sections de code dans Ghidra: il 'suffit' de charger le code en E2PROM via la fonction 'File/Add to Program' en indiquant EXTMEM comme destination. Tout simplement. A suivre.

Aucun commentaire: