@Vogtinator Vogtinator released this Nov 4, 2017 · 99 commits to master since this release

Assets 7

This update only adds minor features, but comes with many bugfixes.


  • 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


  • 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.

@Vogtinator Vogtinator released this May 14, 2017 · 213 commits to master since this release

Assets 6

This update contains several improvements, especially to the mobile experience.


  • Redesigned Mobile UI:
    • Configuration pane spans the whole screen
    • Actions easily reachable using a drawer
    • Shows the version number and about dialog
    • The On button starts/resumes the emulation
    • Multitouch now supported
    • Fix sizes (fonts, spacing, etc.)
    • Can toggle turbo mode now by clicking on the speed display
  • Improved ARM JIT:
    • Allocates registers now, huge speedup
    • Several optimizations and tunings
  • Non-existing files are now highlighted in the kit editor
  • Single file transfer has a progress bar now


  • GIF recording with greyscale calcs is now fixed
  • Use -no-pie if possible to fix the build on some platforms
  • Revert to old SIGNAL/SLOT syntax to fix some menu actions (got misoptimized with LTO)
  • Fix RGB555 LCD framebuffer (gpsp_nspire)

Repo for Arch, Fedora, Ubuntu and openSUSE can be found on the Open Build Service

@Vogtinator Vogtinator released this Dec 6, 2016 · 298 commits to master since this release

Assets 6

Except for iOS, this is a relatively minor update (changelog of the previous update a few days ago available here)

This update contains two features and two bugfixes.


  • The JIT (binary translation) now works on 64bit iOS and on non-jailbroken devices as well
  • The currently running kit is displayed in the title bar of the main window


  • The snapshot path of kits was completely ignored. It used the fallback global path for all kits instead. Sorry about that.
  • The LCD blurriness issue on iOS has been fixed

Repo for Arch, Fedora, Ubuntu and openSUSE: https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu

@Vogtinator Vogtinator released this Nov 28, 2016 · 313 commits to master since this release

Assets 7

This is a minor update (full changelog of the big update a few days ago available here)

Not only does "1.1.1" look much nicer than "1.1", it fixes an annoying bug with OS cursor movement.
Now the cursor does not jump around on repeated movements, which is especially noticeable when moving the graph view.

@Vogtinator Vogtinator released this Nov 26, 2016 · 318 commits to master since this release

Assets 6

Linux screenshot

New features:

  • Add new configuration dialog
  • Add easier way to manage multiple flash images with Kits
  • External LCD window, useful for presentations or saving screen space

Core improvements:

  • Emulation of different HW revisions (A, J and W) of CX
  • Support boot1 4.0 found in HW-W+ calcs
  • Support lcd_compat mode used by ndless
  • General speedups for x86_64 and ARM JITs
  • Supports CX installer images
  • Add headless and emscripten platforms (no binaries, not really that useful)
  • Emscripten demo on https://nspire-emus.github.io/firebird/firebird.html

Keypad improvements:

  • Add labels to the keypad
  • More intuitive keymap for mapping host keyboard to calc keypad
  • Touchpad can now be used to move the OS cursor
  • Make active area of buttons bigger to make typing with touchscreens easier
  • Avoid buttons appearing stuck after hovering with mouse

Misc. / other fixes:

  • The 32bit iOS binary detects JIT capability on runtime to avoid crashes
  • Some minor bugs fixed, like potential deadlocks in the debugger
  • Fix running functions from GDB
  • Improve HiDPI scaling
  • Mobile UI optimized for tablets in landscape orientation (right- and left-handed mode)
  • Add an update-checking feature to the about dialog


  • The internal format of snapshots changed - firebird will refuse to load snapshots created with an earlier version.
    You can use the old version to save your work to the flash image first.
  • The macOS version isn't codesigned, so to launch it you may need to either right-click the .app and choose Open, or simply disable GateKeeper entirely.
  • The iOS version is 32-bit only (for now anyway) and is built with JIT (which will disable itself if your device is not jailbroken)
  • The Windows version also has a mobile/tablet .exe that may suit those platforms better.

