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

Is it possible for a DOS application to utilize a dual-monitor setup?

1,055 views
Skip to first unread message

98 Guy

unread,
Oct 25, 2008, 5:49:09 PM10/25/08
to
I've got a custom dos program that operates in 16-color VGA mode. It
communicates with an ISA hardware card directly (no DOS or windows
drivers).

It can be launched from windows-98, or (with the help of a port-mapper
wrapper) from XP.

Regardless if win-98 or XP, it runs in full-screen mode (ie I've never
been able to figure out how to get it to run in a window). If anyone
knows how a 16-bit DOS app that operates in VGA mode can be made to run
in a window, please tell me how.

Anyways, when a DOS app is run in full-screen mode on a PC with a
dual-monitor configuration, the display is duplicated on both screens.
Is there a way a DOS app can write independently to both screens (even
if it has to be in full-screen mode) where both screens are in VGA mode?

The APP is written in Power Basic and I have the source code.

Sjouke Burry

unread,
Oct 25, 2008, 6:25:28 PM10/25/08
to

If you have the sourcecode, see if the program is running
in one of the graphics modes, and see if you can change that.
As long as it in in graphics mode, you need full screen.
It is a bit hard to know the options, when we dont know,
what the program does.
If it just collects isa data and stores it, asci is oke.
If it needs the graphic interface, you have a problem.
Maybe you can use a cheap computer to run it, and share
disk i/o with the computer you need windows to be on.
That way you have access to its data.
But again , this is plain guessing, when we dont know
the application.

98 Guy

unread,
Oct 25, 2008, 7:19:50 PM10/25/08
to
Sjouke Burry wrote:

> > The APP is written in Power Basic and I have the source code.
>

> If it just collects isa data and stores it, asci is oke.
> If it needs the graphic interface, you have a problem.
> Maybe you can use a cheap computer to run it, and share
> disk i/o with the computer you need windows to be on.
> That way you have access to its data.

The program runs in VGA mode because it displays data traces using
point-set graphics commands. Why can't that mode run in a window?

Even if it has to run full-screen, is there a way that a DOS/power-basic
program can independantly access the video screens for a dual-monitor PC
and display different content on each? Both in VGA mode?

Sjouke Burry

unread,
Oct 25, 2008, 8:44:03 PM10/25/08
to

Those dos programs access vga hardware directly.
Maybe run it in a virtual machine(free from MS), you might
be able in that case to specify the dos screen properties
I have never used virtual machines, so for me it would be a
gamble, but even the vga screen might be virtual.
If your programming skills are up to it, you can do the screen plot
in asci art, dots in ~80 char lines, in which case you can
run in a window.
I would also suggest to delve into the two monitor modes, I am
surprised, that dos covers both screens, ailing memory tells me,
that there are two or more modes for utilizing the screen areas.
But again, i have only one monitor, so cant test.
Try to make your second monitor the primary one, and leave dos
to play with the primary vga.

Buck Huffman

unread,
Oct 31, 2008, 8:56:42 PM10/31/08
to
98 Guy wrote:
> I've got a custom dos program that operates in 16-color VGA mode. It
> communicates with an ISA hardware card directly (no DOS or windows
> drivers).
>
> It can be launched from windows-98, or (with the help of a port-mapper
> wrapper) from XP.
>
> Regardless if win-98 or XP, it runs in full-screen mode (ie I've never
> been able to figure out how to get it to run in a window). If anyone
> knows how a 16-bit DOS app that operates in VGA mode can be made to run
> in a window, please tell me how.
>

Have you tried dosbox (available at http://www.dosbox.com ). I believe it
will run 16-bit dos apps in vga mode in a window and even supports some
VESA svga modes.


buck

98 Guy

unread,
Nov 1, 2008, 9:53:41 AM11/1/08
to
Buck Huffman wrote:

> Have you tried dosbox (available at http://www.dosbox.com ).

I downloaded and installed Dosbox on a win-98 computer last night.

When I run it, I get a blue screen error -> Fatal Exception 00 has
occured in VXD VDD(09).

I posted my experience in the dosbox forum at "vogons.zetafleet.com"
(what the hell is that?) and so far I've only got 1 unhelpful reply -
"Probably video card drivers.".

PS: Upon my very next reboot of the system after installing dosbox,
win-98 would not start. I forget the error message (displayed while
still in text mode before the GUI is brought up). I restored a previous
version of the registry to bring the system back up.

I don't know if trust this dosbox thing.

In any case, being able to run a 16-bit VGA-mode DOS app in window (as
opposed to full screen only) is interesting, but what I really want is
to have the DOS app render different content on each monitor connected
to a 2-monitor system. It's ok if both screens are (or must be) in
full-screen mode.

I've asked (in the PowerBasic/Dos forum) if it's possible for PB to do
that, and the only response said - no.

The next best thing would be this: Given a 2-monitor system, when a DOS
app is launched that must run in full screen mode, that the other
monitor DOES NOT also render the same content (ie a duplicate) but
instead that the other monitor remains in "windows mode", thereby
allowing a windows app to run concurrently on monitor 2 while the DOS
app runs in full-screen mode on monitor 1 (or vice-versa).

Klaus Meinhard

unread,
Nov 1, 2008, 12:34:20 PM11/1/08
to
98 Guy wrote:

> The next best thing would be this: Given a 2-monitor system, when a
> DOS app is launched that must run in full screen mode, that the other
> monitor DOES NOT also render the same content (ie a duplicate) but
> instead that the other monitor remains in "windows mode", thereby
> allowing a windows app to run concurrently on monitor 2 while the DOS
> app runs in full-screen mode on monitor 1 (or vice-versa).

I think you're in the wrong newsgroup. I have no personal experience
with 2-monitor systems, but I know DOS can't handle this (DOS is a
single task OS. Its output is typically a 80x25 character screen. with
some variations like 80x50 and primitive graphics as an often
ill-supported option).

2-monitor systems are possible under WinXP, depending on the videocard
and driver. I don't know how these handle applications that demand
full-screen, but you'll have more reliable answers in a XP newsgroup.

--
* Klaus Meinhard *
4DOS Info - Info for DOS
www.4dos.info


98 Guy

unread,
Nov 1, 2008, 4:40:04 PM11/1/08
to
Klaus Meinhard wrote:

> I think you're in the wrong newsgroup. I have no personal
> experience with 2-monitor systems,

They're very common these days.

> but I know DOS can't handle this

But I'm not in DOS. I'm running a DOS app from Windows.

> DOS is a single task OS.

yes.

> Its output is typically a 80x25 character screen.

In text mode. It can also be in a graphics mode, like 320x200, or
640x480.

> with some variations like 80x50 and primitive graphics as an often

> ill-supported option.

Ill-supported ?!

Various graphics modes were fully supported in MS-Basic back in early
DOS (MS or IBM dos 3.3 or there abouts). Support for these primative
graphics modes started when the CGA card was introduced. 640 x 480 x 16
colors is the default mode for windows (3.x, 9x, perhaps ME) when no
video drivers have been installed, or when operating in safe mode. 640
x 480 x 16 is perhaps the highest-res mode supported by the bios (PC, XT
or AT bios that is). Don't give me that crap that those modes are
"ill-supported".

> 2-monitor systems are possible under WinXP,

Actually, multi-monitor (multi-video adapter actually) systems
originated with windows 98 (perhaps windows 95 - I could be wrong about
that). Under win-98, you can have as many video adapters as you have
PCI/AGP slots, and you can span your desktop across all of them.

Buck Huffman

unread,
Nov 1, 2008, 11:16:58 PM11/1/08
to
98 Guy wrote:
> Buck Huffman wrote:
>
>> Have you tried dosbox (available at http://www.dosbox.com ).
>
> I downloaded and installed Dosbox on a win-98 computer last night.
>
> When I run it, I get a blue screen error -> Fatal Exception 00 has
> occured in VXD VDD(09).
>
> I posted my experience in the dosbox forum at "vogons.zetafleet.com"
> (what the hell is that?) and so far I've only got 1 unhelpful reply -
> "Probably video card drivers.".
>
> PS: Upon my very next reboot of the system after installing dosbox,
> win-98 would not start. I forget the error message (displayed while
> still in text mode before the GUI is brought up). I restored a previous
> version of the registry to bring the system back up.
>
> I don't know if trust this dosbox thing.

I'm sorry to hear that you had problems with dosbox, I've successfully
used multiple versions of dosbox in win2000, xp, vista and more versions
of Linux than I can shake a stick at, and have never had any hard
crashes or boot failures resulting from its proper use. but I've never
used it on a win9x/me system. Most probably it's not being actively
developed for these platforms since they already provide very good
support for dos based apps. what a drag.

>
> In any case, being able to run a 16-bit VGA-mode DOS app in window (as
> opposed to full screen only) is interesting, but what I really want is
> to have the DOS app render different content on each monitor connected
> to a 2-monitor system. It's ok if both screens are (or must be) in
> full-screen mode.
>
> I've asked (in the PowerBasic/Dos forum) if it's possible for PB to do
> that, and the only response said - no.
>
> The next best thing would be this: Given a 2-monitor system, when a DOS
> app is launched that must run in full screen mode, that the other
> monitor DOES NOT also render the same content (ie a duplicate) but
> instead that the other monitor remains in "windows mode", thereby
> allowing a windows app to run concurrently on monitor 2 while the DOS
> app runs in full-screen mode on monitor 1 (or vice-versa).

the only easy dual monitor support I've seen in dos was to use two video
cards, one vga and one monochrome, these cards use different regions of
of the upper memory area for writing to the screen, making it possible
for a program to use both cards at the same time. Too bad thats not
possible with two vga cards. Another possibility might be the powerbasic
console compiler, it's supposed to be easier to port pbdos apps to this
windows console version of pb than to the windows gui version. The
newest pbcc has some graphics capabilities I believe, it could be worth
looking into, depending on how much time your willing to invest in this
effort and your programming abilities.

buck

Klaus Meinhard

unread,
Nov 2, 2008, 4:29:56 AM11/2/08
to
Hi 98 Guy

> > I think you're in the wrong newsgroup. I have no personal
> > experience with 2-monitor systems,

> Actually, multi-monitor (multi-video adapter actually) systems


> originated with windows 98 (perhaps windows 95 - I could be wrong
> about that). Under win-98, you can have as many video adapters as
> you have PCI/AGP slots, and you can span your desktop across all of
> them.

Fine. The essence of what I said is above: wrong newsgroup. I don't know
the OS the OP is using. I suspect XP, that's why I suggested a XP group.


--
Mit freundlichem Gruß,

Klaus Meinhard


Bill H

unread,
Nov 2, 2008, 7:13:52 AM11/2/08
to

I could be wrong - But I recall in 3.1 and in 95, running programs
written and compiled in turbo basic that used vga routines and ran in
windows, not full screen. Is it possible that powerbasic is going
straight to the video card and not through the bios?

Bill H

98 Guy

unread,
Nov 2, 2008, 8:44:15 AM11/2/08
to
Klaus Meinhard wrote:

> The essence of what I said is above: wrong newsgroup. I don't know
> the OS the OP is using. I suspect XP, that's why I suggested a XP
> group.

I am the OP.

The point of this thread was to ask 2 questions:

1) Can a DOS program render different content on each monitor on
dual-monitor systems when launched from DOS, or Win-98, or Win-XP, and

2) Can a DOS program that runs in VGA mode be run in a fixed or
variable-sized window when launched from either win-98 or XP.

