Page 1 of 1

Nouveautés dans Ndless: API graphique et API USB...

Unread postPosted: 01 Sep 2013, 10:40
by Lionel Debroux
Bonne nouvelle: ce week-end, dans Ndless, il y a deux nouveautés importantes :)
Good news: over the week-end, there have been two important additions to Ndless :)

Tout d'abord, une nouveauté pour la programmation graphique. On connaissait déjà la librairie nSDL (nous avons fait des news ou des actualités sur la plupart des jeux qui l'utilisent), et également nRGBlib, moins largement utilisée.
Maintenant, une troisième voie s'offre aux utilisateurs, avec l'intégration à Ndless des travaux de Levak sur l'API graphique native de l'OS, baptisée nGC ("TI-Nspire Graphic Context"), qui forme la base de la programmation graphique Lua, et qui sera donc familière aux développeurs Nspire Lua :bj:
Cette API est inspirée par Graphics2D du Java et se base sur les fonctions GRAFIX de Nucleus.
First of all, an addition to graphics programming. We already had the nSDL library (we made news items or other topics about most of them), and also the lesser-used nRGBlib.
Users can now leverage a third option, with the integration into Ndless of Levak's work on the OS' native graphics API, dubbed nGC ("TI-Nspire Graphic Context"), which is the backend for Lua graphics programming, and will therefore seem familiar to Nspire Lua developers :bj:
This API is inspired by Java's Graphics2D and is based on Nucleus' GRAFIX functions.


Des screenshots valent certainement mieux qu'un bloc de texte:
Screenshots are certainly better than a wall of text:
Image
Image
Image


Pour programmer avec nGC, il faut Ndless SVN r903 et ultérieures, voir le lien de téléchargement ci-dessous :)
In order to take advantage of nGC, one needs Ndless SVN r903 and later, see the download link below :)


L'autre nouveauté du week-end, que je signalais hier matin dans un autre topic, est l'ajout en tant que syscalls d'un sous-ensemble des fonctions de communication à travers USB avec le protocole NavNet de TI (et donc, côté ordinateur, l'implémentation de TI, ou l'implémentation propriétaire de libticalcs, dont j'ai publié une amélioration en lien avec NavNet tout à l'heure à http://ti-pla.net/p147303 ).
The other addition made during the week-end, which I mentioned yesterday morning in another topic, is the integration as a set of syscalls of a subset of the OS's functions for communicating through USB using TI's NavNet protocol (and therefore, on the computer side, TI's proprietary implementation, or the libticalcs implementation, to which I've published a related improvement earlier today as part of http://ti-pla.net/p147303 ).


Mentionnons également quelques autres améliorations dans SVN, comme nl_exec() (oui, la possibilité d'exécuter d'autres programmes :) ), ou bien la capacité de transférer un programme à une calculatrice réelle depuis l'éditeur du SDK (Windows seulement, en utilisant l'implémentation propriétaire NavNet de TI).
Let's also mention several other improvements in SVN, such as nl_exec() (yup, the ability to execute other programs :) ), or the ability to transfer a program to the real calculator from the SDK's editor (Windows-only, through TI's proprietary NavNet implementation).


Ce n'est pas parce que TI emmerde ses utilisateurs qu'il ne faut pas profiter de ce que certains programmeurs de la communauté offrent aux autres :)
The fact that TI crosses its users is no reason for not taking advantage of what some community programmers provide to others :)



Re: Nouveautés dans Ndless: API graphique et API USB...

Unread postPosted: 01 Sep 2013, 17:02
by mdr1
Il y a une fonction qui me plaît tout particulièrement :

void gui_gc_drawString(Gc, char * utf16, int x, int y, gui_gc_StringMode flags) - Draws an UTF-16 Null-terminated string at <x,y> using flags.


Dommage qu'elle ne soit pas venue avant, du temps où j'en avais besoin et où j'avais le temps (vacances)... parce que c'est grillé, maintenant.
Mais cette calculatrice ne va-t-elle pas devenir le genre d'engins avec un max de librairies mais très insuffisamment utilisées ?
Bien que le nombre de projets ait augmenté ces derniers temps...

Beau boulot en tout cas !

Re: Nouveautés dans Ndless: API graphique et API USB...

Unread postPosted: 01 Sep 2013, 21:06
by Levak
mdr1 wrote:Dommage qu'elle ne soit pas venue avant, du temps où j'en avais besoin et où j'avais le temps (vacances)... parce que c'est grillé, maintenant.

C'est ce temps qui m'a permis, moi, de pouvoir exposer à 100% l'API.
Pour pas te mentir, j'avais une grande partie de l'API déjà exposée dans mes carton depuis 1 an et demi, mais il me manquait un énorme travail (que je ne pouvais pas envisager au cours de mon année d'Ing1 à Epita) pour comprendre comment s'en servir isolément dans un programme ndless, c'est à dire, sans que le plat de pattes vienne avec lorsqu'on tire seulement un spaghetti =D

Re: Nouveautés dans Ndless: API graphique et API USB...

Unread postPosted: 02 Sep 2013, 00:14
by AlexisVieira
really great news :) Long live to Ndless!