A hex editor for fx-CG 50.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Lephenixnoir b2cd309daa
9 months ago
assets-cg UI improvements, relative goto, better program icon 9 months ago
screenshots add README 9 months ago
src add USB capture feature (disabled by default) 9 months ago
.gitignore meta: initial commit 9 months ago
CMakeLists.txt per-source caps, hlist, and memory region selector 9 months ago
README.md add README 9 months ago


Hex Editor for fx-CG

This is a hex editor for fx-CG. Builds with gint and JustUI.

The main features are:

  • Open and files loaded to RAM (up to ~300 kiB) with both overwrite and insertion mode
  • Load large files lazily and edit them in overwrite mode while partially loaded
  • View and edit the calculator's main memory areas
  • Create and save new files from scratch
  • Basic navigation and statistics tools

Data sources and the front buffer

The data source is the file or memory being edited. Accesses to the data source are cached through the front buffer, which is required both for functionality (we're not going to do a flash write for every change in a lazily-loaded file) and for performance (inserting in a 300-kiB file is not ideal).

The status bar shows Buffer: @POSITION SIZE/CAPACITY, which tells where the front buffer is in the file, how much data from the source is loaded in the buffer, and what the capacity of the buffer is.

When the front buffer has been modified but not yet saved to the data source, the title bar has a double star ** next to the source name. When the source itself has been modified but not saved, it shows a single star *. This only happens for loaded files, since for lazy files and memory the front buffer saves directly into the data source.

About editing G3A files

Writing to G3A files from within an add-in is not supported by the OS, as it add-in registration, which destroys any running add-in's MMU mappings. See this Cemetech thread.

If you write to a G3A file from the hex editor, the editor is likely to System ERROR or crash after writing. However, that's still fairly safe, so if you really need to edit a G3A file this way you can do it. Prefer using the loaded file mode, as the lazy file mode saves automatically when you move around after editing. If a System ERROR or crash occurs after saving, or if the add-ins don't show up in the main menu after leaving, just RESET the calc. The writes to G3A files do work, it's just that the add-in can't keep running after they're done.