From: okamoto@granite.cias.osakafu-u.ac.jp
To: 9fans@cse.psu.edu
Subject: [9fans] GeForece4 MX (Inno3D Tornedo)
Date: Tue, 15 Apr 2003 16:25:05 +0900 [thread overview]
Message-ID: <d073b14da3501cb93397020209412a40@granite.cias.osakafu-u.ac.jp> (raw)
Hi,
I'm trying to use a GeForce 4 MX 440 (did=0x171) card, and
have problem.
New vgabvidia.c detects this GeForece 4 card successfully,
and run rio etc in a sence.
When I run it, my display (1376x1024x32, mf5421) shows
a smaller two separate window horizontally. Vertically, it's
normal. I think I'm using wrong horizontal timing, however,
how I can fix this? Itried to tune the display's control panel,
but it's beyond the control range.
Below is a small fix to /sys/src/9/pc/vganvidia.c to avoid
strange cursor shape for this card. I'd be happy if it could
be included in the source tree.
Kenji
------------cut here-----------
static void
nvidiacurload(VGAscr* scr, Cursor* curs)
{
ulong* p;
int i,j;
ushort c,s;
ulong tmp;
Pcidev *pd; /* K.Okamoto for Geforece4 MX */
if(scr->io == 0)
return;
vgaxo(Crtx, 0x31, vgaxi(Crtx, 0x31) & ~0x01);
p = KADDR(scr->io + hwCurImage);
for(i=0; i<16; i++) {
pd = nvidiapci();
if(pd->did == 0x171) { /* for Geforece4 MX bug, K.Okamoto */
c = (curs->clr[2 * i+1] << 8) | curs->clr[2 * i];
s = (curs->set[2 * i+1] << 8) | curs->set[2 * i];
} else {
c = (curs->clr[2 * i] << 8) | curs->clr[2 * i+1];
s = (curs->set[2 * i] << 8) | curs->set[2 * i+1];
}
tmp = 0;
for (j=0; j<16; j++){
if(s&0x8000)
tmp |= 0x80000000;
else if(c&0x8000)
tmp |= 0xFFFF0000;
if (j&0x1){
*p++ = tmp;
tmp = 0;
} else {
tmp>>=16;
}
c<<=1;
s<<=1;
}
for (j=0; j<8; j++)
*p++ = 0;
}
for (i=0; i<256; i++)
*p++ = 0;
scr->offset = curs->offset;
vgaxo(Crtx, 0x31, vgaxi(Crtx, 0x31) | 0x01);
return;
}
------cut here------
next reply other threads:[~2003-04-15 7:25 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-04-15 7:25 okamoto [this message]
2003-04-15 8:34 ` okamoto
2003-04-15 9:59 ` okamoto
2003-04-15 15:23 ` Russ Cox
2003-04-16 0:50 ` okamoto
2003-04-16 1:36 ` okamoto
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=d073b14da3501cb93397020209412a40@granite.cias.osakafu-u.ac.jp \
--to=okamoto@granite.cias.osakafu-u.ac.jp \
--cc=9fans@cse.psu.edu \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).