π
<-
Chat plein-écran
[^]

Identifier le type de Nspire avec ndless

C, C++, ASM...

Identifier le type de Nspire avec ndless

Unread postby Noury » 25 Feb 2019, 10:41

Bonjour,

J'utilise la bibliothèque nspire-io de Vogtinator qui est un fork de nspire-io de compujuckel
J'ai rencontré un problème sur la fonction uart_ready. Le test à faire pour savoir si le port est prêt est différent selon que l'on est sur une nspire d'avant les CX et CX CAS ou après.
Je n'ai qu'une CX CAS.
J'aurais besoin d'aide pour faire des tests pour arriver à différencier les deux types de calculatrices.
Avec le code suivant:

Code: Select all
#include <nspireio/nspireio.h>

int main()
{
        printf("hwtype() = %d\n", hwtype());
        printf("nl_hwsubtype() = %d\n", nl_hwsubtype());
        puts("Bye!");
        wait_key_pressed();
        return 0;
}

J'obtiens 1 pour hwtype(), et 0 pour nl_hwsubtype().

J'aurais besoin que quelqu'un fasse le test sur des modèles pré-CX, et me communique les résultats.
Même besoin pour une CX non CAS.

Ce n'est pas certain que ces éléments permettront d'identifier les modèles, mais c'est tout ce que j'ai trouvé pour l'instant dans les bibliothèques pour faire des tests.

Cette bibliothèque est en principe installée d'office avec Ndless.

Le but est de modifier le code de la bibliothèque pour la rendre plus "universelle".

Merci à ceux qui pourront faire ce test.
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Unread postby Adriweb » 25 Feb 2019, 11:21

Notons que libndls.h contient ceci, donc tu peut deja savoir quoi faire pour identifier ces modèles :
Code: Select all
#define is_classic (hwtype() < 1)
#define is_cm (nl_hwsubtype() == 1)
#define has_colors (!is_classic)

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
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.4%
 
Posts: 14670
Images: 1118
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Identifier le type de Nspire avec ndless

Unread postby critor » 25 Feb 2019, 11:25

Tu peux consulter les ASIC user flags qui sont infalsifiables :
https://hackspire.org/index.php/Memory- ... cellaneous
https://hackspire.org/index.php/Memory- ... cellaneous
0b00 = TI-Nspire ou TI-Nspire CX
0b01 = TI-Nspire CAS ou TI-Nspire CX CAS
0b10 = TI-Nspire CM
0b11 = TI-Nspire CM CAS

Et tu peux compléter cela par une lecture du model ID en partition Manuf de la NAND :
https://hackspire.org/index.php/NAND_Memory_Layout
Falsifiable, mais en pratique quasiment aucun intérêt.
0C = TI-Nspire CAS
0E = TI-Nspire
0F = TI-Nspire CX CAS
10 = TI-Nspire CX
11 = TI-Nspire CM CAS
12 = TI-Nspire CM
1C = TI-Nspire CX II CAS
1D = TI-Nspire CX II
1E = TI-Nspire CX II-T
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 45%
 
Posts: 41669
Images: 15208
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Unread postby Noury » 25 Feb 2019, 14:45

critor wrote:Tu peux consulter les ASIC user flags qui sont infalsifiables :
https://hackspire.org/index.php/Memory- ... cellaneous
https://hackspire.org/index.php/Memory- ... cellaneous
0b00 = TI-Nspire ou TI-Nspire CX
0b01 = TI-Nspire CAS ou TI-Nspire CX CAS
0b10 = TI-Nspire CM
0b11 = TI-Nspire CM CAS

Merci critor.

En appliquant ça à ma CX CAS, j'obtiens la valeur 1 pour le user flag model.
Ce qui correspond à la ligne : 0b01 = TI-Nspire CAS ou TI-Nspire CX CAS

Est-ce que tu aurais la possibilité d'essayer ce code sur d'autres modèles en ta possession ?

Code: Select all
#include <nspireio/nspireio.h>
 
int main()
{
        printf("hwtype() = %d\n", hwtype());
        printf("nl_hwsubtype() = %d\n", nl_hwsubtype());
        printf("asic_user_flags_model = %d\n", (*(volatile unsigned*)0x900A002C & 0x7C000000) >> 26);
        puts("Bye!");
        wait_key_pressed();
        return 0;
}


Je joins le .tns à ce post pour t'éviter la recompilation.
Il y a donc 3 résultats.

Cette demande est valable pour tout possesseur d'une TI-Nspire équipée de Ndless, mais pour un autre modele que la CX CAS.
Merci pour toute réponse à cet appel à contribution.
Attachments
test-is_classic.tns
(105.08 KiB) Downloaded 68 times
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Unread postby Noury » 25 Feb 2019, 17:28

