NAME

vbindiff - hexadecimal file display and comparison

SYNOPSIS

vbindiff file1 [ file2 ]

DESCRIPTION

Visual Binary Diff (VBinDiff) displays files in hexadecimal and ASCII (or EBCDIC). It can also display two files at once, and highlight the differences between them. Unlike diff, it works well with large files (up to 4 GB).

Viewing files

 Movement Keys
 -------------
 Up      Move one line (16 bytes) towards the beginning of the file
 Down    Move one line (16 bytes) towards the end of the file
 Left    Move one byte towards the beginning of the file
 Right   Move one byte towards the end of the file
 PageUp  Move one page towards the beginning of the file
 PageDn  Move one page towards the end of the file
 Home    Move to the beginning of the file
 End     Move to the end of the (shorter) file
 F       Search for a string or byte sequence
 G       Move to a specified file position

When displaying two files, both files move together. If bytes have been added or removed in one of the files, you can adjust the comparison by moving just one of the files. Holding down Alt while using the movement keys will scroll only the bottom file. Holding down Ctrl will scroll only the top file.

 Other Keys
 ----------
 Enter  Move to the next difference between the files
 Space  (same as Enter)
 C      Toggle between ASCII and EBCDIC display
 E      Edit currently displayed section of file
 Esc    Exit VBinDiff
 Q      Exit VBinDiff

The Enter key will advance to the next difference between the files (after those already displayed on the screen). If there are no more differences, it moves to the end.

Line editor

The line editor is used to enter search strings and file positions. It uses the basic Emacs-style editing keys.

 Keys
 -----------------
 Ctrl-B, Left       Move the cursor one character left
 Ctrl-F, Right      Move the cursor one character right
 Ctrl-A, Home       Move to the beginning of the line
 Ctrl-E, End        Move to the end of the line
 Ctrl-P, Up         Move up in input history
 Ctrl-N, Down       Move down in input history
 Ctrl-H, Backspace  Delete the character to the left
 Ctrl-D, Delete     Delete the character under the cursor
 Ctrl-K             Delete from cursor to end of line
 Insert             Toggle between insert & overstrike mode
 Enter              Finished entering text
 Esc                Abort the operation

Editing files

You can press E to edit the current file. When displaying two files, this edits the one in the top window. Press Alt+E to edit the file in the bottom window.

When editing, you can move the cursor around with the arrow keys. Use TAB to switch between entering hexadecimal or ASCII (or EBCDIC) characters. Press the Esc key when you are done. You will be given the choice to save or discard your changes then.

If you are displaying two files, you can use the Enter key to copy a byte from the other file into the one you are editing.

You cannot scroll through the file while editing, although you can save your changes and then move to a different part of the file. Also, you cannot insert or delete bytes, only change them.

OPTIONS
 -L, --license   Display license information for vbindiff
 -V, --version   Display the version number
     --help      Display help information
BUGS

Does not work properly with files over 4 gigabytes. It should be able to view the first 4 gigabytes ok, but the display only has room for 8 hex digits of file position, and the Goto box is also limited to 8 digits.

LICENSE

VBinDiff is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

VBinDiff is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with VBinDiff (see the file COPYING.txt); if not, see https://www.gnu.org/licenses/.

AUTHOR

Christopher J. Madsen <vbindiff .at. cjmweb.net> https://www.cjmweb.net/vbindiff/ https://github.com/madsen/vbindiff