Firebird

Émulateur v1.6

Firebird est un émulateur dédié aux calculatrices Texas Instruments de la gamme NSpire, incluant les modèles Touchpad (CAS), CX (CAS) et CX II (-T/CAS). Développé initialement par Goplat avant d’être repris par la communauté, il reproduit fidèlement l’environnement logiciel et matériel de ces outils pédagogiques et scientifiques, utiles en mathématiques, physique ou ingénierie.

Sur macOS, Firebird fonctionne sur les architectures récentes (Apple Silicon et Intel) et propose une interface utilisateur intuitive. L’émulateur prend en charge les fonctionnalités avancées des calculatrices, comme les graphiques dynamiques, les calculs symboliques (CAS) et les interfaces tactile ou clavier. Bien que conçu à l’origine pour Android, iOS, Linux et Windows, il reste compatible avec macOS via une compilation open-source sous licence GPLv3.

Dernière mise à jour :

Plateformes

Téléphone mobile / Autres

Architecture

Mac OS X - macOS Mac OS X - macOS Intel x86 Intel x86 64 bits 64 bits

Téléchargement et liens

Historique des versions

v1.6
  • Nouvelle fonctionnalité majeure :

    • Émulation officielle des calculatrices CX II (modèles -T/CAS), bien que le boot complet de l’OS reste impossible sans une amélioration des outils de dumping du bootrom.
  • Améliorations techniques critiques :

    • Prise en charge native du mode 64 bits sur Windows (applications 32 bits toujours supportées).
    • Correction de la persistance de l’état lors des redémarrages pour l’installation de l’OS 4.5.3.14+ (grâce à l’implémentation du Fastboot RAM).
    • Suppression des limitations PIE sur x86_64 : les exécutables position-independent ne nécessitent plus de désactivation manuelle.
  • Corrections d’erreurs majeures :

    • Fix des crashs sur AArch64/arm64 lors de l’exécution d’instructions spécifiques (impactant potentiellement les builds Apple Silicon).
    • Restauration du comportement attendu des touches du clavier virtuel (réactivité aux événements tactiles dans la version desktop, libération des touches sur perte de focus).

Note : Aucun changement spécifique à macOS ou aux builds .dmg n’est mentionné dans ce changelog.

