| plan 9 kernel history: overview | file list | diff list |
2003/0326/pc/vganvidia.c (diff list | history)
| 2002/0502/sys/src/9/pc/vganvidia.c:24,53 – 2003/0326/sys/src/9/pc/vganvidia.c:24,30 (short | long | prev | next) | ||
| 2001/0404 | hwCurImage = Pramin + (0x00010000 - 0x0800), }; | |
| 2002/0409 |
| |
| 2002/0502 |
| |
| 2001/0404 |
| |
| 2003/0326 | /* Nvidia is good about backwards compatibility -- any did > 0x20 is fine */ | |
| 2001/0404 | static Pcidev* nvidiapci(void) { | |
| 2002/0502/sys/src/9/pc/vganvidia.c:54,70 – 2003/0326/sys/src/9/pc/vganvidia.c:31,43 | ||
| 2001/0404 | Pcidev *p; ushort *did; | |
| 2003/0326 | p = nil; while((p = pcimatch(p, 0x10DE, 0)) != nil) if(p->did > 0x20 && p->ccrp == 3) /* video card */ | |
| 2001/0404 | return p; | |
| 2002/0502/sys/src/9/pc/vganvidia.c:82,88 – 2003/0326/sys/src/9/pc/vganvidia.c:55,61 | ||
| 2001/0404 | *size = p->mem[1].size; } | |
| 2003/0326 | if(wasupamem){ | |
| 2001/0404 | if(oaperture == aperture) return oaperture; upafree(oaperture, oapsize); | |
| 2002/0502/sys/src/9/pc/vganvidia.c:123,129 – 2003/0326/sys/src/9/pc/vganvidia.c:96,102 | ||
| 2001/0404 | return; scr->io = upamalloc(p->mem[0].bar & ~0x0F, p->mem[0].size, 0); | |
| 2003/0326 | if(scr->io == 0) | |
| 2001/0404 | return; | |
| 2001/0908 | addvgaseg("nvidiammio", scr->io, p->mem[0].size); | |
| 2001/0404 | ||
| 2002/0502/sys/src/9/pc/vganvidia.c:130,136 – 2003/0326/sys/src/9/pc/vganvidia.c:103,109 | ||
| 2001/0404 | size = p->mem[1].size; align = 0; aperture = nvidialinear(scr, &size, &align); | |
| 2003/0326 | if(aperture){ | |
| 2001/0404 | scr->aperture = aperture; scr->apsize = size; | |
| 2001/0908 | addvgaseg("nvidiascreen", aperture, size); | |
| 2002/0502/sys/src/9/pc/vganvidia.c:161,176 – 2003/0326/sys/src/9/pc/vganvidia.c:134,149 | ||
| 2001/0404 | p = KADDR(scr->io + hwCurImage); | |
| 2003/0326 | for(i=0; i<16; i++) { | |
| 2001/0404 | c = (curs->clr[2 * i] << 8) | curs->clr[2 * i+1]; s = (curs->set[2 * i] << 8) | curs->set[2 * i+1]; tmp = 0; | |
| 2003/0326 | for (j=0; j<16; j++){ | |
| 2001/0404 | if(s&0x8000) tmp |= 0x80000000; else if(c&0x8000) tmp |= 0xFFFF0000; | |
| 2003/0326 | if (j&0x1){ | |
| 2001/0404 | *p++ = tmp; tmp = 0; } else { | |
| 2002/0502/sys/src/9/pc/vganvidia.c:258,264 – 2003/0326/sys/src/9/pc/vganvidia.c:231,237 | ||
| 2001/0824 | pgraph = KADDR(scr->io + Pgraph); x = 0; | |
| 2003/0326 | while(pgraph[0x00000700/4] & 0x01 && x++ < 1000000) | |
| 2001/0824 | ; if(x >= 1000000) | |
| 2002/0502/sys/src/9/pc/vganvidia.c:274,280 – 2003/0326/sys/src/9/pc/vganvidia.c:247,253 | ||
| 2001/0824 | x = 0; fifofree = KADDR(scr->io + Fifo + fifo + 0x10); | |
| 2003/0326 | while(((*fifofree >> 2) < entries) && x++ < 1000000) | |
| 2001/0824 | ; if(x >= 1000000) | |
| 2002/0502/sys/src/9/pc/vganvidia.c:328,334 – 2003/0326/sys/src/9/pc/vganvidia.c:301,307 | ||
| 2001/0824 | seq1 = vgaxi(Seqx, 1) & ~0x20; crtc1A = vgaxi(Crtx, 0x1A) & ~0xC0; | |
| 2003/0326 | if(blank){ | |
| 2001/0824 | seq1 |= 0x20; | |
| 2001/0901 | // crtc1A |= 0xC0; crtc1A |= 0x80; | |