Back to home page

DOS ain't dead

Forum index page

Log in | Register

Back to the board
Thread view  Mix view  Order
Rugxulo(R)

Homepage

Usono,
09.08.2007, 05:31
 

Digital Mars (running under DOS?) (Announce)

I have not quite tried Digital Mars C/C++/D yet, but I did browse some online messages on their site (from a certain Robert Riebisch and Japheth). I also saw that one person got it to run in pure DOS via WDOSX 0.96 w/ patch (probably before 0.97 was released, I guess).

Any comments? Does it work well with WDOSX or HX? What happens? What works and what doesn't? (Yes, I can try it too, but I wanna know what you know that I don't!)

---
Know your limits.h

rr(R)

Homepage E-mail

Berlin, Germany,
09.08.2007, 10:21

@ Rugxulo

Digital Mars (running under DOS?)

> I have not quite tried Digital Mars C/C++/D yet, but I did browse some
> online messages on their site (from a certain Robert Riebisch and
> Japheth). I also saw that one person got it to run in pure DOS via WDOSX

Who? :-D

> Any comments? Does it work well with WDOSX or HX? What happens? What works

The C/C++ compiler itself and most tools run fine with HX. I just ran PESTUB on them.

I recommend getting at least dm849c.zip, dm833dos.zip, dm832utl.zip from their FTP site.

Rugxulo(R)

Homepage

Usono,
09.08.2007, 23:50

@ rr

Digital Mars (running under DOS?)

> > I have not quite tried Digital Mars C/C++/D yet, but I did browse some
> > online messages on their site (from a certain Robert Riebisch and
> > Japheth). I also saw that one person got it to run in pure DOS via
> WDOSX
>
> Who? :-D

Nic Tiger (circa Oct. 2002 ?)

---
Know your limits.h

rr(R)

Homepage E-mail

Berlin, Germany,
10.08.2007, 09:29

@ Rugxulo

Digital Mars (running under DOS?)

> Nic
> Tiger (circa Oct. 2002 ?)

Thanks! That's interesting indeed, but will you test it? There are so many other C compilers for DOS...

Btw: Here are some interesting chapters from the Digital Mars C++ manual.

Chapter Compiling Code

Excerpt:

This chapter describes how the compiler works by default and how to customize the compiler's output. It covers both 16-bit and 32-bit compilations.

(*) The Command Line
(*) A Simple Example
(*) Compilation Process
(*) Compiler Options
(*) Choosing a memory model
(*) Compiling for debugging
(*) Internationalization Options
(*) Compiling for floating-point emulation and math coprocessors

Chapter Choosing a Memory Model

Excerpt:

Digital Mars C++ is a comprehensive development system for the Intel 8086 family of processors. This chapter explains how to choose an appropriate memory model, so that you can create everything from small command line utilities to the largest and most complex applications.

(*) Memory models for DOS programs under 640KB.
(*) Memory models for DOS programs over 640KB.
(*) Memory models for Win16 programs.
(*) Memory models for Win32 programs.
(*) How Digital Mars C++ stores program data.
(*) How to mix memory models within a program by using type modifiers.

Chapter Switching to Digital Mars C++

Excerpt:

Digital Mars C++ offers numerous advantages over other compilers, both in programmer productivity and in the speed and robustness of generated code. Switching to Digital Mars C++ is well worth the effort. This chapter outlines general considerations for converting existing code.

What's in This Chapter

(*) Portable Programming Practices
(*) Converting from Microsoft
(*) Converting from Borland

Chapter Overview of Digital Mars C++ Runtime Library

Excerpt:

The runtime library contains a comprehensive set of functions and classes that support program development in C and C++. The library supports 16 and 32-bit protected mode applications, as well as 32-bit DOS-extended applications.

The library includes functions typically defined by ANSI standard or UNIX C libraries, plus enhancements to the standard set. It includes C++ classes for working with streams and for performing mathematical computations.

