]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/pc/vgahiqvideo.c
kernel: cleanup the software mouse cursor mess
[plan9front.git] / sys / src / 9 / pc / vgahiqvideo.c
old mode 100755 (executable)
new mode 100644 (file)
index 6314e78..824d5db
@@ -50,37 +50,33 @@ hiqvideoenable(VGAscr* scr)
         */
        if(scr->mmio)
                return;
-       if(p = pcimatch(nil, 0x102C, 0)){
-               switch(p->did){
-               case 0x00C0:            /* 69000 HiQVideo */
-                       vmsize = 2*1024*1024;
+       p = scr->pci;
+       if(p == nil || p->vid != 0x102C)
+               return;
+       switch(p->did){
+       case 0x00C0:            /* 69000 HiQVideo */
+               vmsize = 2*1024*1024;
+               break;
+       case 0x00E0:            /* 65550 HiQV32 */
+       case 0x00E4:            /* 65554 HiQV32 */
+       case 0x00E5:            /* 65555 HiQV32 */
+               switch((hiqvideoxi(Xrx, 0x43)>>1) & 0x03){
+               default:
+               case 0:
+                       vmsize = 1*1024*1024;
                        break;
-               case 0x00E0:            /* 65550 HiQV32 */
-               case 0x00E4:            /* 65554 HiQV32 */
-               case 0x00E5:            /* 65555 HiQV32 */
-                       switch((hiqvideoxi(Xrx, 0x43)>>1) & 0x03){
-                       default:
-                       case 0:
-                               vmsize = 1*1024*1024;
-                               break;
-                       case 1:
-                               vmsize = 2*1024*1024;
-                               break;
-                       }
+               case 1:
+                       vmsize = 2*1024*1024;
                        break;
-               default:
-                       return;
                }
-       }
-       else
+               break;
+       default:
                return;
-
-       scr->pci = p;
+       }
        vgalinearpci(scr);
        
-       if(scr->paddr) {
+       if(scr->paddr)
                addvgaseg("hiqvideoscreen", scr->paddr, scr->apsize);
-       }
 
        /*
         * Find a place for the cursor data in display memory.
@@ -204,7 +200,7 @@ hiqvideocurenable(VGAscr* scr)
         * Load, locate and enable the 32x32 cursor.
         * Cursor enable in Xr80 better be set already.
         */
-       hiqvideocurload(scr, &arrow);
+       hiqvideocurload(scr, &cursor);
        hiqvideocurmove(scr, ZP);
        hiqvideoxo(Xrx, 0xA0, 0x11);
 }