It's highly likely that these questions would not be answerable (or
would get swamped by the sheer volume of posts) in XP-centric
newsgroups. Hence why I chose to post here in a DOS-based group.

98 Guy

unread,
Nov 2, 2008, 8:54:29 AM11/2/08
to
Bill H wrote:

> I could be wrong - But I recall in 3.1 and in 95, running programs
> written and compiled in turbo basic that used vga routines and ran
> in windows, not full screen.

A DOS program that sets the video mode to text mode can run in a
variable-sized window on win-98 or XP.

A DOS program that sets the video mode to a graphics mode (usually 640 x
480 x 16) must be run in full-screen mode under windows.

What windows (both 9x and nt/XP) lacks is a way to emulate VGA graphics
modes in a DOS box or window.

> Is it possible that powerbasic is going straight to the video card
> and not through the bios?

Highly unlikely, but I'll ask.

Michael Mattias

unread,
Nov 2, 2008, 9:52:42 AM11/2/08
to
"Bill H" <bi...@ts1000.us> wrote in message
news:b515b1ee-3804-429d...@r15g2000prh.googlegroups.com...

On Nov 1, 3:40 pm, 98 Guy <9...@Guy.com> wrote:
> Klaus Meinhard wrote:
> > I think you're in the wrong newsgroup. I have no personal
> > experience with 2-monitor systems,
>
> They're very common these days.
>
> > but I know DOS can't handle this
>
> But I'm not in DOS. I'm running a DOS app from Windows.

