Subject: Re: PowerBook video mirroring?
To: NetBSD/macppc list <port-macppc@netbsd.org>
From: John Valdes <valdes@uchicago.edu>
List: port-macppc
Date: 03/21/2001 22:51:00
On Wed, Mar 21, 2001 at 01:47:42PM +0000, thomas graichen wrote:
> John Valdes <valdes@uchicago.edu> wrote:
> > Anyone know if it is possible to do video mirroring (ie, display the
> > same image on an internal laptop LCD and an external monitor) under
> > NetBSD/X?  This is on a PowerBook G3 Lombard, running NetBSD 1.5 and
> > XFree86 4.0.  This PowerBook uses an ATI 3D Rage LT Pro.
> 
> there is some mirror tool for linux - maybe it is a start - you
> should find it somewhere behind www.penguinppc.org i think

I saw that, though in a thread about this on comp.os.linux.powerpc (I
think), someone mentioned that it only worked on the PB G3 Pismo.  I
downloaded the code anyway, and all it does is mmap() /dev/mem and
what looks like a bunch of memory stores to hardcoded memory offsets
(presumedly manipulating the registers in the ATI controller; it uses
"lwbrx" and "stwbrx" instructions, but I'm not up on PowerPC assembly,
so I'm not sure what these do...).  I'm guessing the addresses it uses
would be hardware and/or OS dependent.  I'm also guessing this
wouldn't work on the Lombard or NetBSD, but admittedly, I haven't
tried it yet.

I've noticed that if I boot my PB into Linux and then plug in a
monitor, the LCD is already being mirrored out the external VGA port
(with NetBSD, the monitor remains blank w/o a signal under this same
experiment).  Testing this further, I find the external VGA port is
enabled immediately after the Linux kernel loads and begins to
execute, so something in the kernel is turning it on (early, too).
I'll have to comb through the linux kernel code to see if I can find
anything relevant.

Any further suggestions on where to look or things to try are of
course most welcome. :)

John