Giter Site home page Giter Site logo

roxxorfreak / hedit Goto Github PK

View Code? Open in Web Editor NEW
12.0 1.0 0.0 568 KB

A small, console-based hex editor with a focus on cross-platform reverse engineering.

Home Page: http://hedit.link

License: MIT License

Makefile 0.03% Haskell 0.37% C++ 99.29% Shell 0.32%
hex-editor windows linux disassembler raspberry-pi macosx reverse-engineering cross-platform

hedit's Introduction

HEdit 4

Codacy grade GitHub issues GitHub Travis-CI GitHub Release Date

HEdit is a small console-based hex editor with a focus on cross-platform reverse engineering. It is designed to run and tested on Windows, Linux, Rasperry Pi and MacOS X.

HEdit

Features

  • Edit up to five files simultaneously
  • Highlight differences in visual compare mode
  • Script language for visualizing data structures
  • Various search modes including search for differences
  • 16/32bit Disassembler
  • Usable on disk devices (like /dev/sda1)

Directory structure

.
├─ bin          The output directory for the binaries (created during build process)
├─ build        The build scripts and project files (Makefile, VS2019, etc.)
├─ scripts      Some HEdit scripts (see SCRIPT.md)
├─ src          The source code (including test sources)
├─ test-data    Some test data for the unit tests (you guessed it)
└─ tools        Tool configurations for additional tools, see below

Supported compilers

HEdit should be compatible with every compiler that supports C++14. It was confirmed working with the following compilers:

  • Visual Studio 2019 (16.8.3)
  • g++ (Debian 4.9.2-10+deb8u2) 4.9.2
  • g++ (Debian 8.3.0-6) 8.3.0
  • g++ (Ubuntu 9.3.0-17ubuntu1~20.04) 9.3.0
  • g++ (Raspbian 8.3.0-6+rpi1) 8.3.0
  • g++ (SUSE Linux) 7.5.0

Other tools

The project contains configurations for the following tools:

  • Doxygen
    You can use the Doxyfile to create a full source code documentation.
  • Cppcheck
    You can use Cppcheck with the included config file to perform a static code analysis.
  • cpplint
    You can use cpplint with the included config file on the .cpp and .hpp files in the src folder.

FAQ

How do I build HEdit on Linux?

Assuming your build environment for C++ is ready, just go to ./build/make/ and execute make. Otherwise you need to install g++, libncurses5-dev and make.

How do I build HEdit on Windows?

Using Visual Studio, just go to ./build/vs19/ and use the solution file hedit.sln. You will need to have "C++ build tools" installed.

Do I need any external libraries to build HEdit from scratch?

No, the only dependency is ncurses (and only if not using Windows). For the tests, the Googletest framework is used.

I can see there are tests but they are not built using the Makefile. Why?

Because the tests are currently only built using the Visual Studio 2019 solution.

Why is the first version v4.2.0?

Because the project is quite old and was just moved to GitHub recently.

My screen is quite large, can I edit more than five files simultaneously?

Yes, but only by modifying the source code. You need to change the constant HE_MAX_EDITORS and rebuild HEdit.

hedit's People

Contributors

roxxorfreak avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.