???

But you want MS-DOS behavior. Please pick one and only one operating
system. AFAIK there is no "one from column A, one from column B" operating
system; however, a 'column' option is available at many Chinese restaurants.

MCM

98 Guy

unread,
Nov 2, 2008, 10:30:06 AM11/2/08
to
Michael Mattias wrote:

> > But I'm not in DOS. I'm running a DOS app from Windows.
>
> ???
>
> But you want MS-DOS behavior.

Um - no. I already have "MS-DOS behavior" when I run a 16-bit DOS app
under windows.

What I want to know is:

a) can I run an 16-bit DOS app that uses VGA graphics mode in a scalable
window under win-98 or XP?

b) if (a) is not possible (ie if the DOS app must run in full-screen
mode when launched from Windows 98 or XP) Then can the DOS app run in
full-screen mode on monitor 1, and the Windows desktop remains visible
and usable on monitor 2 on a dual-monitor system?

c) in any case, can a 16-bit DOS app (running in full-screen mode under
windows 98 or XP) create or render different content to each of 2
monitors on a dual-monitor system?

Todd Vargo

unread,
Nov 2, 2008, 6:53:40 PM11/2/08
to

From the responses, ISTM, the answers to these questions are...

a) NO.
b & c) Nobody has ever tried before, so no one knows.

--
Todd Vargo
(Post questions to group only. Remove "z" to email personal messages)

David Kerber

unread,
Nov 3, 2008, 12:18:06 PM11/3/08
to
In article <490DAEAF...@Guy.com>, 9...@Guy.com says...

> Klaus Meinhard wrote:
>
> > The essence of what I said is above: wrong newsgroup. I don't know
> > the OS the OP is using. I suspect XP, that's why I suggested a XP
> > group.
>
> I am the OP.
>
> The point of this thread was to ask 2 questions:
>
> 1) Can a DOS program render different content on each monitor on
> dual-monitor systems when launched from DOS, or Win-98, or Win-XP, and

If you have enough programming ability, I'm sure you could get it to
work, but you would essentially have to duplicate the functions of a
windows video driver, in your DOS program. ISTM you would have to make
all the low level hardware calls to the video card to make it display
what you want, where you want. Probably not realistic unless this is a
really expensive software package.


> 2) Can a DOS program that runs in VGA mode be run in a fixed or
> variable-sized window when launched from either win-98 or XP.

I've never seen one that could, though that doesn't mean they don't
exist.

....

--
/~\ The ASCII
\ / Ribbon Campaign
X Against HTML
/ \ Email!

Remove the ns_ from if replying by e-mail (but keep posts in the
newsgroups if possible).

0 new messages