| delorie.com/archives/browse.cgi | search |
| From: | "Edmund Horner" <ejrh AT paradise DOT net DOT nz> |
| Newsgroups: | comp.os.msdos.djgpp |
| References: | <3994FC92 DOT B2795AF1 AT addr DOT com> |
| Subject: | Re: Another DXE question |
| Lines: | 38 |
| X-Priority: | 3 |
| X-MSMail-Priority: | Normal |
| X-Newsreader: | Microsoft Outlook Express 5.00.2919.6600 |
| X-MimeOLE: | Produced By Microsoft MimeOLE V5.00.2919.6600 |
| Organization: | Paradise Net |
| Message-ID: | <966343147.283755@shelley.paradise.net.nz> |
| Cache-Post-Path: | shelley.paradise.net.nz!unknown AT 203-96-149-240 DOT tnt1 DOT paradise DOT net DOT nz |
| X-Cache: | nntpcache 2.4.0b5 (see http://www.nntpcache.org/) |
| Date: | Tue, 15 Aug 2000 16:46:14 +1200 |
| NNTP-Posting-Host: | 203.96.152.26 |
| X-Complaints-To: | newsadmin AT xtra DOT co DOT nz |
| X-Trace: | news.xtra.co.nz 966343167 203.96.152.26 (Wed, 16 Aug 2000 00:39:27 NZST) |
| NNTP-Posting-Date: | Wed, 16 Aug 2000 00:39:27 NZST |
| To: | djgpp AT delorie DOT com |
| DJ-Gateway: | from newsgroup comp.os.msdos.djgpp |
| Reply-To: | djgpp AT delorie DOT com |
The typical method of using external functions in a DXE is to pass a
structure containing pointers to those functions to the DXE. For example:
struct IMPORTS
{
size_t (* malloc) (size_t);
void (* free) (void *);
} imports;
dxe = _dxe_load ("alloctest.dxe");
dxe (&imports);
Inside the DXE you can use (for example):
void alloctest (struct IMPORTS *imports)
{
char *x;
x = imports->malloc (100);
imports->free (x);
}
This is the way I do things...
"Ardy Falls" <ardy AT addr DOT com> wrote in message
news:3994FC92 DOT B2795AF1 AT addr DOT com...
> To get around the unresolved externals problem could you somehow
> combine a cpp file with a object file?
> the reason I'm asking is because I am making a graphics lib where you
> can dynamically load in drivers that are specific to the users video
> card and a lot of the functions are asm files that are turned to .o
> files using nasm.
> Thanks
> Ardy
> http://www.addr.com/~ardy/
>
| webmaster | delorie software privacy |
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |