Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Windows GUI Programming with DJGPP

90 views
Skip to first unread message

arizvi

unread,
May 26, 2005, 12:46:21 PM5/26/05
to
Hi,

I would like to build some Windows GUI programs, and I was wondering is
DJGPP could be an option. In the FAQ it states that we can use RSXNTDJ,
and I would like to have some feedback on how it has actually worked
for someone. Are the programs created with the same look and feel as
MFC/Win32 programs?

Trying a different approach, can we link to Win32/MFC libraries from
DJGPP. I know this is a long shot, but is it possible?

Thanks,
-Ahmad

News Reader

unread,
May 28, 2005, 7:27:28 PM5/28/05
to
I don't think that RSXNTDJ is actually working
with Win XP. At least I had that impression a
couple of months back, when I thought that
it was a waste using DJGpp just for XP console
programs.

I would be glad if anybody could prove me
wrong and let us know how to get RSXNTDJ
to actually cooperate with Win XP.

One strange approach seems to work though:

I have written Win32 GUI programs in D and
have linked external DJGpp C code to them
(after conversion to the proper object code
format). This worked without a problem.

If you don't know D, check it out at
www.digitalmars.com - it is the best
replacement for C and C++ I have seen so
far. Whoever can write programs in C, C++,
Java or Javascript should be able to handle
D pretty quickly.

My problem is that I like both - the D
language, which is superior to most other
languages I know - and of course the maturity
of the DJGpp compiler(s).

"arizvi" <ahmad...@hotmail.com> wrote in message
news:1117125981....@g44g2000cwa.googlegroups.com...

Hans-Bernhard Broeker

unread,
May 29, 2005, 8:32:24 AM5/29/05
to
arizvi <ahmad...@hotmail.com> wrote:
> Hi,

> I would like to build some Windows GUI programs, and I was wondering is
> DJGPP could be an option. In the FAQ it states that we can use RSXNTDJ,
> and I would like to have some feedback on how it has actually worked
> for someone.

The main problem with RSXNTDJ is bit-rot. It's essentially not been
maintained actively by anyone, for several years, while several parts
of the DJGPP environment it relies on have changed massively. In
particular, it's unlikely to cooperate correctly with the current
versions of GCC and binutils used by most DJGPP users.

Generally, if you want to use GCC to compile Win32 programs, RSXNTDJ
has long since stopped to be the best approach towards that goal.
MinGW32 (including the copy of it provided as part of Cygwin32) has
way better support.

> Are the programs created with the same look and feel as
> MFC/Win32 programs?

MFC doesn't design any look-and-feel --- it's just a thin C++ shell
around the basic Win32 API, and one that MS refuses to make available
without payment. So no, you won't get MFC applications compiled without
buying a commercial compiler.

--
Hans-Bernhard Broeker (bro...@physik.rwth-aachen.de)
Even if all the snow were burnt, ashes would remain.

News Reader

unread,
May 30, 2005, 2:24:25 AM5/30/05
to

"Hans-Bernhard Broeker" <bro...@physik.rwth-aachen.de> wrote in message
news:3ftr2oF...@news.dfncis.de...

> arizvi <ahmad...@hotmail.com> wrote:
>
> The main problem with RSXNTDJ is bit-rot. It's essentially not been
> maintained actively by anyone, for several years, while several parts
> of the DJGPP environment it relies on have changed massively. In
> particular, it's unlikely to cooperate correctly with the current
> versions of GCC and binutils used by most DJGPP users.

The question is - why is it still offered for download without a warning
(e.g. ZIP picker)? I was wasting some time checking it out and others
seem to share the same fate.


> Generally, if you want to use GCC to compile Win32 programs, RSXNTDJ
> has long since stopped to be the best approach towards that goal.
> MinGW32 (including the copy of it provided as part of Cygwin32) has
> way better support.

Yes, but it takes them ages to implement the newest GCC version
(current: gcc 3.4.2) - unlike DJGpp.

PaulCsouls

unread,
May 30, 2005, 11:48:37 AM5/30/05
to
On 29 May 2005 12:32:24 GMT, Hans-Bernhard Broeker
<bro...@physik.rwth-aachen.de> wrote:

Why do we need the windows API? Isn't it possible to create, buttons,
menus and windows controlled by a mouse without it? Isn't there
something that can give a us a user interface other than the command
line?

Paul C

Hans-Bernhard Broeker

unread,
May 30, 2005, 1:08:42 PM5/30/05
to
PaulCsouls <paulc...@worldnet.att.net> wrote:

> Why do we need the windows API?

Because it's the way Windows32 programs have to use to talk to the OS.
As the saying goes: "While in Rome, do as the Romans do."

> Isn't it possible to create, buttons, menus and windows controlled
> by a mouse without it?

Not really --- you need some access to the graphics hardware, and at
least under modern, NT-based versions of Windows, the OS won't let
your program put its dirty fingers on that other than through an
intermediary layer. That's exactly the Win32 API.

PaulCsouls

unread,
May 30, 2005, 2:20:27 PM5/30/05
to
On 30 May 2005 17:08:42 GMT, Hans-Bernhard Broeker
<bro...@physik.rwth-aachen.de> wrote:

>PaulCsouls <paulc...@worldnet.att.net> wrote:
>
>> Why do we need the windows API?
>
>Because it's the way Windows32 programs have to use to talk to the OS.
>As the saying goes: "While in Rome, do as the Romans do."
>
>> Isn't it possible to create, buttons, menus and windows controlled
>> by a mouse without it?
>
>Not really --- you need some access to the graphics hardware, and at
>least under modern, NT-based versions of Windows, the OS won't let
>your program put its dirty fingers on that other than through an
>intermediary layer. That's exactly the Win32 API.

