π
<-

CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

: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:

CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby MateoConLechuga » 30 Dec 2015, 09:42


CEmu: what is it?
To sum up: a portable and open-source TI-84 Plus CE and TI-83 Premium CE emulator.

The 84+CE and 83PCE (TI-eZ80 series) hit the market over half a year ago. However, there was no third-party emulator, and the official emulator in TI-SmartView CE does not provide the features most community programmers have come to expect from well-behaved emulators: an accurate emulation core, a debugger with a way to inspect and modify registers and memory, a disassembler, etc. Teachers, who are SmartView's main target audience, hardly need such features.
The lack of a proper emulator is a significant roadblock to making TI-eZ80 native code programming popular in the community, which is a shame because the platform is a great improvement over the 84+CSE: faster CPU, more RAM, etc. Therefore, for the community’s sake, such a situation shouldn’t last for long - hence, the making of an emulator ;)

CEmu is open source (and even free software, under the GPLv3), like nearly all community-made emulators, and made in C/C++. A native code emulator makes perfect sense for both efficiency and versatility; in the longer term, retargeting the code at browsers (JavaScript, WebAssembly) is possible nowadays, thanks to Emscripten.


The team behind CEmu
Matt “MateoConLechuga” Waltz started the project and remains the main contributor.
More recently, Jacob "jacobly" Young was invited to join the fun, and he has so far worked quite a bit on improving the CPU and ASIC core (as well as integration thereof with the UI), mainly.
The CEmu code base leverages both Firebird (TI-Nspire emulator) and z80e (TI-Z80 emulator for KnightOS, and to which jacobly is a contributor) open-source projects.
There are also other contributions, from non-TI-(e)Z80 experts: Adrien “Adriweb” Bertrand, Lionel Debroux, Fabian “Vogtinator” Vogt.
And in the future… well, potentially anyone with sufficient knowledge, that’s precisely part of the power of open source :)

If you want to chat, we're on IRC (EFNet), on channels such as #ez80-dev and #cemu-dev :)


Features
  • Portable emulation core written in C
  • Decent emulation accuracy yielding the ability to boot TI’s 5.1 OS, browse around it, execute self test successfully, and more
  • Portable GUI written in C++ using Qt (making it run natively on Windows, Mac OS X, and Linux !)
  • Docks/Tabs-based graphical UI (which you are able to customize)
  • Integrated setup wizard with ROM dumper for your calculator (there’s another one in TILP beta)
  • Debugger (read CPU registers, flags, ASIC state) and port monitor/writer
  • Animated (GIF) and still (PNG) screenshots

What it looks like
Here is what a recent build looks like (edited for late 2016 update)


Short-term todo list
  • Continue implementing the ASIC emulation core: remaining devices/ports, etc.
  • Implement file transfers (implementing USB is not an easy task, so that will probably take a while)
  • Make the debugger more useful: disassembly view, stepping, breakpoints…
  • Finish 83PCE support (e.g. keypad and skin - emulating the 83PCE already works)
  • Test the emulator and hunt bugs, even more!


In the future…
  • Provide more translations (for now, it's available in English and French). If you want to help, tell us, or send patches / pull requests!
  • Make a web-based version of CEmu, like there’s a web-based version of z80e for trying out KnightOS. Compiling the CEmu core to JavaScript (and later WebAssembly), using Emscripten, is already known to work: Adriweb has been able to get an Emscriptened CEmu core to boot a ROM and get to the home screen (confirmed by dumping the LCD buffer) :)
  • Think about CEmu's core’s integration on third-party projects, like TI-Planet's Project Builder - for instance, in C projects, in order to directly test the program, and eventually (if someone has enough time…) have live source-level debugging!
  • Look at this gdb-z80 project (code from 2011...); try to see if it can be updated for eZ80, and used with a CEmu GDB stub. Mainlining such code is highly preferable.
  • ...