Changelog complet
**New features:** * New dialog for creating Flash images, which is also available in the Mobile UI! (#262) * Running as 64bit application on Windows is supported now (#234) * Polish translation is available now (#207) * CX II (/-T/CAS) calculators can now be emulated (#165)! However, with the current dumping programs you will not get a complete bootrom and booting the OS will fail. **Improvements:** * Multiple files can be sent in the Mobile UI and by dropping them into the main window on desktop (#279) Reimplemented emulation speed control: Now it's more accurate, especially on Windows * GitHub actions now performs automated builds for Android (armeabi-v7a and arm64-v8a in one APK), macOS and Windows (32bit and 64bit) on releases and pull requests (#283, #284, #285) * The "installer" for OS 4.5.3.14 (and later?) works now. It requires [fastboot RAM](https://hackspire.org/index.php?title=Memory-mapped_I/O_ports_on_CX#90030000_-_Fastboot_RAM) to persist state across reboots, which is now implemented. * More accurate emulation of the On button: It's now possible to enter Press-To-Test mode (#271) * Faster saving and loading of snapshots (#231) * More reliable USB file transfers * The debugger console now includes entered commands in the log * Support for PIE (position-independent executables) on x86_64. Previously, care needed to be taken that PIE was disabled, otherwise it would crash on start. (#211) * Building the JIT is disabled automatically if the platform does not support it (#197) * Firebird builds on FreeBSD now (#228, #248) **Bugfixes:** * File access on Android got fixed (#202 and its various duplicates) * Fix placement of keypad buttons in the touchpad area (#41) * Various fixes for the Mobile UI layout (#201) * The kit configuration page in the Mobile UI no longer causes the keyboard to pop up by default (#257) * Connecting with GDB on windows works now (#259, #260) * Some shades of grey were not displayed properly when emulating pre-CX models (#270) * Fix crash on AArch64/arm64 when executing certain instructions * The keypad reacts to touch events in the desktop version as well now (#292, #293) * Some places were no longer translated correctly after the introduction of language switching in 1.5 * Keys could get stuck on focus changes. Now they're all released when the keypad loses focus (#287) * The Ctrl key now changes color when pressed * Emulation speed no longer remains unlimited after a failed file transfer _Repo for Arch, Debian, Fedora, Ubuntu and openSUSE: [via OBS](https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu&locale=en)._ There is work in progress to implement and improve support for running in the browser on Qt for WebAssembly (#294). A preview is available on https://nspire-emus.github.io/firebird/wasm/
v1.5
  • Nouveautés majeures :

    • Ajout de la possibilité de basculer entre les langues de l’interface utilisateur.
  • Améliorations spécifiques à macOS :

    • Prise en charge officielle de macOS 10.15 Catalina (minimum requis).
  • Corrections importantes :

    • Suppression d’un crash à la fermeture pour les builds JIT de la version iOS (impact potentiel sur les builds macOS via des environnements similaires).
    • Correction d’un gel à l’arrêt pour les systèmes x86-64 (peut concerner les Mac Intel récents).
  • Optimisations techniques :

    • Amélioration des performances des JIT ARM et AArch64 (pertinent pour les futurs builds Apple Silicon si portés).
    • Historique de commandes dans le debugger (raccourcis Flèche haut/bas).
Changelog complet
**New features:** * UI language can be switched * The debugger has a command history, press Up and Down arrow keys * On Android, the system file picker is used now, which fixes "Could not start the emulation" in many cases * The color scheme follows the system now * Improved performance of CX flash access by ignoring certain cache flush requests **Improvements:** * LCD can be resized freely now * Performance improvements for the ARM and AArch64 JITs * Supports macOS 10.15 Catalina * The Android APK includes arm64-v8a now * The Windows ZIP includes software OpenGL now, so should work on more systems **Bugfixes:** * Fix the external LCD sometimes being invisible * Allows building with recent versions of the Android NDK with clang * Does not crash on exit due to use of incompatible compile flags with GCC * Android devices with a lower w/h ratio are marked as supported now * firebird-send supports different implementations of netcat now * GDB and remote debugger work after emulation autostart as well * Moving the cursor over keypad buttons no longer clicks * On Windows, the filename for snapshots can now include non-ASCII characters * Fix crash on emulation start on certain x86-64 systems * Fix freeze on exit on JIT builds for the iOS version Note: Firebird Emu requires Qt 5.9 now. _Repo for Arch, Debian, Fedora, Ubuntu and openSUSE: [via OBS](https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu&locale=en)._
v1.4
  • Nouveau backend JIT pour ARM64 (AArch64) : prise en charge native du code généré pour les architectures récentes (iOS 10+ et compatibilité avec les cibles Apple Silicon en développement, bien que non optimisé pour macOS dans cette version).

  • Amélioration majeure de l’interface utilisateur :

    • Bascule fluide entre les modes UI Mobile et UI Desktop (version Bureau uniquement).
    • Option pour masquer les titres des fenêtres dans le dock et interface globalement "revu" pour un rendu plus épuré.
  • Corrections critiques sur ARM :

    • Protection du state des périphériques d’entrée avec un mutex pour éviter les plantages OS (sous-jacent à des problèmes plus larges non résolus ici).
    • Correction des entrées/sorties pour l’émulation de Classic Mac OS (CAS OS).
  • Optimisations techniques :

    • Suppression des relocations dans la section .text pour éviter les avertissements sous Android 7.0+ (impact : légère baisse de performance).
    • Support de GDB 8.0 pour le débogage à distance.

(Aucune mention spécifique à macOS dans ce changelog, ni de build .dmg, ni de compatibilité Apple Silicon ciblée.)

Changelog complet
This update only adds minor features, but comes with many bugfixes. **Features:** - In the Desktop version, you can now seamlessly switch between the Mobile and Desktop UI - A new JIT backend emits AArch64 (aka arm64) code, used for instance on devices running iOS 10+ - Option to hide dock titlebars, combined with other minor adjustments the UI is now more "streamlined" **Other improvements:** - ARM JIT Performance improvements - Mobile UI supports suspend on close now (fully on desktop, on Android only with the back button) - Add option to disable printing of warnings (useful when booting linux or using ndless' lcd compat mode) - Rename "firebird" to "firebird-emu" in most places **Bugfixes:** - Emulation of the Classic CAS OS handles input properly - Fix starting location of file select dialogs in the Kit configuration - Protect the input device state with a mutex (only the tip of the iceberg) to fix OS crashes on ARM - Replace some keypad labels with images to avoid missing symbols with certain fonts - Don't enter the debugger recursively if trying to read from unmapped memory using the debugger commands - Disable relocations in the .text section as Android 7.0+ complains about that (makes emulation a bit slower though) - Support GDB 8.0 for remote debugging _Repo for Arch, Debian, Fedora, Ubuntu and openSUSE: [via OBS](https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu&locale=en)._

Captures d'écran

Screenshot de Firebird