Hex Editor Neo 6.31 Release Notes

Version 6.31

Fixed Bugs

Automatic upgrade to this version is still broken. Please upgrade manually by downloading and running an installer from this page.

Updated Features

Updated JavaScript engine

This release presents an updated built-in JavaScript engine (used in Structure Viewer). It is ES2015 compliant and has much better script execution performance. This is a breaking change. Consult the included documentation for more information.

Version 6.25

New Features

Explorer window settings persistence

Explorer windows now remember last recently used folder settings.

New format specifier

Structure Viewer now allows new format specifier 'c' in format() function and [format] attribute. It forces rendering of integer values as single-byte or UNICODE character.

New directives in Structure Viewer

The following directives have been added to Structure Viewer definition language: $revert_to, $shift_by and $remove_to. They allow having look-ahead during structure binding.

Updated Features

Changed automatic item collapsing logic

User-defined type does not collapse if it contains other user-defined types and all of them implement [display] attribute. Previously, presence of other user-defined types caused automatic collapsing of a parent type during visualization.

Fixed Bugs

Multiple bug fixes

A number of reported and internally discovered errors have been fixed.

Fixed memory leak

Application allocated and never freed memory when recursive structures were used in Structure Viewer.

Incorrect rendering of floating-point numbers

Floating-point numbers in range (-1..0) were displayed incorrectly in Structure Viewer, Data Inspector and other components.

Window name is not updated when a document changes its name after Save As command is used.

Crash on language pack update

Application may crash when trying to install updated language pack.

Version 6.21

Important Changes

Starting from this release, Hex Editor Neo drops support for Windows XP and Windows Vista as well as corresponding server versions. A version that supports Windows XP and Windows Vista is available here.

Updated Features

Configurable max array/string export length in Structure Viewer.

Structure Viewer now allows configuring maximum length of array or string used during export.

Improved localization support

This release improves the quality of localization support in product. Now most UI elements automatically adjust their size to fit translated strings. This work is still in progress and more UI elements will be supported in new releases.

Fixed Bugs

Language pack downloading issues

Fixed several bugs with language pack downloading. This includes issues with invalid custom language pack path and path without trailing backslash.

Enum visualization bug in Structure Viewer

A bug that caused invalid visualization of enumeration values has been fixed.

time_t visualization bug in Data Inspector

A bug that caused invalid interpretation and visualization of time_t values in Data Inspector has been fixed.

Fixed a various issues with floating-point visualization in both Data Inspector and Structure Viewer.

Several reported bugs fixed

This release also fixes a number of reported and internally discovered bugs, including application crashes.

Version 6.20

Fixed bugs

Many reported and internally found bugs fixed.

New Features

Settings Manager introduced

This release introduces Settings Manager, which provides centralized application settings storage and management. User may now choose one of three settings storage locations: per-user Registry location (default), portable mode or external file. Settings may now be exported and imported or shared between computers.

Updated Features

Size column in Open Volume dialog

Size column has been added to Open Volume dialog.

Portable mode improvements

Portable mode has been improved thanks to newly introduced Settings Manager. Previously, Hex Editor Neo stored settings in Registry in portable mode and only saved them to a portable.ini file on shutdown.

Now, Registry is no longer used in portable mode and all settings are stored in portable.hexset file located in application startup folder. In addition, portable mode also changes the default language pack storage location as well as structure files location to paths relative to startup folder.

NOTE: Do not use Windows 10 to make a portable installation. Portable installations made on Windows 10 will not work on previous versions of Windows. This will be fixed in future releases.

Version 6.14

Fixed Bugs

Improved stability on startup

Improved compatibility with third-party software that modifies application files during startup. This has caused early re-compilation of structure definition files and could lead to crash.

Crash if Edit » Cut command used in Find dialog

Application crashed if some editing commands were used in pattern editor in Find, Replace and other dialogs.

A bug that prevented resource directory from correctly binding for PE exectuable files has been fixed.

Crash in binding broken pointer field

If exception was thrown during calculating pointer field offset, Structure Viewer subsequently crashed during visualization of pointer field.

Fixed Writable status determination for volumes

Application sometimes incorrectly determined whether the volume was writable or not (incorrectly disabling Read Only checkbox).

New Features

Data Inspector now has Hex/Dec switch

Data Inspector now has hexadecimal/decimal switch that affects most built-in types.

Updated Features

Sorted tool windows in View » Tool Windows menu

Tool windows in View » Tool Windows menu group are now sorted, which makes navigation easier.

CSV export in Structure Viewer

Copy/export code in Structure Viewer has been rewritten from scratch. Now it has excellent performance and better compatibility with CSV. In addition, CSV column separator may be selected in Tools » Settings, General Tab window.

Structure Viewer window position saving and restoring

Structure Viewer now saves the cursor position in tool window and restores it after the document is active again.

Application could crash after you changed the default character encoding.

Broken structure binding with offsets > 4 GB on 32-bit machines

Structures could not be correctly bound to offsets more than 4 GB on 32-bit operating systems.

Crash on file open

Application crashed if there was error during opening files with '{' character in their names.

Version 6.01

This is a major version upgrade. Almost every part of the product has been updated to some extent, including bug fixes and performance improvements. In addition, the following new features are implemented:

Built-in Structure Editor

Built-in Structure File Editor with syntax coloring may now be used for creating and editing structure definition files.

Volume Navigator

Volume Navigator reads opened NTFS-formatted volumes' structure, allowing the user to browse the volume elements such as directories, files, file attributes and streams. Files, directories or entire volumes may be copied to other location. This feature also supports reading damaged volumes.

