Edit Anything

Professional text and hex editing
with Binary Templates technology.






010 Editor - Release Notes

Version 5.0.2 - July 28th, 2014

  • Fixed problem writing to drives on Windows 7 and later versions. Windows now requires that all open file handles be closed before changes can be saved.
  • If all file handles are not closed when a drive is opened, a warning is displayed and the drive is marked as read-only (Windows only).
  • In the Open Drive dialog each physical drive shows a list of logical drives it contains (Windows only).
  • Added 010 Editor to Mac Finder 'Open With' right-click menu for most file types.
  • Changed Chinese Simplified encoding from GB2312 to GB18030 (GB18030 is a superset of GB2312).
  • Fixed using Printf/FPrintf and %s with strings more than 4096 characters long.
  • Fixed error message on some machines about regsvr32 in the Windows installer.
  • Fixed crash with sizeof operator on certain structs declared with a size attribute.
  • Fixed not being able to cancel a script after the RunTemplate function was called.
  • Fixed Find in Files was not properly releasing some file handles.
  • Functions InputNumber/InputFloat/InputString properly resize the dialog before it is displayed.
  • Fixed problem using Exec function on Linux and Mac with file names than contain spaces.
  • Using %f parameter in External Programs now auto-adds quotes for file names containing spaces.
  • Now show a warning when attempting to open Template Results hierarchies deeper than 31 levels.
  • Fixed 010 Editor unable to run on some Linux machines due to a Qt library issue.
  • Fixed crash on Mac with duplicate enums.

Version 5.0.1 - June 19th, 2014

  • Fixed Copy As Hex Text crash when the hex editor Line Width is set to Auto Width.
  • Fixed possible text corruption in Linux when deleting.
  • Fixed crash using SHA-512 on certain large files.
  • Fixed setting a shortcut key for a script starting with a lowercase letter.
  • Fixed possible crash with Allow Multiple Find Ranges and large files.
  • Fixed Hex Operation dialog becoming uneditable after first operation on the Mac.
  • Fixed crash with certain non-terminated strings in scripts or templates.
  • Fixed problems opening files larger than 4 GB on Linux.
  • Fixed clicking the upgrade link in the Register dialog when the licensee name contains certain non-ASCII characters.
  • Added instructions on running 010 Editor on Ubuntu 14.04 64-bit.

Version 5.0 - June 24th, 2013

The following is an overview of the new functionality in version 5.0 of 010 Editor:

  • Syntax highlighting for HTML, XML and PHP.
  • Customizable syntax highlighting.
  • Column mode (hold Ctrl while dragging the mouse to select columns).
  • Customizable toolbars and right-click menu.
  • Available for Linux, Windows and Mac OS X.
  • New format menu with options for Uppercase, Lowercase, Capitalize, Tabify, Untabify, Comment Selection, Uncomment Selection, Increase Line Indent, Decrease Line Indent, and Trim Trailing Whitespace.
  • Show whitespace.
  • Better interface for customizing shortcut keys.
  • Added SHA-512 algorithm.
  • Added 16-bit half-float data type (hfloat).
  • Support for importing and exporting binary text.
  • 19 new functions for Scripts and Templates.

The following is a list of all new features in version 5.0 of 010 Editor:

  • Syntax Highlighting
    • Added syntax highlighting for HTML, XML and PHP.
    • New Syntax Highlights can be created or existing Highlights modified using the Syntax page of the Options dialog.
    • Support styles for Syntax Highlights so multiple rules can share a single color.
    • Edit styles using the Styles page of the Options dialog.
    • Easily modify the list of highlighted keywords for a Syntax Highlight.
    • Support multiple rule types including Multi-Line Block, Single-Line Comment, Keywords, Single-Line Block, C-Style String, Tag Name, and Tag Attribute.
    • Rules can be applied with Ignore Case for case insensitivity.
    • Support multi-line C-style strings with '\'.
    • Import or export the list of Syntax Highlights including styles using the Import List or Export List buttons.
    • Support sub-rules so that different types of syntax highlighting can be applied to the same file.
  • Column Mode
    • Support Column Mode for editing the columns of text or hex data.
    • Easily make a column selection with the mouse by holding down Ctrl while dragging.
    • Enter column mode using Alt+C or click the Column Mode icon in the Toolbar.
    • Make column selections and copy or paste them using the clipboard.
    • Make a column selection and start typing to insert text on each line at the same time.
    • Column selections supported in Hex mode as well.
    • Click and drag straight down to create a special column insert line.
    • When the clipboard contains just a single line of data, pasting the data with a column selection pastes the data on each line of the selection.
  • Linux Version
    • Added Linux version with installer.
    • Officially support Ubuntu 10.04 and later.
    • Available as a 32-bit program (can be installed on 64-bit OS as well).
    • Can load scripts and templates by double-clicking them in the Ubuntu File Manager.
    • Support Unix-style middle-click clipboard.
  • Toolbar Customization
    • Can customize Toolbars by using the Toolbars page of the Options dialog.
    • Access the Toolbars page by right-clicking on a Toolbar and selecting 'Customize...'.
    • Drag-and-drop actions to the Toolbar list to insert items into the Toolbars.
    • Insertion point marked with red line.
    • Drag icons out of the Toolbar list to delete items from the Toolbars.
    • Create, delete and rename custom Toolbars.
  • Menu Customization
    • Customize the Editor Right-Click menu using the Menus page of the Options dialog.
    • Can also access the Menus page by right-clicking on an Editor Window and choosing 'Customize...'.
    • Drag-and-drop actions from the Actions tree to the menu to insert actions.
    • A red line marks the action insertion point.
    • Drag items out of the menu to delete actions from the menu.
    • Add separators to the menu using the special Separator action.
    • Add sub-menus to the menu with the Submenu action.
    • Double-click on a sub-menu name to rename the sub-menu.
  • Format Menu
    • Added new Format menu for working with text data.
    • Can convert text to Uppercase, Lowercase, or Capitalize (e.g. APPLE, apple, Apple).
    • Converts spaces to tabs using Tabify or tabs to spaces using Untabify.
    • Can add or remove comments from the selection using Comment Selection and Uncomment Selection.
    • Commenting supports line comments (e.g. '//') and multi-line comments (e.g. '/*' and '*/') based off the current Syntax Highlighting scheme.
    • Format menu supports Increase Line Indent to add tabs or Decrease Line Indent to remove tabs (similar to using Tab or Shift+Tab in the editor).
    • Trim Trailing Whitespace removes any spaces or tabs from the end of each line.
    • Tabify, Untabify and Trim Trailing Whitespace operate on the whole file if no selection is made.
  • Show Whitespace
    • Use 'View > Tabs/Whitespace > Show Whitespace' or the icon in Toolbar to display whitespace.
    • Shows symbols in a text file where spaces and tabs exist.
    • The color of the symbols can be controlled in the Colors page of the Options dialog.
    • The Show Whitespace setting is remembered with the current File Interface.
  • Shortcut Keys
    • New, easier-to-use interface for changing Shortcut keys in the Options dialog.
    • Better support for Shortcut keys on the Mac.
    • Enter a Shortcut key by pressing the key on your keyboard instead of having to type out 'Ctrl+M'.
    • Use 'Help > View Shortcut List' or click the List Shortcuts button in the Options dialog to view a list of all shortcuts sorted by shortcut name.
    • The list of shortcuts shows any customized shortcuts as bold.
    • Allow multiple shortcut keys to be assigned to a single action.
    • Better interface for removing shortcut keys from actions.
    • Can see any conflicting actions when assigning shortcut keys.
  • New Functions
    • Converts a set of hex bytes to a double, float, or hfloat with ConvertBytesToDouble, ConvertBytesToFloat, or ConvertBytesToHFloat.
    • Support copying an array of hex bytes to or from the clipboard with CopyBytesToClipboard and GetClipboardBytes.
    • Save a portion of a file with the FileSaveRange function.
    • Access the custom clipboards with the GetClipboardIndex and SetClipboardIndex functions.
    • Access other properties of bookmarks with the GetBookmarkArraySize, GetBookmarkBackColor, GetBookmarkForeColor, GetBookmarkMoveWithCursor, and GetBookmarkType functions.
    • Added a radio button box input dialog using the function InputRadioButtonBox.
    • Ask the user for a directory with the InputDirectory function.
    • Can overwrite a block of bytes using the OverwriteBytes function.
    • Added ReadHFloat and WriteHFloat for working with half-floats.
    • Set environment variables within the working process with the SetEnv function.
  • Functions Updates
    • FileClose was improperly asking to save changes on a modified file.
    • GetClipboardString, CopyStringToClipboard, and ClearClipboard uses the current clipboard (see GetClipboardIndex and SetClipboardIndex).
    • CopyStringToClipboard has a charset parameter to inform the clipboard of the type of data being copied.
    • Can specify a custom polynomial or initial value with the Checksum functions.
    • Added an optional number of bytes to read to the ReadWString, ReadString, ReadLine, and ReadWLine functions.
    • FileNew has a new makeActive parameter to control if the created file is set as the active file.
    • Added an optional fill character to the InsertBytes function.
    • InputOpenFileName, InputOpenFileNames, and InputSaveFileName functions now use UTF-8 strings.
    • The Sleep function now refreshes the screen before long sleeps (more than 1000 milliseconds).
    • Added SHA512 algorithm to the checksum functions.
    • Added Binary Text format to the Import/Export functions.
    • TextGetNumLines now returns -1 if the current file is a hex file.
    • Update help that Strlen returns the number of bytes instead of the number of characters.
  • Templates/Scripts
    • Added 16-bit Half-float (hfloat) data type.
    • Automatically cast between hfloat, float and double data types.
    • Tooltips now properly use any custom <name=> functions.
  • General
    • Updated visual style of the interface and updated some icons.
    • Added new File Interfaces HTML, PHP, and XML.
    • When selecting more than one line in a text editor, the number of selected lines is now shown by default in the status bar.
    • Added SHA-512 hash algorithm.
    • Able to delete individual recent files or clear the list of recent files by right-clicking on the Recent Files list in the Workspace or the Startup page.
    • Added Goto button to the Goto Bar.
    • Added new File Interfaces to the New list.
    • Auto-detect XML files.
    • Added -readonlyall command line option to mark all files as read only.
    • Added 'Selection > Goto Selection Start' and 'Selection > Goto Selection End' for jumping to the beginning or the end of a selection from the right-click menu.
    • Synchronized scrolling now only works between all hex files or all text files.
    • Faster Undo/Redo for operations which contain a large number of small operations.
    • Renamed 'Toggle Word Wrap' action to 'Word Wrap'.
    • Renamed configuration file to '010Editor50.cfg'.
    • Removed 3-computer limit in the End-User License Agreement.
  • Import/Export
    • Added Import/Export option for the Binary Text format (e.g. 10100010 11110000).
    • Added Copy As Binary Text and Paste From Binary Text to the Edit menu.
    • 'Copy as <format>' now uses the displayed number of bytes per line (it was using the number of bytes from the last export).
  • Options
    • Can disable the auto-import of Intel Hex or Motorola files when dragging and dropping from the system File Manager (see the Importing page).
    • Added option to disable the Backspace/Delete key in Overwrite mode for hex files (see the Hex Editor page).
    • Can control the color of the Show Whitespace characters on the Colors page.
  • Bugs
    • Fixed bug with Save Selection on a newly created file.
    • Fixed crash with -compare command line option when the file names were the same.
    • Fixed issue with updating the Recent Files list when scripts or templates were opened.
    • Deleting a file from the Workspace Recent Files list did not update the Startup Page Recent Files list.
    • Fixed up Insert Date/Insert Color on big endian unicode files.
    • Fixed up 'Move to New Vertical Tab Group' missing after a Compare.
    • Fixed warning dialog for optimized structs cannot be dismissed on Mac.
    • Fixed crash when an improper argument was passed to a function inside a script in certain cases.
    • Fixed error message in the Windows installer about Regsvr32.
    • Possible to delete part of a DOS linefeed in certain cases.