Conclusion
To sum up: CEmu is the community's open-source, native, portable, TI-84 Plus CE / TI-83 Premium CE emulator, that has been developed over the past few weeks, and of course, still is currently under development.
We all hope you'll enjoy it :)

Download : archives_voir.php?id=133742
Source code on GitHub : https://github.com/CE-Programming/CEmu/

In the meantime, you can simply build one yourself from the source code (instructions here)

Merry (belated) Christmas! :)
CEmu: qu’est-ce que c’est ?
En résumé: Un émulateur portable et open source de TI-84 Plus CE et TI-83 Premium CE.

Les 83PCE et 84+CE (famille TI-eZ80) sont arrivées sur le marché il y a plus de 6 mois. Cependant, il n’y avait pas d’émulateur réalisé par des tierces parties, et l’émulateur officiel dans TI-SmartView CE ne fournit pas les fonctionnalités que la plupart des programmeurs de la communauté attend maintenant d’un émulateur convenable: un coeur fidèle d’émulation, un debugger permettant d’inspecter et de modifier les registres et la mémoire, un désassembleur, etc. Les enseignants, qui sont la principale cible du SmartView, ont rarement besoin de telles fonctionnalités.
L’absence d’un émulateur convenable rend difficile la popularisation de la programmation en code natif pour TI-eZ80, ce qui est fort dommage, car la plate-forme est une grosse amélioration par rapport à la 84+CSE: un CPU plus rapide, plus de mémoire, etc. Par conséquent, pour le bien de la communauté, cette situation ne doit pas durer longtemps - et c’est pour ça qu’un émulateur est en train d’être réalisé ;)

CEmu est un logiciel ouvert (et même libre, sous la GPLv3), comme presque tous les émulateurs de la communauté, écrit en C/C++. Un émulateur en code natif est une très bonne chose pour l’efficacité et la flexibilité; à plus long terme, cibler les navigateurs (JavaScript, WebAssembly) est possible de nos jours, grâce à Emscripten.


L’équipe de CEmu
Matt “MateoConLechuga” Waltz a démarré le projet et reste le principal contributeur.
Plus récemment, Jacob "jacobly" Young a été invité à se joindre à l’équipe, et il a pas mal travaillé sur l’amélioration du CPU et de l’ASIC (et leur intégration avec l’interface utilisateur), principalement.
Le code de CEmu tire parti des projets open source Firebird (émulateur de TI-Nspire) et de z80e (émulateur de TI-Z80 emulator pour KnightOS, auquel jacobly contribue).
Il y a également d’autres contributions de personnes non-expertes en TI-(e)Z80: Adrien “Adriweb” Bertrand, Lionel Debroux, Fabian “Vogtinator” Vogt.
Et dans le futur… eh bien, potentiellement n’importe qui qui possède suffisamment de connaissances, ça fait précisément partie de la puissance de l’open source :)

Si vous voulez discuter, nous sommes sur IRC (EFNet), sur des channels comme #ez80-dev et #cemu-dev :)


Fonctionnalités
  • Coeur d’émulation portable écrit en C
  • Précision d’émulation acceptable, permettant de booter l’OS 5.1 de TI et de naviguer dedans, d’exécuter le self test avec succès, et davantage
  • Interface utilisateur graphique portable GUI écrite en C++ avec Qt (permettant de tourner nativement sous Windows, Mac OS X, et Linux !)
  • Utilisation de docks et onglets (paramétrables) dans l’interface utilisateur
  • Assistant de paramétrage avec un ROM dumper pour la calculatrice (il en existe un autre dans TILP beta)
  • Debugger (lecture des registres CPUs, flags, ports de l’ASIC) et port monitor/writer
  • Capture d'écran animée (GIF) et statique (PNG)


A quoi ça ressemble
Voici des captures d’une build récente (update 2016):



