Subject: VS2000 graphics console questions
To: Nathan Schepers <nscheper@smyrno.foundation.ca>
From: Bertram Barth <bertram@ifib.uni-karlsruhe.de>
List: port-vax
Date: 03/10/1998 09:48:45
Nathan Schepers writes:
> 	All I've done so far is to put some graphics console stuff into
> the dzcnputc() call in dzcons.c.  What I do is write the character passed
> to dzcnputc() to video memory in the right place (& deal with scrolling
> and BackSpace, etc). I'm still using my VT220 as a terminal, of course,
> but now I get nice big letters on my monitor as well. (Well, they're not
> that big.  I guess I'm getting fairly small letters on my nice big monitor
> ...) 
> 
> 	The problem is this:  if I try to map too much of the video
> memory (a little past half, I think), I get a kernel panic with 
> 
> kmem_suballoc: bad status return of 3.
> panic: kmem_suballoc

Try putting the mapping into sys/arch/vax/vax/ka410.c, there's already
a struct prepared for these things, named "uc_map ka410_map", all you
have to add is base, end and size of the physical address range to be
mapped, the 4th value for the virtual base address will be filled in by 
the  low-level initialization.
Later on you can use uvax_phys2virt() to convert physical addresses into
valid VM-pointer into to the mapped area, ie. uvax_phys2virt(phys-address) 
will give you back a valid (ie. usable) address/pointer into virtual-memory.

BTW: the mapped area is also continous.

Ciao,
	bertram