From: Matan Ziv-Av (matan@arava.co.il)
Date: Wed 06 Jan 1999 - 22:54:26 IST
First, the previous message was meant to be sent to Christian Groessler personally, and not to the list, so please ignore it. Second: I work on the next release, I changed it's number to 1.4.0, A pre release is available from my svgalib page, http://www.cs.bgu.ac.il/~zivav/svgalib/svgalib-1.4.0.pre.19990106.tar.gz or http://www.arava.co.il/svgalib/svgalib-1.4.0.pre.19990106.tar.gz Here are the expected features: 1-* new modes (320x240, 400x300, 512x384, 960x720, 1600x1200, 1920x1440) 2- arbitrary modes 3-* better security (closing /dev/mem in vga_init) 4- secondary card (no VT switching) 5- vbe3 (Protected Mode) driver 6- additional card support. I already implemented the features marked with *, but tested them only on my hardware (nv3, mx, apm, cirrus, vesa). Remarks: 1- The new modes should work with any driver tht uses timing.c, rather than save modes. The mode lines I added in timing.c are for nv3 with a low end 15" monitor, and a CL-5446 with a low end 14" monitor, other combinations might need a modeline. The new modes work in QuakeII. 2- I think of adding a call int vga_newmode(int x,int y,int bit) that returns the mode that results in the requested resolution and color depth (if possible). If a mode does not have a modeline, svgalib will calculate a modeline by scaling modelines of modes with the same aspect ratio (only 4:3 is available right now). 3- This change required a change to all drivers, as all mmaps must be done in ????_init or ????_test. I did not change et6000, as it is both in active development, and seems very different from other drivers. Please test on your hardware in all possible combinations {BACKGROUND y/n}*{linear/banked}. here's a list of the drivers: driver changed tested ali.c v apm.c v v ark.c v ati.c v chips.c v[2] cirrus.c v[2] v egadrv.c v et3000.c v et4000.c v[1] et6000.c gvga6400.c v mach32.c v mx.c v nv3.c v v oak.c v paradise.c v s3.c v[1] tvga8900.c v vesa.c v v vgadrv.c v [1] should have no poblems with banked memory, but won't work with linear addressing [2] should work with linear framebuffer/mmio only on a pci bus. 4- I hoped it would be simply a matter of not calling setsignal (so that svgalib won't know when a VT is switched), apparently it is more complicated, so if anyone knows how to do it, or has an advice I'm open to suggestions. 5- This reuquires creating selectors for a0000, b0000, b8000 and a selctor for the bios code (which might be self modifying), and then calling the vesa services as a 16 bit protected mode code. I don't know how to do it, and the modify_ldt(2) system call does not seem to work. dosemu and wine seem to have code that does that, but the code is too complicated for me. I'm waiting for someone to write a library (similiar to LRMI) for accessing the code, then writing the svgalib vbe3 driver will be really simple. 6- I have people who "showed interest" in writing s driver for Matrox chipsets, Rendition, ATI (rage), and Banshee. I hope to get some code from this people. -- Matan Ziv-Av. zivav@cs.bgu.ac.il ש"דח הז לאמש םעפה םג Vote MAKI - The Israeli Communist Party
This archive was generated by hypermail 2.1.4 : Wed 21 Jan 2004 - 22:10:22 IST