π
<-
Chat plein-écran
[^]

KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

:32tins: :32tinsktpb: :32tinsktpn: :32tinscas: :32tinstpkc: :32tinstpktpb: :32tinstp: :32tinscastp: :32tinscmc: :32tinscx: :32tinscxcas:

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 24 Juil 2020, 08:57

Merci pour la réactivité. :)

Mais malheureusement, KhiCAS ne semble pas inclus dans le dernier .zip.
Le fichier khicas.tns est de toute évidence bien trop petit, et ne fait que lancer l'interface Lua :
ImageImage
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juil 2020, 09:46

Attention, il faut prendre l'archive du repertoire ti:
https://www-fourier.univ-grenoble-alpes.fr/~parisse/ti/khicas.zip
unzip -v khicas.zip me donne
Code: Tout sélectionner
4542382  Defl:N  4330741   5% 2020-07-24 07:41 2945227c  khicas.tns

Je mettrai a jour l'archive du repertoire calc quand cette nouvelle version aura ete plus testee.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 24 Juil 2020, 09:53

Merci bien, désolé pour l'erreur de .zip, je n'ai pas dû suivre les mêmes liens.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 24 Juil 2020, 10:27

Pour les scripts Python utilisant des interfaces texte (non graphiques), je trouve qu'il est utile de pouvoir détecter la plateforme, et donc y associer plusieurs caractéristiques de la console :
  • nombre de lignes de caractères visibles à l'écran
  • nombre de colonnes de caractères visibles à l'écran
  • retour automatique à la ligne ou pas en cas de dépassement de la colonne de droite

Je teste chr(256) == chr(0) pour savoir si je suis sur KhiCAS en compatibilité syntaxique Python.

Si c'est le cas, je teste ensuite white == 0 pour savoir si je suis sur une machine monochrome et donc la Graph 35+E II.

Dans la négative, cela voulait dire jusqu'à présent que l'on était sur une machine couleur, et donc la Graph 90+E.
Mais maintenant en cas d'échec de ce dernier test, cela veut dire ou Graph 90+E, ou TI-Nspire ou NumWorks.

Or les caractéristiques de la console étant apparemment différentes entre ces deux derniers modèles, y aurait-il donc un moyen automatique similaire pour distinguer les Graph 90+E, NumWorks et TI-Nspire dans le mode de compatibilité syntaxique Python de KhiCAS ?
Merci.
Code: Tout sélectionner
#platforms:
#0: MicroPython / TI-Nspire Ndless
#1: NumWorks
#2: G90+E / G35+E II
#3: G35+E/USB / G75/85/95
#4: TI-83PCE/84+CE
#5: CAS / HP Prime
#6: KhiCAS / Graph 90+E
#7: KhiCAS / Graph 35+E II
#8: HP Prime
#9: KhiCAS MicroPython / TI-Nspire

def get_pf():
  c256 = True
  try: # Xcas/KhiCAS Python compatibility
    if chr(256)==chr(0):
      if "HP" in version():
        return 5
      else:
        if white:
          return 6 # Graph 90+E
          # or TI-Nspire
        else:
          return 7 # Graph 35+E II
  except:
    c256 = False
  try:
    import sys
    try:
      if sys.platform=='nspire':
        try:
          import graphic
          return 9
        except:
          return 0
      if sys.platform.startswith('TI-Python') or sys.platform=='Atmel SAMD21':
        return 4
    except:
      return 3
  except:
    pass
  if not c256:
    return 2
  try:
    import kandinsky
    return 1
  except:
    try:
      import hpprime
      return 8
    except:
      pass
  return -1

pf=get_pf()

def get_pf_infos(pf):
  #NumWorks big: 12.5x30
  #NumWorks small: 16x42
  #HP Prime medium: 14x39 11.5x39
  #HP Prime small: 18.5x45 15.5x45
  #HP Prime big: 11x35 9x35
  l_vlines = (29,12,07,09,11,14,09,07,12,11)
  l_vcols =  (53,30,21,32,32,39,30,19,39,32)
  b_vcr = 0b0100011001
  if pf >= 0:
    return l_vlines[pf], l_vcols[pf], b_vcr // 2**pf % 2
  else:
    return max(l_vlines), max(l_vcols), 1