I though Allegro would work. I haven't tried but I thought it could
work with the mouse.

Paul C

Bob Chapman

unread,
May 30, 2005, 8:02:18 PM5/30/05
to
"arizvi" <ahmad...@hotmail.com> wrote in message
news:1117125981....@g44g2000cwa.googlegroups.com...

Fox Toolkit maybe?
http://www.fox-toolkit.org/

--


Cavit Cahit VURAL

unread,
May 31, 2005, 2:26:36 AM5/31/05
to dj...@delorie.com
PaulCsouls yazmış:

>On 30 May 2005 17:08:42 GMT, Hans-Bernhard Broeker
><bro...@physik.rwth-aachen.de> wrote:
>
>
>
>>PaulCsouls <paulc...@worldnet.att.net> wrote:
>>
>>
>>
>>>Why do we need the windows API?
>>>
>>>

You may use wxWindows instead of MFC. It works very well for DOS.

CC Vural

Hans-Bernhard Broeker

unread,
May 31, 2005, 6:40:49 AM5/31/05
to

Not in any way different from complete do-it-yourself operation ---
which means only via the API, for a Windows application, and only
through the (usually very buggy) VESA BIOS emulation, in a DOS
program. That's why DJGPP/Allegro programs tend to fail so
spectactularly on XP.

> I haven't tried but I thought it could work with the mouse.

Working with the mouse is a side issue. The problem is with graphics
output, not with mouse input.

Hans-Bernhard Broeker

unread,
May 31, 2005, 6:41:56 AM5/31/05
to
Cavit Cahit VURAL <ccv...@ttnet.net.tr> wrote:
> >>PaulCsouls <paulc...@worldnet.att.net> wrote:

> >>>Why do we need the windows API?

> You may use wxWindows instead of MFC. It works very well for DOS.

But on Windows, it still has to go through the Windows API.

Manuel Collado

unread,
Jun 1, 2005, 8:32:48 AM6/1/05
to
Cavit Cahit VURAL escribió:

Or perhaps MGUI (freeware, but not open source):
http://web.tiscali.it/morello/MGui/index.html

It claims to be DJGPP compatible.
--
To reply by e-mail, please remove the extra dot
in the given address: m.collado -> mcollado

PaulCsouls

unread,
Jun 1, 2005, 8:34:01 AM6/1/05
to
On 31 May 2005 10:40:49 GMT, Hans-Bernhard Broeker
<bro...@physik.rwth-aachen.de> wrote:

>PaulCsouls <paulc...@worldnet.att.net> wrote:
>> On 30 May 2005 17:08:42 GMT, Hans-Bernhard Broeker
>> <bro...@physik.rwth-aachen.de> wrote:
>
>> >Not really --- you need some access to the graphics hardware, and at
>> >least under modern, NT-based versions of Windows, the OS won't let
>> >your program put its dirty fingers on that other than through an
>> >intermediary layer. That's exactly the Win32 API.
>
>> I though Allegro would work.
>
>Not in any way different from complete do-it-yourself operation ---
>which means only via the API, for a Windows application, and only
>through the (usually very buggy) VESA BIOS emulation, in a DOS
>program. That's why DJGPP/Allegro programs tend to fail so
>spectactularly on XP.
>
>> I haven't tried but I thought it could work with the mouse.
>
>Working with the mouse is a side issue. The problem is with graphics
>output, not with mouse input.

What about with Win98 and 95? Do they require the Win32 API also?

Thanks

Paul C

Hans-Bernhard Broeker

unread,
Jun 1, 2005, 8:49:14 AM6/1/05
to
PaulCsouls <paulc...@worldnet.att.net> wrote:

> What about with Win98 and 95? Do they require the Win32 API also?

Not strictly for doing some graphics at all. But for what the
Subject: line requests, i.e. "Windows GUI Programming", yes, you do
have to use Win32 API. It's part of the definition of the task.

PaulCsouls

unread,
Jun 1, 2005, 3:40:00 PM6/1/05
to
On 1 Jun 2005 12:49:14 GMT, Hans-Bernhard Broeker
<bro...@physik.rwth-aachen.de> wrote:

>PaulCsouls <paulc...@worldnet.att.net> wrote:
>
>> What about with Win98 and 95? Do they require the Win32 API also?
>
>Not strictly for doing some graphics at all. But for what the
>Subject: line requests, i.e. "Windows GUI Programming", yes, you do
>have to use Win32 API. It's part of the definition of the task.

Thanks, I use DJGPP basically for testing circuit boards through the
serial or parallel ports. Right now I just use the command line, but
it would be nice to have a GUI and some graphical outputs. I have
considered learning Allegro to do this. I believe DJGPP and DOS are
still the best ways of accessing ports rather than fighting windows
with MinGW.

Paul C

Manuel Collado

unread,
Jun 2, 2005, 5:57:00 AM6/2/05
to
PaulCsouls escribió:

If you mainly need graphical output, then you can try just the GRX
graphics library distributed with DJGPP (in v2tk). I think GXR is used
by the DOS versions of gnuplot and MGUI, for instance.

BTW, the GRX website (http://www.gnu.de/software/GRX/) seems to have
been stolen/supplanted. Trying to connect to it simpy gives a picture of
the Andromeda galaxy (redirected to http://grx.gnu.de/).

arizvi

unread,
Jun 2, 2005, 10:23:03 AM6/2/05
to
Hi,

Thanks to you for your answers. I got more leads than I could probably
handle. Now to follow it up :) Btw, I believe that the lcc-win32
compiler can also be used for gui programming.

Thanks,
Ahmad

0 new messages