π
<-

Outil ajout facile appli & ROMs Nintendo NES sur ta NumWorks

Outil ajout facile appli & ROMs Nintendo NES sur ta NumWorks

Unread postby Admin » 02 Oct 2018, 19:30

9829Tu ne le savais peut-être pas, mais tu peux avoir bien plus que les 9 applications intégrées de ta NumWorks.

Nombre d'applications additionnelles ont en effet déjà été développées par divers utilisateurs. On peut citer notamment parmi les dernières réalisations un émulateur de console Nintendo NES par zardam.

Toutefois, la calculatrice ne dispose d'aucune gestion des applications, si bien que la seule façon de rajouter ou retirer une application consiste à reprogrammer intégralement le firmware (micrologiciel) de la calculatrice.

Et cela implique par conséquent au préalable de compiler ce firmware en lui rajoutant les applications de ton choix.

Bref, c'était très loin d'être à la portée de l'utilisateur moyen. :#roll#:

Et bien zardam nous revient avec un outil en ligne inédit qui va complètement changer ça. ;)

L'outil est dédié à son émulateur NES, et se propose de reprogrammer directement ta calculatrice avec un firmware basé sur la dernière version disponible à ce jour (1.7.0) et intégrant l'application d'émulation NES. Il met ainsi l'émulation NES à la portée de tous les utilisateurs NumWorks, ces derniers n'ayant désormais rien de plus compliqué à faire que de cliquer ! :bj:

Il te suffira juste de lui fournir la ROM brute du jeu NES de ton choix, la calculatrice n'ayant pas non plus de gestion de fichiers à ce jour. Tu ne pourras donc avoir qu'un seul jeu à la fois sur ta calculatrice.

De quoi enfin découvrir les fiabilité et fluidité remarquables de cet émulateur : :bj:

Précisons toutefois que :
  • ta calculatrice NumWorks ne dispose que de 1Mio de mémoire Flash
  • la dernière version 1.7.0 du firmware dépasse les 760Ko
  • et l'émulateur NES sans la ROM nécessite un peu plus de 138Ko
Sans le jeu, le firmware prend donc déjà 898Ko, et soustraction faite il ne te resterait plus que 150Ko pour la ROM NES.
Certes, on peut trouver des jeux NES dont le fichier ROM ne fait que 144Ko ou même moins. Mais ce sont loin d'être les meilleures références de la console, qui elles nécessiteront bien souvent 256Kio, 384Kio, 512Kio ou même davantage.

Et bien zardam a là encore tout prévu.
Tu pourras opter pour deux versions de firmware allégées en applications NumWorks :
  • une version ne conservant que les 3 applications Calculs, Fonctions et Python, faisant 711Ko et te laissant donc 337K, de quoi caser les jeux faisant 160Kio, 192Kio ou 256Kio
  • une version supprimant toutes les applications NumWorks, ne faisant plus que 418Ko et te laissant donc 630K, de quoi caser les jeux faisant 384Kio ou 512Kio
Pas sûr toutefois que ton prof de Maths apprécie cette dernière option. :p

Un outil révolutionnaire nous apportant enfin pour la NumWorks un embryon de la gestion des applications déjà présente sur d'autres modèles. :bj:

Espérons qu'il poura évoluer en :
  • permettant de sélectionner soi-même les applications NumWorks à conserver, Suites et Statistiques me semblant par exemple essentielles pour le lycée français
  • permettant de rajouter d'autres applications additionnelles que l'émulateur NES
Auquel cas, pourquoi pas l'intégration d'un tel outil directement sur la page officielle de NumWorks ? :)

Concernant l'émulateur NES, espérons qu'il pourra gérer une compression des ROMs, parce que 1Mio de Flash, avec un firmware de 760Ko encore amené à évoluer, ce n'est clairement pas beaucoup...

Lien : https://zardam.github.io/webnofrendo/

Source : viewtopic.php?f=102&t=21764#p235619
 
Ce compte ne reçoit pas de MP / This account does not receive PMs.
User avatar
AdminAdmin
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 1%
 
Posts: 460
Images: 28
Joined: 30 Aug 2011, 11:00
Gender: Not specified
Calculator(s):
MyCalcs profile

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby jean-baptiste boric » 03 Oct 2018, 19:58

critor wrote:Espérons qu'il poura évoluer en :
  • permettant de sélectionner soi-même les applications NumWorks à conserver, Suites et Statistiques me semblant par exemple essentielles pour le lycée français
  • permettant de rajouter d'autres applications additionnelles que l'émulateur NES
Auquel cas, pourquoi pas l'intégration d'un tel outil directement sur la page officielle de NumWorks ? :)

Malheureusement, la page web se contente de concaténer un firmware précompilé avec la ROM du jeu. A moins de préparer à l'avance toutes les combinaisons possibles, ce n'est pas une solution qui passe à l'échelle. On pourrait utiliser un linker pour composer des applications précompilées en bibliothèques statiques, mais ça demande soit un backend pour exécuter le linker, soit d'embarquer un linker dans la page web, dans les deux cas c'est autrement plus compliqué à faire.
User avatar
jean-baptiste boricPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 5.5%
 
Posts: 379
Joined: 21 Dec 2015, 22:22
Gender: Not specified
Calculator(s):
MyCalcs profile
GitHub: boricj

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby Adriweb » 03 Oct 2018, 20:07

jean-baptiste boric wrote:Malheureusement, la page web se contente de concaténer un firmware précompilé avec la ROM du jeu. A moins de préparer à l'avance toutes les combinaisons possibles, ce n'est pas une solution qui passe à l'échelle. On pourrait utiliser un linker pour composer des applications précompilées en bibliothèques statiques, mais ça demande soit un backend pour exécuter le linker,

