Subj : Family executables again
To : Mike Luther
From : David Noon
Date : Sat Oct 20 2001 05:00 pm
-=> Mike Luther wrote to David Noon <=-
ML> Oh that's true enough. But family executables could be written between
ML> WIN and OS/2 if one worked hard enough at it. Coding Raiders
ML> of the Lost Vark would be a larger job, sure. But coding a
ML> small bit of code as family wouldn't be quite so much of a
ML> pigglet, one would think. Look at AEDIT, for example.
Hi Mike,
The only true "family executables" are those between 16-bit DOS and 16-bit
OS/2. Editors such as AEDIT and X/2 are good examples of these. [I am using
X/2 to edit this reply. It also runs just fine under DOS real-mode, or in
a VDM or VMB session of OS/2.]
Melding OS/2 and Windows executables is seriously tough. This is because
neither uses the MZ header, which is how the DOS program shoehorns its way
in. The MZ header nominally introduces the stub module.
An OS/2 executable that has not been LXLITEd, or such, has a MZ header and
DOS stub module, followed by either a NE header (for 16-bit) or LX header
(for 32-bit), which introduces the protected mode code.
A Windows executable also has a MZ header and DOS stub module, followed
by either a NE header (for Win16) or PE header (for Win32 /API du jour/).
There is no room for another header, either NE or LX.
The inescapable conclusion is that Windows and OS/2 are mutually exclusive
options when building an executable, even if they share source code.
Regards
Dave
<Team PL/I>
... Despite the high cost of living, it remains popular.
___ MultiMail/OS/2 v0.40