Subject: Re: PCVT vs. XFree86 3.1.x
To: None <mike.long@analog.com>
From: Hellmuth Michaelis <hm@hcs.de>
List: port-i386
Date: 08/24/1995 16:52:44
>From the keyboard of Mike Long:

> >In general, Xfree86 has the complete control and knowledge of storing and
> >restoring the VGA Chip registers and (!) clock generator values, so pcvt is
> >not involved in this process.
> 
> I do NOT see this problem under 3.1.2/Mach32/pccons/NetBSD-current-950821.
> 
> It's probably still be a bug in the Mach32 server, but pcvt tickles it
> and pccons does not.

Yes, you are right in that pcvt tickles it and pccons does not: pccons is not
even able to tickle this because pccons does not implement the mechanisms to
switch between vt's, so it cannot tickle it ;-)

But i have to admit that i'm not such an Xfree86 insider, so i don't know
the difference in the Xserver code or actions between switching between
vt's (the pcvt case) and getting in and out of Xfree86 (the pccons case).

To switch between a character mode vt and an Xfree86 vt the complete control
is inside the Xserver, which does

	- save the complete VGA board (VGA chip AND clock gen) state of
		 the character vt
	- switch the VGA board to the configured mode to run Xfree

When switching back to the character vt from X the Xserver (!) does

	- restore the complete charmode VGA board state

The complete knowledge of the state of the board in the Xfree mode AND the
character mode is in the Xserver, not in pcvt !!!

Because of this, it is i.e. not possible for pcvt to switch back to character
mode if there is a panic while the system is running an Xserver, it simply
does not know how to do it, because this knowledge is buried in the runtime
data structures of the Xserver.

So the problem you see is to my understanding a bug in the Xserver which does
not store and/or restore some bits of your VGA chipset and/or (more likely
if the board happenes to have a programmable clock generator) the clock
generator chip.

Anyway, it still might be possible that somehow somewhere pcvt is the cause
or involved in the cause of the problem and i'd be happy to fix it, but since
i don't own a Mach32 board, i need some help of you owners of such a beast :-)

hellmuth
-- 
Hellmuth Michaelis    HCS Hanseatischer Computerservice GmbH    Hamburg, Europe
                       "There are lies, damn lies, and open systems." (unknown)