π
<-
Chat plein-écran
[^]

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: 5.1%
 
Posts: 35262
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

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: 48.2%
 
Posts: 5466
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):

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: 5.1%
 
Posts: 35262
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti

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: 48.2%
 
Posts: 5466
Joined: 11 Mar 2008, 00:00
Location: Lyon
Gender: Male
Calculator(s):

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: 5.1%
 
Posts: 35262
Images: 9403
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
Class: Lycée
YouTube: critor3000
Twitter: critor2000
Facebook: critor.ti


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

Who is online

Users browsing this forum: Jeffitus and 20 guests

-
Search
-
Featured topics
L'OS 5.5 de la TI-83 Premium CE / 84 Plus CE supprime l'assembleur - la plupart des jeux et certains programme ne fonctionneront plus
Omega, le fork étendant les capacités de ta NumWorks, même en mode examen !
Découvre les nouvelles fonctionnalités en Python de l'OS 5.5 pour la 83PCE/84+C-T Python Edition
Comparaisons des meilleurs prix pour acheter sa calculatrice !
1234
-
Donations / Premium
For more contests, prizes, reviews, helping us pay the server and domains...

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 
-
Stats.
432 utilisateurs:
>412 invités
>15 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)