www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1996/03/09/14:34:49

Xref: news2.mv.net comp.os.msdos.djgpp:1751
From: Charles Sandmann <sandmann AT clio DOT rice DOT edu>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Using DXEs for notrivial tasks?
Date: Sat, 09 Mar 1996 11:36:15 CST
Organization: Rice University, Houston, Texas
Lines: 13
Message-ID: <3141c18f.sandmann@clio.rice.edu>
References: <31405ABD DOT 167E AT LSTM DOT Ruhr-UNI-Bochum DOT De>
Reply-To: sandmann AT clio DOT rice DOT edu
NNTP-Posting-Host: clio.rice.edu
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp

> But, I didn't manage to produce an dxe when I include fopen(), printf()
> and alikes. Am I overdoing the concept of dxe's?

Routines which reference global data structures (like I/O, signals, etc)
can't be linked into the DXE itself.  There are a couple of fixes:
 1) Use a more generic DLL type package (I don't know if any are generally
    available yet) which fixes these restrictions, or
 2) Pass the address of the routines you can't directly link into the DXE
    after loading it (so you can call them in the main image).  This last
    fix isn't that hard if you have a relatively limited number of these
    special routines and use some creative #define macros.

I have been meaning to write an example, but I have just been too busy.

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019