ftp.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2011/03/03/04:45:07.1

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: "Rod Pemberton" <do_not_have AT notreplytome DOT cmm>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: csdpmi7 not working on virtualbox, how use dosmemget with seg ofs from int21h?
Date: Thu, 3 Mar 2011 04:32:22 -0500
Organization: Aioe.org NNTP Server
Lines: 60
Message-ID: <iknmvv$1nq$1@speranza.aioe.org>
References: <39cdc18e-eccb-4213-b896-db3be020702e AT w9g2000prg DOT googlegroups DOT com>
NNTP-Posting-Host: sg0uvLzlDfZOqmCSVnJXCA.user.speranza.aioe.org
X-Complaints-To: abuse AT aioe DOT org
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.2001
X-Notice: Filtered by postfilter v. 0.8.2
X-Newsreader: Microsoft Outlook Express 6.00.2800.2001
X-Priority: 3
X-MSMail-Priority: Normal
Bytes: 3293
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Jim Michaels" <jmichae3 AT yahoo DOT com> wrote in message
news:39cdc18e-eccb-4213-b896-db3be020702e AT w9g2000prg DOT googlegroups DOT com...
> -------------------
> also, just like it says in http://www.delorie.com/djgpp/v2faq/faq6_2.html
> I am getting the "No DPMI" message.  the way I dealt with that was to
> gcc whatever -o a.exe something.cpp
> exe2coff a.exe
> copy /b cwsdstub.exe+a something.exe
> del a
> del a.exe
>

DJGPP binds a stub executables.  It doesn't bind a DPMI host.  The stub
switches from 16-bit RM to 32-bit RM and loads a DPMI host too.  You
shouldn't need to do this manually.  Although, you also need CWSDPMI.EXE in
the same directory, or in one of the DOS PATH directories.  You can change
the DPMI host to another DJGPP compatible one, e.g., PMODETSR.EXE, with
STUBEDIT.EXE, or re-stub an unstubbed .exe, via EXE2COFF, with STUBIFY.EXE.

> this kind of executable does not work on virtualbox.  I followed the
> csdpmi7b documentation explicitly.
>

I'm not familiar with VirtualBox.  If another DPMI host is installed, e.g.,
like a Windows 98 dosbox, DJGPP executables will use the installed host and
not CWSDPMI.

> I get "No DPMI" when I run it under FreeDOS 1.0 under virtualbox.  Do
> you know why this might be?
>

1) Is CWSDPMI.EXE there?
2) Is CWSDPMI.EXE in one of the directories on the DOS PATH variable?  Type
"set" at the prompt.  Look for "PATH=".
3) If you run CWSDPMI.EXE first, then run your .exe, does your .exe execute?
4) If you run STUBEDIT.EXE on your .exe, does it say CWSDPMI.EXE for the
DPMI host?  That's the fifth setup parameter.  Hit return.
5) Is there another DPMI host loaded that isn't compatible with DJGPP
applications?  E.g., DJGPP DPMI hosts: CWSDPMI.EXE, CWSDPR0.EXE and
PMODETSR.EXE are compatible.  WDOSX and D3X are compatible.  Most aren't.
6) Is there an issue with FreeDOS, or DPMI support with VirtualBox?

> side comment: I had hoped the DPMI server would have been built into
> the executables and I wouldn't have to make these extra build steps
> using a batch file for all software I make.
>

You can unstub them and restub with a different DPMI host, e.g., perhaps
with WDOSX STUBIT or D3X STUBX (usually mentioned by Rugxulo...), etc.  I'm
not sure if they do a full DPMI bind, or you need the host present like
DJGPP's normal stub.  You'll have to download them and read their
documentation.

post 3 of 3.


Rod Pemberton



- Raw text -


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