Adriweb wrote:Notons que libndls.h contient ceci, donc tu peut deja savoir quoi faire pour identifier ces modèles :
Code: Select all
#define is_classic (hwtype() < 1)
#define is_cm (nl_hwsubtype() == 1)
#define has_colors (!is_classic)

Merci pour ta réponse.

Tu veux donc dire que si ce n'est pas "cm" et que ça n'est pas "classic", alors c'est CX.
C'est bien ça ?
Je pourrai le vérifier si j'ai suffisamment de réponses à mon tests.
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Unread postby Noury » 26 Feb 2019, 00:18

critor wrote:Tu peux consulter les ASIC user flags qui sont infalsifiables :
0b00 = TI-Nspire ou TI-Nspire CX
0b01 = TI-Nspire CAS ou TI-Nspire CX CAS
0b10 = TI-Nspire CM
0b11 = TI-Nspire CM CAS

Les clickpad sont à classer dans quelle catégorie ? Je les trouve dans les deux premières lignes.
Il faut excuser mon ignorance, mais quelle différence il y a entre CM et clickpad ?
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Unread postby critor » 26 Feb 2019, 00:23

Aucun problème. :)
Les ClickPad/TouchPad ont pour noms de modèle TI-Nspire ou TI-Nspire CAS.
Elles ont donc comme ASIC flags 0b00 ou 0b01, exactement comme les TI-Nspire CX.

Maintenant pour les différences :
- les ClickPad/TouchPad ont 32Mio de SDRAM et un écran monochrome 320x240 pixels.
- les CM ont 32Mio de SDRAM et un écran couleur 320x240 pixels.
- les CX et CX II ont 64Mio de SDRAM et un écran couleur 320x240 pixels.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 45%
 
Posts: 41669
Images: 15208
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Unread postby Noury » 26 Feb 2019, 12:00

Grace à samourai3745, j'ai pu remplir le tableau suivant:

Image

Ce serait sympa que d'autres contributions permettent de remplir davantage. En particulier pour les "CM".
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Unread postby critor » 26 Feb 2019, 12:08

Je t'ai déjà donné les flags, non ?
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 45%
 
Posts: 41669
Images: 15208
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Unread postby Noury » 26 Feb 2019, 12:21

Oui critor.
Je voulais juste une confirmation pratique.
C'est surtout pour vérifier que le code source correspond bien aux champs indiqués.
User avatar
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 54.7%
 
Posts: 291
Joined: 07 Sep 2018, 09:19
Location: Sceaux, France 92
Gender: Male
Calculator(s):
MyCalcs profile


Return to Native: Ndless, Linux, ...

Who is online

Users browsing this forum: No registered users and 19 guests

-
Search
-
Social TI-Planet
-
Featured topics
"1 calculatrice pour tous", le programme solidaire de Texas Instruments. Reçois gratuitement et sans aucune obligation d'achat, 5 calculatrices couleur programmables en Python à donner aux élèves les plus nécessiteux de ton lycée. Tu peux recevoir au choix 5 TI-82 Advanced Edition Python ou bien 5 TI-83 Premium CE Edition Python.
Enseignant(e), reçois gratuitement 1 exemplaire de test de la TI-82 Advanced Edition Python. À demander d'ici le 31 décembre 2024.
Offre de test des nouveautés de rentrée 2024 par Casio. Enseignant(e), reçois gratuitement 1 exemplaire, à ton choix, de la Graph Light ou bien de la Graph Math+
14€ remboursés par Casio sur l'achat de ta calculatrice Graph 35 d'ici le 31 Octobre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 90+E d'ici le 31 Décembre 2024
10€ remboursés par Casio sur l'achat de ta calculatrice Graph 25 d'ici le 31 Décembre 2024
8€ remboursés par Casio sur l'achat de ta calculatrice Graph Math+ d'ici le 31 Octobre 2024
Reprise de ton ancienne fx-92 Collège ou Graph 25/35/90 à 3€ peu importe son état. Même non fonctionnelle et donc invendable, même ancienne Graph 35 non conforme aux programmes (pas de Python), même ancienne Graph 25/35 inutilisable aux examens (pas de mode examen) et donc invendable. Etiquette de retour fournie, pas de frais de port à payer.
3€ remboursés par Casio sur l'achat de ta calculatrice fx-92 Collège d'ici le 30 Septembre 2024
5€ de remise immédiate sur l'achat de ta calculatrice TI-83 Premium CE Edition Python chez les revendeurs partenaires
4€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced Edition Python chez les revendeurs partenaires
3€ de remise immédiate sur l'achat de ta calculatrice TI-82 Advanced chez les revendeurs partenaires
Comparaisons des meilleurs prix pour acheter sa calculatrice !
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234567891011121314
-
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.
1427 utilisateurs:
>1414 invités
>8 membres
>5 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)