Hexecute is a free hex editor programmed in C++ by Mike Walston. It was designed with ROM hacking in mind and has several features which make it easier to find, modify, and translate text in video game ROMs including the support of text tables, dual-tile encoding, and the import and export of translation files. Unfortunately, the program hasn't been updated since 2002, and the final release is pretty buggy.
I used to use Hexecute to hack ROMs in the 2000s, but, after it crashed on me one too many times, I stopped using it. Although I haven't found a better stand-alone hex editor designed with ROM hacking in mind, most full-featured emulators like FCEUX and BizHawk now support text tables in their built-in hex editors, and, since they integrate directly with the game and console, they're much easier to work with.
This is every version of the program I could find including the last DOS version and a bug fix version. It includes has the source code for most versions.