Page 1 of 1

Rajoute le débogage GDB à ton émulateur Graph 90+E/fx-CG50 !

Unread postPosted: 16 Dec 2020, 13:39
by critor
Au début des années 2000,
Casio
et
Texas Instruments
supportaient encore activement le développement tiers pour leurs calculatrices.

Les constructeurs diffusaient de véritables
SDK
pour leurs modèles de l'époque.

Chez
Texas Instruments
on peut citer :

Chez
Casio
nous avions le , qui en France concernait donc les
Graph 85
.

Ces logiciels couplaient :
  • un assembleur éventuellement accompagné d'un compilateur
  • avec un émulateur tout spécialement adapté au développement, avec de quoi contrôler en direct l'état mémoire ou processeur, et même changer la version du système d'exploitation émulé

Mais les choses ont bien changé depuis.
Casio
et
Texas Instruments
ne publient plus de mise à jour de ces outils depuis maintenant une 15aine d'années, et ils sont totalement obsolètes car non adaptés aux modèles actuellement commercialisés. :'(

Ne sont plus diffusés par les constructeurs que des émulateurs orientés utilisateurs, notamment pour la vidéoprojection en classe. Ils ne permettent pas de connaître l'état mémoire/processeur, encore moins de changer la version du système, et ne sont ainsi absolument pas adapté au développement de programmes ou applications en langage machine. Sans compter qu'ils ne sont pas toujours parfaitement fidèles au matériel.

Ce n'est pas
(encore ?...)
le cas chez
Casio
, mais chez
Texas Instruments
le développement tiers est même désormais farouchement combattu. :mj:

Du côté de
Texas Instruments
, la communauté des développeurs a pris le relais, réinventant ses propres émulateurs pour les machines récentes puis les adaptant progressivement aux besoins des développeurs.

On peut citer pour les
TI-83 Premium CE
et
TI-84 Plus CE
, ou encore pour les
TI-Nspire
.

Du côté de
Casio
hélas, aucun émulateur tiers n'est jamais sorti. Nous ne disposons que émulateurs officiels orientés pour l'enseignement et sur lesquels nous n'avons aucun contrôle. :mj:

Le développement d'applications était donc peu confortable, nécessitant dans tous les cas des tests sur machine et donc d'avoir en permanence la calculatrice et les câbles sous la main.

Mais surtout dans le cas de développement d'utilitaires système avec du code touchant à des zones sensibles, en cas de bugs cela pouvait potentiellement détruire définitivement la calculatrice. :mj:

C'est peut-être justement pour ça qu'il existe peu d'utilitaires système pour
Casio
par rapport aux modèles concurrents.

C'est donc une autre piste qu'explore aujourd'hui sur
Planète Casio
, dans le contexte de la
Graph 90+E
(ou
fx-CG50
hors de France)
.

En effet si c'est apparemment trop difficile de réinventer notre propre émulateur, pourquoi ne pas tout simplement modifier l'émulateur officiel ? ;)

révolutionne aujourd'hui la face du monde du développement
Casio
, en rajoutant un serveur
GDB
à ton émulateur, de quoi pouvoir pleinement tester et déboguer tes applications aussi ambitieuses soient-elles sans avoir à connecter ni risquer ta calculatrice ! :bj:
Il devient même possible d'utiliser
GDB
pour analyser le
firmware
de
Casio
! :D

La méthode ne concerne que l'émulateur de
Graph 90+E / fx-CG50
installable sur
Windows
.

Il te suffira tout simplement de remplacer dans le dossier d'installation la bibliothèque
.dll
d'émulation du processeur
SH4
(fichier
CPU73050.dll
)
par la version modifiée de .

Attention, cette manipulation n'est pas compatible avec l'émulateur
Mac
, ni avec l'émulateur sur clé
USB
. :#non#:

Lien
:
https://github.com/redoste/fx-CG50_Mana ... -gdbserver

Téléchargement
:
Emulateur
Graph 90+E / fx-CG50
version
3.50
à installer sur
Windows

(période d'essai gratuite sans engagement de 90 jours, prolongeable gratuitement en cas de besoin jusqu'au
31 décembre 2020
si déjà entamée ou épuisée)


Source
:
https://www.planet-casio.com/Fr/forums/ ... iowin.html

Re: Rajoute le débogage GDB à ton émulateur Graph 90+E/fx-CG

Unread postPosted: 22 Dec 2020, 09:20
by critor
Mise à jour majeure :
  • ajout des breakpoints hardware et software
  • on peut maintenant attacher GDB quand on veut, plus obligatoirement au lancement de l'émulateur
  • on peut déclencher le débogueur manuellement avec Ctrl+C dans GDB sans placer de breakpoint à l'avance

Exemple de débogage d'une appli :


Source
:
https://www.planet-casio.com/Fr/forums/ ... tml#180029