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> <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 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit 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" 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?