NumBoots - Bootloader pour NumWorks N0110
37 posts
• Page 3 of 4 • 1, 2, 3, 4
Re: NumBoots - Bootloader pour NumWorks N0110
J'avais abandonné le projet pour le moment étant donné que je n'étais pas arrivé à faire cracher à la toolchain Cortex-M un programme en mode PIC et avec .text/.rodata en Flash immutable à une position non prédéterminée à l'avance. De mémoire, la toolchain générait du code exécutable qui supposait que la GOT/PLT était à un offset constant des sections .text/.rodata au lieu d'utiliser le registre GOT. C'était endémique aux Cortex-M, je n'avais pas ce problème en compilant pour du Cortex-A.
Pour ce qui est de la complexité des fichiers ELF, ce n'est vraiment pas complexe au runtime. Seuls les program headers font foi et mon loader qui faisait du dynamic linking (!) tenait en 150 lignes de C.
Pour ce qui est de la complexité des fichiers ELF, ce n'est vraiment pas complexe au runtime. Seuls les program headers font foi et mon loader qui faisait du dynamic linking (!) tenait en 150 lignes de C.
-
jean-baptiste boricPremium
Niveau 10: GR (Guide de Référence)- Posts: 379
- Joined: 21 Dec 2015, 22:22
- Gender:
- Calculator(s):→ MyCalcs profile
- GitHub: boricj
Re: NumBoots - Bootloader pour NumWorks N0110
Un loader ELF n'est pas forcément très complexe au runtime, en effet, mais sur Nspire, je me souviens d'overheads taille variables au runtime, parfois très faibles mais parfois plus difficiles à accepter par rapport au faible apport d'ELF pour ce cas d'usage, des dizaines de KBs sur certains programmes assez simples qui contenaient... ce qu'il fallait pour qu'il y ait de tels overheads, je ne sais pas exactement quoi mais je suppose que ça pouvait être beaucoup de sections, beaucoup de relocations, ou quelque chose de ce genre.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
-
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6865
- Joined: 23 Dec 2009, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: -
- GitHub: debrouxl
Re: NumBoots - Bootloader pour NumWorks N0110
De ce que j'ai constaté, pour pouvoir avoir un .data "relocatable" en ram et un .text en flash, il faut utiliser l'option "-mno-pic-data-is-text-relative" qui crée des entrées dans .got pour chaque symbole du .data, et ça pouvait prendre beaucoup de place, pour giac par exemple.
De mémoire aussi, il y a plus de 2Mo de relocations pour giac, donc impossible à faire sur la calculatrice.
C'est plus simple au final de reporter ça en dehors. Du coup pas besoin de toolchain ou libc spécifique, ni rien de complexe ou coûteux sur la calculatrice.
De mémoire aussi, il y a plus de 2Mo de relocations pour giac, donc impossible à faire sur la calculatrice.
C'est plus simple au final de reporter ça en dehors. Du coup pas besoin de toolchain ou libc spécifique, ni rien de complexe ou coûteux sur la calculatrice.
-
zardamPremium
Niveau 9: IC (Compteur Infatigable)- Posts: 233
- Images: 13
- Joined: 11 Oct 2017, 23:39
- Gender:
- Calculator(s):→ MyCalcs profile
Re: NumBoots - Bootloader pour NumWorks N0110
Au final, j'ai réussi à compiler ld et objcopy avec emscripten, donc pas besoin d'avoir un outil/format dédié, le link final se fait directement dans le navigateur.
J'ai enrobé tout ça dans une page web disponible ici : https://zardam.github.io/nw-external-apps/
Le firmware et KhiCAS sont à jour avec les modifications pour le mode examen. Les deux autres applications méritent encore un peu d'attention avant d'être pleinement utilisables.
J'ai enrobé tout ça dans une page web disponible ici : https://zardam.github.io/nw-external-apps/
Le firmware et KhiCAS sont à jour avec les modifications pour le mode examen. Les deux autres applications méritent encore un peu d'attention avant d'être pleinement utilisables.
-
zardamPremium
Niveau 9: IC (Compteur Infatigable)- Posts: 233
- Images: 13
- Joined: 11 Oct 2017, 23:39
- Gender:
- Calculator(s):→ MyCalcs profile
Re: NumBoots - Bootloader pour NumWorks N0110
Super travail, comme toujours
Emscripten a décidément progressé au fil du temps.
Emscripten a décidément progressé au fil du temps.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
-
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)- Posts: 6865
- Joined: 23 Dec 2009, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: -
- GitHub: debrouxl
Re: NumBoots - Bootloader pour NumWorks N0110
Excellent !
Ca va simplifier beaucoup de choses
Ca va simplifier beaucoup de choses
MyCalcs: Help the community's calculator documentations by filling out your calculators info!
MyCalcs: Aidez la communauté à documenter les calculatrices en donnant des infos sur vos calculatrices !
Inspired-Lua.org: All about TI-Nspire Lua programming (tutorials, wiki/docs...)My calculator programs
Mes programmes pour calculatrices
-
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)- Posts: 14778
- Images: 1123
- Joined: 01 Jun 2007, 00:00
- Location: France
- Gender:
- Calculator(s):→ MyCalcs profile
- Twitter: adriweb
- GitHub: adriweb
Re: NumBoots - Bootloader pour NumWorks N0110
Merci! C'est super tout ça!! Je me pencherai dessus un maximum après mes examens pour adapter Omega et le rendre parfaitement compatible avec cet outil
-
quentinguideeProgrammeur
Niveau 10: GR (Guide de Référence)- Posts: 81
- Joined: 30 Oct 2019, 20:40
- Location: Belgique
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: Ingénieur civil, Bac 1
- GitHub: quentinguidee
Re: NumBoots - Bootloader pour NumWorks N0110
Merci @zardam.
Moyen de choisir la ROM pour l'émulateur NES qui semble venir par défaut avec un homebrew 2048 ?
Moyen de choisir la ROM pour l'émulateur NES qui semble venir par défaut avec un homebrew 2048 ?
-
critorAdmin
Niveau 19: CU (Créateur Universel)- Posts: 42131
- Images: 16453
- Joined: 25 Oct 2008, 00:00
- Location: Montpellier
- Gender:
- Calculator(s):→ MyCalcs profile
- YouTube: critor3000
- Twitter: critor2000
- GitHub: critor
Re: NumBoots - Bootloader pour NumWorks N0110
Pas pour la moment, sauf à recompiler, mais ça va arriver (quand ça sera prêt...).
L'ajout de fichiers "custom" sur l'installeur en ligne et pensé entre autre pour ça.
Je suis aussi en train de regarder pour faire un explorateur de fichiers du script store pour pouvoir se passer du workshop, et aussi d'échanger d'autres types de fichiers (sessions KhiCAS).
L'ajout de fichiers "custom" sur l'installeur en ligne et pensé entre autre pour ça.
Je suis aussi en train de regarder pour faire un explorateur de fichiers du script store pour pouvoir se passer du workshop, et aussi d'échanger d'autres types de fichiers (sessions KhiCAS).
-
zardamPremium
Niveau 9: IC (Compteur Infatigable)- Posts: 233
- Images: 13
- Joined: 11 Oct 2017, 23:39
- Gender:
- Calculator(s):→ MyCalcs profile
Re: NumBoots - Bootloader pour NumWorks N0110
Zardam si jamais tu veux t'eviter de t'arracher les cheveux avec tout ce qui est WebUSB/DFU j'ai commencé à faire quelques fonctions utiles dans un repo github : https://github.com/M4xi1m3/omega-webdfu-tests
-
M4x1m3Programmeur
Niveau 13: CU (Calculateur Universel)- Posts: 171
- Images: 12
- Joined: 13 Oct 2019, 21:10
- Location: Bas-Rhin (67)
- Gender:
- Calculator(s):→ MyCalcs profile
- Class: M2 Informatique
- Twitter: M4xi1m3
- GitHub: M4xi1m3
37 posts
• Page 3 of 4 • 1, 2, 3, 4
Return to Programmation native (C/C++/...)
Who is online
Users browsing this forum: ClaudeBot [spider] and 1 guest