A few days ago, CEmu version 1.0, the free and open-source TI-84 Plus CE / 83 Premium CE emulator, was finally released: D
This version, first official release (on GitHub) considered sufficiently ready, took a bit of time to be available, but that wasn't too bad, as for quite a long time now, dev. builds were available in real time (and they
still are).
There is a
ton of new features and improvements (which made Mateo and Jacobly quite busy the past few weeks/months), and now all this is available for download easily (for Windows, macOS, and Linux) - no need to compile the code yourself
For the pleasure of your eyes and because it's always better to see what we're talking about ... here are some screenshots showcasing different possible interface layouts:
Calc-only layout | A mixed layout with various panes | A debugging-oriented layout for developers |
| | |
Even though CEmu is particularly suited to programmers (it's got a lot of things to help CE development), it is very customizable. Here are some
features (yep, it's improved since
the initial announce on December 30th, 2015
)
Il y a quelques jours, la version 1.0 de CEmu, l'émulateur libre et open-source de TI-84 Plus CE / 83 Premium CE, a été releasée
Cette version, première "release" officielle (sur GitHub) jugée suffisamment aboutie, a mis un certain temps à arriver, mais ce n'est pas si grave car depuis assez longtemps maintenant, des builds de
dev. étaient disponibles en temps réel (et le
sont toujours).
La grosse
tonne de nouveautés et d’améliorations (qui ont bien occupé Mateo et Jacobly notamment, ces dernières semaines/mois) est donc disponible au téléchargement facilement (pour Windows, macOS, et Linux) - pas besoin de compiler soi-même le code
Pour le plaisir des yeux et parce que c'est toujours mieux de voir de quoi on parle... voici quelques screenshots montrant des agencements d'interfaces possibles :
Calc seule | "Mixte" avec plusieurs widgets | Pour développeurs, orienté débuggage |
| | |
Même si CEmu est particulièrement adapté à un public programmeur (il contient beaucoup de choses pour aider au développement sur CE), il est très personnalisable. Voici un rappel des
fonctionnalités (oui, ça change par rapport à
l'annonce initiale le 30 décembre 2015
)
Standard features | Developer features |
- Built-in ROM dump wizard
(ROM required: CEmu makes it very easy to get) - Accurate and fast emulation
- Resizable calculator screen
- "Always-on-top" window option
- Screen capture (PNG)
- Screen recording (animated PNG)
- File sending/receiving (not for Apps/OS yet)
- Multiple keybinding presets
- Keypress recording and history
- Emulation states for efficient saving / restoring
- CE skins (colors like the real devices)
- Available in English, French, Spanish, and Dutch
- ...
| - Main options available via CLI arguments
- IPC features when launching several CEmu processes
- Custom display refresh rate, FPS indicator
- Custom emulation speed/throttling
- Code stepping, jumping...
- R/W/X breakpoints, watchpoints
- eZ80 disassembler (with equates support)
- Port monitor/editor
- General Timer monitor/editor
- Memory viewer/editor
- CPU state/registers viewer/editor
- LCD state/parameters viewer/editor
- Memory visualizer (as fully customizable virtual LCDs)
- Various viewers: Stack, OP1-7, VAT...
- Variable list with preview and program launcher
- Recent files list with ability to quickly resend
- Cycle counter for benchmarking/profiling
- Emulation of DMA and SPI (for optimal accuracy)
- Misc. emulation (backlight, battery...)
- Pre-I HW Rev. emulation toggle (IM 2 compatibility)
- "Autotester" (automated testing, light scripting)
- ...
|
And in the future, here are some major evolutions ideas we have (not necessarily in this order):
- "source-level debugging" (to set breakpoints in a C source code, be able to step in it, inspect variables' content...).
- a "profiler" (to analyze the performance of a piece of code, by having metrics about what's happening: number of calls, the time / cycles it took, etc.
- USB emulation (basically the final remaining piece of the core, I think ... and it's not an easy one): it will allow to do transfers correctly, including for OS and applications)
- Lua scripting integration, so as to be able do directly interact with the core (programmatically), but also with the GUI
These 4 things have already been started - see their respective git branches.
Even more with these features, but even without at the moment, CEmu is probably by far the most advanced calculator emulator
Let's take this opportunity to congratulate the authors and contributors, and thank the testers for their many
bug reports (which you can also do
here in case you find one).
Download (Windows, macOS, et Linux) :
archives_voir.php?id=133742 (via GitHub)
As for the source code, it's
right here.
Et dans le futur, comme évolutions majeures prévues, on a (pas forcément dans cet ordre) :
- le "source-level debugging" (pouvoir mettre des breakpoints dans son code source C, step-by-step dans les lignes source, inspecter le contenu des variables...).
- le "profiler" pour analyser les performances de son code, en ayant des métriques sur ce qu'il se passe : nombre d'appels de telle ou telle fonction, le temps/cycles que ça a pris, etc.
- l’émulation de l'USB (la pièce restante finale du core, il me semble... et qui n'est pas simple) : permettra donc d'effectuer des transferts correctement, y compris d'OS et d'applications)
- l'intégration du scripting Lua au sein de l'émulateur, pour pouvoir interagir directement avec le core de manière programmatique, mais aussi avec certaines choses du GUI
Ces 4 choses ont déjà été commencées, avec un certain degré d'avancement - cf. les branches git respectives.
Encore plus avec ces fonctionnalités la, mais même sans pour le moment, CEmu est a priori de loin l’émulateur de calculatrice le plus poussé
Profitons-en pour féliciter les auteurs et contributeurs, et remercier les testeurs pour leurs mille-et-un
bug reports (que vous pouvez faire
ici au cas où).
Téléchargement (Windows, macOS, et Linux) :
archives_voir.php?id=133742 (via GitHub)
Pour le code source, ça se passe
par ici.