pf_vlines, pf_vcols, pf_vcr = get_pf_infos(pf)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juil 2020, 16:30

Entre la Numworks et la TI il ne devrait pas y avoir de differences. Entre la Casio et les 2 autres, comme il y a des commandes qui ne sont pas portees sur Casio faute de place, on pourrait tester type() d'une de ces commandes, mais ce serait plus propre de changer la commande version() pour ca.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 24 Juil 2020, 20:25

Merci une fois de plus pour la réponse rapide et enrichissante. :)

Effectivement il serait préférable de mentionner Nspire / NumWorks / Casio dans le retour de version(), lors de prochaines mises à jour.
Plutôt que de tester une commande qui sera peut-être un jour rajoutée si vous arrivez à vous débrouiller avec le problème de taille de l'appli sur Casio.
Quand est-ce que je pourrais espérer ça, histoire de pouvoir en tenir compte au plus tôt ?

Sinon, tant que nous y sommes, j'ai mis à jour le KhiCAS de ma NumWorks avec https://zardam.github.io/nw-external-apps/ .
Je note que lui aussi mentionne désormais un interpréteur Micropython, mais quand je l'active je ne note bizarrement pas de différence avec le mode de compatibilité Python.
Egalement, le tableur pourra-t-il être inclus dans le KhiCAS pour NumWorks ? Car c'est vraiment un gros manque sur cette machine.

Merci.
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 24 Juil 2020, 20:47

J'ai mis a jour la commande version() sur la TI et sur la Numworks, elles contiennent maintenant le nom de la calculatrice. Je prefere ne pas toucher pour l'instant a la version Casio, on doit pouvoir s'en sortir en eliminant TI et Numworks.

Pour la Numworks, il faut utiliser soit le fichier https://www-fourier.univ-grenoble-alpes.fr/~parisse/numworks/delta.zip en local avec dfu-utils, soit https://parisseb.github.io/nw-external-apps, installer le firmware puis cliquer sur Installer sans se preoccuper de choisir des apps (ce n'est pas propre, mais en attendant mieux). Le tableur est bien la, mais il faut etre prudent sur la taille du tableur, car la consommation de memoire est importante quand une cellule contient une formule non triviale, par exemple avec les commandes tableseq et tablefunc du menu shift-3 pour generer la table de valeurs d'une suite recurrente ou d'une fonction. A noter que le tableur fonctionne avec l'evaluateur de Xcas et pas celui de Micropython quel que soit l'evaluateur choisi dans le shell.
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 24 Juil 2020, 22:21

Merci bien. :)

Petite remarque, avec KhiCAS en mode Micropython sur NumWorks, on a sys.platform == 'nspire'.
C'est un petit peu gênant. ;)
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude parisse » 25 Juil 2020, 05:46

C'est corrige, merci!
Avatar de l’utilisateur
parisseVIP++
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Prochain niv.: 77.2%
 
Messages: 3500
Inscription: 13 Déc 2013, 16:35
Genre: Non spécifié
Calculatrice(s):
MyCalcs profile

Re: KhiCAS, le moteur formel Giac/Xcas pour toutes TI-Nspire

Message non lude critor » 25 Juil 2020, 11:15

parisse a écrit:
critor a écrit:Merci bien. :)

Petite remarque, avec KhiCAS en mode Micropython sur NumWorks, on a sys.platform == 'nspire'.
C'est un petit peu gênant. ;)

C'est corrige, merci!

Merci.

Est-ce que c'est censé être à jour sur https://parisseb.github.io/nw-external-apps/ ?

Parce que sauf erreur de manip de ma part, ça n'a rien changé ici.
Quelle est la nouvelle valeur de sys.platform en passant ?
Image
Avatar de l’utilisateur
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Prochain niv.: 41.8%
 
Messages: 41465
Images: 14479
Inscription: 25 Oct 2008, 00:00
Localisation: Montpellier
Genre: Homme
Calculatrice(s):
MyCalcs profile
YouTube: critor3000
Twitter/X: critor2000
GitHub: critor

PrécédenteSuivante

Retourner vers News TI-Nspire

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 57 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.
1139 utilisateurs:
>1125 invités
>9 membres
>5 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)