Todo list à court terme
  • Continuer l’implémentation du coeur de l’ASIC: émuler les périphériques / ports manquants, etc.
  • Implémenter les transferts de fichiers (implémenter l’USB n’est pas une tâche facile, donc ça va probablement prendre un moment)
  • Rendre le debugger plus utile: désassembleur, pas à pas, breakpoints…
  • Finir la gestion des 83PCE (par exemple clavier et skin - l’émulation de la 83PCE fonctionne déjà)
  • Tester encore plus l’émulateur et chasser les bugs !


Dans le futur…
  • Fournir plus de traductions (pour l’instant, il est disponible en anglais et en français). Si vous voulez aider, dites-le nous, ou envoyez des patches / pull requests !
  • Faire une version Web de CEmu, comme il y a une version Web de z80e pour essayer KnightOS. On sait déjà que compiler le coeur de CEmu en JavaScript (et plus tard WebAssembly), avec Emscripten, fonctionne: Adriweb a pu faire booter une ROM au coeur Emscripten-isé, jusqu’à l’écran home (confirmé en dumpant le buffer écran) :)
  • Réfléchir à l’intégration du coeur de CEmu dans d’autres projets, comme le Project Builder TI-Planet - par exemple, dans les projets C, pour permettre le test direct du programme, et peut-être un jour (si quelqu’un a le temps…) le debug en temps réel avec les sources !
  • Examiner ce projet gdb-z80 (code de 2011...) ; voir s’il peut être mis à jour pour l’eZ80, et utilisé avec un stub GDB CEmu. Il est nettement préférable de contribuer un tel code à GDB upstream.
  • ...

Conclusion
En résumé: CEmu est l’émulateur communautaire open source, natif, portable de TI-84 Plus CE / TI-83 Premium CE, qui a été développé au cours des dernières semaines, et est bien sûr toujours en développement.
Nous espérons tous que vous l’apprécierez :)

Téléchargement : archives_voir.php?id=133742
Code source sur GitHub : https://github.com/CE-Programming/CEmu/

En attendant, vous pouvez simplement compiler le code source vous-mêmes, en utilisant les SDKs Qt (instructions ici)

Et puis joyeux Noël en retard ! :)
User avatar
MateoConLechugaVIP++
Niveau 8: ER (Espèce Rare: nerd)
Niveau 8: ER (Espèce Rare: nerd)
Level up: 60.5%
 
Posts: 50
Joined: 12 Oct 2015, 21:56
Gender: Male
Calculator(s):
MyCalcs profile
GitHub: mateoconlechuga

Re: CEmu

Unread postby critor » 30 Dec 2015, 09:54

En un mot, félicitations ! :bj:
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41980
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby Adriweb » 30 Dec 2015, 09:55

Bien que j'aie un petit peu participé au développement, je peux enfin le dire publiquement: Félicitations, particulièrement à Mateo et Jacobly :D
Even though I was a little bit involved in the dev too, congratulations, especially to Mateo and Jacobly :D

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: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby Hayleia » 30 Dec 2015, 09:55

Great news here, and just in time since I recently got my CE and was about to waste a Smartview license :D

Image
ImageImageImage
Pokemon Topaze (Axe) discussion and download links here
(19:29:36) noelnadal: plus sérieusemen​t, j'ai très peu de problèmes
(22:45:44) Clifward: J'aime rire du malheur des autres :troll:

(2017.11.18 - 17:07:12) Fireworks: Hayleia !!!!!
(2017.11.18 - 17:07:19) TI-Bot: Fireworks has been logged out (Kicked).
(2017.11.18 - 17:07:22) TI-Bot: Ban of user Fireworks revoked.
(2017.11.18 - 17:07:25) TI-Bot: Fireworks logs into the Chat.
(2017.11.18 - 17:07:28) Fireworks: <3
(2017.11.18 - 17:07:31) Fireworks: 208
User avatar
HayleiaGénéreux
Niveau 17: GM (Grand Maître des calculatrices)
Niveau 17: GM (Grand Maître des calculatrices)
Level up: 43.8%
 
