For hard-core application programming where you need to use a few BIOS 
and DOS interrupts I like to use C and C++ (carefully).  C gives you a 
tremendous amount of control and flexibility.

My two favorite compilers are:

Borland Turbo C++ 3.0 for DOS: I did most of my early mTCP work.  It 
really needs a 386 or faster machine to run on, but it generates 16 bit 
code as well as 32 bit code.  This particular version is stuck in time 
(1992) so if you need to access new opcodes on later processors you need 
to use inline assembler.  I'm sure the later versions of this that run 
under Windows and the professional versions (those don't use the "Turbo" 
word in the name) are comparable, but with more bells and whistles.  
Code optimization is not great.  But the run-time library is fairly compact.

Open Watcom: The run-time library is a bit heavier than the library in 
Turbo C++, but it includes some newer functions that are missing from 
Turbo C++.  The code optimization is generally better.  The compiler 
itself can be run under DOS, Windows or Linux and all versions can 
cross-compile and create code for other platforms.  (On my Windows XP 
machine I create 16 bit DOS applications and 32 bit Windows test 
programs.)  Open Watcom is daunting compared to Turbo C++ but the 
rewards are worth it.

Open Watcom is open source and is regularly updated, but it is loosing 
critical mass.  It seems to be a fairly well kept secret, which I don't 

(PS: If we have FreeDOS code that doesn't compile under OW I'd be 
interested in seeing it.  A few #defines can fix a lot of problems.  The 
debugging is the hard part.)


For Developers, A Lot Can Happen In A Second.
Boundary is the first to Know...and Tell You.
Monitor Your Applications in Ultra-Fine Resolution. Try it FREE!
Freedos-user mailing list

Reply via email to