Version 4.0.4 - March 20th, 2013

  • Fixed Find Strings finding unicode strings on odd byte boundaries.
  • Fixed crash assigning to a non-existent variable from a script.
  • Fixed crash in find hex bytes when using ',a'.
  • Fixed crash when checksum functions are used inside custom read/comment functions.

Version 4.0.3 - November 8th, 2012

  • Fixed crash with Printf when using certain combinations of parameters.
  • Fixed problem using Goto on the Mac.
  • Fixed using on-demand structs within custom read functions in certain cases.
  • Fixed printing multiple copies of files.
  • Disabled redirection of files within the main Windows directory.
  • Fixed some progress issues when using Find functions inside of scripts.
  • Show error instead of crashing when trying to copy huge blocks of data to other applications.
  • Fixed order of some items in the View menu in 'Tools > Options > Keyboard'.

Version 4.0.2 - July 24th, 2012

  • Fixed a crash using Find on certain long text files.
  • Fixed a bug with using Export Hex and more than 256 bytes per line.
  • Fixed issues using on-demand structs inside arrays.
  • Fixed color picker issues on the Mac.
  • Fixed last two lines of a customized Inspector disappearing in certain cases.
  • Fixed background colors not being cleared properly when a template was cleared.
  • Fixed a notification during installation about an expired license.
  • Now signing the installer using SHA-1.

Version 4.0.1 - June 6th, 2012

  • Fixed crash with a custom Auto-Inspector and certain long operations.
  • Fixed crash with wordwrap on very long lines.
  • Fixed Paste from Hex Text on Mac OS X.
  • Fixed clicking on a bookmark, variable, or find result will always select bytes in the editor.
  • Fixed editing bookmarks that contain arrays.
  • Fixed issues with the Find results when searching for text containing linefeeds.
  • Fixed enums and different numeric formats when displaying local variables.
  • Fixed adding or removing 010 Editor from the Windows Explorer right-click menu using the Options dialog.
  • Fixed the Output tab automatically scrolling down as text is added.
  • Fixed the FindNext function should not be selecting data.
  • Fixed the FindNext function when used with DeleteBytes in a loop.
  • Fixed crash with the HexOperation function on a new file.
  • Fixed the Short type specifier in the Goto Bar.
  • Fixed allowing hotkeys to be set for Mark Selection Start/End.
  • Fixed misplaced cursor when changing the endian of a Unicode file.
  • The Goto and Select Range Bars now accept extra whitespace.

Version 4.0 - May 14th, 2012

The following is an overview of the new functionality in version 4.0 of 010 Editor:

  • Streamlined interface with a simplified tool bar.
  • Easier, more intuitive way to run Templates or Scripts using the File Bar above each editor.
  • Added support for word wrap and text files with a huge number of lines.
  • Tools such as Find, Replace, Find in Files, Goto, Select Range are now displayed in a bar below each editor for a better workflow.
  • Can customize the Auto Inspector using a custom Template.
  • Revamped Find tool allows searching for variables in the Template Results.
  • When a Find All or Find in Files is done on a text file, all text lines that contain a match are listed.
  • Added 'Search > Find Strings' dialog for listing all strings in a hex file.
  • Can visually swap bytes in the hex editor without modifying the underlying data.
  • Can restore all open files when 010 Editor is restarted (select 'Restore all open files' on the Startup page).
  • Comments can now specify a custom function using '<comment=<function_name>>'.
  • Printf function now does type checking and automatically casts parameters.
  • Templates can now read from or write to other files when granted special permission.
  • Over 45 new functions for Scripts and Templates.

The following is a list of all new features in version 4.0 of 010 Editor:

  • General
    • Simplified the tool bars and updated some icons.
    • File Bar above each editor provides a more intuitive way to run Templates or Scripts.
    • Can restore all open files when 010 Editor is restarted (select 'Restore all open files' on the Startup page).
    • View menu now shows different options when using a text-based interface or hex-based interface.
    • In the Workspace, can sort the list of recent files by Name or by Time using the right-click menu (sort by Time is the default now).
    • Startup page has been redesigned with resizable sections.
    • Can customize the polynomial and initial value for CRC checksums.
    • Added more options to the 'View > Addresses' menu.
    • Use 'View > Addresses > Shorts' for displaying addresses as words (all addresses are divided by 2).
    • Can switch File Interfaces using the Edit As section of the File Bar.
    • Right-click on the Output panel to Copy All, Export Text, or Clear.
    • Can apply Highlighting rules by Shorts.
    • The Welcome dialog allows inputting a license when 010 Editor is in trial mode.
    • Added '-saveall' command line option.
    • Added 'Copy File Path' command to the File Tab right-click menu.
    • Synchronize Scrolling now only scrolls files that are visible.
    • Cannot change a hex-based interface to a text-based interface or vice versa.
    • When opening a file that is already opened, the file is selected before being asked to create a duplicate.
    • Right-click on the application when all tabs are closed for an option to show the Startup Page.
    • Removed comment column for bookmarks (currently unused).
    • 010 Editor configuration file is saved more often.
    • Configuration file now stored in 'Users\<Username>\AppData\Roaming\SweetScape\010 Editor\010Editor.cfg' on Windows.
    • Windows Explorer right-click menu now lists '010 Editor' instead of '010 Editor v3'.
    • Updated help viewer.
  • Text Editor
    • Added support for text files with huge numbers of lines.
    • Any long text lines over the maximum line length will be split into multiple lines and marked by '-' in the address column.
    • The maximum line length can be set using the Text Editor Options dialog.
    • Clicking after the last line always moves the cursor to the last byte.
    • Hide the Group By, Division Lines, Left Area, Right Area, Line Width options in the View menu for text files.
    • Word Wrap
      • Can automatically wrap lines that are longer than the text editor window with 'View > Linefeeds > Toggle Word Wrap' or Ctrl+;.
      • Word Wrap can be turned on automatically using 'View > Linefeeds > Initial Wrap State > Auto-detect'.
      • '/wrap' is displayed in the Edit As section of the File Bar above each editor when Word Wrap is turned on.
      • Can wrap on the window edge or a custom column using 'View > Linefeeds > Wrap Width'.
      • Can wrap on letters instead of words using 'View > Linefeeds > Wrap Method'.
      • Word Wrap is supported for files with a large number of lines.
    • Byte-Order Marks
      • Added better support for working with Byte-Order Marks (BOMs).
      • Auto-detect UTF-8 BOMs.
      • Status Bar displays '+B' when a BOM is present.
      • Add or remove BOMs using 'Tools > Convert'.
      • Can auto-add BOMs to new files using the File Interface Options dialog.
  • Hex Editor
    • Can visually swap bytes in the hex editor without modifying the underlying data.
    • Bytes can be swapped in groups of 2, 4, 8, etc. (use 'View > Group By' menu to enable).
    • Display 'LIT<>' in the status bar when swapping bytes is enabled.
    • Set the number of bytes per line in a hex editor using 'View > Line Width'.
    • Hide the Linefeeds and Tabs/Whitespace options in the View menu for hex files.
  • Find
    • Find/Replace/Find in Files/Replace in Files now performed from a bar at the bottom of the editor.
    • When a Find All or Find in Files is done on a text file, all text lines that contain a match are listed.
    • Revamped Find/Replace tools with icons for Find/Replace Next/Previous.
    • Added 'Search > Find Strings' dialog for listing all strings in a hex file.
    • Can search for Variables in the Template Results using the Find Bar.
    • Selecting a Find occurrence in the editor highlights that occurrence in the Find results.
    • Can list all replacements after doing a Replace All (see 'Show All Replacements' in the Find Bar Options).
    • Lock Find/Replace to a selection using 'Lock Selection' in the Find Bar Options.
    • The locked selection will be colored brown and used for Find/Replace until unlocked.
    • Can display the address in the Find results in more formats.
    • Show or hide the size column in the Find results (hidden by default).
    • Ignoring case and match whole word work better when finding extended unicode characters.
    • Find in Files list updates automatically when the files are edited.
    • Can turn off wrapping for find (see Find Bar Advanced Options).
    • Can list all files when doing a Find in Files operation.
    • Can turn off the use of Find Specifiers using the Find Bar Advanced Options.
    • When searching for Unicode, selected Unicode text is automatically copied to the Find Bar when it is opened.
    • Default to Unicode Find type when finding in a Unicode file.
  • Scripts/Templates
    • Use 'Run Script', 'Run Template' or 'Run on File' sections above each editor for running scripts and templates.
    • Comments can now specify a custom function using '<comment=<function_name>>'.
    • Templates can now read from or write to other files when granted special permission.
    • Permissions can be controlled using the Permissions section of the Options dialog and can be turned off for all files.
    • Support searching in the Template Results (use 'Variable Name'/'Variable Value' in the Find Bar).
    • From the Template Results right-click menu, can either expand all nodes of the selected node (Expand all Children of Node) or expand all nodes in the tree (Expand All Nodes).
    • Right-click on a numeric template variable and choose 'Goto > Goto Address' or 'Goto > Goto Sector'.
    • Can override the string displayed in the Name column of the Template Results using '<name="<string>">' or '<name=<function_name>>'.
    • On Windows can right click on a script or template in the Scripts or Templates menu and select 'Edit Script' or 'Edit Template'.
    • Updated included scripts to using RequiresFile and GetScriptName functions.
    • Can run a script on no file by selecting '(none)' in the Run on File section of the File Bar.
    • When doing a CSV export or Copy of the Template Results, the Color field will be converted to a hex color instead of being left blank.
    • An integer with <format=binary> will now show all bytes if zero instead of just the first byte.
    • 'L' string constants now support UTF-8.
    • Prevent running a template on a template.
    • Generate a warning if defining a large number of template variables.
    • Removed variable mouse-over brackets on a text file (was being displayed incorrectly).
  • New Functions
    • Can convert between a binary string and an integer (BinaryStrToInt, IntToBinaryStr).
    • Added functions to perform checksums on arrays (ChecksumAlgArrayStr, ChecksumAlgArrayBytes).
    • Can convert strings between various encodings (ConvertString).
    • Added functions to extract path, extension, or base name from a file name (FileNameGetBase, FileNameGetBaseW, FileNameGetExtension, FileNameGetExtensionW, FileNameGetPath, FileNameGetPathW, FileNameSetExtension, FileNameSetExtensionW).
    • Can search for an open file in the editor (FindOpenFile, FindOpenFileW).
    • Can retrieve environment variables (GetEnv).
    • File attributes for Windows or Unix files can be retrieved or changed (GetFileAttributesUnix, GetFileAttributesWin, SetFileAttributesUnix, SetFileAttributesWin).
    • Retrieve the character set of the current file (GetFileCharSet).
    • Get or set which file interface is being used for the current file (GetFileInterface, SetFileInterface).
    • Retrieve the name of the current script or template being run (GetScriptName, GetScriptNameW, GetScriptFileName, GetScriptFileNameW, GetTemplateName, GetTemplateNameW, GetTemplateFileName, GetTemplateFileNameW).
    • Provided function to get a temporary file name (GetTempFileName).
    • Can get or set the current working directory (GetWorkingDirectory, GetWorkingDirectoryW, SetWorkingDirectory, SetWorkingDirectoryW).
    • Provided function to perform any of the Hex Operations in the Tools menu (HexOperation).
    • Can calculate the length of a null-terminated string in a file (ReadStringLength, ReadWStringLength).
    • Provided function to ensure that a script is being run on a target file (RequiresFile).
    • Can write a message to the status bar (StatusMessage).
    • Convert strings easily to UTF-8 format (StringToUTF8, WStringToUTF8).
    • Can convert characters to upper or lower case (ToLower, ToLowerW, ToUpper, ToUpperW).
    • Can convert from a text column to an address (TextColumnToAddress).
  • Function Updates
    • Printf function now does type checking and automatically casts parameters.
    • Interface type can be specified for the FileOpen and FileNew functions.
    • GetFileName returns a UTF-8 string.
    • FileOpen will now accept a UTF-8 string.
    • FileOpen no longer pops up an error message if the file could not be found.
    • Better handling of opening duplicate files with the FileOpen function.
    • Can specify a different character set in the StringToWString and WStringToString functions.
    • MessageBox supports UTF-8 encoding.
    • RunTemplate can be run with no arguments to rerun the Template associated with the current file.
    • Added argument to the RunTemplate function to prevent clearing the Output panel.
    • SubStr/WSubStr now default to -1 instead of 0.
    • Can specify a custom date format in the functions GetCurrentTime, GetCurrentDate, GetCurrentDateTime, StringToDosDate, StringToDosTime, StringToFileTime, StringToOleTime, StringToTimeT, DosDateToString, DosTimeToString, FileTimeToString, OleTimeToString, and TimeTToString.
    • Can set the maximum wildcard length in the FindAll, FindFirst, FindInFiles, and ReplaceAll functions.
    • Removed HTML tag processing from Printf.
  • Selections
    • 'Edit > Select Range' tool now displays a Select Bar at the bottom of the editor.
    • When selecting bytes while the Select Bar is open, the Select Bar will update to display the selection.
    • Right click on an editor and choose 'Select > Mark Selection Start' or 'Select > Mark Selection End' to set the selection.
    • Added Save Selection to the editor right-click menu.
    • Save Selection automatically appends the start/size of the selection to the file name.
  • Inspector
    • Can customize the Auto Inspector (right-click the Inspector and choose 'Customize...').
    • Auto Inspector can be set to use a custom template (by default the 'Inspector.bt' file is included with 010 Editor).
    • Data types can be reordered or deleted from the Auto Inspector using the custom template.
    • Any data type (including Custom Variables) can be added to the Auto Inspector using the custom template.
  • Goto
    • 'Search > Goto' tool now displays the Goto Bar below the editor.
    • Use the Goto Bar to jump to a byte, line, sector or short in a file.
  • Options
    • Can set the maximum line length for text files.
    • Can set the auto-hide time for bars in the application (Find Bar/Replace Bar/Goto Bar/Select Bar/etc.).
    • Added option to remember the last used File Interface, Endian, and Word Wrap for a file.
    • Allow setting the color for the Find Selection Lock.
    • Must specify whether a File Interface is text-based or hex-based when the interface is created.
  • Mac OS X
    • Now use Ctrl+G for Find Next and Ctrl+Shift+G for Find Previous on the Mac.
    • Now use Ctrl+L for Goto and Ctrl+Shift+G for Goto Again on the Mac.
    • Add File Proxy icons to the Application Window (drag to other Windows to open).
    • Removed icons on the menu for Mac.
    • Removed icons on sub-windows for Mac.
    • Fixed order of some OK/Cancel buttons on the Mac.
    • Fixed Windows Clipboard should be called Macintosh Clipboard on the Mac.
  • Hotkeys
    • Ctrl+E now toggles between Big and Little Endian.
    • Word Wrap can be toggled on or off using Ctrl+;.
    • Can access Options dialog using Ctrl+, on Windows.
    • Changed close window hotkey to Ctrl+W.
    • Changed close all window hotkey to Ctrl+Alt+W.
    • Fixed issue with Previous Tab shortcut.
    • Can show or hide the File Bar above each editor using Ctrl+/.
  • Bugs
    • Fixed bug copying large blocks of data to other applications.
    • Fixed issues with editing UTF-8 characters.
    • Fixed crash when a startup script was missing.
    • Fixed constants in the form 0B?h.
    • Fixed crash in certain invalid assignments to a struct.
    • Fixed bug with extra character when casting from a string to a wstring.
    • Fixed bug with switch statement when default was the first statement.
    • Fixed a case where a non-terminated string could potentially cause a crash.
    • Fixed case where the Close All icon enabled state was not correctly set.
    • Fixed case when Close All could cause the Floating Tab Group to be displayed.
    • Fixed case where Close All Except This could close the wrong files.
    • Fixed bug with assigning to a negative float or double.
    • Fixed issue with using return in a function with no return value.
    • Fixed OutputPaneCopy/OutputPaneSave missing the last row if no linefeed.
    • Fixed case where commented lines were colored incorrectly when jumping through a file.
    • Fixed crash in the Inspector with certain rare Unicode strings.
    • Fixed bug with FindFirst/FindAll when size=0 and start>0.
    • Fixed bug with FindFirst/FindAll and finding Unicode values.
    • Fixed bug with FindNext/FindAll using dir=-1.
    • Fixed FPrintf(newFile,"%c",0) now works properly.
    • Fixed issue with all red text in the Output panel.
    • Fixed case when a Hex file is split and then scroll down, the ruler would not be displayed correctly.
    • Fixed InputOpenFileName/InputOpenFileNames not using the default file name.
    • Fixed AddBookmark can add bookmarks in any of the base types without first running a template.
    • Fixed bug with '//' after #define.
    • Fixed constants COMPARE_SYNCHRONIZE and COMPARE_SIMPLE were switched.
    • Fixed rare crash when running templates and progress issues.
    • Fixed crash calling TextReadLine with an empty string.
    • Fixed possible crash with MessageBox function when using only two parameters.
    • Fixed issues with Copy/Paste from Hex Bytes with Unicode files.
    • Fixed DOS linefeeds being transformed to Unix linefeeds when copying to the Find Bar.
    • Fixed running a comparison can cause empty an Floating Tab Group to be displayed.
    • Fixed a possible crash with an infinite recursion script.
    • Fixed issues with character sets in the Find results window.
    • Fixed correctly detecting when a file read-only flag is changed outside 010 Editor.
    • Fixed Export CSV automatically adds quotes around items containing commas.
    • Fixed in split-view mode, the selection could move after editing.
    • Increased amount of memory the undo stack is allowed to use.

