From dlm40629@uxa.cso.uiuc.edu Mon Nov 1 16:49:47 EST 1993 Article: 2169 of comp.os.linux.development Path: samba.oit.unc.edu!concert!news-feed-2.peachnet.edu!darwin.sura.net!paladin.american.edu!howland.reston.ans.net!vixen.cso.uiuc.edu!uxa.cso.uiuc.edu!dlm40629 From: dlm40629@uxa.cso.uiuc.edu (Daniel L. Marks) Newsgroups: comp.os.linux.development Subject: *PATCH* AMI BIOS Super VGA 132x43 132x25 video support Date: 28 Oct 1993 05:09:55 GMT Organization: University of Illinois at Urbana Lines: 97 Message-ID: <2ank73$foh@vixen.cso.uiuc.edu> NNTP-Posting-Host: uxa.cso.uiuc.edu This is a patch that is for video cards with an AMI BIOS to do 132x43 and 132x25 resolutions. I personally have a localbus S3, though it really does not matter because the BIOS sets up all of the VGA registers. If you have problems, or a different BIOS signature, let me know. Patch the file /usr/src/linux/boot/setup.S This diff is for 99pl13 but it should work with earlier patchlevels. Use at your own risk, no flames please, blah blah blah. Maybe it will make it into a kernel version someday! :) Daniel Marks dlm40629@uxa.cso.uiuc.edu *** setup.S Wed Oct 27 23:46:59 1993 --- setup.S.old Wed Oct 27 23:55:56 1993 *************** *** 390,410 **** int 0x10 ! turn on cursor (scan lines 11 to 12) pop ds mov ax,#0x501c ! return 80x28 ret /* svga modes */ ! svga: cld ! Check for S3 AMI BIOS card ! lea si,idAMIBIOS ! at C000:0008, 21 byte long ! mov di,#0x008 ! signature ! mov cx,#21 ! repe ! cmpsb ! jne namibi ! (dlm40629@uxa.cso.uiuc.edu) ! isami: lea si,dscamibios ! lea di,moamibios ! br selmod ! namibi: cld lea si,idf1280 ! Check for Orchid F1280 (dingbat@diku.dk) mov di,#0x10a ! id string is at c000:010a mov cx,#0x21 ! length repe cmpsb --- 390,400 ---- int 0x10 ! turn on cursor (scan lines 11 to 12) pop ds mov ax,#0x501c ! return 80x28 ret /* svga modes */ ! svga: cld lea si,idf1280 ! Check for Orchid F1280 (dingbat@diku.dk) mov di,#0x10a ! id string is at c000:010a mov cx,#0x21 ! length repe cmpsb *************** *** 815,825 **** idgenoa: .byte 0x77, 0x00, 0x99, 0x66 idparadise: .ascii "VGA=" idoakvga: .ascii "OAK VGA " idf1280: .ascii "Orchid Technology Fahrenheit 1280" idVRAM: .ascii "Stealth VRAM" - idAMIBIOS: .ascii "AMI-VGA-BIOS, (C) AMI" ! Manufacturer: Numofmodes+2: Mode: ! Number of modes is the number of chip-specific svga modes plus the extended ! modes available on any vga (currently 2) --- 805,814 ---- *************** *** 833,843 **** motrident: .byte 0x09, 0x50, 0x51, 0x52, 0x57, 0x58, 0x59, 0x5a motseng: .byte 0x07, 0x26, 0x2a, 0x23, 0x24, 0x22 movideo7: .byte 0x08, 0x40, 0x43, 0x44, 0x41, 0x42, 0x45 mooakvga: .byte 0x07, 0x00, 0x07, 0x4f, 0x50, 0x51 mof1280: .byte 0x04, 0x54, 0x55 - moamibios: .byte 0x04, 0x54, 0x55 mounknown: .byte 0x02 ! msb = Cols lsb = Rows: ! The first two modes are standard vga modes available on any vga. ! mode 0 is 80x50 and mode 1 is 80x28 --- 822,831 ---- *************** *** 852,862 **** dsctrident: .word 0x5032, 0x501c, 0x501e, 0x502b, 0x503c, 0x8419, 0x841e, 0x842b, 0x843c dsctseng: .word 0x5032, 0x501c, 0x503c, 0x6428, 0x8419, 0x841c, 0x842c dscvideo7: .word 0x5032, 0x501c, 0x502b, 0x503c, 0x643c, 0x8419, 0x842c, 0x841c dscoakvga: .word 0x5032, 0x501c, 0x2819, 0x5019, 0x843c, 0x8419, 0x842C dscf1280: .word 0x5032, 0x501c, 0x842b, 0x8419 - dscamibios: .word 0x5032, 0x501c, 0x842b, 0x8419 dsunknown: .word 0x5032, 0x501c modesave: .word SVGA_MODE .text --- 840,849 ----