Subject: Intvid Update
To: None <port-mac68k@NetBSD.ORG>
From: M.R. Zucca <mrz5149@cs.rit.edu>
List: port-mac68k
Date: 12/19/1996 14:07:48
Ok, I'm inching ever closer to a working video driver!

All the system calls that do stuff (like changing modes and colors) work like
a charm. Unfortunately, it seems like there is some kind of weird problem
with memory and mode information (odds are, these are linked).

First of all, the value of videorowbytes passed in from MacOS makes no sense
what-so-ever. For instance, say I boot into 8 bit color mode with my 640x480
VGA monitor. Rowbytes should categorically be 640 -> 0x280. 8 bits / pixel
640 pixels / row = 640 bytes / row. Strangely, the value of videorowbytes
is *always* 2048 -> 0x800. Even stranger is the fact that when I try to
"correct" this problem by changing videorowbytes to 0x280 the console draws
tiny little lines as though 2048 were the proper rowbytes for 640x480!!!
I've also noticed that ite.c has two kinds of rowbyte values: screenrowbytes
and videorowbytes. What, exactly, is videorowbytes?!?

So I ran some tests. If I have the grf driver return all the correct values
for rowbytes and size (rowbytes * height) and I try to run dt, it looks like
it starts to clear the screen to black but seg faults about an inch from the
top of the screen. Then I run the same test but I replace the proper rowbytes
value in the grf info structure with the videorowbytes information. Dt doesn't
seg fault but it draws bad lines like starting the console with correct
rowbytes information. Does dt expect videorowbytes but a proper screensize?

Neither of Tara's test programs, grftest and grftest1 draw to the screen
(but they do segfault). They run all of the calls before the actual
drawing but from there it's crash city. I think grfmap is not work properly
there either and I have a version of grftest that uses dt's mmap method.

Could somebody with a working video card + colorkit kernel please run both
of those programs and mail me a dump of stderr from those programs? I really
would like to know what the information structures are supposed to contain.

Thanks!

_______________________________________________________________________
 Michael Zucca - mrz5149@rit.cs.rit.edu - http://www.rit.edu/~mrz5149/
 "I will choose a path that's clear. I will choose Freewill. "
  --Rush, Freewill
_______________________________________________________________________