Version 3.2.2 - August 8th, 2011

  • Added support for Mac OS X Lion.
  • Fixed losing registration problem on Mac OS X Lion.
  • Fixed problem with loading the help file on the Mac.
  • Now generate an error when accessing member variables inside a 'size' function.

Version 3.2.1 - July 13th, 2011

  • Mac OS X version is now a 32-bit program instead of 64-bit.
  • Changed close window hotkey on the Mac to Command+W.
  • Fixed Windows context menu in 3rd party applications including Directory Opus.
  • Fixed problem with Unicode searches and wildcards.
  • Fixed showing the help file when minimized and then a topic is loaded.
  • Fixed showing 010 Editor when minimized and the Windows context menu is clicked.
  • Fixed inputting certain floats or doubles in the Inspector on Windows.
  • Fixed Copy As and then paste to other applications with big-endian Unicode text.
  • Fixed date in release notes.

Version 3.2 - June 17th, 2011

The following is an overview of the new functionality in version 3.2 of 010 Editor:

  • 010 Editor is now available for Mac OS X.
  • On-demand parsing of templates using <size=...> for lower memory usage.
  • Can set fonts for the Template Results, Inspector, etc in the Options dialog.
  • 'New' on the file menu now lists all types of files available for creation.
  • Can pass arguments into scripts or templates from the command line.
  • New functions for accessing process information in scripts or templates.
  • New functions for easier reading and writing of text files.
  • Can export or import a list of scripts or templates from the Options dialog.
  • New help viewer with tabs.

