Documentation

HT is a file editor/viewer/analyzer for executables. The goal is to combine the low-level functionality of a debugger and the usability of IDEs. We plan to implement all (hex-)editing features and support of the most important file formats.

HT is distributed under the terms of the GPL.
  • README The HTML version of the file distributed
  • Doxygenized The result of a doxygen session on 0.8.0pre1
  • View CVS World read access to our dear repository.

HT 1.0

All current 0.x.y releases are targetted at HT 1.0. This means that HT 1.0 will be based on them.

When we started HT in 1999, we had fewer features in mind for 1.0 as well minor programming skills than we have today. It is not sure whether the 1.0-release will ever happen. Instead we're having new plans that may some day result in HT 2.0.

We will however continue to maintain the HT pre-1.0 series and fix the bugs that you are reporting to us.

HT 2.0

We are currently working on a rewrite of HT, that may some day make it to version 2.0. Note that this is almost a rewrite from scratch, that takes advantage of new wonderful classes, concepts and ideas (and of our increased wisdom).

Unfortunately we are still not quite sure, what HT 2.0 will feature. These are the ideas:

  • New C++ data structures (e.g. AVL trees). Completed.
  • UI system rewritten. Almost completed.
  • New file system methods. New and very powerful FileModificator. Can do undoable read, write, insert(!), delete(!), extend and truncate operations on huge files (up to 2^64 in size if OS supports this) with very low memory consumption, keeping only the required areas in memory. Ideal for CD images, hard disks, etc... Completed.
  • Completely rewritten program analyser. Already worked on.
  • An integrated debugger. HT 2.0 as a front-end to a "real" debugger (e.g. GDB). Already worked on.
  • SD: structure descriptions. An XML format, accurately describing binary structures, machine data types and byte-order. Very flexible and not limited to uses in HT. Worked on.

The curious may get the HT 2.0 code base from CVS. (repository htdata)