C functions can be called from either C or C++ programs, but the C++ classes can be used only with C++ programs.

...

Using Wildcard Expansion

Rugxulo(R)

Homepage

Usono,
11.08.2007, 23:31

@ rr

Digital Mars (running under DOS?)

> > Nic
> > Tiger (circa Oct. 2002 ?)
>
> Thanks! That's interesting indeed, but will you test it? There are so many
> other C compilers for DOS...

There aren't as many that support the 16-bit target (decently, anyways).

But here's my list of all the ones I know of:

16-bit target support

* Micro C (no "long" or "typedef" or "union"??)
* Small C (some other limitations)
* DeSmet C (partial ANSI)
* BCC/Dev86 (partial ANSI)
* Pacific C (ANSI but weird assembler, OBJ format, etc.)
* Turbo C (ANSI)
* Digital Mars (ANSI, runs on Win32 or via WDOSX or HXRT)
* Open Watcom (probably the best, official compiler of FreeDOS)

32-bit target support

* DJGPP
* CC386
* Open Watcom
* Digital Mars (runs on Win32 or via WDOSX or HXRT)
* Borland's BCC 5.5 (runs on Win32 or HXRT, resulting .EXEs stubbable via WD OSX)
* EMX (OS/2 port of GCC 2.95; also works in DOS?)

Others
* old LCC 3.5 for DOS (compiler proper only: no includes, libs, assembler, etc.?)
* Tiny C (runs/targets Win32 only; might work w/ HXRT w/ MSVCRT.DLL [ugh])
* Sphinx C-- (not really C but semi-close enough)

And yes, I know Japheth (and others) are able to use still other compilers (e.g. MinGW) to write HXRT-compatible stuff.

---
Know your limits.h

rr(R)

Homepage E-mail

Berlin, Germany,
12.08.2007, 19:39

@ Rugxulo

Digital Mars (running under DOS?)

> There aren't as many that support the 16-bit target (decently, anyways).

Are eight not enough? :confused:

> But here's my list of all the ones I know of:

"Free" ones only. :yes:

> 16-bit target support
> ...

You missed LSI C-86. ;-) It's very small and fast, ANSI compatible, but limited to the small memory model. It loses against TC, because it lacks English documentation.

EDIT: A famous C-86 application is the LHA archiver.

> 32-bit target support
> ...

But why are 32-bit compilers such bloated? ;-)

> * EMX (OS/2 port of GCC 2.95; also works in DOS?)

Yes, it works in DOS (and in older Windows) too.

> * Sphinx C-- (not really C but semi-close enough)

I'm a C-- addict, but there aren't many users around the globe. :-(

Rugxulo(R)

Homepage

Usono,
13.08.2007, 13:46

@ rr

Digital Mars (running under DOS?)

> > There aren't as many that support the 16-bit target (decently, anyways).
>
> Are eight not enough? :confused:

Micro C and Small C are VERY limited in some ways but still could be useful. Desmet C and Dev86 are a little better, at least, but still somewhat quirky. Even Pacific C has its problems. Turbo C and OpenWatcom seem to be the best.

Anyways, not that I need/use it, but TC++, OpenWatcom, and Digital Mars are the only ones with C++ support (and don't forget D).

EDIT: Actually, I once read Mr. Bright say that DMC was the only one with 16-bit DOS exception handling for C++.

(BTW, OpenWatcom's C++ support is self-admittedly less robust than GCC/G++.)

So, if I was going to test various compiles of LPAQ1 to see which was faster, I'd only have three (free) native DOS options. (And, I think I did briefly test an OpenWatcom build, but DJGPP was vaguely faster ... but could be due to choice of extender, and I didn't test on real DOS, only XP).

---
Know your limits.h

Back to the board
Thread view  Mix view  Order
15108 Postings in 1358 Threads, 246 registered users, 10 users online (0 registered, 10 guests)
DOS ain't dead | Admin contact
RSS Feed
powered by my little forum