The following is a list of all new features in version 3.2 of 010 Editor:

  • General
    • 010 Editor is now available for Mac OS X.
    • Can set fonts for the Template Results, Inspector, etc in the Options dialog.
    • 'New' on the File menu now lists all types of files available for creation.
    • Each file interface can either use the default text or hex font or a custom font.
    • Separate insert/overwrite state for text and hex files.
    • Can click INS/OVR in the status bar to toggle insert state.
    • Histogram hotkey changed to Ctrl+Shift+T.
    • Added option on the Help Menu to view the Release Notes.
    • 010 Editor does a better job converting text data between formats when copying text between files with different character sets.
    • Can set a custom color format for 'Edit > Insert Color' in the Options dialog.
    • Non-ANSI characters now supported in Bookmark names.
    • Release notes added to the manual instead of separate text file.
  • Command Line
    • Can pass arguments to a script or template using the form: -script:File.1sc:(arg1,arg2)
    • Added ',a' specifier to the '-replace' command to replace in all open files.
    • '-h' now displays the manual command line page instead of a separate dialog.
  • Templates and Scripts
    • On-demand parsing of templates using <size=number> or <size=function_name> for lower memory usage.
    • Can export or import a list of scripts or templates from the Options dialog.
    • Added ifdef constant for Windows (_010_WIN) and Mac OS X (_010_MAC).
    • Added ifdef constant for 64-bit versions (_010_64BIT).
    • Non-ANSI characters now supported in comments (use UTF-8).
  • Functions
    • Added GetFileNameW function to get the wide-string version of the current file name.
    • FileSave function can accept a wide-string or no string at all to save to the current file name.
    • Added ExpandAll function to open all nodes in the Template Results.
    • Added ExportCSV to save the Template Results to a comma-delimited file.
    • GetNumArgs, GetArg, and GetArgW functions can be used to retrieve special arguments passed from the command line.
    • IsNoUIMode function returns true if 010 Editor is being run in '-noui' mode.
    • RunTemplate function now returns the return value from the template that was executed.
    • FileOpen now returns the file index of the file that was opened.
    • Process information can be returned using the functions ProcessGetHeapLocalAddress, ProcessGetHeapModule, ProcessGetHeapSize, ProcessGetHeapStartAddress, ProcessGetNumHeaps, ProcessHeapToLocalAddress, and ProcessLocalToHeapAddress.
    • Added functions to read or write text data in the editor including TextAddressToLine, TextAddressToColumn, TextGetNumLines, TextGetLineSize, TextLineToAddress, TextReadLine, TextReadLineW, TextWriteLine, TextWriteLineW.
  • Bug Fixes
    • Fixed some foreign characters in names not working in the Register dialog.
    • Fixed the temp directory displaying a short path name.
    • The documentation listed the incorrect return value for the StringToDosDate, StringToDosTime, StringToFileTime, StringToOleTime, and StringToTimeT functions.
    • Fixed bug with multi-line defines and dos-style linefeeds.
    • Fixed bug resetting shortcuts where the interface was not updating properly.
    • Insert Date/Color should work now for Unicode files.
    • Fixed issues with certain input method editors that caused them to not work properly.
    • Now display error message when trying to set linefeeds to 'Auto Detect' while in binary mode.
    • Fixed bug where the Close All icon should be available when the startup tab is selected.
    • Fixed InputSaveFileName function not properly using the default file name.
    • Fixed an undefined variable in a script could be displayed as an error in an associated template.
    • Fixed redraw bug in the Base Converter.
    • Fixed some code examples in the help file.
    • Fixed occasional problem drawing underscores.
    • Fixed template variables sometimes not accessible after calling RunTemplate.
    • Fixed open icon in the tutorial on Windows 7.
    • Fixed Histogram panel initial size on Windows 7.
    • Fixed the size of the Hex Operations dialog on Windows 7.
    • Fixed accessing new file created during a call to RunTemplate.

