Linear Executable

From Just Solve the File Format Problem
(Difference between revisions)
Jump to: navigation, search
(Created page with "{{FormatInfo |formattype=electronic |subcat=Executables |extensions={{ext|exe}}, others }} '''Linear Executable''' is an executable file format in the EXE family. It was u...")
 
(Link to the EXEPACK and EXEPACK2 compression algorithms sometimes found in LX executables.)
 
(13 intermediate revisions by 5 users not shown)
Line 2: Line 2:
 
|formattype=electronic
 
|formattype=electronic
 
|subcat=Executables
 
|subcat=Executables
|extensions={{ext|exe}}, others
+
|extensions={{ext|386}}, {{ext|dll}}, {{ext|exe}}, {{ext|sys}}, {{ext|vxd}}
 
}}
 
}}
'''Linear Executable''' is an executable file format in the [[EXE]] family. It was used by 32-bit OS/2, by some DOS extenders, and by Microsoft Windows VXD files. It is an extension of [[MS-DOS EXE]], and a successor to [[NE]] (New Executable).
+
'''Linear Executable''' is an executable file format in the [[EXE]] family. It was used by 32-bit OS/2, by some DOS extenders, and by Microsoft Windows VxD files. It is an extension of [[MS-DOS EXE]], and a successor to [[NE]] (New Executable).
  
 
There are two main varieties of it: '''LX''' (32-bit), and '''LE''' (mixed 16/32-bit).
 
There are two main varieties of it: '''LX''' (32-bit), and '''LE''' (mixed 16/32-bit).
Line 12: Line 12:
  
 
== Specifications ==
 
== Specifications ==
* [http://www.textfiles.com/programming/FORMATS/lxexe.txt LX Format Description]
+
* [http://www.textfiles.com/programming/FORMATS/lxexe.txt LX Format Description] (1992 edition)
** [http://www.oldlinux.org/Linux.old/study/sabre/os/files/Executables/LX.txt Another copy of the document]
+
** [http://www.oldlinux.org/Linux.old/study/sabre/os/files/Executables/LX.txt Another copy of the 1992 edition]
 +
* [http://bitsavers.informatik.uni-stuttgart.de/pdf/ibm/pc/os2/OS2_OMF_and_LX_Object_Formats_Revision_8_199406.pdf IBM OS/2 16/32-bit Object Module Format (OMF) and Linear executable Module Format (LX)] (Revision 8, 1994)
 +
* [https://archive.org/details/IBMOS2Warp4ToolkitDocuments2/32-bit%20Linear%20eXecutable%20Module%20Format%20%28LX%29%20Specification/mode/2up IBM OS/2 16/32-bit Linear eXecutable Module Format (LX)] (Revision 11, 2001)
 
* [http://faydoc.tripod.com/formats/exe-LE.htm (.vxd) LINEAR-EXECUTABLE File Header Layout] (LE)
 
* [http://faydoc.tripod.com/formats/exe-LE.htm (.vxd) LINEAR-EXECUTABLE File Header Layout] (LE)
 +
 +
== Software ==
 +
 +
* [https://github.com/altsan/os2-gpi-font-tools/blob/master/parser/gpifont.c An OS/2 font resource extractor] reads resources from LX-format executable, including decompressing compressed pages
  
 
== Sample files ==
 
== Sample files ==
* http://cd.textfiles.com/hobbesos29411/BIN/ → *.EXE (LX format)
+
* http://cd.textfiles.com/hobbesos29411/BIN/ → *.EXE (LX, OS/2 console)
 +
* http://cd.textfiles.com/hobbesos2/2_X/GAMES/ → *.ZIP → *.EXE (LX, OS/2 GUI)
 +
* http://cd.textfiles.com/silvercollection/disc4/DRIVERS/ - The *.386 files inside the archive files (for example, [http://cd.textfiles.com/silvercollection/disc4/DRIVERS/19GXE.ARJ 19GXE.ARJ] → VDDS3.386) use MS Windows LE / VxD format.
 +
* [http://cd.textfiles.com/doomcompanion/DOOM/DOOM.EXE DOOM.EXE] - Example of the format used by some DOS extenders. Technically this is an [[MS-DOS EXE]] file, with an embedded LE file.
 +
 
 +
== See also ==
 +
* [[Dynamic-link library (Windows)]]
 +
* [[EXEPACK]]
 +
* [[EXEPACK2]]
  
 
== Links ==
 
== Links ==
* [http://www.tenberry.com/dos4g/faq/format.html DOS/4G and DOS/4GW FAQ: Executable File Format(s)]
+
* [https://web.archive.org/web/20190202155306/http://www.tenberry.com/dos4g/faq/format.html DOS/4G and DOS/4GW FAQ: Executable File Format(s)]
 +
* [http://www.mitec.cz/exe.html EXE Explorer utility]
 +
* [https://github.com/open-watcom/open-watcom-v2/blob/master/bld/watcom/h/exeflat.h Open Watcom structs with LX/LE differences]
 +
 
 +
[[Category:Windows]]
 +
[[Category:OS/2]]

Latest revision as of 12:13, 19 January 2024

File Format
Name Linear Executable
Ontology
Extension(s) .386, .dll, .exe, .sys, .vxd

Linear Executable is an executable file format in the EXE family. It was used by 32-bit OS/2, by some DOS extenders, and by Microsoft Windows VxD files. It is an extension of MS-DOS EXE, and a successor to NE (New Executable).

There are two main varieties of it: LX (32-bit), and LE (mixed 16/32-bit).

Contents

[edit] Identification

A Linear Executable file begins with the ASCII signature "MZ". At offset 60 is a 4-byte integer pointing to an "extended" header that begins with "LX" or "LE". For more information, see MS-DOS EXE.

[edit] Specifications

[edit] Software

[edit] Sample files

[edit] See also

[edit] Links

Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox