Menu

Tree [84a5f0] master /
 History

HTTPS access


File Date Author Commit
 .github 2023-08-09 Kirn Gill II Kirn Gill II [10dde3] Update c-cpp.yml
 .gitignore 2023-07-24 Kirn Gill II Kirn Gill II [e4421b] Added more build artifacts
 .travis.yml 2020-01-19 Kirn Gill II Kirn Gill II [5d382f] Added custom test script
 LICENSE.md 2023-07-24 Kirn Gill II Kirn Gill II [4f9236] Update copyrights
 Makefile.am 2020-01-18 Kirn Gill II Kirn Gill II [f7cfef] REALLY fix filenames
 Makefile.dos 2022-11-25 Kirn Gill II Kirn Gill II [f6c948] Optimizing for size by default for DOS builds
 Makefile.unix 2020-01-18 Kirn Gill II Kirn Gill II [3040a7] Add GNU autotools scripts, move old Makefile to...
 Makefile.watcom.dos16 2023-08-07 Kirn Gill II Kirn Gill II [ed6f33] Fix #2 by defining preprocessor macro NEED_ERR
 Makefile.watcom.dos32 2023-08-07 Kirn Gill II Kirn Gill II [ed6f33] Fix #2 by defining preprocessor macro NEED_ERR
 Makefile.watcom.os2 2023-08-07 Kirn Gill II Kirn Gill II [ed6f33] Fix #2 by defining preprocessor macro NEED_ERR
 Makefile.watcom.win32 2023-08-07 Kirn Gill II Kirn Gill II [ed6f33] Fix #2 by defining preprocessor macro NEED_ERR
 README.md 2023-08-12 Kirn Gill II Kirn Gill II [49f16e] Change to new output sample, old one is 404
 autogen.sh 2020-01-22 Kirn Gill II Kirn Gill II [ab53ee] Fixed order of autotools invocation
 configure.ac 2023-08-21 Kirn Gill II Kirn Gill II [1b67ee] 0.1.2 versioning changes
 err.c 2023-07-24 Kirn Gill II Kirn Gill II [87c78a] More Watcom changes
 err.h 2023-07-24 Kirn Gill II Kirn Gill II [840cb6] Better support Watcom C
 le.h 2023-07-04 Kirn Gill II Kirn Gill II [c1e8d6] Added CPU type code for Pentium
 mz.h 2023-08-05 Kirn Gill II Kirn Gill II [20da71] fixed missing semicolon
 ne.h 2023-08-07 Kirn Gill II Kirn Gill II [090a92] Add support for HX Extender NE binaries.
 readexe.c 2023-08-21 Kirn Gill II Kirn Gill II [84a5f0] formatting changes
 w3.h 2023-08-12 Kirn Gill II Kirn Gill II [62efd7] Add support for WIN386.EXE's W3 format

Read Me

readexe

readexe is a command-line tool for inspecting various Microsoft PC EXE formats.

Travis CI status: Build Status

File types supported

Status Magic Type
MZ MS-DOS Executable
NE 16-bit New Executable
LE/LX 32-bit Linear Executable (.vxd/.386)
PE 32/64-bit Portable Executable

NE format is the current work-in-progress.

Building

readexe uses the GNU Autotools (for now) to build. You'll need to generate the distributed build artifacts (the configure script itself, et. al.) before you can use them. Use the include autogen.sh script to generate the build artifacts. You can build readexe using the following:

./autogen.sh
./configure
make

The previous Makefile has been renamed Makefile.unix and may be removed in the future, or may be rolled back to.

If your OS does not have the BSD err() family functions, add -I. to CFLAGS in Makefile.unix or in the CFLAGS envionment variable when invoking ./configure.

If you are building for MS-DOS or FreeDOS using GCC-IA16 or Sourcery CodeBench Lite for IA16, use Makefile.dos like so:

make -f Makefile.dos

Attempting to make DOS builds using other compilers is likely to fail. readexe is written using ISO C99 and ISO C11 features that the majority of DOS compilers predate. Modern DJGPP releases, also built upon GCC, can produce 32-bit extended DOS builds.

Sample output

An output sample can be found here.