Version 3.1.3 - November 10th, 2010

  • Fixed possible Windows DLL exploit (see https://www.microsoft.com/technet/security/advisory/2269637.mspx).
  • Fixed crash using Export CSV with very large datasets.
  • Fixed compile errors using DOS style linefeeds after preprocessor statements.
  • Fixed crash on comparing large files.
  • Fixed occasional problems with button labels in message boxes.
  • Fixed some button sizes on Windows 7.
  • Now opening .lnk and .url files will load those files directly, not the files to which they link.
  • Updates for installing from a CD.

Version 3.1.2 - May 21st, 2010

  • Fixed crash with 'Run as administrator' on Windows 7 x64 machines.
  • Fixed some constants being incorrectly identified as 'int64' instead of 'int'.

Version 3.1.1 - May 5th, 2010

  • Fixed Windows Explorer shell extension on Windows 7 x64 machines.
  • Template results now display ASCII strings in the current file character set.
  • Fixed error if a script or template included more than 16 files.
  • Fixed error using sizeof operator to calculate the size of a struct.
  • Fixed error message with -replace command line option when no values found.
  • Fixed behavior comparing int -1 to 0xffffffff to be consistent with 3.0.

Version 3.1 - February 16th, 2010

The following is an overview of the new functionality in version 3.1 of 010 Editor:

  • Support for the UTF-8 character set.
  • Support preprocessor directives #define, #ifdef, #ifndef, #else, etc.
  • Support for wstring and wchar_t in Scripts/Templates (unicode strings).
  • Use -noui to run 010 Editor without a user interface for batch files.
  • Template variables can now have comments (e.g. <comment=""> after a variable).
  • New options when defining template variables: <fgcolor=???>, <bgcolor=???>, <open=true|false|suppress>, <hidden=true|false>.
  • Can pass arguments into structures.

The following is a list of all new features in version 3.1 of 010 Editor:

  • Editor
    • Support the UTF-8 character set.
    • Added 'UTF-8' and 'Binary' to the 'Edit As' drop-down list.
    • Added support for Ctrl+Ins(Copy), Shift+Ins(Paste), and Shift+Del(Cut).
    • Shows a current column position arrow in the text editor ruler.
    • Soft hyphen (0xAD) displayed as hyphen instead of space.
  • Command Line
    • Use -noui to run 010 Editor without a user interface for batch files.
    • Added -nowarnings to disable display of message boxes when using -noui.
    • Can run comparisons from the command line with -compare.
    • Added -exitnoerrors to close 010 Editor only if there are no script or template errors.
  • Histogram
    • Char column in histogram displays the current file character set.
  • Bookmarks
    • Toggle Bookmark (Ctrl+F2) makes a bookmark for the whole selection, not just the selected byte.
  • Compare
    • If exactly two files are open, they will automatically be filled in the Compare dialog when opened.
    • Can run comparisons from the command line.
    • Increased number of internal allowed differences in comparison algorithm.
  • Options
    • Can hide the splash screen on startup (only when the software is registered).
    • Control the color of the caret.
    • Can change the input-method editor (IME) color.
    • Can control the ruler column marker arrow color.
  • Templates and Scripts
    • Can display comments for variables using <comment=""> syntax after a variable.
    • Can set the color of a variable using <fgcolor=???> or <bgcolor=???> after a variable (for example, <fgcolor=cBlack, bgcolor=0x803020>).
    • Can use <open=true|false> after a variable to have a variable open by default.
    • Can use <hidden=true|false> after a variable to hide variables.
    • Can use <open=suppress> after a variable to prevent it opening during Expand All.
    • Can pass arguments into structures.
    • Support #ifdef, #ifndef, #define, #undef, #endif, #else, #warning, #error preprocessor directives.
    • Added support for unicode strings (wstring/wchar_t).
    • Can use L to indicate wide-string constants (e.g. L"dog").
    • Bitfields and enums can now work together.
    • Can now call functions in templates from scripts.
    • Enum values can now be any expression.
    • Better handling of int64 constants (auto-detect).
    • Added current template directory to include path search.
    • Use Ctrl+Left/Right/Enter for better navigation in the template results tree.
    • Double-click on an error or warning takes you to the source code line.
    • Enum list items can be selected on single-click instead of double-click.
    • Support showing local variables inside a struct.
    • Correctly update focus highlight in Variables tab when switching files.
    • Can cast time types to ints or floats.
    • Updating variable coloring rule so colors are properly propagated from parents to children.
    • Exec function is no longer allowed in a template.
  • New Functions
    • Can run a template from a script (RunTemplate).
    • Can set bookmarks from a script or template (AddBookmark, GetBookmarkName, GetBookmarkPos, GetNumBookmarks, RemoveBookmark).
    • Added new clipboard functions (ClearClipboard, CopyStringToClipboard, GetClipboardString).
    • Get the current time (GetCurrentTime, GetCurrentDate, GetCurrentDateTime).
    • Added an Assert function.
    • Convert a variable such as int or float to bytes (ConvertDataToBytes).
    • Retrieve the current temporary directory (GetTempDirectory).
    • Control the output panel where Printf data is displayed (OutputPaneClear, OutputPaneSave, OutputPaneCopy).
    • Can wait for a certain number of milliseconds (Sleep).
    • New wstring (unicode string) functions: InputWString, ReadWLine, ReadWString, StringToWString, WMemcmp, WMemcpy, WMemset, WriteWString, WStrcat, WStrchr, WStrcmp WStrcpy, WStrDel, WStricmp WStringToString, WStrlen, WStrncmp WStrncpy, WStrnicmp, WStrstr, WSubStr.
    • Can determine if a function exists with 'function_exists' keyword.
    • Exec function has a parameter to wait until execution is finished before returning.
    • FileOpen can execute the template associated with a file.
    • Can access the current structure variable with 'this' keyword.
    • Can access the parent of a structure variable with 'parentof' keyword.
  • General
    • Installer can warn user if installing a version that will require an upgrade.
    • Register dialog button displays 'Cancel' instead of 'Continue' to prevent confusion.
    • Temp directory can pick up the TEMP system variable.
    • Add Ctrl+Enter shortcut in Find in File results (keeps focus on Output Window).
    • Better handling of multiple versions of the configuration file.
    • Configuration file should be less prone to corruption.
  • Bug Fixes
    • Fixed templates variable arrays if the size of the array is greater than 2 GB.
    • Fixed bug where a file could display no data after canceling a script or template.
    • Fixed bug drawing the ruler when certain fonts are chosen.
    • Now correctly report physical disk size on Windows XP or higher.
    • Improved error message when using shift operators.
    • Improved error message when defining a structure twice with typedef.
    • Fixed empty structure warning when using bitfields and no padding.
    • Fixed bug with drawing Fg: in the template results.
    • Fixed bug selecting bytes in Unicode.
    • Fixed bug extending a selection with Shift+click.
    • Fixed reading bookmarks containing enums.
    • Fixed opening files containing '@'.
    • Fixed importing a hex text containing very long lines.
    • Fixed using bitfields mixing named and unnamed variable.
    • Fixed auto-detect of decimal import text.
    • Fixed bug using post increment during array access.
    • Fixed printfs sometimes being colored red after an error.
    • Fixed syntax highlighting issue with quotes.
    • Fixed possible crash with the FileClose function.
    • Fixed error message when defining struct variables incorrectly.
    • Fixed a typo in the welcome dialog.
    • Fixed issue with the syntax highlighting menu.
    • Fixed an issue with double-clicking on find-in-file results.
    • Fixed Variables Tab not being updated correctly after running a script.
    • Fixed issue working with files that are deleted.
    • Fixed issue passing strings to functions which are then passed to other functions.
    • Fixed selecting issue by dragging over the last line in the text editor.
    • Fixed negative enums.
    • Fix for optimizing warning on struct that just contains a 'string' variable.

Version 3.0.6 - October 26th, 2009

  • Fixed importing hex text with very long lines.
  • Fixed templates which mixed bitfields and regular variables.
  • Fixed Printf with '%%'.
  • Fixed issues on Windows 7.

Version 3.0.5 - April 13th, 2009

  • Now support Input Method Editors (IMEs) for multi-byte character sets.
  • Fixed bug with Find dialog and multi-byte character sets.
  • Fixed problem with backspace and multi-byte character sets.
  • Fixed possible buffer overruns running templates and scripts (as reported by Bach Khoa Internetwork Security (Bkis) - http://security.bkis.vn/).
  • Fixed problems with the FindFirst and ReplaceAll functions.
  • Scripts and templates now support '0h' as well as '00h'.
  • Fixed bug in displaying warning message about optimized arrays.
  • Fixed crash using Overwrite Bytes on a large drive.
  • Fixed possible crash when closing a file after a comparison.
  • Fixed not being able to open certain logical and physical drives.
  • Fixed bookmarks being deleted when overwriting a block of data.
  • Fixed being able to open Unicode filenames from the Windows Explorer right-click menu.

Version 3.0.4 - February 6th, 2009

  • Fixed issues with displaying Japanese and Chinese character sets.
  • Updated character handling engine for non-ASCII character sets.
  • Fixed restoring the maximized state of 010 Editor on restart.
  • Fixed possible crash when opening files from Windows Explorer right-click menu.
  • Fixed issues with properly refreshing the Inspector values.
  • Fixed crash in Replace dialog.
  • Fixed crash when setting certain Group By values.
  • Fixed issue with certain foreign characters in the Register dialog.
  • Fixed typo in the calculator.

Version 3.0.3 - October 17th, 2008

  • Improved memory handling for running very large templates.
  • Fixed possible crash with syntax highlighting.
  • Fixed possible crash running a script with a long line.
  • Fixed some Unicode rendering issues in the hex editor.
  • Fixed crash with exporting a text area from a Script in certain cases.
  • Fixed the find in selection not working properly in certain cases.
  • Fixed disabled/enabled problems with buttons in the find dialog.
  • Fixed a problem with the ',' constant in scripts.
  • Fixed error message for attempting incorrect operations on structs.
  • Fixed possible crash using the StrDel function.
  • Fixed typo in script cancelled error message.
  • Can now copying Unicode data to the clipboard correctly.

Version 3.0.2 - August 28th, 2008

  • Automatically hide empty floating tab group on startup.
  • Fixed crash with inspector when displaying certain characters.
  • Fixed focus issues when loading files via the Windows explorer right-click menu.
  • Fixed potential crash with -exit command line option.
  • Bug fix for Keep File Time functionality.
  • Fixed crash closing deleted files in certain cases.
  • Allow custom read/write functions to work with equivalent types.

Version 3.0.1 - July 16th, 2008

  • Bug Fixes
    • Fixed periodic hangs when using the Explorer tab to browse a network drive.
    • Fixed international character set issues.
    • Fixed some keyboard keys not working on international keyboards.
    • Fixed possible crash with Copy As Hex Bytes.
    • Fixed replace up missing some occurrences in certain cases.
    • Fixed visual issues editing Unicode hex data.
    • Fixed using the clipboard when some specialized clipboard managers were installed.
    • Fixed progress update on running some scripts.
    • Fixed issues with the scope of local variables between functions and structs.
    • Fixed problem with empty statements inside a switch statement.
    • Fixed a reporting issue with Byte by Byte comparisons.
    • Fixed being able to run the Calculator on other files in the interface.
    • Fixed occasional crash when opening files when all windows were closed.
    • Fixed display glitch with Output tab showing red text.
    • Fixed tool bar undocking issues.
  • General
    • Each Tool Bar can now be resized to be smaller than its contents.
    • Visual changes on Vista machines for more consistency.

Version 3.0 - May 19th, 2008

The following is an overview of the new functionality in version 3.0 of 010 Editor:

  • Includes a text editor with syntax highlighting.
  • Improved interface with new icons.
  • Improved file tabs with close buttons that can be dragged to new positions.
  • Can have multiple scripts/templates open at the same time.
  • Find/replace, goto, etc. can be applied to templates or scripts.
  • Full support for Unicode file names and strings in the application.
  • Scripts and Templates now stored in "My Documents\SweetScape" directory.
  • Official support for Windows 98/Me/NT has been dropped.
  • A whole range of other improvements.

The following is a list of all new features in version 3.0 of 010 Editor:

  • Text Editor
    • Can now edit text, Unicode, or EBCDIC files.
    • Basic support for syntax highlighting for C/C++ files.
    • Support indenting or unindenting text with Tab or Shift+Tab.
    • Added insert date/time and insert color commands.
  • Hex Editor
    • Improved visual style for hex editing.
    • Can display addresses in sectors.
  • File Tabs
    • Improved tab-based interface with close buttons.
    • Added a floating tab group.
    • Can drag and drop file tabs (even between the floating tab group).
    • Able to have multiple tab groups laid out horizontally or vertically.
  • Startup Page
    • Optional startup page shows recent files, latest application news, and tips.
  • File Interfaces
    • Added 'Edit As' combo box to switch between editing text, hex, C++, etc. files.
    • Added Ctrl+H shortcut to toggle between text and hex files.
    • Use Ctrl++ or Ctrl+- to enlarge or shrink fonts.
    • Can set status bar and ruler display formats for different file interfaces.
  • Find/Replace
    • Added Replace in Files command.
    • Find dialog automatically copies selected bytes to the Value field.
    • Improved status bar for doing long replace operations.
    • Find results update when bytes inserted/deleted.
  • Goto
    • Can use goto dialog to jump to an address, line or a sector.
    • Use ',a', ',l' or ',s' options in Goto combo box for address, line or sector.
  • Bookmarks
    • Added a Toggle Bookmark command (can be used to add quick bookmarks).
    • Bookmark positions properly update when bytes inserted/deleted.
  • Printing
    • Enhanced Print Preview dialog.
    • Printing now works with text files (including Templates and Scripts).
  • Tools
    • Improved calculator with input buttons for performing quick calculations using the mouse.
    • Improved conversion utility can be used to convert character sets and/or linefeeds.
    • Improved checksum tool can treat data as ushorts, uints, or uint64s.
    • Improved histogram tool can treat data as other data types.
  • Workspace
    • Enhanced the 'Explorer' tab of the Workspace.
  • Inspector
    • Added Unicode string to the Inspector.
    • Moved list of available functions to the 'Functions' tab of the Inspector.
  • Scripts and Templates
    • Can have more than one script or template open at a time.
    • Find, print, other operations can all be applied to a script or template.
    • Select which script or template to run using drop-down list in the Tool Bar.
    • Results from Printf now displayed in 'Output' tab in the Output panel.
    • Code Editor has been removed and replaced with a Floating Tab Group.
    • Can display local variables in the template results.
    • Add RequiresVersion, ReadInt64, ReadUInt64, WriteInt64, WriteUInt64 functions.
    • Variables defined in script are now displayed in the 'Variables' tab of the Inspector.
    • List of functions now displayed in the 'Functions' tab of the Inspector.
    • Removed size limitation for scripts and templates.
    • Scripts now stored in "My Documents\SweetScape\010 Scripts" directory.
    • Templates now stored in "My Documents\SweetScape\010 Templates" directory.
    • Added default import byte to 'ImportFile' function.
  • Register Dialog
    • Improved register dialog lists when Support/Maintenance expires.
    • Can look up forgotten passwords.
    • Can remove license from the current machine.
  • General
    • Added tutorial for using Binary Templates.
    • Updated some hotkeys for various tasks.
    • Show current character set, linefeeds, and tabs in the status bar.
    • Synchronized Scrolling now synchronizes scrolling horizontally and vertically.
    • Added Overwrite File and Overwrite Bytes commands.
    • Many dialogs have an expandable 'Options' section.
    • Improved New and Open tool buttons with drop-down list.
    • Full support for Unicode file names and strings in the application.
    • Can use 'File > Revert/Refresh' to update processes or drives.
    • Added -reset and -resetall command line options to reset the interface.
    • Official support for Windows 98/Me/NT has been dropped.
  • Options
    • Can control the mouse wheel scroll rate.
    • Can control the directories where Scripts and Templates are stored.
  • Bug Fixes
    • Fixed problems with different DPI settings.
    • Fixed problem imported certain base64 files.
    • Fixed occasional crash on shutdown.
    • Fixed disappearing columns on some multi-monitor systems.
    • Fixed crash when deleting multiple files that were open in 010 Editor.

Version 2.1.4 - February 22nd, 2008

  • Bug fix with assigning to dates in a script.
  • Bug fix with importing long lines.
  • Bug fix with memory leak in FPrintf.
  • Updated licensing to support version 3 licenses.

Version 2.1.3 - April 5th, 2007

  • Workaround for startup problems caused by faulty Microsoft hotfix.

Version 2.1.2 - March 10th, 2007

  • Bug fix for 'FindAll' function.

Version 2.1.1 - March 9th, 2007

  • Added support for Windows Vista.
  • Fixed bug with string compare in scripts and templates.

Version 2.1 - March 5th, 2007

  • General
    • Improved right-click menu in Windows explorer.
    • Updated some icons.
  • Import/Export
    • Added ability to export as HTML, RTF, or a text area.
    • Can import or export Base64 and uuencoded data.
    • Can use 'Copy As' or 'Paste from' for many different types of data.
  • Tab Menu
    • Added right-click menu to file Tabs.
    • Can middle-click on a tab to close a file.
  • Command Line
    • Can Replace a string or set of bytes from the command line.
    • Added ability to save or close a file from the command line.
  • Scripts and Templates
    • Improved bitfield mode without padding (see BitfieldDisablePadding).
    • Added 'Always on Top' toggle for the Code Editor (from right-click menu).
    • Check to reload script/template if modified by an external program.
  • Editor
    • Now able to input characters more than 0x80 into the character area.
    • Added option to remove ':' separators in file addresses.
  • New Functions
    • BitfieldEnablePadding/BitfieldDisablePadding for bit streaming.
    • Function for locating files in a directory (FindFiles).
    • Added directory manipulation functions (DirectoryExists, MakeDir).
    • Added function to convert an enum to a string (EnumToString).
    • Functions to convert Dates to strings and vise versa.
    • Exit function can be used to return errorlevel to a batch file.
  • Bug Fixes
    • Fixed problem exporting Intel-Hex 16-bit files with custom addresses.
    • Fixed printf functions occasionally detecting the wrong number of arguments.
    • Importing files now properly imports last line if it does not have a carriage return.
    • Fixed sign of variables when doing divisions.
    • Fixed template hints occasionally not displaying correctly.
    • Fixed bug in FileSave function saving to a different filename.

Version 2.0.3 - November 28th, 2006

  • Fixed bug with FileSave function.
  • Fixed bug with allowing more than one instance.
  • Fixed problem with exporting hex text and long lines.
  • Now use Exit function to set global errorlevel return value.
  • Allow bookmarks on consecutive bytes.
  • Fixed bug exporting data from disk or process.

Version 2.0.2 - June 9th, 2005

  • Fixed problem in help index with function names not jumping directly to function help.
  • Fixed using copy and paste when editing a template variable.
  • Fixed problems using Printf on some strings.
  • Fixed bugs with custom read functions and forward structs.
  • Added uninstall survey.

Version 2.0.1 - April 28th, 2005

  • Fixed issues with custom read/write functions.
  • Fixed issues with minimize/maximize behaviour.
  • Fixed issues with time data formats.
  • Bug fixes with canceling operations, resizing, window order, and divisions.

Version 2.0 - March 30th, 2005

The following is an overview of the new functionality in version 2.0 of 010 Editor:

  • Added hard drive editing for logical and physical drives.
  • Added editing of system processes.
  • More powerful interface for viewing template results (results displayed in panel below each hex editor, mouse-over hints, reverse lookup for template variables).
  • More powerful scripts/templates syntax (custom functions, custom data types, more standard keywords supported, union support, include support, 44 new functions).
  • New Windows XP style.
  • Many improvements in tools (new Find in Files tool).
  • A whole range of other improvements.

The following is a list of all new features in version 2.0 of 010 Editor:

  • Hard Drive Editing
    • Open entire logical or physical hard drives using 'File > Open Drive'.
    • Make disk images for drive using 'File > Save As'.
    • Jump to next or previous drive sector with Alt+Down, Alt+Up.
    • Get properties of the drive using 'Edit > Properties'.
    • Open hard drives from the command line.
  • Process Editing
    • Open processes using 'File > Open Process'.
    • Select which heaps or modules to open.
    • Make image of process using 'File > Save As'.
    • Get properties of the process using 'Edit > Properties'.
    • Open processes from the command line.
    • List of current heaps displayed in 'Process' tab of the Output Window.
  • Templates/Scripts
    • Templates/Scripts Interface
      • Templates results can now be displayed in the 'Template Results' panel below each hex editor.
      • Application contains links to an online repository for scripts and templates.
      • Display hint for template variable when the cursor is over bytes in the hex editor.
      • New 'Jump to Template Variable' command to lookup a template variable from a file address.
      • Scripts and templates can be opened by double-clicking them in Windows Explorer.
      • Scripts and templates can be run from the command line.
      • Can mark scripts to be run on startup, shutdown, or when certain files are opened.
      • Speed improvements for scripts and templates.
      • Added default shortcut for saving a script or template.
      • Context sensitive help in the Code Editor.
    • Templates/Scripts Syntax
      • Define your own custom functions.
      • Use '#include' keyword to include files.
      • Support for switch, case, break, and continue keywords.
      • Support for unions.
      • Default custom variables using the syntax <read=[functionname], write=[functionname]>.
      • Control whether arrays of structures are optimized with <optimize=true|false>.
      • Specify display format for variable using the syntax <format=hex|decimal|octal|binary>.
      • sizeof now works properly on simple structures.
      • Special new keywords 'exists' and 'startof' for template variables.
      • Array initializers work properly (e.g. int a[3] = {1, 2, 3};).
      • No need to use 'return' when doing simple expressions in the calculator.
      • Changed how scoping works in structs - automatically look up a level.
      • 44 new functions: Checksum, ChecksumAlgStr, ChecksumAlgBytes, Compare, ConvertASCIIToUNICODE, ConvertASCIIToUNICODEW, ConvertUNICODEToASCII, ConvertUNICODEToASCIIW, DeleteFile, Exit, ExportFile, FindAll, FindFirst, FindInFiles, FindNext, FPrintf, GetBytesPerLine, GetReadOnly, GetSectorSize, Histogram, ImportFile, InputOpenFileName, InputOpenFileNames, InputSaveFileName, InsertFile, IsBigEndian, IsDrive, IsEditorFocused, IsLittleEndian, IsLogicalDrive, IsModified, IsPhysicalDrive, IsProcess, OpenLogicalDrive, OpenPhysicalDrive, OpenProcessById, OpenProcessByName, RenameFile, ReplaceAll, SetReadOnly, SScanf, StrDel, SubStr, Terminate.
    • New Templates/Scripts
      • New default scripts for splitting or joining binary files.
      • New default template for parsing a WAV sound file.
  • General
    • New Windows XP Style.
    • New 'File > Special > Save Selection' command to save selected bytes.
    • Show selection start and size in the status bar.
    • Click on position or size in status bar brings up an edit dialog.
    • Many tables have an 'Export CSV' option on right-click menu to write a comma-delimited file.
    • Can change read-only plus other flags in file properties.
  • Hex Editor
    • Cursor size changes in Insert/Overwrite mode.
    • UNICODE character set support.
    • International character sets support.
    • Can split the hex editor into two parts using 'Window > Split Window' or button above scroll bar.
    • Scrolling can be synchronized between windows with 'Window > Synchronize Scrolling'.
    • Division lines can be used to indicate blocks of data.
    • Sector lines are drawn to indicate sectors on a hard drive.
    • Addresses can be displayed as octal format or as a line number.
  • Tools
    • Find in Files tool
      • Can recursively search a directory or all open files for a set of bytes.
      • Display find in files results in 'Find in Files' tab of Output Window.
      • Can expand or hide results for each file.
    • Find
      • Can search with wildcards '*' and '?'.
      • Allow multiple find ranges to color the same file.
      • Find works with UNICODE.
    • Highlights
      • Allow multiple highlights to be applied at the same time.
      • Assign different colors to highlights.
    • Comparison
      • Can limit which bytes are compared in a file (use to compare two regions in the same file).
      • Comparison results are sortable by clicking on the table headings.
      • Add color indicator box to the type column.
      • Can enable synchronized scrolling after running a comparison.
    • Base Converter
      • Support for Float, Double, ASCII strings, EBCDIC strings, UNICODE strings in base converter.
    • Checksum
      • Can exclude a set of bytes in the file from the checksum.
      • Can display the checksum results in decimal format.
  • Inspector
    • String type in inspector.
    • Display start address as local (offset from parent) from right-click menu.
    • Template variable name can be 'Type + Name' or just 'Name' (use Column Display Format).
  • Bookmarks
    • Bookmarks can now use custom data types defined in Templates.
    • Bookmarks can be set to move when the cursor changes position.
  • Importing
    • Do checksum when importing an Intel-hex file.
    • In import file dialog box, can set file type as 'All Supported Import Types'.
    • Can import multiple files at the same time.
    • Support for reading and writing Intel Hex files that use word-based addresses.
  • Options
    • Specify color of right area, separator lines, sector lines, and variable highlight.
    • Specify additional include directories.
    • Specify minimum number of digits in address.
    • Option for turning on/off mouse over and hints.
    • Option for adding 010 Editor to the Windows Explorer right-click menu.
  • Command line
    • Can open a drive or process from the command line using '-drive:' or '-process:'.
    • Run a script or a template from the command line using '-script:' or '-template:'.
    • Mark a file as readonly using '-readonly'.
    • Exit the application using '-exit'.
    • Can use wildcards when opening files or importing files on the command line.
  • Help
    • New improved help file.
  • Bugs
    • Bug with window opening at zero height (in special cases).
    • Bug with a slow-down when defining large arrays in scripts.
    • Bug with divisions and the resulting types in scripts (in special cases).
    • Bug with replace all never finishing on certain replaces.
    • Other minor bug fixes.

Version 1.3.2 - April 19th, 2004

  • Added functions ConvertASCIIToEBCDIC, ConvertEBCDICToASCII
  • Added functions BitfieldLeftToRight, BitfieldRightToLeft
  • Bug fixes with Printf, Operations, and local arrays in Templates

Version 1.3.1 - April 6th, 2004

  • Changed header for templates and scripts
  • Bug fixes for the system path, and the Inspector

Version 1.3 - April 1st, 2004

  • Templates
    • Added bitfield support to templates.
    • Added DisplayFormatBinary and DisplayFormatOctal functions.
    • Can disable warnings under 'Tools > Options > Code Editor'.
  • General
    • Now use the new XP file dialog boxes.
  • Clipboard
    • Can use 'Paste Special' command to paste in different formats.
  • Bug fixes
    • Fixed problems with workspace, filling bytes, running templates, pasting large blocks, and selecting bytes on NT machines.

Version 1.2 - Jan 24th, 2004

  • Inspector and Output Windows
    • Added 'Copy Column', 'Copy Row', and 'Copy Table' to right-click menu.
    • Added 'Column Display Format' to right-click menu - set the format to hex or decimal.
  • Scripts
    • Fixed scripts to work better when writing out large files.
    • Any of the 'Write' functions now automatically expand the file size when writing past the end of the file .
    • A single variable (i.e int x) defined in a template can be accessed as x[0].
    • Added 'DisableUndo' and 'EnableUndo' to turn on or off undo - speeds up script when writing large files.
    • The 'FileNew' function now returns the file number of the created file.
  • Import/Export
    • Added the ability to import or export 'Decimal Text'.
  • Bug Fixes
    • Fixed 'Invalid Pointer Operation' bug in the Code Editor.
    • Fixed a bug with the 'GetFileNum' function.
    • A few other minor bug fixes with hotkeys and Templates.

Version 1.1.1 - Dec 19th, 2003

  • Minor bug fixes with bookmarks and the inspector.
  • Added Expand All option to template right-click menu.

Version 1.1 - Nov 1st, 2003

  • Templates
    • Support for enums (e.g. 'enum <ushort> MYENUM { COMP_1, COMP_2=5, COMP_3 } var1;').
    • Enums variables are displayed with a drop-down list in the Inspector.
    • Forward declared and recursive structs work properly.
    • Defining local variables inside structs works better (proper scope).
    • Zero-length arrays generate no variable (but do generate a warning).
    • Can specify hex or decimal display in Inspector with DisplayFormatHex() or DisplayFormatDecimal() functions.
    • Zip template now contains an example of enums.
  • Installer
    • 010 Editor can be added to the system path automatically.
    • Can automatically associate with Intel Hex or Motorola S-Record files.
  • Explorer
    • Can drag-and-drop files from Windows Explorer to open them.
    • Drag-and-drop for Intel Hex or Motorola S-Record files will automatically import them.
  • Importing
    • Added default import byte under General Options (used for Intel Hex files).
  • Comparison
    • Improved comparison algorithm.
  • Bug fixes
    • Minor bug fixes with the Code Editor.

Version 1.0.1 - Sept 26th, 2003

  • Minor bug fixes with printing and inspector

Version 1.0 - Sept 16th, 2003

  • Initial Release


010 Editor Menu


Latest News


Download
- 010 Editor
v5.0.2
is now available.

Download it now!
What's New in 5.0.2?


Other Products


Articles


Newsletter
Join our newsletter to receive tips and tricks on hex editing, special offers, and news from SweetScape Software Inc.

Sign-up Now...