CPSDK

De Casio Universal Wiki
Aller à : navigation, rechercher
Important
Le ClassPad SDK n'est officiellement pas supporté par Casio qui ne répondra donc pas aux questions posées à ce sujet.


CPSDK
Devcpp.png
AuteurSaltire
Langage de programmationC, C++
LanguageAnglais

Ce logiciel (Software Development Kit) est un module de Dev-C++ vous permettant de programmer des add-ins pour votre Classpad. Saltire, qui a développé le cœur mathématique de la Graph100, a aussi développé le système d'exploitation de la Classpad 300 basé sur une API graphique propriétaire.

Ils ont donc fourni avec l'accord de Casio un Environnement de Développement Intégré basé sur Dev-C++, le compilateur SH et des outils propriétaires.

Ainsi, il est possible de développer des applications utilisant l'API de la calculatrice pour faire des jeux, dessiner, utiliser le cœur mathématique, gérer les fichiers...

Actuellement, le SDK n'est fonctionnel que pour les CP300(+) et CP330. En effet, le format d'add-in des CP330+ étant différent, les add-ins actuels sont incompatibles. De plus, il semblerait que Casio n'est pas décidé à combler ce manque.


Interface de développement

Le CPSDK se présente comme un plug-in à ajouter à Dev-C++. Ceci permet d'utiliser l'interface de ce logiciel pour programmer.

Langages de programmation disponibles

Les Add-Ins (ou Applications Ajoutées) sont des programmes qui apparaissent dans le menu principal. Ces programmes sont bien plus rapides que ceux écrits en Basic. Ils sont programmables en deux langages :

Le C++

Il permet de mettre en place des fenêtres, une interface, des menus, exactement comme dans les applications intégrées. Le C++ est plus complexe que le CPBasic, et donc plus difficile à apprendre. Cependant, étant un langage de haut-niveau, il reste compréhensible par un programmeur habitué

Le C++ étant un langage compilé, l'add-in doit être programmé à partir d'un ordinateur, compilé, puis envoyé vers la ClassPad. Le logiciel utilisé pour écrire de tels programmes est le ClassPad SDK téléchargeable sur le site officiel. Vous trouverez plus bas divers liens utiles pour vous entraîner. Vous pouvez également consulter les nombreuses sources disponibles sur CasioFan.

L'Assembleur (Asm)

Le langage Assembleur utilisé par le ClassPad est l'assembleur SH-3, de par le type de processeur dont elle est équipée. L'assembleur est le langage le plus proche du "langage machine" ; c'est son principal avantage (il est alors plus rapide que le C++) mais c'est aussi son principal inconvénient car cela le rend (très) peu lisible et peu maniable : réaliser un programme complet avec demande énormément d'efforts et d'expérience. On utilise plus souvent l'assembleur pour faire des fonctions qu'on exporte ensuite dans un programme C++, notamment lorsque certains traitements nécessitent une grande vitesse d'exécution (opération de rafraichissement d'écran, etc). Programmer en Assembleur est réservé aux développeurs chevronnés. Ce langage ne permet de faire que ce que le processeur sait faire : lire/écrire dans la mémoire, et effectuer des opérations très simples sur ses registres. Ainsi, si on souhaite simplement afficher un pixel à l'écran, il faut connaître l'adresse de l'écran et sa structure dans la mémoire, puis "écrire" à cette adresse au bon endroit (sans altérer l'état des pixels voisins). C'est pourquoi ce langage peut s'avérer dangereux : on a la possibilité de faire tout et n'importe quoi avec la mémoire, une mauvaise manipulation peut avoir de graves conséquences comme "bloquer" la machine et ce de manière irréversible. Au cas où vous voudriez tenter votre chance, consultez la documentation Hitachi, et effectuez vos tests sur le ClassPad Manager.

Alternative à Dev-C++

  • Il semblerait qu'il existe un plug-in Casio pour MS Visual Studio. Malheureusement, celui-ci reste, à l'heure actuelle, introuvable. Il a probablement disparu avec la chute de cpsdk.com
  • Le 01/04/2013, MicroPro, un programmeur de l'UCF, a annoncé avoir commencé à développer un IDE Visuel, dans le style de Visual Studio. Malheureusement, nous n'avons plus de nouvelles de ce projet depuis longtemps. La date de l'annonce laisse également supposer qu'il s'agissait d'une blague. Pour plus d'informations, voir [ici]

Liens utiles