Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!emory!att!cbnewsh!rkl From: rkl@cbnewsh.att.com (kevin.laux) Newsgroups: comp.os.msdos.programmer Subject: Re: Dual Monitor Switching Message-ID: <1991Mar12.140842.63@cbnewsh.att.com> Date: 12 Mar 91 14:08:42 GMT References: <1991Mar11.172914.4450@engin.umich.edu> <18203@milton.u.washington.edu> Distribution: na Organization: AT&T Bell Laboratories Lines: 46 In article <18203@milton.u.washington.edu>, roger@wrq.com (Roger Fulton) writes: > In article <1991Mar11.172914.4450@engin.umich.edu> pong@caen.engin.umich.edu (Bryan John Jalowitz) writes: > > > >Hi, > >I would like to know how, from within an application, I can switch > >monitors in a dual configuration. I would like something similar to > >"mode mono" vs. "mode co80", but that does not clear the display. > > > >More specifically, I am using a VGA/HERC dual monitor configuration, > >and I would like to be able to route text/graphics to one or the other > >display systems. I know about setting the mode with int 10h func 0, > >but there appears to be more to it than that. That doesn't "switch" the > ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ > >video bios' notion of the current display. > > Yes, there is. In addition to setting the video mode, > you need to also update the equipment flag at 0040:0010 > appropriately: xx10xxxx for color, xx11xxxx for mono > (where 'x' means leave it alone). Also, you should account > for the fact that color systems have a different maximum > cursor line count than mono systems (so you should save and > restore the cursor when changing video modes). Yes, there is but this is not it! Those bits in the equipment flag word are for the *INITIAL* video mode. Changing those bits will *not* effect a display adapter switch. As I answered in alt.msdos.programmer, what's missing is Int 10h, Function 12h, Subfunction 35h: AH: 12h BL: 35h AL: 0 Initial external adapter off 1 Initial VGA on 2 Active adapter off 3 Inactive adapter on ES: Segment of Switch State area DX: Offset of Switch State area The first time display adapters are switched call the subfunction with AL=0, then again with AL=1. Thereafter, double calls with AL=2,3 are used. The Switch State area is a 128 byte buffer and each display needs its own. -- ________________________________________________________________________________ R. Kevin Laux Email: rkl1@hound.att.com AT&T Bell Labs Voice: (908) 949-1160 Holmdel, NJ 07733 Fax: (908) 949-0959