Repo for Arch, Fedora and openSUSE: https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu

Nov 25, 2016


Firebird 1.0

@Vogtinator Vogtinator released this Dec 15, 2015 · 516 commits to master since this release

Assets 6

New features:

  • Suspend and resume to/from snapshot files. Now you don't have to wait for the calc to boot, it's instantly available.
  • The USB file explorer now supports file dropping, renaming, downloading and creating folders (right-click)
  • Animated screen-capture (GIF recording)

Mobile UI:

  • Android: Properly implement being in background (paused)
  • More responsive: Fix sidebar buttons and add a toast-based message system
  • Fix layout of settings page with long filenames
  • Add labels to the sidebar buttons
  • iOS: Re-enable landscape mode
  • Auto-resume
  • Save button saves flash and takes a snapshot
  • Support keyboard input (desktop and HW keyboards (untested) only)


  • Refine UI: More icons, utilize status bar and wait cursor
  • More responsive UI: Can restart and resume instantly while in debugger
  • Slight performance improvements: Load flash with COW and speed up memory access in x86_64 JIT
  • Ask whether the created flash image should be used after creation
  • Add "Docks" submenu to show/hide docks
  • Disable JIT on non-jailbroken iOS devices: No longer two separate packages (edit: hotfixed Dec. 17)
  • Better/Updated translations
  • Support of UTF-8 file names/paths on Windows
  • Misc. code improvements, refactorings, etc.


  • Make usblink much more reliable
  • Fix dropping multiple files at once
  • Fix speed display: Using C++11 std::chrono instead of OS specific functions now
  • Fix gpsp_nspire: RGB555 not implemented and implement the CPU's behaviour if add changes the PC's lower bits
  • Fix polydumper: CP15 instruction was not implemented
  • Fix boot2 going into standby: bad_read_word
  • Fix some crashes on OS X (compiler bug recently fixed)
  • Set focus to the LCD on startup: Can type instantly now
  • Show "In debugger" overlay if GDB is connected
  • Cut long boot1 and flash filenames in the UI
  • Fix last keypad row on iOS: Added some padding on the bottom of the keypad to avoid triggering the control center
  • Not really an actual bugfix, but the license got changed to GPLv3.

You'll probably need a jailbroken iOS device to run *this .ipa, although you can also compile and run it yourself without jailbreak required, since it's now free from Xcode.*
Repo for Arch and openSUSE: https://software.opensuse.org/download.html?project=home%3AVogtinator%3Afirebird-emu&package=firebird-emu

@Vogtinator Vogtinator released this Sep 21, 2015 · 645 commits to master since this release

Assets 7

The magnificent icon

Changes since the last release:

  • Now called "Firebird"
  • Add mobile UI
  • New shortcuts: F10 to connect USB, F11 for turbo mode
  • Make firebird on ARM devices a lot faster
  • firebird-send script added (not on windows): Send files programatically
  • Add option to send a boot2 or diags via XModem
  • Some translations added
  • Different, more inspiring icon (though we welcome any alternative designs)


  • Various crashes fixed
  • Docks on Mac: Made it impossible to close the last dock window
  • Fix boot2/diags selection: didn't work without bootdata in flash

Note: the iOS build is not code-signed. You'll need a jailbroken device, and AppSync or similar
Note 2: the Mac build is currently using Qt 5.4, due to a bug with docks in Qt 5.5. We hope it will be fixed soon

@Vogtinator Vogtinator released this Jun 5, 2015 · 717 commits to master since this release

Assets 6

This work (except the icons from the KDE project) is licensed under a Creative Commons Attribution-ShareAlike 4.0 International License

Known bugs:

  • Inaccurate speed % display
  • Touchpad in OS
  • Keypad on iOS doesn’t work
  • Cursor keys don’t work in Diags (-> practically unusable)
  • Crashes sometimes if debugger command entered after EmuThread was terminated
  • Boot2 version in flash creation dialog not displayed sometimes
Jun 4, 2015
Change UI layout
-No toolbar
-Also fix accelerators