Nous revoici aujourd'hui avec de quoi te faire tenir en toute sécurité en cette nouvelle semaine de confinement, grâce à la compagnie de ta fidèle TI-83 Premium CE.
Voici donc Mtn 1.2 par mrbearblue, un pack de niveaux perso pour Oiram CE, le moteur de jeu Mario-like dédié à ta machine et de plus en plus incontournable ces derniers temps.
mrbearblue a choisi le nom de Mtn en clin d'oeil à son breuvage favori et également une autre de ses passions dévorantes, le Mountain Dew de chez PepsiCo justement abrégé Mtn Dew pour le logo sur l'emballage, ainsi que ses divers dérivés notamment le Mtn Dew AMP Game Fuel comme tout gamer qui se respecte.
Au menu un assortiment de pas moins de 12 niveaux joliment variés :
Le niveau 12 quant à lui ne pouvait initialement pas être gagné, à la suite d'un problème de plomberie, un oubli de connexion de tuyaux.
Mais heureusement Kosmic, toujours fidèle au poste, t'en propose dès maintenant une correction.
Pour fonctionner correctement, Oiram CE a besoin des bibliothèques C téléchargeables ci-dessous. Mais rien de bien compliqué, il suffit juste de récupérer et transférer leur fichier.
Ce soir, voici une nouvelle découverte et acquisitation de pièce historique par fred desautels, une TI-86.
Ici pas de numéro de série au dos mais la mention Display Sample, suggérant qu'il s'agit d'un modèle d'exposition ayant donc probablement servi lors de salons éducatifs autour de la sortie de ce modèle pour la rentrée 1997.
Rien de spécial toutefois niveau matériel, avec une carte mère 9TILEOMB-30G et une carte écran 9TILEOLB-30D.
Par contre logiciellement, nous étaient connues jusqu'à ce jour les versions ROM :
0.2026(préversion du modèle enseignement rétroprojetable TI-86 VSC chez le musée Datamath)
1.2
1.3
1.4
1.5
1.6
Les versions 1.2 à 1.6 utilisées pour les modèles de production ont toutes été dumpées.
Et bien grosse surprise ici, ce modèle TI-86 d'exposition ayant sans doute servi lors d'événement éducatifs précédant le lancement du modèle, il est muni d'une version plus ancienne que la 1.2 et inconnue jusqu'à ce jour, la 1.0, peut-être la dernière copie au monde de cette version ! Espérons donc que fred desautels va réussir à nous dumper ce morceau d'Histoire pendant qu'il marche encore...
Félicitations une fois de plus pour cette nouvelle découverte d'une pièce unique au monde !
Dans un article précédent, nous te présentions Parkour par Kosmic, un pack de niveaux persos pour Oiram CE, le moteur de jeu Mario-like de ta TI-83 Premium CE.
Kosmic te repropose aujourd'hui ce pack de 4 niveaux dans une version corrigée et renommée Neo Jump Heaven!.
Cette nouvelle référence au type de saut le plus dur de l'univers Minecraft est bien méritée, ici aussi l'ascension de la tour te demandera littéralement de sauter à travers des blocs !
Mais ne t'inquiète pas, la difficulté a également été recalibrée pour que les divers sauts soient désormais bien tous réalisables par un joueur humain, plus besoin de sortir tes outils de triche !
Pour fonctionner correctement, Oiram CE a besoin des bibliothèques C téléchargeables ci-dessous. Mais rien de bien compliqué, il suffit juste de récupérer et transférer leur fichier.
La semaine dernière, Casio te sortait ses superbes mises à jour 3.30 et 3.40 pour ta Graph 35+E II ou Graph 90+E. Au menu des possibilités Python largement étendues avec :
un module casioplot permettant de contrôler les pixels de l'écran
un script matplotl.py interfaçant le module casioplot afin de le rendre utilisable comme le module matplotlib.pyplot standard
un script turtle.py interfaçant le module casioplot afin de le rentre utilisable comme le module turtle standard
Tes scripts faisant usage de ces deux derniers ont de plus le gros avantage de pouvoir être très facilement compatibles :
avec les plateformes implémentant les modules turtle et matplotlib.pyplot standard (ordinateur, tablette, ...)
aussi bien avec les Graph 90+E que les Graph 35+E II malgré leurs écrans très différents
et même compatibles NumWorks, non non tu ne rêves pas !
Nous avions exploré le module casioplot et reclassé les solutions Python sur calculatrice en conséquence.
Toutefois nous n'avions pas fait de même pour les interfaces matplotl.py et turtle.py, nous contentant pour leur part de tests de compatibilité, aux résultats certes excellents.
En effet, les interfaces matplotl.py et turtle.py ont le défaut de disparaître en mode examen, et bien qu'officielles il n'aurait donc pas été juste de les inclure dans un même classement.
Aujourd'hui après avoir pris le temps de réfléchir à comment traiter tout ceci de façon équitable, nous te proposons enfin nos exploration et classement, à l'aide du scrit suivant.
def getplatform(): id=-1 try: import sys try: if sys.platform=='nspire':id=0 if sys.platform.startswith('TI-Python') or sys.platform=='Atmel SAMD21':id=4 except:id=3 except: try: import kandinsky id=1 except: try: if chr(256)==chr(0):id=5+(not ("HP" in version())) except: id=2 return id
platform=getplatform() #lines shown on screen #plines=[29,12, 7, 9,11,0,0] plines=[29,16, 7, 9,11,0,0] #max chars per line #(error or CR if exceeded) pcols =[53,99,509,32,32,0,0]
def mprint(*ls): global curline st="" for s in ls: if not(isinstance(s,str)): s=str(s) st=st+s stlines=1+int(len(st)/ncols) if curline+stlines>=nlines: input("Input to continue:") curline=0 print(st) curline+=stlines
def sstr(obj): try: s=obj.__name__ except: s=str(obj) a=s.find("'") b=s.rfind("'") if a>=0 and b!=a: s=s[a+1:b] return s
def isExplorable(obj): s=str(obj) return s.startswith("<") and s.find(" ")>=0 and not s.startswith("<module")
def explmod(pitm,pitmsl=[],reset=True): global curline if(reset): curline=0 pitmsl=[sstr(pitm)] hd="."*(len(pitmsl)-1) spath=".".join(pitmsl) c,c2=0,0 spitm=str(pitm) for itms in sorted(dir(pitm)): c,c2=c+1,c2+1 try: itm=eval(spath+"."+itms) mprint(hd+itms+"="+str(itm)) if isExplorable(itm) and itm!=pitm: pitmsl2=pitmsl.copy() pitmsl2.append(itms) c2=c2+explmod(itm,pitmsl2,False)[1] except: mprint(hd+itms) if c>0 and reset: mprint(hd+"Total: "+str(c)+" 1st level item(s)") if c2>0 and c2!=c: mprint(hd+" "+str(c2)+" item(s)") return [c,c2]
Commençons donc par l'interface matplotl.py, avec l'appel import matplotl; explmod(matplotl).
Tu bénéficies donc ici de 25 points d'entrée :
On peut déjà noter quelques différences de valeurs entre les versions du script pour Graph 35+E II et Graph 90+E, l'un travaillant en effet sur un écran 128×64 pixels et l'autre 384×192 pixels.
Il faut donc éviter intervertir les deux versions du script.
Pas d'erreur sinon, tes scripts seront fonctionnels mais tu obtiendras un affichage non conforme à ton écran; en timbre poste dans le coin supérieur gauche sur Graph 90+E, ou encore illisible car débordant de l'écran sans possibilité de défilement sur Graph 35+E II.
Et maintenant voici l'exploiration de l'interface turtle.py, avec l'appel import turtle; explmod(turtle).
Bien que nettement plus court, le script offre ici dans ses deux versions pas moins de 69 points d'entrée :
Synthétisons donc enfin ces dernières nouveautés :
Casio a sorti la semaine dernière des mises à jour 3.30 et 3.40 pour ses Graph 35+E II et Graph 90+E, avec un nouveau module Pythoncasioplot te permettant de contrôler les pixels de l'écran. Pour te donner une référence, c'est donc l'équivalent du module kandinsky chez NumWorks.
Des possibilités déjà fort bien exploitées sur Graph 90+E par LightMare avec un script Python de rendu 3D en raytracing !
Malheureusement, une fois les appels graphiques corrigés ce même script ne marchait pas sur la NumWorks, déclenchant une erreur de mémoire.
Pourquoi ?
Il faut savoir que dans le cadre du MicroPython ou similaire des calculatrices il y a 3 types de mémoire avec les rôles suivants :
la mémoire de stockage qui accueille et conserve tes scripts Python
le stack (pile) qui, à l'exécution, accueille les références vers les objets Python créés
le heap (tas) qui, à l'exécution, accueille les valeurs de ces objets Python
En gros le stack / pile limite donc le nombre d'objets différents pouvant exister simultanément en mémoire, alors que le heap / tas limite la taille globale occupée par ces objets.
L'appel mem() avec le script mem.py suivant permet justement d'estimer la capacité du heap / tas :
def sizeenv(): s=0 import __main__ for o in dir(__main__): try:s+=size(eval(o)) except:pass return s def size(o): s,t=0,type(o) if t==str:s=49+len(o) if str(t)=="<class 'function'>":s=136 if t==int: s=24 while o: s+=4 o>>=30 if t==list: s+=64 for so in o:s+=8+size(so) return s def mem(v=1,r=1): try: l=[] try: l+=[r and 793+sizeenv()] if v*r:print(" ",l[0]) l+=[0] l+=[""] l[2]+="x" while 1: try:l[2]+=l[2][l[1]:] except: if l[1]<len(l[2])-1:l[1]=len(l[2])-1 else:raise(Exception) except: if v:print("+",size(l)) try:l[0]+=size(l) except:pass try:l[0]+=mem(v,0) except:pass return l[0] except:return 0
20,200 Ko TI-83 Premium CE Edition Python(version 5.4)
19,924 Ko TI-83 Premium CE + TI-Python
17,954 Ko TI-83 Premium CE Edition Python(version 5.5)
La différence devrait te sauter aux yeux, la Graph 90+E a plus de 1 Mo de heap / tas et la NumWorks autour de 32 Ko.
Ce n'est pas la taille du script qui compte, mais elle donne un point de repère. Le script de raytracing original faisait 14 Ko.
Nous avons optimisé l'écriture de ce script et réussi à en réduire la taille à seulement 4,5 Ko soit à peine le tiers de la taille initale, et maintenant ça passe parfaitement sur NumWorks !
Nous avons de plus commencé à développer et rajouté une classe de compatibilité graphique polyscr qui permet au même script Python de contrôler les pixels de l'écran aussi bien sur Casio Graph 90/35+E II que NumWorks ou TI-Nspire CX Ndless !
Pas besoin de réécriture, la classe intercepte et traite les appels graphiques prévus respectivement pour casioplot, kandinsky et nsp, et ça marche !
Cela devrait permettre à chacun de pouvoir développer des scripts Python graphiques compatibles avec l'ensemble des modèles, à commencer par nous pour un éventuel concours de rentrée 2020.
Le script aura juste à tenir compte quelque part du nombre de pixels de l'écran, information que la classe permet justement de récupérer.
Le script tourne sur Graph 35+E II, mais son écran ne gère pas les niveaux de gris. Chaque pixel donne donc du noir ou du blanc selon la couleur qui est jugée être la plus proche, et malheureusement c'est apparemment ici toujours le noir qui l'emporte.
Ce qui est par contre extrêmement surprenant, c'est que nous n'obtenons pas mieux sur TI-Nspire. Pourtant ici il s'agit bien d'un écran en niveaux de gris 4-bits (24=16 niveaux de gris différents), et jusqu'à présent les programmes Ndless prévus pour les TI-Nspire CX couleur n'avaient aucun problème à afficher en niveaux de gris lorsque lancés sur TI-Nspire monochrome...
Hélas, nous n'avons rien pu faire pour la TI-83 Premium CE Edition Python.
Son heap / tas dans sa version actuelle ne fait que 20 Ko, et il devient difficilement envisageable de réduire encore de moitié la consommation du script. Et ce n'est hélas pas près de s'arranger, dans la prochaine version 5.5 le heap / tas tombe pour le moment à moins de 18 Ko, sans doute une conséquence involontaire de toutes les superbes nouveautés Python dont nous avons commencé à te parler et allons bien évidemment continuer.
C'est certes génial d'avoir toutes ces nouveautés Python, mais avec moins de 18 Ko de heap / tas désormais, nous craignons a priori d'être fortement limités dans la possibilité de les exploiter, avec des scripts plutôt académiques de quelques lignes au lieu de choses sortant des sentiers battus.
Bon ben puisqu'il n'est plus envisageable de compresser le script davantage, étoffons-le un petit peu. Avec une interface bilingue français-anglais permettant de choisir :
la langue
les dimensions du rendu en pixels avec même l'indication des bornes
le type de la sphère, bille opaque bleue ou transparente
et même, lorsque supporté par la machine, la possibilité d'accélérer un petit peu le rendu en ne rafraichissant l'affichage qu'une fois par ligne ou encore à la fin plutôt qu'à chaque nouveau pixel calculé
Terminons enfin avec les performances, vu que vous avez été nombreux à nous les demander.
Nous ferons des rendus plein écran avec la bille transparente (ce qui génère un peu plus de calculs puisque déviant les rayons lancés plutôt que de les stopper). Par équité la rafraîchissement sera effectué à chaque pixel, vu que la NumWorks ne supporte pas cette optimisation. Aucun overclocking, ce sont donc les performances d'usines atteignables par n'imorte quel utilisateur.
Précisions bien qu'il ne s'agit pas ici d'une mesure de la puissance de calcul, mais des performances dans le cas bien particulier de ce script, avec donc mélange de calculs et de sorties sur écran.
Avec le script d'aujourd'hui qui est, rappelons-le, optimisé pour le tas / heap et la compatibilité mais absolument pas pour les performances, nous avons :
Mais ces écrans ont des définitions différentes, et nécessitent donc plus ou moins de calculs. Ramenons tout ceci par proportionnalité à ce que donnerait un rendu 128×64 pixels équivalent au plus petit écran, celui de la Graph 35+E II :
Pour une raison que nous ignorons l'installation du firmware tiers Omega diminue apparemment les performances de ta NumWorks. C'est particulièrement marqué pour la NumWorks N0110 qui avec une perte d'environ 25% devient alors même moins performante que l'ancien modèle NumWorks N0100 pourtant moins puissant. Mais que se passe-t-il ?...
Dans sa prochaine mise à jour 5.5 prévue pour Mai 2020, Texas Instruments prévoit de rajouter gratuitement de formidables possibilités à l'application Python de ta TI-83 Premium CE Édition Python.
Disposant d'une préversion, dans un article précédent nous te présentions plusieurs des nombreuses nouveautés Python, un assistant de saisie ainsi que les modules time et ti_system, et nous te présenterons le reste prochainement.
Toutefois, ces nouveautés Python ne concerneront hélas que le dernier modèle TI-83 Premium CE Edition Python, sans doute une conséquence de la décision d'interdire aux examens français le module externe TI-Python qui pouvait être rajouté pour franchement pas cher aux anciennes TI-83 Premium CE et pourtant conçu exprès pour la France.
Mais ne t'inquiète pas car il n'y a pas que des nouveautés Python dans la prochaine version 5.5, et certaines nouveautés te concerneront donc même si tu disposes de l'ancien modèle.
On peut citer par exemple l'application de classification périodique des éléments Periodic. Si tu es à jour, elle est actuellement sur ta machine dans une version 5.1.1.0037 compilée le 11 juillet 2017.
La mise à jour 5.5 te la fait passer à ce jour dans une nouvelle version 5.5.0.0031 compilée tout récemment le 12 mars 2020 !
Découvrons les nouveautés ensembles en avant-première dès maintenant !
Au menu des nouveautés déjà des corrections d'erreurs de typographie, de traduction ou même de langue sur les noms des éléments chimiques :
En Français, 1 seule correction :
Élément n°71 : Lutétium → Lutécium
En Allemand, 4 corrections sont apportées :
Élément n°14 : Silizium → Silicium
Élément n°40 : Zirkon → Zirconium
Élément n°85 : Astatin → Astat
Élément n°111 : Röntgenium → Roentgenium
En Espagnol, ce sont pas moins de 8 corrections qui sont effectuées :
Élément n°30 : Cinq → Zinc
Élément n°31 : Gallio → Galio
Élément n°39 : Ytrio → Itrio
Élément n°40 : Circonio → Zirconio
Élément n°52 : Teluro → Telurio
Élément n°70 : Yterbio → Iterbio
Élément n°99 : Einsteinio → Einstenio
Élément n°110 : Darmstadtio → Darmstatio
En Portugais, 2 corrections sont faites :
Élément n°14 : Silicone → Silício
Élément n°110 : Darmstadio → Darmstadtio
En Néerlandais, 4 corrections sont à l'affiche :
Élément n°33 : Arsenicum → Arseen
Élément n°57 : Lanthanium → Lanthaan
Élément n°73 : Tantalium → Tantaal
Élément n°85 : Astatium → Astaat
En Suédois, 3 petites retouches :
Élément n°23 : Vanadium → Vanadin
Élément n°52 : Tellurium → Tellur
Élément n°85 : Astatin → Astat
Nous avons de plus des améliorations sur les noms de certains éléments, avec rajouts des accents ou remplacement des notations archaïques :
En Français, 1 amélioration :
Élément n°109 : Meitnerium → Meitnérium
En Allemand, 1 amélioration effecutée :
Élément n°42 : Molybdaen → Molubdän
En Espagnol, 2 améliorations sont apportées :
Élément n°28 : Niquel → Níquel
Élément n°95 : Americio → Amerício
Les éléments de numéros 114 et 116 étaient initialement temporairement appelés Ununquadium (Uuq) et Ununhexium (Uuh) selon les règles de la dénomination systématique de l'IUPAC(Union Internationale de Chimie Pure et Appliquée). Ils ont reçus en mai 2012 leurs noms définitifs de Flérovium (Fl) et Livermorium (Lv). Texas Instruments avait bien inclus ces dernières dénominations, mais les avait oubliées pour la langue anglaise. C'est maintenant corrigé.
Les éléments de numéros 113, 115, 117 et 118 initialement nommés Ununtrium (Uut), Ununpentium (Uup), Ununseptium (Uus) et Ununoctium (Uuo), ont pour leur part reçu en novembre 2016 leurs noms définitifs de Nihonium (Nh), Moscovium (Mc), Tennessine (Ts) et Oganesson (Og).
Bien que la dernière mise à jour de l'application Periodic soit pourtant sortie pas moins de 8 mois après le choix de ces noms définitifs, ils n'avaient pas été inclus.
Mais cette fois-ci pour la mise à jour 5.5, c'est bien le cas !
Passons maintenant aux propriétés physiques et chimiques consultables pour ces éléments.
L'application omettait de préciser la configuration électronique à compter de l'élément numéro 110.
C'est maintenant rajouté !
L'application omettait également de préciser l'état physique (solide, liquide ou gazeux) à compter de l'élément numéro 113.
C'est rajouté également, solide dans tous les cas.
Les années de découverte de certains éléments ont été modifiées :
élément n°114 : 1998 → 1999; les expériences ayant finalement réussi la synthèse de cet élément ayant en effet été menées entre décembre 1998 et janvier 1999
élément n°115 : 2004 → 2010; la synthèse de 2004 n'ayant finalement pas été validée par la communauté scientifique, c'est la synthèse plus récente d'isotopes plus lourds en 2010 qui est retenue en tant que véritable découverte
L'année de découverte était justement omise à compter de l'élément numéro 116.
C'est dès maintenant rajouté !
Et enfin, quelques petites corrections dans l'écran d'aide associé à ces propriétés :
En Français, le traducteur qui a travaillé sur les versions précédentes semble avoir eu pas mal de difficultés avec le mot valeur, qu'il n'orthographiait jamais de la même façon et jamais correctement : valuer, valluer ou encore valuers.
C'est désormais corrigé.
Et le mot élément est maintenant correctement accentué.
En Anglais et Néerlandais, le symbole utilisé pour le degré Celsius est maintenant correct, passant du C au °C.
Et ben... quel formidable travail polyglotte de veille scientifique et linguistique de la part de Texas Instruments, félicitations !
Un superbe outil pour tes problèmes de Chimie, une mise à jour clairement majeure qui arrivera très bientôt gratuitement dans ta calculatrice TI-83 Premium CE ou TI-83 Premium CE Edition Python !
Dans l'épreuve sanitaire difficile et parfois dramatique qui nous touche actuellement te voilà privé d'école et forcé de continuer à travailler dans des conditions non optimales.
Collégien, lycéen ou enseignant, Casio a pensé à toi et se propose aujourd'hui généreusement d'alléger ton fardeau en mettant à ta disposition gratuitement et l'ensemble de ses logiciels d'émulation pour Windows et Mac. Tu peux en bénéficier dès maintenant et ce sans besoin de t'embêter à fournir le moindre justificatif !
Ces outils te permettront de retrouver l'environnement de ta calculatrice sur ton ordinateur avec toutes ses fonctionnalités !
Les logiciels concernés incluent bien évidemment entre autres les émulateurs des modèles français Graph 90+E, Graph 35+E II et fx-92+ Spéciale Collège :
ClassPad Manager Subscription for Classpad II(calculatrice fx-CP400 - Windows + Mac)
fx-CG500 Manager Subscription(calculatrice fx-CG500 - Windows + Mac)
fx-CG Manager Plus Subscription for fx-CG50(calculatrices Graph 90+E + fx-CG50 - Windows + Mac)
fx-CG Manager Plus Subscription for fx-CG20(calculatrices fx-CG20 et fx-CG10 - Windows + Mac)
fx Manager Plus Subscription for Graph 35+E II(calculatrice Graph 35+E II - Windows)
fx Manager Plus Subscription(calculatrice Graph 35/75+E + fx-9750/9860GII - Windows)
fx-ES Plus Emulator Subscription(calculatrices ES Plus 2nd edition - Windows)
Si ce n'est pas déjà fait, il te suffit tout simplement de commencer par télécharger et installer l'émulateur de ton choix à partir du lien ci-après. Tu as droit à 90 jours d'essai gratuit sans engagement à ta première installation du logiciel sur ta machine.
Deux cas de figure peuvent alors se présenter selon si tu as déjà installé le logiciel en question sur ta machine ou pas :
Soit ta période d'essai expire au-delà du 31 août 2020, et tu n'as alors rien d'autre à faire.
Soit ta période d'essai a déjà expiré ou expirera d'ici le 31 août 2020. Dans ce dernier cas il te suffira tout simplement sur la même page de récupérer le patch Windows / Mac correspondant à ton émulateur, patch qui t'installera alors gratuitement sans engagement une licence d'utilisation valide jusqu'au 31 août 2020 !
Plusieurs 100aines d'euros de logiciels, Casio ne lésine visiblement pas sur les moyens pour venir t'apporter aide et assistance - dépêche-toi vite d'aller récupérer tout ça pendant qu'il est encore temps d'en profiter !