The Inspector is a powerful tool for examining and editing binary data as a number of different data types. As well, the Inspector displays a list of all bookmarks (see Using Bookmarks) in the current file plus and a list of all built-in functions that can be used in scripts or templates. After a Binary Template is run on a file, the results are usually displayed in the Template Results panel (see Working with Template Results); alternately, the results of the template can be edited in the Inspector in the Variables tab. Show or hide the Inspector by clicking the 'View > Inspector' menu option.
Some options for the Inspector are accessed by right-clicking with the mouse on the window. Select the 'Copy' option from the menu to copy the contents of the current cell to the clipboard. Clicking the 'Copy Row' or 'Copy Column' option will copy the entire row or column to the clipboard, and the 'Copy Table' option will copy all data (the data will be copied in a tab-delimited format). For some columns of the Inspector, the numbers in the column can be displayed in a number of different numeric formats by selecting 'Column Display Format' from the right-click menu and then choosing 'Hex', 'Decimal', 'Octal', or 'Binary'. Click the 'Export CSV' menu option to write the current table to a CSV file. A CSV file (which stands for Comma Separated Value) is a text file where each cell is written separated by commas and CSV files are written in UTF-8 format.
The Inspector has four main tabs: Auto, Variables, Bookmarks, and Functions. Note that the small left and right arrows beside the tabs may need to be clicked to view all the tabs of the Inspector. The following sections discuss each tab:
Auto Inspector Tab
When the Auto tab of the Inspector is selected, a list of data types will be displayed in a table. When a file is opened, the binary data starting at the cursor is converted to each of the different data types and displayed in the table. As the cursor is moved around the file, the Inspector will change to display the converted data. If a selection is made in the current file, the data is converted starting at the beginning of the selection. The following formats are supported in the Auto Inspector:
- Signed Byte - 8-bit number between -128 and 127
- Unsigned Byte - 8-bit number between 0 and 255
- Signed Short - 16-bit number between -32768 and 32767
- Unsigned Short - 16-bit number between 0 and 65535
- Signed Int - 32-bit number between -2147483648 and 2147483647
- Unsigned Int - 32-bit number between 0 and 4294967295
- Signed Int64 - 64-bit number -9223372036854775808 and 9223372036854775807
- Unsigned Int64 - 64-bit number between 0 and 18446744073709551615
- Float - 32-bit floating-point number between 1.175494351e-38 and 3.402823466e38
- Double - 64-bit floating-point number between 2.2250738585072014e-308 and 1.7976931348623158e+308
- Half Float - 16-bit floating-point number between 5.960464e-08 and 65504
- String - Displays a null-terminated ASCII character string (limit of 256 characters). If a string is edited and characters are inserted or deleted, when in Insert mode, bytes will be inserted or deleted from the file but when in Overwrite mode, null bytes will be written to the file so that the file size does not change.
- Unicode - Displays a null-terminated Unicode character string (limit of 128 characters). Strings are edited in a similar manner to the String data type.
- DOSDATE - 16-bit value representing the date in DOS using the format 'MM/dd/yyyy' (note that M means month, d means day, and y means year)
- DOSTIME - 16-bit value representing the time in DOS using the format 'hh:mm:ss' (note that h means hour, m means minute, and s means second)
- FILETIME - 64-bit value representing date and time in Windows using the format 'MM/dd/yyyy hh:mm:ss'. FILETIME is a 64-bit integer representing the number of 100-nanosecond intervals since 01/01/1601 12:00 AM.
- OLETIME - 64-bit value representing date and time in OLE and Delphi using the format 'MM/dd/yyyy hh:mm:ss'. OLETIME is a 64-bit double representing the number of days since 12/30/1899 12:00 AM.
- TIME_T - 32-bit value representing date and time in C using the format 'MM/dd/yyyy hh:mm:ss'. time_t is a 32-bit integer representing the number of seconds since 01/01/1970 12:00 AM.
To edit a value, left-click the number with the mouse or press the Enter key. Edit the value (see Introduction to Number Systems for a list of supported formats) and press Enter to commit the change or Esc to cancel. Note that changed bytes will be displayed as orange when editing data using the Hex Editor Window. The 'Edit > Undo' or 'Edit > Redo' commands can be used to undo and redo changes made with the Inspector.
The different data types in Auto Inspector may be reordered or deleted, or your own custom data formats may be added. To customize the Auto tab, right-click on the table and click the 'Customize...' menu option or see the Inspector Options dialog.
The Variables tab displays variables that were generated by running a Script or a Binary Template on a file (see Introduction to Templates and Scripts for more information). Usually, the variables generated by a template are edited in the Template Results panel (see Working with Template Results) but this tab provides an alternate place to view and edit variables. The functionality of this tab is the same as the Template Results panel and is discussed in the Working with Template Results help topic. This tab can also be used to view the variables that were generated by a script.
The Bookmarks tab displays a list of all bookmarks for the current file (see Using Bookmarks). Bookmarks are displayed and edited similar to the Template Results panel mentioned above. The Name column displays a combination of the Name and Type fields in the Add/Edit Bookmark dialog. The Value column shows the bytes of the bookmark interpreted according to the data type. The Start and Size columns display the position of the bookmark, and the Color column shows the Foreground (Fg:) and Background (Bg:) colors from the dialog.
To edit a bookmark, select a bookmark from the list, and select the 'Edit Bookmark' menu option from the right-click menu. Selecting the 'Remove Bookmark' menu option from the right-click menu will delete the bookmark.
The Functions tab lists all built-in functions that can be used when writing 010 Editor Scripts or Binary Templates (see Introduction to Templates and Scripts). All functions are sorted into five categories: Interface Functions, I/O Functions, String Functions, Math Functions, and Tool Functions. Click the '+' beside each function group to list all functions in that group. The All group lists every function in alphabetical order. Double-clicking on a function name will insert that function into the text editor at the cursor position. Click a function and press the F1 key to view help on that function.
NOTE: The Inspector is a dockable window. By clicking and dragging on the title bar of the Inspector, the window can be moved to other locations in the interface. Right-click the window and deselect the 'Allow Docking' toggle to prevent the window from docking.