🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.os.msdos.programmer
Article #5552

Re: Dual Monitor Switching

#5552
From: kevin.laux
Date: Wed, 13 Mar 1991 14:21
44 lines
2501 bytes
In article <1991Mar12.175839.1687@engin.umich.edu>, pong@caen.engin.umich.edu (Bryan John Jalowitz) writes:
> In article <1991Mar12.133739.28811@cbnewsh.att.com> rkl@cbnewsh.att.com (kevin.laux) writes:
> >
> >	You're missing Int 10h Function 12h Subfunction 35h, the Display
> >Switch Interface.
> >
> >	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 you switch displays you must use AL=0,1.  After that,
> >you use a double call to AL=2,3.  The Switch state area is a 128 byte buffer
> >and each display needs it own.
> >
> My documentation ("Programmer's guide to PC & PS/2 video systems", Microsoft
> Press) says that this function is for PS/2 video systems.  I tried it 
> anyway, in case the book's information was old, however I do not get a
> successful return value.  I am using an AT clone with both cards on an
> ISA bus.  Should this still apply?
> 
> Any other ideas?

	The book says that subfunction 35h was provided for PS/2 systems with
a VGA along with the built-in MCGA.  It does *not* say that it works *only*
on PS/2 systems.  In Chapter 13 (pg 269) under the ROM BIOS Services Summary,
the Notes for this subservice say only MCGA, VGA.  It is clearly a VGA
function (since one would add a VGA to the already existing MCGA in the PS/2
case).  Not all VGA cards/BIOS's support all functions.  Looks like yours
doesn't since AL!=12h after the call.

	I suppose one could play with the bits in 40:87h through 40:89h, in
particular, 40:87h bit 3 (0 = VGA system active, 1 = not active), and 40:89h
bit 6 (0 = display switching disabled, 1 = enabled).

-- 
________________________________________________________________________________
	R. Kevin Laux				Email: rkl1@hound.att.com
	AT&T Bell Labs				Voice: (908) 949-1160
	Holmdel, NJ 07733			Fax:   (908) 949-0959
Technical Details
Message-ID: <1991Mar13.142156.2473@cbnewsh.att.com>
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!lethe!telly!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!cbnewsh!rkl
References: <1991Mar11.172914.4450@engin.umich.edu> <1991Mar12.175839.1687@engin.umich.edu>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!censor!geac!lethe!telly!attcan!uunet!samsung!zaphod.mps.ohio-state.edu!pacific.mps.ohio-state.edu!linac!att!cbnewsh!rkl
From: rkl@cbnewsh.att.com (kevin.laux)
Newsgroups: comp.os.msdos.programmer
Subject: Re: Dual Monitor Switching
Message-ID: <1991Mar13.142156.2473@cbnewsh.att.com>
Date: 13 Mar 91 14:21:56 GMT
References: <1991Mar11.172914.4450@engin.umich.edu> <1991Mar12.175839.1687@engin.umich.edu>
Distribution: na
Organization: AT&T Bell Laboratories
Lines: 44