π
<-

83 Premium CE 5.5 : 50K de scripts Python importables !

:32ti73: :32ti73e: :32ti73e2: :32ti76f: :32ti80: :32ti81: :32ti82: :32ti85: :32ti86: :32ti82s: :32ti82sf: :32ti82sfn: :32ti83: :32ti83p: :32ti83pb: :32ti83pr: :32ti83pfr: :32ti83pse: :32ti84p: :32ti84pse: :32ti84ppse: :32ti84pfr: :32ti84pcse: :32ti83pfrusb: :32ti82p: :32ti82a: :32ti84pce: :32ti83pce:

83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby critor » 12 May 2020, 13:33

1132511355Le fonctionnement matériel de ta TI-83 Premium CE Edition Python est absolument passionnant, du véritable travail d'horloger. :)
Elle renferme 3 puces essentielles :
  • un cœur principal JB-007-01 S7TM2-010 qui renferme entre autres le processeur eZ80 et sa mémoire RAM
  • une mémoire Flash externe Winbond 25Q32JVSIQ de 4 Mio de capacité, qui renferme :
    • le code d'amorçage (Boot) de 128 Kio
    • le système d'exploitation
    • un espace de stockage de 3 Mio de capacité qui accueille les applications ainsi que toutes les variables que tu places en mémoire d'archive
  • et un cœur secondaire Atmel ATSAMD21 dédié à l'application Python

10240L'étude du cœur secondaire Atmel avait déjà bien commencé du temps où il était proposé sur le module externe d'extension TI-Python pour l'ancien modèle TI-83 Premium CE. Il comporte :
  • un processeur 32 bits Cortex-M0+/ARMv6 cadencé à 48MHz
  • une mémoire Flash interne de 256 Kio
  • une mémoire SRAM de 32 Kio

La mémoire SRAM Atmel est utilisée :
  • d'une part pour l'exécution du firmware CircuitPython
  • d'autre part pour l'exécution de tes scripts Python, notamment à travers le tas (heap) et la pile (stack) comme évoqué récemment

Aujourd'hui nous nous intéressons à la mémoire Flash Atmel interne. Elle renferme
  • le firmware CircuitPython que nous venons de mentionner
  • et un espace de stockage destiné à accueillir les fichiers utilisés par le firmware ainsi que tes scripts Python importables, avec une capacité mesurée de 58,5 Kio du temps où on pouvait analyser le module TI-Python externe par connexion USB directe à un ordinateur

Bref, ce qu'il faut comprendre avec la TI-83 Premium CE Edition Python, c'est que même si tu peux stocker jusqu'à 3 Mio de scripts Python dans la mémoire Flash externe, ces derniers ne seront pas utilisables. L'application Python ne te permet en effet de lister, modifier, importer ou lancer directement que les seuls scripts présents dans la mémoire RAM associée au cœur principal eZ80, soit jusque dans les 150K si elle est bien vide.

Ensuite, lorsque tu accèdes à l'environnement Python, tous les scripts Python présents dans la mémoire RAM eZ80 (150K) sont copiés dans l'espace de stockage du cœur Atmel (58,5 Kio).

Comme ce dernier est de capacité inférieure, Texas Instruments avait par défaut fixé des limites pour éviter de l'épuiser. Tu avais droit jusqu'à présent à :
  • jusqu'à 80 fichiers de scripts Python différents
  • pour une taille globale de 40 Kio, soit très en-dessous des 58,5 Kio de capacité avec 55,5 Kio d'espace libre lorsque nous avions testé sur le module TI-Python externe
Si tu dépassais l'une des ces deux limites avec les seuls scripts Python présents en mémoire RAM eZ80, l'application Python refusait de démarrer et t'affichait alors l'écran d'erreur ci-contre.

Tu te devais alors soit de supprimer des scripts Python, soit d'en déplacer certains en mémoire d'archive. Un travail de sélection/jonglage pouvant être assez fastidieux.

Et bien bonne nouvelle pour toi avec la prochaine mise à jour 5.5, qui retardera nettement ces légers embêtements. :)

Les limites y sont en effet augmentées de 20% selon nos tests. Tu as désormais droit en mémoire RAM eZ80 de ta calculatrice à très exactement :
  • jusqu'à 100 fichiers de scripts Python différents :bj:
  • pour une taille globale de 50 Kio, bien plus proche cette fois-ci de l'espace libre estimé donc à 55,5 Kio sur le cœur Atmel :bj:
De quoi aller bien plus loin dans tes projets, merci TI ! :D
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47%
 
Posts: 41934
Images: 15609
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: 83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby Bisam » 12 May 2020, 13:59

C'est une bonne nouvelle de voir cette taille légèrement augmenter... mais franchement, je ne comprends pas pourquoi il est utile à l'exécution de conserver les scripts en RAM !
Le principe même du Python est de s'exécuter à la volée, donc, certes, il est nécessaire de stocker sur le tas des informations provenant des différents scripts... mais normalement, chaque script n'est exécuté et donc lu qu'une seule fois. Il est donc parfaitement inutile d'encombrer la RAM avec ces scripts. On pourrait même imaginer les lire 1 par 1 sans que cela soit gênant.

Un protocole permettant cette lecture script par script ou mieux encore un protocole permettant de lire des scripts directement depuis la mémoire d'archive aurait été bien plus utile qu'une mémoire RAM si petite pour stocker des informations non nécessaires (et même redondantes puisque copiées depuis un autre stockage).
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: 83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby critor » 12 May 2020, 15:24

Je trouve ça dommage qu'il y ait obligation d'avoir les scripts en RAM pour pouvoir les lancer/importer.
Je parle bien évidemment dans le contexte de scripts que l'on n'a pas besoin d'éditer.

Cela encombre la petite RAM, alors qu'il y avait toute la place possible en Flash...

Après d'un autre côté, comme le coprocesseur Python ne pourrait dans l'absolu importer au mieux que 55K de scripts, TI s'est peut-être dit que les 150K de RAM étaient suffisants, qu'il n'y avait pas besoin de s'embêter à lui faire gérer la communication avec la Flash externe.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47%
 
Posts: 41934
Images: 15609
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: 83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby Bisam » 12 May 2020, 15:39

En fait, je parlais de la RAM associée au coprocesseur Python. D'après moi, chaque script peut être lu séparément puis oublié et Python gère ensuite tout seul les objets créés par ces scripts.
Mais bon, je suis loin d'avoir les capacités techniques nécessaires pour tout comprendre à un si bas niveau : je peux me tromper.
User avatar
BisamAdmin
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 69.6%
 
Posts: 5670
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):
MyCalcs profile

Re: 83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby critor » 12 May 2020, 15:41

Certes.

Effectivement, tous les scripts Python de la RAM eZ80 sont copiés d'un coup au démarrage de l'environnement Python.
Si on les copiait un par un seulement lorsque nécessaire (importation explicitement demandée), il n'y aurait plus cette limitation.
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47%
 
Posts: 41934
Images: 15609
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: 83 Premium CE 5.5 : 50K de scripts Python importables !

Unread postby DoOmnimaga » 29 May 2020, 19:51

Vraiment dommage que les scripts doivent être en RAM pour être lancés. Alors que TI a enfin permis l'exécution de programmes TI-BASIC, ASM et C à partir de l'archive à partir de l'OS 5.3.1 je crois, le fait que les scripts python doivent être en RAM semble un peu une régression pour moi, surtout avec la suppression de l'ASM et du C.
ImageImageImageImage
User avatar
DoOmnimagaPremium
Niveau 12: CP (Calculatrice sur Pattes)
Niveau 12: CP (Calculatrice sur Pattes)
Level up: 20.4%
 
Posts: 693
Images: 51
Joined: 21 Feb 2012, 12:04
Location: Quebec, Canada
Gender: Male
Calculator(s):
MyCalcs profile
Class: 11eme annee scolaire termine
YouTube: DJOmnimaga
Twitter: DJOmnimaga
Facebook: dreamofomnimaga.page


Return to News TI-z80 (TI-73, 76, 80, 81, 82, 83, 84, 85, 86)

Who is online

Users browsing this forum: No registered users and 9 guests

-
Search
-
Social TI-Planet
-
Featured topics
Comparaisons des meilleurs prix pour acheter sa calculatrice !
"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.
Aidez la communauté à documenter les révisions matérielles en listant vos calculatrices graphiques !
1234
-
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.
803 utilisateurs:
>773 invités
>22 membres
>8 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)