Updated Data Inspector

Data Inspector now supports custom types.

Updated Structure Viewer

Structure Viewer introduces new language functionality, improved stability and new Structure Library window. See the included documentation for complete list of changes in Structure Viewer.

Structure Viewer could incorrectly compile and bind some structure defitions, namely, the ones that contained huge arrays of static types. It could start allocating more and more memory and binding could take too long. Fixed.

Incorrect file opened after double clicking on error in Structure Errors window

Fixed.

Incorrect handling of multi-byte encodings

The editor incorrectly rendered Text Pane when multi-byte encoding was selected. This bug has been fixed.

Several reported bugs fixed

Several reported bugs, including application crashes, have been fixed.

Updated functionality:

Selection is now retained when number of columns change

Multiple selection is not dropped when you change the number of columns in the editor window.

Version 5.13

Due to significantly better compression of included images (mostly in documentation), this version greatly reduces the installation size and installed disk footprint. In addition, this version fixes following important bugs:

Find in Files/Replace in Files function now provides "All opened documents" pseudo-location, allowing you to perform an operation on all currently opened documents.

Automatic detection of Language Pack availability

Hex Editor Neo now automatically detects if on-line language pack for user's default language is available and offers to download it.

Improved Structure Viewer performance

Structure Viewer's compilation and binding time reduced by about 10%.

Version 5.10

This release adds support for localization. Language packs are created as part of open source project and will be available through built-in updater once they are finished.

The first available language pack is Russian.

Besides, this release fixes a number of reported bugs. Please consult the View Changes page for detailed information.

Version 5.01

Major update to Structure Viewer

This version has completely new Structure Viewer, with a lot of new functionality and improvements. See the What's New in Structure Viewer 5.01 section below for more information.

Parallel operations

Several operations, like Find All and Replace All, now utilize several cores or processors (if they are available). It does not give linear speed-up, but sometimes up to 30% performance gain is obtained. Performance gain is more noticeable in Replace All commands, especially in regular expression mode.

True parallel execution of all lengthy operations

Previous versions allowed you to execute multiple operations in parallel, but user interface was rather limited: for example, it did not allow you to finish the first operation before the second finishes. Now, all started operations are equal and are executed truly in parallel. Application user interface is not blocked. Only windows of the current document are disabled until the operation execution is completed.

Support for Intel HEX and Motorola S files

Advanced Copy & Export now allows exporting selection into Intel HEX and Motorola S formats. In addition, new commands, File » Open » Open Hex… and Edit » Insert Hex… allow the user to convert Intel HEX and Motorola S files to binary form and insert them into the Hex Editor Neo.

Additional information is displayed for several lengthy operations

For Find All, Replace All and other operations, the number of occurrences found so far is displayed on the progress dialog.

Completely rewritten Checksum module

Checksum module has undergone complete rewrite, featuring new algorithms, greatly improved performance and parallel execution. That is, when several algorithms are selected at once, Hex Editor Neo utilizes multiple cores or processors (if they are available) to execute them in parallel.

More hash algorithms are offered (the actual list depends on algorithms available through Cryptography API). More different ways to sum all values in a document or selection are offered, including signed and unsigned sums.

User interface for a Checksum module has also been improved.

Ability to copy/export the current selection

Hex Editor Neo now allows you to get the list of selected ranges into the Clipboard or directly to text file.

Improved experience when opening volumes and disks

Hex Editor Neo is now capable of opening volumes and disks in the same running instance, even if it runs under non-privileged user account.

Goto Navigation panel

Each editor window has its own navigation panel with individual location history.

Improved setup speed

Speed of Hex Editor Neo setup application has been greatly improved. Installer now needs to update less files and system settings and operates much quicker.

Improved application start-up time

We have improved the applicaiton start-up time by reducing time required by various components to initialize and allowing several components to initialize in parallel.

Improved Find in Files/Replace in Files commands.

New version provides better utilization of multiple cores as well as proper operation on single-core computers; smoother operation on SSDs.

What's New in Structure Viewer 5.01

This is a major upgrade to Structure Viewer. This module has almost been rewritten from scratch, taking advantage of new compiler, parallel processing (on multi-processor and multi-core computers), new features and a major performance boost.

Hex Editor Neo does not perform pre-compilation anymore. The speed of compilation is now 10-100 times faster and is performed by multiple cores. Structure Viewer initialization no longer slows down application start up.

New version improves the binding time and reduces memory consumption of bound structures.

New Language Features

_SVC_VER compiler version macro

Compiler version in 5.01 has a value of 0x300 (major version: 3, minor version: 0), which indicates major upgrade.

Breaking change

break operator now always exits the current scope, even if not used inside a loop or switch statement.

Breaking change

When defining constants, the expression at the right side must evaluate to a constant value at compile time. Compare this to variables.

Alternative syntax for specifying enumeration's base type

New syntax (the one described in C++11) for specifying enumeration's base type may be used. The old one is still supported.

Update to #pragma byte_order behavior

This pragma may now be used at any scope. It changes the byte ordering immediately (effective for next fields if used inside a user-defined type, for example).

Updating of array elements

Previous versions allowed you to declare variable arrays. This version adds support for modifying individual array elements after they have been declared (and possibly initialized).

New attributes

In addition to noindex attribute, the following attributes introduced:

noautohide attribute - allows you to turn off automatic hiding of empty fields.

read attribute - specify the expression to be evaluated each time the value is read.

format attribute - specify the format string to be used when displaying the field's value.

description - specify the user-friendly description of the field.

color_scheme - specify the color scheme for the field.

New built-in functions

