July 9th, 2011General:
· 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 or 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.
December 2nd, 2010· Fixed possible Windows DLL exploit
· 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.
June 12th, 2010· Fixed crash with 'Run as administrator' on Windows 7 x64 machines.
· Fixed some constants being incorrectly identified as 'int64' instead of 'int'.
March 5th, 2010Editor:
· 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 syntax after a variable.
· Can set the color of a variable using or after a variable (for example, ).
· Can use after a variable to have a variable open by default.
· Can use after a variable to hide variables.
· Can use 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.
· Now require "" or after #include statements.
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.
· Exporting Decimal Text now writes left-aligned numbers.
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.
December 15th, 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.
April 23rd, 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.
February 20th, 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.
January 27th, 2009· 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.
August 28th, 2008· 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
June 6th, 2008· 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.
March 14th, 2007· Export HTML, RTF, base64, uuencoding. More powerful templates and user interface improvements.