www.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/1993/07/07/14:09:40

To: kunst AT prl DOT philips DOT nl
Cc: rossi AT cs DOT unibo DOT it (Davide Rossi),
djgpp AT sun DOT soe DOT clarkson DOT edu (DJGPP users list)
Subject: Re: djgpp vs watcom
Date: Wed, 07 Jul 1993 10:26:26 -0700
From: Darryl Okahata <darrylo AT hpnmxx DOT sr DOT hp DOT com>

> Darryl Okahata (darrylo AT sr DOT hp DOT com) posted a review on Watcom C/386 recently.
> (I can't remember if he posted it to this list or another.)
> Perhaps he could be so kind to repost it.

     Well, it doesn't really belong on the DJGPP mailing list.  If
anyone wants a copy, send email.

     The bottom line is that WATCOM C/386 and newer versions (like the
latest 32-bit C/C++ compiler) are better than DJGPP if you're writing
commercial applications.  Don't get me wrong -- I like DJGPP, but
commercial compilers currently have a few advantages (and some
disadvantages) over DJGPP.  Here's a short list of WATCOM C/386
advantages/disadvantages, as compared to DJGPP:

* WATCOM C/386 has a much better source-level debugger, with watchpoints
  (slow), screen flipping, and optional remote debugging capability.
  However, just about anything is better than DJGPP's debugger (this
  should, hopefully, be fixed in some future release of DJGPP), and so
  it should be noted that the WATCOM C/386 debugger is a tad
  primitive/awkward.  However, once you get used to it, and write a few
  macros to make it easier to use, it's quite usable.  I've ported GNU
  Emacs V19.16 to MSDOS using both the DJGPP and WATCOM C/386 compilers,
  and I often have to debug Emacs using the WATCOM C/386 debugger.

* The latest release of WATCOM C/386 can generate 32-bit code for MSDOS,
  Windows, OS/2, and Windows NT.  If OS/2 is used, the debugger can be
  used to debug OS/2 threads.

* The latest release can generate code optimized for the Pentium chip.

* WATCOM C/386 compiles much faster, even with optimization enabled.
  (This is a known problem with DJGPP, caused by swapping memory out to
  disk, and I believe that someone is fixing it.)

* The DOS extender that comes with WATCOM C/386 can only handle up to
  32MB.  DJGPP can handle much more (128MB).

* The DOS extender that comes with WATCOM C/386 cannot be used to create
  a dumped Emacs.

* The WATCOM C/386 DOS extender maps the 1MB DOS memory into the lowest
  1MB of the 32-bit addressing range (0x00000000).  This makes it very
  easy for a crashing program to also crash DOS.  It's harder for a
  crashing DJGPP program to crash DOS, as DOS memory is mapped starting
  at 0xe0000000 (except under DPMI).

     -- Darryl Okahata
	Internet: darrylo AT sr DOT hp DOT com

DISCLAIMER: this message is the author's personal opinion and does not
constitute the support, opinion or policy of Hewlett-Packard or of the
little green men that have been following him all day.

- Raw text -


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