delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2004/05/19/23:01:23

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: 048321887-0001 AT t-online DOT de (Udo Kuhnt)
Newsgroups: comp.os.msdos.djgpp
Subject: Re: Using DR-DOS fork in DJGPP
Date: 19 May 2004 19:47:50 -0700
Organization: http://groups.google.com
Lines: 42
Message-ID: <4d201f78.0405191847.6697f90d@posting.google.com>
References: <4d201f78 DOT 0405181653 DOT 16a677b6 AT posting DOT google DOT com> <uoeok2abs DOT fsf AT gnu DOT org> <4d201f78 DOT 0405191158 DOT 63550b51 AT posting DOT google DOT com> <7704-Wed19May2004233123+0300-eliz AT gnu DOT org>
NNTP-Posting-Host: 217.82.114.226
X-Trace: posting.google.com 1085021271 17809 127.0.0.1 (20 May 2004 02:47:51 GMT)
X-Complaints-To: groups-abuse AT google DOT com
NNTP-Posting-Date: Thu, 20 May 2004 02:47:51 +0000 (UTC)
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Eli Zaretskii" <eliz AT gnu DOT org> wrote in message news:<7704-Wed19May2004233123+0300-eliz AT gnu DOT org>...
> > From: 048321887-0001 AT t-online DOT de (Udo Kuhnt)
> > Newsgroups: comp.os.msdos.djgpp
> > Date: 19 May 2004 12:58:41 -0700
> > 
> > Hm, I am not very fond of mailing lists since I already get lots of mail.
> 
> ??? If you want to discuss an issue, you've got to get messages,
> right?
> 
> You don't ned to subscribe to the list: if you participate in a
> discussion, the messages are sent to any participants, whether or not
> they are subscribers.

Thanks for the info; I did not know this. Many mailing lists accept posts
only from subscribers.

> > > So: what version(s) of DR-DOS support this API, and how can a DJGPP
> > > program know whether it runs on such a version of DR-DOS?
> > 
> > All versions of the 7.0x series feature this API, probably including v8.0.
> > Since the multitasking API can be disabled in these versions, an installation
> > check exists to verify that MT is active; this is done by function 1101h of
> > the MT API. If CX is zero after calling this function, the MT API is present;
> > if it still contains 1101h, then it is not present.
> 
> What happens if that function is called on some other DOS system?
> That is, how can we know we run on DR-DOS 7.x or higher vs, say MS-DOS
> 6.22?

It is standard behaviour in DOS that the registers are not changed if a
function is called that does not exist. I just checked this on MS-DOS 7.1;
it passes the same arguments back if int 2fh/AX=2780h/CX=1101h is called.
Other MS-DOS versions should do the same thing. So this is probably a
reasonably safe method to test for the presence of the DR-DOS MT API.
Also, it is possible to check the DR-DOS version with function 4452h of
int 21h.

Well, I am curious - I heard that the DJGPP C library has been developed from
one for FreeBSD, or something like that, which probably has a working fork
sys call. Is this code still present in DJGPP and could it be reactivated, or
has it been removed because it did not seem useful?

- Raw text -


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