Thread View: comp.os.msdos.4dos
5 messages
5 total messages
Started by Jan-Pieter Cornet
Sat, 08 Aug 1992 18:01
Patches to make BC++ 3.0 generated code 4DOS-aware
Author: Jan-Pieter Cornet
Date: Sat, 08 Aug 1992 18:01
Date: Sat, 08 Aug 1992 18:01
37 lines
2304 bytes
2304 bytes
I've patched the setargv.asm that comes with BC++ 3.0 to be "4DOS-aware". What it effectively means is that the extended (256 char) command line length of 4DOS is recognised by the program. This adds about 100 bytes to your program, and of course leaves it 100% "non-4DOS" compatible... What it doesn't (yet) do, is supply 4DOS-like wildcards expanded on the command line. I reckon that because of the TAB/F8/F9/F10 functions in 4DOS there is no big need for this. (Oh, BTW, 4DOS-people, there wouldn't happen to be some undocumented 4DOS replacement for DOS's find-first, find-next directory browsing calls?? That'd really help, I guess.) OK, now comes the tough part ;)... I've studied Borland's license agreement on the source code, and I think that it means that: - the modified setargv.asm file is still (C)opyright Borland, Inc., and I cannot distribute it as source. - I still can do whatever I want with my own code, so I will be able to distribute this thing as a patchfile to be applied to your own copy of setargv.asm - Distributing compiled binaries isn't forbidden, so I guess I can also send people the various .OBJ files for different memory models to include in their libs. Was I correct on this? I sure hope so... (Sidney? Still out there? ;) If you are interested in this, I can send you this, in either or both of the following ways: - a "diff -c" file that can be applied to setargv.asm via "patch" - a bundle of .OBJs for various memory models. I doubt whether this is general enough to warrant an upload to the major ftp sites, but if the interest is big enough, who knows... Regards, -- Jan-Pieter cornet@duteca.et.tudelft.nl
Re: Patches to make BC++ 3.0 generated code 4DOS-aware
Author: Tony Porczyk
Date: Sat, 08 Aug 1992 22:37
Date: Sat, 08 Aug 1992 22:37
13 lines
1034 bytes
1034 bytes
cornet@zen.et.tudelft.nl (Jan-Pieter Cornet) writes: >(Oh, BTW, 4DOS-people, there wouldn't happen to be some undocumented >4DOS replacement for DOS's find-first, find-next directory browsing >calls?? That'd really help, I guess.) findfirst() and findnext() have nothing to do with the shell. They are DOS interrupts (21/4E & 21/4F, respectively). Unless you are willing to invoke shell to search for each file, which would be pathetically slow, there is nothing JP Software can do for you. You may use FCBs if you wish, they're faster... not any better though. t.
Re: Patches to make BC++ 3.0 generated code 4DOS-aware
Author: Nevo Y Hed
Date: Sun, 09 Aug 1992 15:45
Date: Sun, 09 Aug 1992 15:45
20 lines
1454 bytes
1454 bytes
>findfirst() and findnext() have nothing to do with the shell. They >are DOS interrupts (21/4E & 21/4F, respectively). Unless you are >willing to invoke shell to search for each file, which would be >pathetically slow, there is nothing JP Software can do for you. >You may use FCBs if you wish, they're faster... not any better though. BorlandC has it's own, non-dos findfirst find-next. I didn't do any reading on the difference. I think the original poster was looking for a OBJ or LIB file that provides the 4dos wildcard capability [e.g. "*y*.*" is legal while dos' has only y*.*]. Nevo -- Nevo Y. Hed nyh@wpi.wpi.edu ++1-508-754-2491 CS student, Worcester Polytechnic Institute. "I like my cigar too, but I take it out of my mouth from time to time" G.Marx
Re: Patches to make BC++ 3.0 generated code 4DOS-aware
Author: Kenneth Falck
Date: Sun, 09 Aug 1992 15:52
Date: Sun, 09 Aug 1992 15:52
16 lines
1222 bytes
1222 bytes
In article <b8zmck_.messina@netcom.com> messina@netcom.com (Tony Porczyk) writes: > >findfirst() and findnext() have nothing to do with the shell. They >are DOS interrupts (21/4E & 21/4F, respectively). Unless you are >willing to invoke shell to search for each file, which would be >pathetically slow, there is nothing JP Software can do for you. >You may use FCBs if you wish, they're faster... not any better though. Well.. Couldn't the 4DOS shell simply just replace the DOS-0x21 vector with another one that checks for 0x4E or 0x4F, and redirect the calls to findfirst/findnext to a 4DOS-routine, and all other calls to the original DOS-vector? -- kennu@mits.mdata.fi <here's where the dumb quote is supposed to be>
Re: Patches to make BC++ 3.0 generated code 4DOS-aware
Author: Philip Smolen
Date: Thu, 13 Aug 1992 19:01
Date: Thu, 13 Aug 1992 19:01
25 lines
1760 bytes
1760 bytes
In article <Bsq3rs.Dz0@wpi.WPI.EDU> nyh@wpi.WPI.EDU (Nevo Y Hed) writes: >>findfirst() and findnext() have nothing to do with the shell. They >>are DOS interrupts (21/4E & 21/4F, respectively). Unless you are >>willing to invoke shell to search for each file, which would be >>pathetically slow, there is nothing JP Software can do for you. >>You may use FCBs if you wish, they're faster... not any better though. > >BorlandC has it's own, non-dos findfirst find-next. I didn't do any >reading on the difference. > That's not quite correct. I was just looking at the source code for firstfirst, findnext, _dos_findfirst, _dos_findnext. Each one makes calls to the appropriate dos call (21/4e or 21/4f). The only thing that they do on top of that is set the DTA, restore the DTA, and translate the error message. The only difference between the _dos_find's and the find's is that they call different functions to translate from DOS's error code to their own return values. I don't know why they use different structure definitions for the two types of functions. They pass each structure directly to DOS, then directly back to the caller. --Phil
Thread Navigation
This is a paginated view of messages in the thread with full content displayed inline.
Messages are displayed in chronological order, with the original post highlighted in green.
Use pagination controls to navigate through all messages in large threads.
Back to All Threads