J’avais commencé à faire ça sur le project builder ?
Mais il y avait eu quelques soucis avec la build enscripten pour tester en live. Mais comme on est en train de migrer de serveur vers une Debian 9 à jour... je pourrais peut être reprendre cette histoire de module NumWorks pour le project Builder et ainsi avoir des builds véritablement custom.

Enfin bref Romain avait dit que c’était une bonne idée et qu’un jour peut être ça serait sur le workshop... déjà rien que le fait d’avoir une build officielle mais avec des langues restreintes ça serait pas mal niveau taille :)

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14737
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby Lionel Debroux » 03 Oct 2018, 21:10

Idée: est-ce qu'on ne pourrait pas jouer avec __attribute__((section("XYZ"))) sur les variables, et une gestion spéciale de ces sections dans le ldscript, pour faciliter la modularité des langues ?
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6863
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby Adriweb » 04 Oct 2018, 02:39

Pour les langues, c’est déjà complètement modulaire - juste une variable à changer dans le makefile pour choisir les langues à inclure.

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...)
My calculator programs
Mes programmes pour calculatrices
User avatar
AdriwebAdmin
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 78.9%
 
Posts: 14737
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby Lionel Debroux » 04 Oct 2018, 06:17

En effet, mais je voulais essayer d'éviter au maximum l'utilisation du compilo pour faire une image réduite qui ne comporte qu'un sous-ensemble des langues possibles. L'idée serait de pré-compiler tous les fichiers de langue, et d'utiliser seulement le linker pour inclure les langues sélectionnées dans le binaire final.
Membre de la TI-Chess Team.
Co-mainteneur de GCC4TI (documentation en ligne de GCC4TI), TIEmu et TILP.
User avatar
Lionel DebrouxSuper Modo
Niveau 14: CI (Calculateur de l'Infini)
Niveau 14: CI (Calculateur de l'Infini)
Level up: 11.3%
 
Posts: 6863
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby jean-baptiste boric » 04 Oct 2018, 12:18

Le système de traduction tel qu'implémenté à l'heure actuelle ne se prête pas à la modularisation au moment du link (un gros enum uint16_t pour identifier tout ce qu'il y a à traduire, la constante NumberOfLanguages...). Accessoirement, même en modularisant les apps en bibliothèques statiques précompilées, on serait obligé d'embarquer toutes les traductions pour toutes les applications pour tous les langages avec l'implémentation actuelle. Ce n'est pas vraiment gênant tant que les sets d'applications et de traductions sont fixés à l'avance, mais epsilon nécessite des améliorations avant d'être modulaire au-delà d'un flow de compilation complète.
User avatar
jean-baptiste boricPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 5.5%
 
Posts: 379
Joined: 21 Dec 2015, 22:22
Gender: Not specified
Calculator(s):
MyCalcs profile
GitHub: boricj

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby Clément.7 » 05 Oct 2018, 07:33

Ne pourrait-on pas mettre la ROM dans un format compressé en ajoutant son support dans l'émulateur ? Par exemple, la ROM compressée de Super Mario Bros 3 ne fait que 223 Kio alors que la version non compressée fait 384 Kio. De quoi la faire tenir bien plus facilement... À moins que ça ne dégraderait trop les performances de l'émulateur ?
Toujours plus loin, toujours plus haut, toujours plus geek !
Créateur du projet Haskier : Jouer ! Sujet sur OpenClassrooms
Programmez en UnderBasic ! https://tiplanet.org/forum/viewtopic.php?t=19009&p=207260
User avatar
Clément.7
Niveau 11: LV (Légende Vivante)
Niveau 11: LV (Légende Vivante)
Level up: 29.5%
 
Posts: 348
Joined: 12 Jun 2013, 15:02
Location: Près de Nantes
Gender: Male
Calculator(s):
MyCalcs profile
Class: IUT Informatique en 2017-2019
GitHub: ClementNerma

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby jean-baptiste boric » 05 Oct 2018, 20:05

Clément.7 wrote:Ne pourrait-on pas mettre la ROM dans un format compressé en ajoutant son support dans l'émulateur ? Par exemple, la ROM compressée de Super Mario Bros 3 ne fait que 223 Kio alors que la version non compressée fait 384 Kio. De quoi la faire tenir bien plus facilement... À moins que ça ne dégraderait trop les performances de l'émulateur ?

C'est déjà tendu niveau RAM, zardam a dû remplacer l'allocateur mémoire car celui de NumWorks n'arrivait tout simplement pas à suivre. La ROM décompressée ne tiendra pas entière en RAM et je doute que rajouter de la décompression à la volée améliore la situation...

Quitte à vouloir faire de la place pour mettre des jeux, autant virer epsilon et faire des firmwares standalone. Et si le prof de maths n'approuve pas, on a qu'à faire un jeu NES pour jouer à la calculatrice :troll:
User avatar
jean-baptiste boricPremium
Niveau 10: GR (Guide de Référence)
Niveau 10: GR (Guide de Référence)
Level up: 5.5%
 
Posts: 379
Joined: 21 Dec 2015, 22:22
Gender: Not specified
Calculator(s):
MyCalcs profile
GitHub: boricj

Re: Outil ajout facile appli & ROMs Nintendo NES sur ta NumW

Unread postby critor » 05 Oct 2018, 20:20

Ah zut, j'avais complètement oublié que nous n'avions que 128K de RAM.

En effet, comme j'en suis plutôt à m'arracher les cheveux pour que les scripts Python du concours n'explosent pas la frontière des 16K (code + exécution confondus)... :P
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 47.3%
 
Posts: 41957
Images: 15669
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Next

Return to News NumWorks

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.
793 utilisateurs:
>741 invités
>43 membres
>9 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)