VBinDiff — Visual Binary Diff

VBinDiff (Visual Binary Diff) 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).

VBinDiff was inspired by the Compare Files function of the ProSel utilities by Glen Bredon, for the Apple II. When I couldn’t find a similar utility for the PC, I wrote it myself.

The single-file mode was inspired by the LIST utility of 4DOS and friends. While less provides a good line-oriented display, it has no equivalent to LIST’s hex display. (True, you can pipe the file through hexdump, but that’s incredibly inefficient on multi-gigabyte files.)

I would like to hear from anyone who uses VBinDiff, especially if you find it useful. You can find my contact information here.


VBinDiff is released under the terms of the GNU General Public License, version 2 or later.

You can follow the development of VBinDiff on GitHub.

For Linux and other POSIX-compatible systems:
VBinDiff 3.0 beta 5 (source only) (125k) (September 10, 2017)

Read the Unix documentation.

For Windows 9x/NT/2000/XP/7/8/10:
VBinDiff 3.0 beta 5 (exe & source) (97k) (September 10, 2017)

Read the Windows documentation.

Release History
* VBinDiff 3.0 beta 5 — 10 Sep 2017
VBinDiff development now uses Git, and the source is available on GitHub
The Windows version is now built with Visual Studio 2015
Merged GitHub #3: Fix crash when comparing files (by nfllab)
Merged GitHub #6: Build on systems with split ncurses/tinfo libraries (by laomaiweng)
* VBinDiff 3.0 beta 4 — 26 Jul 2008
Fixed a major bug in the Win32 hex editor (which caused it to crash after saving changes)
Added --enable-debug configure option
Clarified licensing
* VBinDiff 3.0 beta 3 — 25 Jun 2008
The line editor now has an input history
Space now moves to the next difference (same as Enter)
win32/vbindiff.rc had been left out of the source archive
* VBinDiff 3.0 beta 2 — 7 Jun 2008
Improved the line editor (used for entering search strings, etc.)
* VBinDiff 3.0 beta 1 — 11 Nov 2005
Added a POSIX (eg, Linux) version alongside the Win32 version
Added single-file mode
Added EBCDIC support
Added support for resized consoles (no longer assumes 80x25)
* VBinDiff 2.x — October 2004
Added support for editing files
Never publicly released
* VBinDiff 2.x — October 1997
Ported from OS/2 to Win32 (OS/2 support dropped)
Never publicly released
* VBinDiff 1.x — January 1996
First public release of VBinDiff (OS/2 version)