π
<-
Chat plein-écran
[^]

NumBoots - Bootloader pour NumWorks N0110

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude elicolh » 13 Sep 2019, 18:07

salut, désolé de vous déranger pour si peu mais cet article (viewtopic.php?f=97&t=22824) m'a donné très envie. J'ai la version N0110 et je me demandais si les commandes que tu a mise permettent d'installer le firmware de l'article et si oui comment faire exactement. Merci d'avance
Avatar de l’utilisateur
elicolh
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Prochain niv.: 88%
 
Messages: 35
Inscription: 13 Sep 2019, 18:02
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude critor » 13 Sep 2019, 19:06

Les fichiers .dfu peuvent être flashés sur N0110 (et N0100) avec dfu-utils.
Mais https://ti-planet.github.io/webdfu_numworks/ ne gère apparemment pas les .dfu, juste les images firmware brutes. :( Et https://devanlai.github.io/webdfu/dfu-util/ non plus.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude elicolh » 13 Sep 2019, 20:32

et tu saurais où obtenir le dfu du super firmware?
Avatar de l’utilisateur
elicolh
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Prochain niv.: 88%
 
Messages: 35
Inscription: 13 Sep 2019, 18:02
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude critor » 13 Sep 2019, 20:39

Je pense même pas qu'il marche correctement dans ton cas.
Le firmware a été compilé pour N0100, pas N0110. Il y a des différences matérielles significatives entre les deux.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude elicolh » 13 Sep 2019, 20:54

ah, d'accord
Merci pour les infos
Avatar de l’utilisateur
elicolh
Niveau 5: MO (Membre Overclocké)
Niveau 5: MO (Membre Overclocké)
Prochain niv.: 88%
 
Messages: 35
Inscription: 13 Sep 2019, 18:02
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile
Classe: TS

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude critor » 14 Sep 2019, 08:46

Avec dfu-util pour N0110, il faut apparemment flasher :
  • en 0x09000000 pour la Flash externe
  • en 0x08000000 pour la Flash interne
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude zardam » 28 Nov 2019, 01:27

Cela fait quelques semaines que je réfléchis à l'idée aussi. Je ne suis pas du tout expert dans ce domaine, mais j'ai l'impression que la voie de l'exécutable PIC/PIE est très séduisante, mais aussi assez complexe. Il me semble aussi que la newlib n'est pas vraiment adaptée à ce fonctionnement (même en la recompilant correctement). J'ai par contre bien aimé l'idée du tar comme étant le support du "système de ficher" flash.

Du coup, je suis parti sur l'idée de générer un elf linké partiellement (donc avec le plus gros du travail de fait, et juste quelques relocations à gérer), et de faire le link final au moment d'ajouter le binaire au tar. C'est dommage car cela requiert d'avoir un linker sous la main, mais ça reste très rapide et je suppose qu'on doit pouvoir faire assez facilement un outil javascript pour faire ça directement depuis une page web (et couplé avec webdfu, ça serait parfait).

Au final, ça fonctionne plutôt bien, j'ai porté KhiCAS dans ce "mode" sans trop de souci (mais je bute un peu sur la simplification/normalisation de son interaction avec epsilon, du coup j'ai repris l'api actuelle telle que).

Je suis resté assez "terre à terre" pour la communication app externe/epsilon. Le point d'entrée de l'app externe reçoit un tableau de pointeurs des points d'entrée de l'API, et une zone mémoire lui servant de heap. Les sections data et bss sont alloués statiquement en bas de la pile et réinitialisées entre chaque lancement. Chaque application embarque sa libc, et son malloc qui va utiliser le heap pré-alloué. Ça permet de repartir avec un heap propre à chaque lancement, mais pour l'instant aucun état n'est sauvegardé (sauf pour KhiCAS qui utilise le script store).

Les dépôts sont disponibles ici (epsilon/delta avec launcher, et le "builder" de tar):

https://github.com/Delta-NumWorks/delta/tree/external
https://github.com/Delta-NumWorks/external-apps
Avatar de l’utilisateur
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Prochain niv.: 34.6%
 
Messages: 233
Images: 13
Inscription: 11 Oct 2017, 23:39
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude Lionel Debroux » 28 Nov 2019, 07:39

Bien, la modularité que NumWorks n'a jamais mise en place prend décidément de plus en plus forme :)
Dans le SDK Ndless, un format custom appelé "Zehn" a fini par être utilisé, parce que BFLT est limité et ELF peut être complexe. Je le mentionne parce que même si tu as déjà fait le gros du boulot, peut-être y a-t-il des idées ou du code à reprendre.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude zardam » 28 Nov 2019, 08:06

Merci, j'ai croisé effectivement le bflt, je vais regarder le Zehn (je suis tombé sur des ressources dans ndless, mais pas celle ci)

Tant qu'on a un objdump/ld sous la main, le .elf est plutôt pratique. Par contre pour faire la dernière relocation dans une page web, ça risque de se corser une peu, et il faudrait peut être un format intermédiaire plus simple effectivement. Je n'ai pas encore trop creusé de ce coté, c'est la prochaine étape.

J'aimerais bien reprendre et isoler proprement quelques fonctions de l'api de KhiCAS (gestion des scripts, et des événements) et sortir celle qui ne sont pas strictement nécessaires, mais il y a aussi pas mal de boulot de ce coté la.

J'espère que du coup on peut considérer epsilon comme un OS, et donc que le problème de licence ne se pose plus pour les applications "externes". (Mon dernier doute concerne le tableur de pointeurs, mais ce n'est pas très différent de ce que fait un linker dynamique sur un OS traditionnel).
Avatar de l’utilisateur
zardamPremium
Niveau 9: IC (Compteur Infatigable)
Niveau 9: IC (Compteur Infatigable)
Prochain niv.: 34.6%
 
Messages: 233
Images: 13
Inscription: 11 Oct 2017, 23:39
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: NumBoots - Bootloader pour NumWorks N0110

Message non lude Lionel Debroux » 28 Nov 2019, 08:26

Le format est défini et documenté par https://github.com/ndless-nspire/Ndless ... ude/zehn.h , et https://github.com/ndless-nspire/Ndless ... enzehn.cpp prend bien de l'ELF en entrée. Les dépendances de genzehn sont Zlib, <cstring>, <iostream>, <algorithm>, <vector>, boost::program_options et ELFIO qui est une lib portable header-only: le ciblage de JS / WASM à partir de genzehn devrait être donc faisable, quitte à devoir ajuster quelques bouts de code ou upgrader ELFIO, actuellement 3.2 d'il y a plus de 3 ans, mais 3.3 et 3.4 ont été publiées depuis.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Avatar de l’utilisateur
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Prochain niv.: 11.2%
 
Messages: 6859
Inscription: 23 Déc 2009, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Classe: -
GitHub: debrouxl

PrécédenteSuivante

Retourner vers Programmation native (C/C++/...)

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 6 invités

-
Rechercher
-
Social TI-Planet
-
Sujets à la une
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
Phi NumWorks jailbreak
123
-
Faire un don / Premium
Pour plus de concours, de lots, de tests, nous aider à payer le serveur et les domaines...
Faire un don
Découvrez les avantages d'un compte donateur !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partenaires et pub
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
1058 utilisateurs:
>1045 invités
>8 membres
>5 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)
-
Autres sites intéressants
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)