π
<-
Chat plein-écran
[^]

Identifier le type de Nspire avec ndless

C, C++, ASM...

Identifier le type de Nspire avec ndless

Message non lude Noury » 25 Fév 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: Tout sélectionner
#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.
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Message non lude Adriweb » 25 Fév 2019, 11:21

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

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...)
Avatar de l’utilisateur
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Prochain niv.: 80.2%
 
Messages: 14614
Images: 1218
Inscription: 01 Juin 2007, 00:00
Localisation: France
Genre: Homme
Calculatrice(s):
MyCalcs profile
Twitter/X: adriweb
GitHub: adriweb

Re: Identifier le type de Nspire avec ndless

Message non lude critor » 25 Fév 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
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.3%
 
Messages: 41494
Images: 14626
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Message non lude Noury » 25 Fév 2019, 14:45

critor a écrit: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: Tout sélectionner
#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.
Fichiers joints
test-is_classic.tns
(105.08 Kio) Téléchargé 67 fois
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Message non lude Noury » 25 Fév 2019, 17:28

Adriweb a écrit:Notons que libndls.h contient ceci, donc tu peut deja savoir quoi faire pour identifier ces modèles :
Code: Tout sélectionner
#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.
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Message non lude Noury » 26 Fév 2019, 00:18

critor a écrit: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 ?
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Message non lude critor » 26 Fév 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
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.3%
 
Messages: 41494
Images: 14626
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Message non lude Noury » 26 Fév 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".
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile

Re: Identifier le type de Nspire avec ndless

Message non lude critor » 26 Fév 2019, 12:08

Je t'ai déjà donné les flags, non ?
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 42.3%
 
Messages: 41494
Images: 14626
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: Identifier le type de Nspire avec ndless

Message non lude Noury » 26 Fév 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.
Avatar de l’utilisateur
NouryVIP++
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Prochain niv.: 52.8%
 
Messages: 287
Inscription: 07 Sep 2018, 09:19
Localisation: Sceaux, France 92
Genre: Homme
Calculatrice(s):
MyCalcs profile


Retourner vers Native: Ndless, Linux, ...

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 11 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.
1064 utilisateurs:
>1044 invités
>16 membres
>4 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)