2 unstable releases
| new 0.11.2 | Feb 2, 2026 |
|---|---|
| 0.0.1 | Jan 25, 2026 |
#787 in Embedded development
70KB
1.5K
SLoC
Version : Alpha 1
Eadkp est une bibliothèque Rust destinée au développement d’applications pour les calculatrices NumWorks sous Epsilon.
Elle fournit des fonctionnalités de bas niveau permettant d’interagir avec le matériel de la calculatrice, notamment la gestion de l’affichage, des entrées utilisateur, de la batterie et du stockage.
La bibliothèque propose également des abstractions de plus haut niveau afin de simplifier le développement d’applications en Rust, telles que la gestion du panic handler, de l’allocateur global, ainsi que la déclaration des propriétés des applications NWA.
Fonctionnalités
- Handlers Rust pour l'ABI Epsilon
- Gestion basique de l'affichage
- Gestion des entrées utilisateur (clavier)
- Gestion de la batterie
- Gestion du stockage (lecture/écriture de fichiers)
- Macros pour déclarer les propriétés des applications NWA
- Gestion simple des images (inclusion et affichage) via macro
- Support des fichiers C et C++ (Non documenté) (Problème majeur)
- Support du simulateur officiel Numworks
- Support des fichiers données a l'inclusion dans les applications NWA
- Support des graphiques avancés
- Débogage via USB (Pas encore évaluée la faisabilité)
Installation
Cette section est incomplète et en cours de rédaction.
Configurez votre projet pour la cible thumbv7em-none-eabihf et les options de compilation spécifiques aux NWA.
Voir ./cargo/config.toml pour un exemple de configuration.
Voir ./examples/eadkp_example pour un exemple de projet utilisant eadkp.
Voir ./build.rs pour la configuration de la chaîne d'outils et ./docker-compose.yml, ./dockerfile pour un environnement de compilation Dockerisé.
Install Eadkp via Cargo:
cargo add eadkp
Contribution
Les contributions sont les bienvenues ! N'hésitez pas à ouvrir des issues ou à soumettre des pull requests.
Pour apprendre à utiliser le projet, consultez les guides suivants :
- Guide de setup du projet
- Guide de compilation de l'exemple de test
- Guide d'utilisation du simulateur
Licence
Ce projet est sous licence GPL-3.0 (GNU General Public License v3.0).
Technologie de storage.rs basée sur NumWorks Extapp Storage sous licence MIT (commit: 62e3d4c44437b93a8f14ce687a1c45d6dded87d9).
Projet basé sur l'eadk et utilitaire de NumCraft version v0.1.4 sous licence GPL-3.0.
Remerciements
Merci à Yannis300307 pour son travail sur NumCraft Rust, qui a servi de base à ce projet.
Également merci à Yaya Cout pour son travail sur la manipulation du file system interne de la NumWorks par des applications externes.
Dependencies
~13MB
~266K SLoC