The following new built-in functions were introduced: bool, decimal, hex, octal, binary, integer_convert and format.

Support for native functions

In addition to existing support for using Javascript functions (either inline or defined in external files), new Structure Viewer allows you to define native functions. This also introduces the return statement.

Automatic optimization of sub-expressions

Previous versions of Structure Viewer could automatically optimize constant expressions. New version adds automatic optimization to sub-expressions as well.

New directive

New $alert directive allows you to evaluate an expression at bind time and display the result in a message box.

New UI Features

Support for color schemes

Combined with new color_scheme attribute, allows the customer to apply different color schemes to individual fields in a bound structure.

Structure Library dialog improvements.

Various improvements of the Structure Library dialog.

External structure editor support

Added support for external structure editor.

Improved error detection and reporting

This version dramatically improves syntax error detection and reporting. The editor is now capable of detecting more errors and provides more accurate position for an error. It is also now has so-called "expectation points" in its grammar. For example, in the following code fragment:

public struct A { int a[5; };

A "syntax error" with message "] expected" is displayed. A cursor points to the ';' character.

Change to bind error behavior

Now, when bind error occurs, all items that have already been bound are left in the Structure Viewer. Exception item is added to the end of the list of bound items.

Structure Errors tool window

New tool window displays all compilation and binding errors. You can double-click any entry in a list to display the position of the error.

Release Notes for Version 4.97

Support for Using Regular Expressions in Replace Pattern

Replace and Replace All commands now support regular expressions as replace patterns, allowing you to refer to parts of matched expression when performing a replace.

Support for Encodings in all Commands that Work with Regular Expressions

Find, Find All, Replace, Replace All, Find in Files, Replace in Files, Pattern Statistics - all these commands now fully support currently selected encoding when they work in regular expressions mode.

New scripting methods

The following new methods are available in IFileDocument:

IFileDocument.FindAllRegExp2

IFileDocument.FindRegExp2

IFileDocument.ReplaceAllRegExp2

IFileDocument.ReplaceAllRegExpWithRegExp

IFileDocument.ReplaceAllRegExp2S

IFileDocument.PatternStatisticsRegExp2

Bug Fixes

This release fixes several reported or detected bugs, including application crashes.

Release Notes for Version 4.96

Integration with Windows Error Reporting

Hex Editor Neo now fully integrates with Windows Error Reporting. We will be able to receive each submitted crash or hang report, analyze it and provide a solution to the customer.

New Data Operations – Reverse Bits and Byte Swap

New Reverse Operations commands were implemented in this release. Use the first command to reverse the order of bits in each value in a selection and use the second command to reverse the order of bytes.

New Arithmetic Operations – Set Minimum and Set Maximum

Two new arithmetic operations allow you to limit each value in a selection.

Regular Expression Scheme Association

Structure Viewer now uses regular expressions to match a scheme to the document.

Improvements in the editor

Various small bug fixes and minor improvements in the editor:

Application now remembers the state of the Details Selection tab between launches.

Several reported bugs were fixed in Structure Viewer (see What's New in Structure Viewer (version 4.96) for more information) and Disassembler. In addition, reported errors in exporting selected data as Delphi array were fixed.

Release Notes for Version 4.95

UTF-8 Support

This release finally adds the UTF-8 to a list of supported encodings. Now it is not only supported in the Advanced Copy & Export module, but also in editor windows, Structure Viewer and everywhere else.

This release covers the last "hole" in encoding support in Hex Editor Neo - now Structure Viewer also uses the code page of the current editor window when it displays single-byte character arrays or strings.

Pasting Encoded Text

In this release, Hex Editor Neo also uses the current encoding when pasting text into the Text Pane of the current editor window.

Bug fixes

Several bugs were fixed in the Structure Viewer.

Release Notes for Version 4.94

This release introduces several bug fixes and a few improvements to various product functions:

Ability to specify the proxy server to use. Configured proxy server will be automatically used by such features as Check for Updates, Downloader and Crash Dump Uploader.

An additional column is added to the Open Disk dialog. It displays the physical drive information in a form of "\\.\PHYSICALDRIVEN", where N is a disk ordinal number assigned by operating system. This allows you to distinguish between the same disks from the same manufacturer.

All operations (bitwise, arithmetic and shift) dialogs now include the option "Whole File". You can use it to target an operation to a whole file without the need to select it first.

Current bookmarks are now displayed in the Go to Offset dialog.

Added an ability to manipulate the current selection directly from Go to Offset dialog. You can replace, add, remove or invert the current selection while changing the cursor offset in the document.

Portable Installations Improvements

Before this version, when you use the Hex Editor Neo in portable installation, it still uses the target system's registry and file system to store configuration data as well as temporary files.

Version 4.94 of the editor has been modified the following way:

On startup, Hex Editor Neo creates a key in the registry and imports the configuration data from portable.config file (located in the product startup folder).

On exit, Hex Editor Neo saves the configuration data back to this file and removes the registry key.

In addition, Hex Editor Neo stores vector image cache (used to decrease start-up time) in the user's profile temporary folder. You can switch off this behavior in the Tools » Settings…, General Tab.

Release Notes for Version 4.93

This release fixes a number of Structure Viewer bugs and further improves structure binding performance.

Changed the displayed type name for bit fields. It now shows the number of bits a field occupies (for example: int: 4).

More accurate structure binding progress update. In addition, a progress window may switch to the marquee mode when binding complex structure with forward and backward pointers.

A bug that prevented bit fields from being indexed is fixed. Now when you click on the cell which contains a bit field in the editor, the field is properly highlighted in Structure Viewer.

The execution of the assignment statement (variable = expr;) is greatly optimized. Such complex iterative structures as AVI, TGA and others will benefit from this optimization.

Structure Viewer now displays a single common progress when binding a structure that executes delayed binds (like PE header, for example).

Structure Viewer tool window's main operations, like navigation, expanding/collapsing, scrolling and so on were optimized.

Release Notes for Version 4.92

General Bug Fixes

Sometimes when “Compare Files” command was launched as Windows 7 task from the pinned application icon, it crashed after you pressed the OK button.

Hex Editor Neo’s patch files were incorrectly registered by setup.

General

Hex Editor Neo now prevents the computer from going to sleep (unattended) when performing lengthy operation. This of course does not prevent the user to manually sleep the computer.

Now there is an option to move the cursor to the end of the pasted data after the Paste operation (turned on by default).

Now it is much more easier to select data with mouse. The behavior is more consistent with other Windows applications.

All Hex Editor Neo commands (such as Fill, Find, Find All, Replace etc) now respect the current window’s encoding, when single-byte string type is chosen. The current encoding is also displayed in the command’s dialog. Note: when using regular expressions, default system encoding is always used.

Current editor’s window encoding is also respected by Pattern Coloring module.

New features

$print directive now does not automatically convert its argument to string; instead it uses Structure Viewer’s data visualization engine. This allows it, for example, to respect the “Display Hex Values” setting when displaying integer values.

For pointed types, not only the pointer value, but the snapshot of pointed type contents is visualized on a line (as it is for arrays and structures). In addition, a computed address is also displayed.

Javascript code now may be specified inline with a new javascript keyword. Note that VBScript code must still be referenced with #pragma script directive.

Structure Viewer now uses the current editor window's encoding when displaying non-Unicode strings.

PE header sample has been greatly enhanced. Now it parses more PE file structures, including import and export directory, resource directory, base relocation table, debug directory and others. It also illustrates how to use Javascript to extend the power of Structure Viewer's declaration syntax.

Checksum

Click-and-calculate feature implemented: non-computed checksum value is automatically computed when you double-click it (no need to click checkbox and then Refresh)

File Compare

File Compare tool window’s commands are now application-wide commands. You can put them on the toolbar or assign keyboard shortcuts to them.

Clipboard

Now Edit->Copy and Edit->Cut commands automatically put selected data in text format into the Clipboard. Copy & Export tool window is still used to fine-tune the format used.

“Raw Text” copy&export mode also lists “Current Encoding” as encoding type. When selected (default), encoding from the current editor window is used.

Release Notes for Version 4.91

This version features a completely rewritten setup for Hex Editor Neo.

Transactional Installation

Setup now performs installation of the product as a single transaction (on supported operating systems and configurations, see below). If anything goes wrong during installation, including software or hardware errors, computer configuration is not modified. All setup activities are part of the transaction, including modifications done to the file system and system registry.

Setup always tries to use transactions on supported operating system. If installation fails due to the transaction error, it retries the operation without using transactions. It also does not use transactions on legacy operating systems.

Requirements

Transactions are supported on Windows Vista or later operating systems. In addition, the product must be installed on the local NTFS volume.

Restart Manager Support

Now, when setup needs to replace or remove a locked file, it uses the system restart manager (Windows Vista or later) to find the application that has a file open. It also offers a way to gracefully restart the application in order to update the file. This new feature greatly reduces the need for system restart during setup.

On legacy operating systems setup emulates the restart manager's behaviour, still trying to minimize the need to restart a computer.

Per-User Installation

In addition to the previous, "per-machine" installation mode, a new installation mode is offered. It allows the user to install the application only for himself. In this mode, setup does not modify any per-machine settings. In addition, a user does not have to have administrative rights to install the Hex Editor Neo. After the product is installed in per-user mode, it is not visible to other users of the computer, but may also be installed by them in per-user mode.

Limitations

Take the following limitations into account when installing Hex Editor Neo in per-user mode:

This mode is not supported on Windows 2000.

On Windows Vista and later operating systems, standard user (and even computer administrator without elevation) does not have enough privileges to create System Restore points. This does not apply to administrator user on Windows XP computer. Setup always tries to create a system restore point, but will silently ignore this step if it does not have enough privileges.

Portable Installation

Another new installation mode is used to make a portable copy of Hex Editor Neo. Once installed, the copy of the product may be transferred to other locations, or to other computers where it can be used without installation. In this mode setup allows the user to install the product on the removable media and network shares.

Limitations

Take the following limitations into account when installing Hex Editor Neo in portable mode:

Setup does not create shortcuts, does not update system registry and does not publish installed application (it will not appear in Add/Remove Programs Control Panel applet (Programs and Features starting with Windows Vista).

You will need to manually delete product installation folder in order to remove the product from your computer.

Setup does not register Hex Editor Neo's type libraries, preventing you from using the product in scripting environment.

Command-line Parameters

New Hex Editor Neo's setup allows you to specify several parameters on the command line:

Parameter

Description

-silent

Surpress any user interface dialogs during setup

-uninstall or -u

Turn on uninstall mode

-portable

Turn on portable mode

-prop INSTALLDIR=[path]

Specify the installation folder location. If [path] contains spaces, enclose it in double quotation marks, among with "INSTALLDIR=" part: "INSTALLDIR=c:\Path With Spaces\Hex Editor Neo". Note that in this case path must not end with a backslash.

-user

Turn on per-user mode

-machine

Turn on per-machine mode

Examples:

This will install Hex Editor Neo in per-user mode into the "c:\Programs\Hex Editor Neo" folder:

Release Notes for Version 4.85

Below is a list of changes in Hex Editor Neo 4.85:

Shared Files Support

Hex Editor Neo is now capable of working with files shared with other applications. Using the File » Open » Open Shared File… command you can open a file in the editor, at the same time allowing other applications to make changes to the file.

This feature is supported on all operating systems Hex Editor Neo natively supports. A shared file may be located on a local, removeable or remote media formatted with any supported file system (FAT, FAT32, NTFS, ExtFS…)

After you open a shared file, Hex Editor Neo starts watching for file's modifications. If another application makes changes to a file, Hex Editor Neo displays a Shared File Conflict Dialog, which gives you options to ignore a change, update editor's copy, and/or merge changes with local changes.

In addition, for all "update"-kind options you may instruct the editor to compare the new version with a previous one. Two file comparison algorithms provided by File Compare module are supported. Hex Editor Neo also allows you to retain older versions of a file in the editor. You may edit these old versions as any other kind of document in the editor, save your changes and so on.

Hex Editor Neo also detects file deletion. In this case it gives you an option to close a file or continue working with it, retaining all the changes you made to a file.

A configurable option exists which governs how Hex Editor Neo reacts on file renames. If enabled, renaming a file in another application (like Windows Explorer, for example) automatically changes the file's name in Hex Editor Neo's interface (without any prompts).

Single selection mode option

"Single selection mode" option, which was previously only available in General Settings page (under name "Auto drop selection"), is now also available from the Select menu and on Selection Tool Window's toolbar.

In addition, a number of reported bugs have been fixed in this release.

Release Notes for Version 4.83

This version fixes a potential crash on application exit and introduces new formatted text output format: Assembler array.

Bitwise, arithmetic, shift and case change operations may crash when used in some configurations. Fixed.

Release Notes for Version 4.81

Below is a list of changes in Hex Editor Neo 4.81:

Full history tree window

You can now view the entire document change history in a special window. History is represented as a tree with a node for each document change. You can quickly switch between states, get more information about each state or execute one of the purge commands. Comfortable zooming and panning features are provided by the window.

Complete rewrite of command routing and toolbar customization system

This release brings completely new version of the command routing and toolbar customization subsystem. We have greatly optimized Hex Editor Neo's startup and runtime performance and brought greater flexibility to user interface customization. Built-in and user-created layouts now not only affect tool windows, but also change commands on default toolbars and size of their buttons.

Checksums and Statistics now store per-document information

Checksums module and Statistics module now store per-document information. For example, you calculate statistics for a document, switch to another one and calculate statistics for it as well. Now, if you switch back to the first document, Statistics tool window will immediately display information it previously calculated for the first document.

Changes in the Free Edition End User License Agreement

Free version's EULA now grants commercial usage of the free edition of the Hex Editor Neo.

Improved Explorer integration

"Edit with Hex Editor Neo" shortcut menu option is now added to drives as well.

Improved Windows dialog

Windows dialog (it displays a list of all opened editor windows) now automatically activates a window under the cursor. There is no need to click the Activate button anymore.

In addition, the following reported or known bugs were fixed:

Several bugs in Structure Viewer

A number of not critical bugs were found and fixed in Structure Viewer.

32-bit integer types (both signed and unsigned) were incorrectly handled in big-endian mode. Note that this did not affect 32-bit signed and unsigned long types. This bug is fixed as well.

Decrypt function is not working

On some computers it was unable to run a Edit » Decrypt… command. This has been fixed.

A lot of small glitches that were in our "suggestion queue" have finally found their time to be fixed in this release.

Release Notes for Version 4.76

This release focuses on major performance improvement in one of the core Hex Editor Neo components, responsible for working with large files. (Hex Editor Neo considers files bigger than 64 MB on 32-bit systems and bigger than 128 MB on 64-bit systems as large files).

Careful optimizations and wiser use of system resources allowed us to greatly optimize this core component. As performance of most editor functions depends on it, we have managed to improve the speed of various functions from 2x to 8x!

The most boost is displayed in "cheap" operations, like General Statistics and Pattern Statistics, moderate boost in heavier functions as Replace All and less boost in "heavy" functions like Find All, for example.

In addition, document saving performance has also been greatly improved. On some of our test platforms, file copying (File » Open command followed by File » Save As… command) works faster than in Windows Explorer!

In addition, several reported bugs have been fixed.

Licensing System Update

Recently, each new upgrade required our customers to re-install the license file to re-activate the product. This is still required for this update, but the licensing system was updated to remove this limitation. All future upgrades will not invalidate the installed license.

Release Notes for Version 4.75

This release fixes several reported bugs.

Release Notes for Version 4.74

New and updated features in this release:

Revised Operation History

User interface for document operation history has been completely revised. Now it is much more comfortable to use one of the most powerful and unique Hex Editor Neo's features - history branches.

Application load-time improvement

A lot of attention in this release has been paid to reduce the time Hex Editor Neo needs to launch.

Offset display type

An offset (or address) may now be displayed as hexadecimal, decimal or octal numbers.

New view types

In addition to hexadecimal, decimal, float and double, data in editor windows may now be displayed as octal and binary values. All Hex Editor Neo's commands and modules are also compatible with new view types, including Copy & Export module.

New range rule type in Pattern Coloring

Pattern Coloring introduces a special rule type: range rule. For range rule, you define a range which is then hilighted in a document.

Advanced support for Editor Window settings

You can now configure the default editor window settings on special settings page (Tools » Settings » Editor). These settings include offset display type, data display type and grouping, byte ordering, a number of columns, character encoding and visibility of code pane and text pane. In addition, there is a special option to associate a different set of window settings for each opened document and restore them next time the document is opened.

In addition, several known and reported bugs have been fixed.

Release Notes for Version 4.73

New and updated features in this release:

Windows 7 Beta support

This release introduces support for new cool features of the Windows 7 Beta taskbar. Progress indication and jump lists are fully supported and utilized by the Hex Editor Neo, and in addition, user is in control of customizing the tasks presented on the taskbar.

Array size is parsed incorrectly if multiplication is used in size expression.

Invalid script file causes a crash.

Several parser bugs fixed.

Find in Files

Deadlocks and possible crashes were fixed. In addition, performance for the feature has been increased.

Explorer

Several bugs are fixed in Explorer and it is now compatible with Windows 7 Beta.

Release Notes for Version 4.72

New and updated features in this release:

Disassembler

Version 4.72 brings support for x64 executable files.

In addition, a bug that sometimes lead to program crash has been fixed.

Release Notes for Version 4.71

New and updated features in this release:

New and Updated Features

Disassembler

Version 4.71 brings support for .NET assemblies. It also features an updated disassembler view window, with support for fast navigation, selection of assembly text, column configuration and much more. It also allows you to display an assembly listing in AT&T format.

Disassembler has an improved quality of the assembly listing. Module imports are now also analyzed and displayed, in addition to symbols.

Structure Viewer

The most of the new functionality is within the Structure Viewer module again. It now understands new built-in types, statements and directives. It also supports variables, constant and variable arrays and expression evaluation with dynamic type inferring.

This release eliminates most of previously imposed limits on structure size, array size etc. The Structure Viewer Tool Window has been updated to easily handle billions of items with very fast and clean navigation. Commands like Expand All and Collapse All will take less than a second expanding/collapsing a structure with a billion of items. If you bind a complex structure to a huge file (for example, AVI), you can estimate the editor to easily carry the job without running out of memory.

A number of handy features, such as Synchronize Position (which works "both sides" - from structure to document and from document to structure), Mouse over field tracking (which highlights a field under the mouse cursor) greatly simplify the file structure analysis.

Structure definitions may extend their functionality by referring to functions written in JavaScript or VBScript. These functions have access to the underlying parser and document, thanks to the IFileDocument and IParser interfaces, exposed to them by the Hex Editor Neo.

The overall compilation and binding performance has been greatly improved. More information about the new functionality provided by the Structure Viewer is found in the included documentation.

Copy&Export

The Advanced Copy & Export module now follows the model offered by the editor window. It now allows you to execute the Copy and Export commands with no selection present. In this case, a cell under the cursor is copied/exported.

The current byte order is now taken into account when performing copy or export functions.

It also offers an option to configure the number of digits to be exported for floating-point and double precision floating-point types.

Refresh View Command

When working with logical or physical disks, process or physical memory, this command allows you to refresh the editor window to display any possible changes to the underlying data, performed by some other application or operating system.

/s Command-Line Parameter

When launched with "/s" command-line parameter, Hex Editor Neo forwards the list of files to open to an already running instance, if there is one.

"Display cursor address on the left" Option

Several customers complained about the address of the cursor location being displayed at the start of the line. Now this functionality can be switched off.

Reverse Sorting on Statistics Columns

Statistics window now allows you to sort columns in both ascending and descending order in its table mode.

New IFileDocument Methods to Be Called from Scripts

A previously introduced ISequence object was called to make it possible to call methods of the IFileDocument interface from scripting languages (such as JavaScript and VBScript). Although, our tests has shown, that in some cases it is still impossible for a script to call one or another method due to the limitations in the Automation model and the way scripting engines are implemented.

This release finally resolves the problem by providing a special variant of each affected method. Every such variant may be easily called from the scripting languages.

Go to in Process

Go to in Process command now interactively updates the cursor position when you click on the image sections or modules (without closing the Go to window).

UI Sugar

You can now make any tool window appear as a tabbed document. That means that the tool window will not be dockable to one of the four sides of the main window anymore, nor it will float over the main window, but instead will be placed where all editor windows reside. You may then take advantage of the Editor Window Placement feature to position a tool window.

Each tool window now also memorizes its floating position separately of its parent frame.

Ctrl+Mouse Wheel now quickly changes the font size in an editor window. This is a quick way to change a font size without using the Layouts dialog.

Bug Fixes

The following is a fixed bug list:

Purge All History and Load History Commands

These commands did not work properly in Free Edition mode.

Copy&Paste Bugs

Several bugs with copying and pasting document data have been found and fixed. This may include several application crashes.

A Lot of Minor Bugs

Quite a few of minor bugs or inconsistencies were found and fixed throughout the product.

Release Notes for Version 4.64

New and updated features in this release:

New Features

Structure Viewer

Structure Viewer has been completely redesigned and rewritten. It now supports a sophisticated structure definition language with expression evaluation, pointers and bit fields, case unions and assertions, constants and enumerations and much much more.

In addition, C99-compliant preprocessor is run before a source file is compiled, a preprocessor with full support for macros and conditional compilation.

Source files are optimized and saved into precompiled files, which are then quickly loaded by Hex Editor Neo on demand. Structure binding performance has also been greatly increased.

In addition to the ability to bind a structure to an absolute or relative address or to a cursor position, a structure may now be bound to an expression. This expression may reference constants and enumerations declared on the global source file scope or even reference previously bound structures.

Scripting

New Sequence Object provstronges scripting languages (such as Javascript and VBScript) a way to build a pattern and pass it to File Document Object methods that require a pattern.

Release Notes for Version 4.51

Hex Editor version 4.51 fixes a number of reported bugs.

Performance Optimizations

This release introduces a number of major performance optimizations that affect most Hex Editor functions. In general, the following performance boost is estimated:

Fill, Delete, Cut and Paste - when they operate over a multiple selection - have up to 3x performance boost.

Similar numbers refer to Find in Files and Replace in Files functions.

New Features

Disassembler

Hex Editor now includes a disassembler module. The current implementation is capable of disassembling 32-bit x86 code, including support for FPO, MMX, SSE, SSE2 and 3DNow! instruction sets. Disassembler automatically searches for symbol files and uses the information from them to increase the assembly output readability. The Disassembler View may be connected to ordinary editor window which provides you with another handly data viewing and manipulation tool. The disassembler module works with files and processes' memory and is even automatically updated when you modify the document.

Regular Expressions

Find, Find All, Replace, Replace All, Find in Files, Replace in Files, Pattern Coloring and Pattern Statistics commands and modules now fully support regular expressions. ECMAScript-compatible implementation of regular expressions provide you with extreme power ever found in binary editors. Very efficient implementation of "bulk" commands (Find All, Replace All, Find in Files and Replace in Files) combined with unique features of Hex Editor's multiple selection feature, together form an invaluable editing tool. A concept of named regular expression classes even allows you to define recursive grammars.

Window Switching

Hex Editor now provides fast and convenient tool that can be used to instantly activate any visible tool window or editor window. When you press Ctrl + Tab or Ctrl + Shift + Tab (user configurable), a navigation window is displayed. It provides the list of visible tool windows and all opened editor windows for you to activate.

Code Pane

Hex Editor now provides you with a method to completely hide a code pane, leaving only the text pane visible. Combined with the auto columns mode, it is a powerful tool to edit text or binary-text data.

Default Layouts (Three Different Ones)

When you run the Hex Editor for the first time, you are provided with a choice of default working layout. You can choose between a "Novice User Layout", "Advanced User Layout" and "Expert User Layout". You can later change the chosen layout or make your own.

Release Notes for Version 4.41

Hex Editor version 4.41 fixes a number of reported bugs and introduces some performance optimizations. New features in this release:

New Features

Case Change Operations

Hex Editor now offers three new Data Operations: Lower Case, Upper Case and Invert Case. Case change operations take into account current encoding and are capable to work with Unicode data.

Application-Wide Byte Order Support

Hex Editor now fully supports both little-endian and big-endian byte orders. Different byte order can be set separately for each editor window and there is an option that controls whether floating-point types are affected by byte order change. Byte order change commands have been removed from Data Inspector and Structure Viewer modules, as they now respect the byte order configured for a window.

Modify Bits Command

New Modify Bits command allows you to see a visual binary representation of the number and modify individual bits.

Printing Support

Full printing support is now available in Hex Editor.

Copy and Cut Work Without Selection

Copy and Cut commands can now be used when there is no selection in the current editor window. In this case, only the cell under the cursor is copied/cutted into the Clipboard.

New Features

Encrypt and Decrypt commands may now be used to encrypt and decrypt a document (or part of it), using one of the installed block or stream ciphers.

A large set of new data operations: bitwise (NOT, OR, AND, XOR), arithmetic (Negation, Addition, Subtraction, Multiplication, Division and Remainder) and shift (Logical Left and Right, Arithmetic Left and Right and Rotation), are provided. They operate in linear time (depending on selection's complexity), that is, for single-range selection they execute immediately, regardless of data size.

Structure Viewer may now be switched between little-endian and big-endian data representation.

Release Notes for Version 4.21

Hex Editor Neo 4.21 fixes a number of reported bugs and provides several performance and memory consumption optimizations. From this release a full support for NTFS alternate data streams is introduced. New features in this release:

New Features

NTFS Alternate Data Streams

Hex Editor Neo allows you to view the current file's streams, open them for editing, delete and rename streams as well as create new ones. It also has a powerful feature that allows you to quickly locate all streams on your computer, according to a given search criteria.

Release Notes for Version 4.11

Hex Editor Neo 4.11 fixes a number of reported bugs. In addition, byte order support has been added to the Data Inspector window.

A lot of new features are included in this release. See the sections below for a brief description.

New Features

Built-In Explorer

Hex Editor Neo now has two Windows Explorer-like windows as part of its user interface. They can be used to perform usual file and folder operations and also tightly coupled with Hex Editor. For example, you can open files in the editor by double-clicking them in the Explorer window simply dragging them to the editor's window.

Encodings

Hex Editor is now capable of displaying text in the text pane according to a selected encoding. More than 130 different encodings are supported (subject to installed code page files and fonts). When the cursor is in the text pane, typed characters are also converted using the selected encoding. Encoding can be set separately for each editor window. Different ANSI, UNICODE, ISO, OEM, MAC, EBCDIC and country-specific encodings are supported.

Checksum Calculation

Hex Editor supports 16 checksum calculation algorithms, including MD5, SHA-1, CRC-16, CRC-32 and others. Custom CRC algorithm is also provided. You can compute the checksum for the whole file or for the current (multiple) selection. Several checksums may be computed at the same time. Results are easily exportable and copyable to the Clipboard.

Advanced Copy & Export

Selected document data may now be converted into a number of supported text formats and placed into the Clipboard or exported to a file. Space-separated or comma-separated numbers, raw text with selected encoding, programming language array declaration, Base64, UUencode and Quoted-Printable are among supported formats.

Pasting Text

Text may now be pasted into the editor. Depending on the active pane, the text is either pasted "as is" (if the text pane is active), or parsed as a sequence of hexadecimal or decimal integers (if the code pane is active).

Release Notes for Version 4.01

The Hex Editor Neo 4.01 release is a completely new product. It has been entirely redesigned and rewritten from scratch to bring new functionality, unbelievable performance and stability.

The introduction of the new data processing engine allowed us to implement an unlimited operation history with immediate switching between operations and branching support, as well as a wide variety of editing operations, ranging from basic editing to the most advanced actions.

Document's operation history may even be saved to a file and later restored (applied on the same document). In addition, specific document state may be saved as a compressed patch. The patch may be distributed and applied to the copy of the original file on the same or another computer. For patch application, a special application (available for x86 and x64 platforms) is provided, as well as a special Patch API. This API provides a number of interfaces to be called from the user code to apply patches.

The unique multiple selection concept, introduced in Hex Editor 3.x has been greatly enhanced. Multiple selections now consume much less space and processing time and provide additional advanced techniques, such as saving to a file and merging. All Hex Editor commands and modules are now capable of working with multiple selection in a very efficient way.

Thanks to the new data processing engine, the complexity of most operations has been optimized to be nearly constant-time, that is, the time required to take an action does not depend on the file size, for example.

Hex Editor is still capable of opening files of any size. In addition, we have removed a file size limit from the Free Edition. In fact, the Free Edition has become quite full of features.

Editor Enhancements

Hex Editor now allows you to have as much editor windows opened for a document as you need. Hex Editor provides a convenient way of arranging Editor Windows on the screen. All such windows represent the same opened file, but may have their own view type, number of columns, cursor position and selection. A view type is a type of data displayed in an editor window. Below is a list of supported view types:

You can now customize the every visible aspect of the editor window, that is, the font and colors of each window element may be customized. For convenience, these customizations may be saved as a scheme. Hex Editor provides a number of professionally designed color schemes that you may use to improve your productivity.

New and Updated Features

Hex Editor introduces a lot of updated and brand new features:

Find and Find All

New algorithms have been implemented for Find and Find All commands. You may search for a single byte or a pattern with or without Ignore Case option. The search speed is outstanding and Find All command consumes much less memory thanks to the improvements in multiple selection implementation.

The "in-line" editor window is used to specify a search pattern (that is, pattern may be specified as hex bytes, decimal bytes, words and so on, see the table above). In addition, ASCII or UNICODE string may be used as a search pattern.

Replace and Replace All

Previous version of Hex Editor was unable to replace a shorter sequence with a longer one. Now this limitation is gone - you are completely free in choosing the search and replace patterns. The same rules (as described above) apply to specifying both patterns - they can be ASCII or UNICODE strings, hex bytes, words etc.

The performance of the Replace All command is at the very high level, in fact, it works much faster than "manual" emulation with a help of several commands. In addition, as the result of the command is a new operation in document's operation history, you may instantly undo or redo the effects introduced by the Replace All command, thanks to the new data processing engine.

Find in Files and Replace in Files

Hex Editor now has built-in support for searching for a pattern in a group of files, possibly residing in different folder trees. A number of options are provided for you: you may search for a first occurrence of the pattern, for all occurrences. Replace in Files function also allows you to replace all occurrences of the pattern with another pattern (of any size!) and either save the changes or open a file for subsequent editing.

Both operations scale well, that is, take full advantage of multi-core and multi-processor computers.

Patch Creation and Application

Hex Editor now supports creation of a patch, which represents the changes made to a document. A patch may then be freely distributed and applied on the same or another computer. A patch may be packaged inside the executable file. A Patch API is also provided to allow programmatic patch installation.

File Attributes

Hex Editor now provides you with a mechanism to view and modify opened file's attributes. This functionality is provided through the Attributes Tool Window.

Pattern Coloring

Hex Editor can now be configured to automatically highlight given patterns in its editor windows. A pattern may be specified as an ASCII or UNICODE string, a sequence of hex bytes, words etc.

Data Inspector

Data Inspector Tool Window interprets data under the cursor in several formats. In addition, it supports highlighting data boundaries and allows data modification.

Base Converter

Base Converter Tool Window provides tools to convert data from one format or encoding into another.

Bookmarks

Bookmarks support has been greatly enhanced. Bookmarks provide you with an extremely flexible way of document navigation. You can define any number of bookmarks groups, exchange data between a bookmarks group and selection, save and load bookmarks and so on.

Structure Viewer

The new powerful Structure Viewer feature allows you to define data structures and bind them to specific locations in edited files.

Statistics

Hex Editor now contains tools that can be used to quickly compute several file statistics. General Statistics (distribution of each byte in the document) and Pattern Statistics (distribution of a specified pattern in the document) are calculated. For the results, Descriptive Statistics and Entropy Analysis are performed. This feature fully supports multiple selection.

Hex Editor fully supports high-DPI displays. All Hex Editor's user interface elements, including texts and icons, are properly scaled. As long as all graphics elements are rendered using vector technology, there are no artifacts on high-DPI displays. In addition, Hex Editor allows you to change the size of icons on the main toolbar in a wide range. Hex Editor supports both Windows XP and Windows Vista high-DPI implementations.

Native support of Windows Vista and its Aero interface

Hex Editor now fully supports the latest Microsoft operating system, Windows Vista (both 32-bit and 64-bit editions). It also takes a full power of its Aero user interface.

Native support for x64 Platforms

Hex Editor now natively supports an x64 platform. A number of basic algorithms have been revised and optimized to use the powerful features available on this platform, including larger virtual address space, native wider registers and new processor commands.