π
<-
Chat plein-écran
[^]

Dynamic linking of a library on NSpire/Ndless

C, C++, ASM...

Dynamic linking of a library on NSpire/Ndless

Unread postby SlyVTT » 07 Mar 2021, 20:23

Hello,

I am still working on my GUI toolkit but I can see one possible problem in a near future : size of the executable may quickly become sufficiently big to limit the use of the toolkit for numerous projects / applications.

The best would be to be able to create a library containing all the classes and methods and link this library dynamically to the application program(s), so what the "repetitive" part of the code would just be written once on the calculator and hence save a large amount of "disk" space.

I tried to check if it is possible to create dynamically linked libraries with Ndless on TI NSpire, but just found this Github https://github.com/nspiredev500/nspire-dynamic-linking-PoC from
nspiredev500
through the
codewalr.us
page here : https://codewalr.us/index.php?topic=2554.0 ... and to be honnest, it is not cristal clear if the PoC can be transferred to an actual "full size program". It also seems to be based on a replacement OS called OSExt, so no proof it is actually working on a "standard" (I don't think the wording is correct, but I cannot find something better :D ) Ndless program.

Considering the fact that the last update of the GitHub repository is quite old (almost one year and half), maybe is there a better way (or at least better documented way) of making a dynamic library and to link to an application program on NSpire with Ndless.

Does anyone already encountered that issue and managed it ?

Thanks in advance

Sly
Developing the GUI Toolkit for nSpire
see current revision here : https://github.com/SlyVTT/Widget-for-TI-NSpire

And for the GUI Toolkit NF (New Foundation), this is here https://github.com/SlyVTT/Widgets-Spire-NF

Image Image Image Image
User avatar
SlyVTTProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 87.5%
 
Posts: 148
Images: 0
Joined: 19 Jan 2021, 09:41
Gender: Male
Calculator(s):

Re: Dynamic linking of a library on NSpire/Ndless

Unread postby nspiredev500 » 24 Jul 2021, 20:29

Hi,
I'm the one who made the dynamic linking PoC.
Sorry for replying so late, I had another project and I'm now studying computer science, so I don't have so much free time anymore.
For now the PoC cannot be used easily, but I'm working on something like that. I want to develop a on-calc C toolchain an a part of that is a linker.
When the linker is finished, I will make it a separate program that can open elf files and automatically links in the libraries at runtime.
I actually want to submit some changes to Ndless to make it even more efficient, e.g. sharing the code segment in memory with other programs, so If resident programs depend on the library, only one copy is using up RAM.
I looked at my linker and I think it can already sucessfully link an ELF file to a ZEHN file. At that point I can just include the ZEHN loader and the program can run linked from RAM.
I think I will be finished with it this year, at least the basic version without the optimizations that have to be integrated into Ndless itself.

By the way, I think I will use your widget library for the on-calc IDE :) .

nspiredev500
User avatar
nspiredev500Membre
Niveau 3: MH (Membre Habitué)
Niveau 3: MH (Membre Habitué)
Level up: 60%
 
Posts: 13
Joined: 03 Jul 2020, 12:22
Gender: Not specified
Calculator(s):
GitHub: nspiredev500

Re: Dynamic linking of a library on NSpire/Ndless

Unread postby SlyVTT » 25 Jul 2021, 11:00

Hi Nspiredev500,

very nice to read you are still working on that.
I had also to pause the development of the GUI Toolkit for 2 months as I was extremely busy at work, but even if my fingers where not hitting the keyboard for some weeks, I am thinking on the new revision (let say rev 1.0+) with rewritten code and introduction of new architecture.
The target is to be more efficient and more versatile. i will try to take benefit of the first revisions mistakes to improve the toolkit.

Please let us know when you have something working, for sure it would be a great enhancement of Ndless.

Sly
Developing the GUI Toolkit for nSpire
see current revision here : https://github.com/SlyVTT/Widget-for-TI-NSpire

And for the GUI Toolkit NF (New Foundation), this is here https://github.com/SlyVTT/Widgets-Spire-NF

Image Image Image Image
User avatar
SlyVTTProgrammeur
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 87.5%
 
Posts: 148
Images: 0
Joined: 19 Jan 2021, 09:41
Gender: Male
Calculator(s):


Return to Native: Ndless, Linux, ...

Who is online

Users browsing this forum: No registered users and 2 guests

-
Search
-
Social
-
Featured topics
Concours de rentrée 2021 - La Geste d'Alrys
Concours de rentrée 2021 - Synchro-donjon !
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Remplace ton ancienne fx-92 Collège ou Graph 35 par la nouvelle Graph 35+E II programmable en Python ! Pour tout achat d'une nouvelle Graph 35 d'ici le 30 septembre 2021, Casio te rembourse 10€. En cas de retour de ta fx-92 Collège c'est 18€, et même ou 23€ si tu retournes ton ancienne Graph 35. Etiquette de retour fournie, pas de frais de port à payer, même les anciens modèles et machines non fonctionnelles sont acceptées. En partenariat avec les Restos du cœur.
Remplace ton ancienne fx-92 Collège ou Graph 35 par la Graph 90+E couleur. Pour tout achat, Casio te rembourse 10€ en cas de retour de ta fx-92 Collège, ou 15€ en cas de retour de ta Graph 35. Etiquette de retour fournie, pas de frais de port à payer, même les anciens modèles et machines non fonctionnelles sont acceptées. En partenariat avec les Restos du coeur.
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 30 Septembre 2021
Reprise de ton ancienne fx-92 Collège à 5€ ou Graph 35 à 10€. Même non fonctionnelle ou ancien modèle. Etiquette de retour fournie, pas de frais de port à payer. En partenariat avec les Restos du coeur.
25€ remboursés par Casio sur l'achat de ta calculatrice fx-CP400 d'ici le 31 Octobre 2021
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2021
Casio Graph 90+E ou Graph 35+E II avec couvercle personnalisé à gagner sur simple participation aux formations Casio de Septembre 2021.
Disque dur externe + écouteurs bluetooth + 2 superbes coques personnalisées pour Graph 90+E ou Graph 35+E II à gagner en répondant d'ici le 24 Septembre 2021 à la question : "Quelle est l'unité de tension électrique ?"
Coque NumWorks édition limitée Septembre 2021 à gagner.
123456789101112
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...
Donate
Discover the the advantages of a donor account !
JoinRejoignez the donors and/or premium!les donateurs et/ou premium !


Partner and ad
Notre partenaire Jarrety Calculatrices à acheter chez Calcuso
-
Stats.
505 utilisateurs:
>493 invités
>6 membres
>6 robots
Record simultané (sur 6 mois):
6892 utilisateurs (le 07/06/2017)

-
Other interesting websites
Texas Instruments Education
Global | France
 (English / Français)
Banque de programmes TI
ticalc.org
 (English)
La communauté TI-82
tout82.free.fr
 (Français)