Posts: 2509
Images: 2
Joined: 30 Aug 2011, 08:22
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Templar

Re: CEmu

Unread postby Epharius » 30 Dec 2015, 09:58

Bravo et merci (à tous les contributeurs) d'avoir pris l'initiative de faire un émulateur pour Ti-84+CE ! Depuis que j'avais découvert le "pas pratique" de Ti SmartView je ne testais plus que sur ma calculatrice. J'avais le droit à de beaux bugs mais à la fin ça devenait inquiétant d'avoir la luminosité qui augmentait toute seule en donnant une impression d'écrasement de pixels...

J'aurais aimé vous aider mais je ne m'y connais absolument pas en émulateur. Je serai sûrement l'un des "petits contributeurs" qui aide à l'occasion ;)

Bref, bonne chance pour la suite, je suivrai de près le projet !
Le projet Geometry Dash est terminé ! N'hésitez pas à aller jeter un coup d’œil au topic du projet ! Vous pouvez le télécharger ici.

Unis par la flèche sacrée de cupidon :favorite:
Image
User avatar
EphariusPremium
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 8.1%
 
Posts: 1160
Images: 4
Joined: 08 Dec 2014, 17:38
Gender: Not specified
Calculator(s):
MyCalcs profile
Class: Ensimag
GitHub: MathisLav

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby Wistaro » 30 Dec 2015, 10:00

Bravo !
Ça tombe pile au moment où ma licence gratuite du logiciel Smartview se termine :bj:
Je vais pouvoir continuer à bosser sur mes projets :)

Super surprise pour cette fin d'année :D
Nouveau sur le site, ClaudeBot [spider] ? Avant de poster sur le chat et sur le forum, n'oublie pas de lire les règles. En cas de problème, tu peux m'envoyer un message, je réponds rapidement.

Liens utiles:
Image
Découvre mes programmes et mon site!
User avatar
WistaroSuper Modo
Niveau 15: CC (Chevalier des Calculatrices)
Niveau 15: CC (Chevalier des Calculatrices)
Level up: 88.4%
 
Posts: 3183
Images: 37
Joined: 25 Feb 2013, 16:21
Location: Toulouse
Gender: Male
Calculator(s):
MyCalcs profile
Class: Ingénieur en électronique
YouTube: Wistaro
Twitter: Wistaro
GitHub: Wistaro

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby critor » 30 Dec 2015, 10:13

En plein de mots maintenant...


Enfin un émulateur eZ80 utilisable pour le développement ! :bj:
(Le SmartView n'est pas fidèle et ne permet pas de lancer Androides/Crystann/Mandragore par exemple... sans compter sa lenteur plus qu'énervante...)

Et de plus un émulateur eZ80 libre, ce qui nous évitera d'être à la merci des disponibilités ou du bon vouloir de l'auteur comme pour les émulateurs z80 ! :bj:
(WabbitEmu non mis à jour avec le support TI-82 Advanced bien que toutes les informations techniques ont été communiquées par courriel depuis plusieurs mois sans aucune réponse et donc probablement encore moins près d'émuler les modèles CE, jsTiFied interdisant sans raison dans sa licence l'utilisation de son code Javascript sur un autre site que Cemetech, VirtualTI mort à cause de la fermeture du code face au travail énorme qu'il y avait à faire face aux nouveaux modèles Flash, TI8XEmu non maintenable l'auteur n'ayant jamais partagé le code du cœur de l'émulateur malgré ses promesses et ne répondant plus aux courriels...)

Merci donc pour votre bel altruisme et pour ce superbe outil visant l'intérêt général. :)
En un mot, félicitations ! :#tritop#:


Du chemin reste toutefois encore à parcourir rapidement avant d'être utilisable facilement par tous, et donc avant de s'imposer en tant que référence :
  • avoir un dumper facile d'utilisation pour la ROM (via TiLP ?)
  • être capable de charger des programmes comme avec le SmartView
  • avoir des binaires directement utilisables pour les utilisateurs de Windows
  • avoir une version en ligne
Image
User avatar
critorAdmin
Niveau 19: CU (Créateur Universel)
Niveau 19: CU (Créateur Universel)
Level up: 48%
 
Posts: 41980
Images: 15887
Joined: 25 Oct 2008, 00:00
Location: Montpellier
Gender: Male
Calculator(s):
MyCalcs profile
YouTube: critor3000
Twitter: critor2000
GitHub: critor

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby Adriweb » 30 Dec 2015, 10:22

critor wrote:Du chemin reste toutefois encore à parcourir rapidement avant d'être utilisable facilement par tous, et donc avant de s'imposer en tant que référence :
avoir un dumper facile d'utilisation pour la ROM (via TiLP ?)

Il y a un dumper intégré a l'émulateur, et TILP a par ailleurs été mis a jour avec un dumper aussi.

critor wrote:être capable de charger des programmes comme avec le SmartView

En effet, et ça va devenir la priorité j'imagine rapidement, mais c'est vraiment pas évident :P

critor wrote:avoir des binaires directement utilisables pour les utilisateurs de Windows

Même pour les autres plateformes, en fait, comme le fait Firebird lors d'une release.
Mais le code bouge encore tellement en ce moment, qu'une build sera prévue des que ce sera un poil plus stable :)

critor wrote:avoir une version en ligne

Ouai, et c'est un boulot non négligeable, même si on sait que c'est possible puisque ma build emscripten du coeur a fonctionné :)

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: 14744
Images: 1119
Joined: 01 Jun 2007, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Twitter: adriweb
GitHub: adriweb

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby GalacticPirate » 30 Dec 2015, 17:02

Que dire, en un mot, E-xce-llent ! Bravo MateoConLechuga ! :bj: :#tritop#:
Mon profil TI-PlanetDevenez premium !
ImageImage
Modérateur de TI-Planet.org depuis décembre 2015, et membre de la communauté depuis Mai 2015.Cliquez ci-dessus pour faire un don à TI-Planet.org via PayPal et devenir Donateur ou Premium (à partir de 3€) ! Vous aurez accès à des générations illimitées et prioritaires avec Mviewer GX Creator, ainsi qu'au forum secret ! :bj: En plus, vous pourrez être orange sur le chat :troll:

Image
User avatar
GalacticPirateModo
Niveau 16: CC2 (Commandeur des Calculatrices)
Niveau 16: CC2 (Commandeur des Calculatrices)
Level up: 1.3%
 
Posts: 1156
Images: 2
Joined: 23 May 2015, 10:36
Location: Hauts-de-Seine, France
Gender: Male
Calculator(s):
MyCalcs profile
Class: M2

Re: CEmu : Un émulateur TI-83 Premium CE / TI-84 Plus CE !

Unread postby Lionel Debroux » 03 Jan 2016, 08:48

Mateo indique qu'un gros hack pour le transfert de fichiers a récemment été implémenté (NdT: principalement par lui), ce qui permet d'envoyer tous les types de fichiers normaux à l'émulateur - c'est à dire, ni les FlashApps, ni les OS (NdT: qui utilisent un protocole et des couches différentes).
Mateo cherche de l'aide pour implémenter le désassembleur (le travail est déjà préparé), et d'autres morceaux du debugger :)

Un petit screenshot animé de son PacMan:
Image
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: 6865
Joined: 23 Dec 2009, 00:00
Location: France
Gender: Male
Calculator(s):
MyCalcs profile
Class: -
GitHub: debrouxl

Next

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

Who is online

Users browsing this forum: ClaudeBot [spider] and 14 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.
895 utilisateurs:
>872 invités
>16 membres
>7 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)