README revision 1.1 1 1.1 mrg $XFree86: xc/programs/Xserver/hw/xfree86/drivers/apm/README,v 1.5 2000/02/11 22:35:55 dawes Exp $
2 1.1 mrg
3 1.1 mrg Note 1: This driver is work in progress. It might not work at all.
4 1.1 mrg Want to help? Docs are at
5 1.1 mrg ftp://beta.xfree86.org/pub/xf86/devel/Documentation/apm
6 1.1 mrg
7 1.1 mrg This is the Alliance Promotion driver for XFree86 4.0+. It currently only
8 1.1 mrg supports the AT3D, AT25 chipsets (found on various Voodoo-Rush cards) and AT24.
9 1.1 mrg There is incomplete support for the 6422. The 6422 chips are supported in the
10 1.1 mrg XFree86 3.3.x series.
11 1.1 mrg
12 1.1 mrg What has worked on my computer :
13 1.1 mrg - XAA for 8/16/24/32 bpp
14 1.1 mrg - DGA and DGA2
15 1.1 mrg - DPMS
16 1.1 mrg - glide2x
17 1.1 mrg - using as a module
18 1.1 mrg - shadow framebuffer
19 1.1 mrg - AT3D
20 1.1 mrg - AT24
21 1.1 mrg - AP6422 (although with problems, including locks)
22 1.1 mrg - multi card setup (with and without Xinerama)
23 1.1 mrg - Xv images, even with (slightly modified) glide2x ; note that there is
24 1.1 mrg still a little problem with vertical offset.
25 1.1 mrg
26 1.1 mrg There is some support for PC-98 with the help of Isao Ohishi
27 1.1 mrg (ohishi (a] aero.rim.or.jp). It's still under development. I hope that 8bpp
28 1.1 mrg works correctly.
29 1.1 mrg
30 1.1 mrg What has not worked :
31 1.1 mrg - I2C (I'm not sure my card, Hercules 128/3D, has proper cabling)
32 1.1 mrg
33 1.1 mrg What is untested :
34 1.1 mrg
35 1.1 mrg What should be done :
36 1.1 mrg - overlays (with the video engine, everything should be overlayable
37 1.1 mrg with everything)
38 1.1 mrg - (why not) 3210 support
39 1.1 mrg
40 1.1 mrg
41 1.1 mrg Loc Greni
42 1.1 mrg
43 1.1 mrg Authors:
44 1.1 mrg -----------------------------------------------------------------------
45 1.1 mrg Kent Hamilton Initial creation.
46 1.1 mrg Henrik Harmsen Lots of additions and fixes. <hch (a] cd.chalmers.se>
47 1.1 mrg Loic Grenie Conversion to 4.0. <grenie (a] lami.univ-evry.fr>
48 1.1 mrg Additions and fixes.
49 1.1 mrg
50 1.1 mrg
51 1.1 mrg History:
52 1.1 mrg -----------------------------------------------------------------------
53 1.1 mrg Created by Kent Hamilton for Xfree86 from source from Alliance
54 1.1 mrg
55 1.1 mrg Modified 1997-06 by Henrik Harmsen
56 1.1 mrg - Added support for AT3D
57 1.1 mrg - Acceleration added for 8,16,32bpp: (for AT3D and AT24)
58 1.1 mrg - Filled rectangles
59 1.1 mrg - Screen-screen bitblts
60 1.1 mrg - Host-screen color expansion bitblts for text
61 1.1 mrg - DPMS support
62 1.1 mrg - Enabled hardware cursor code (also in 8bpp)
63 1.1 mrg - Set to programmable VCLK clock
64 1.1 mrg - Set MCLK to 57.3 MHz on AT3D.
65 1.1 mrg - Various bugfixes and cleanups
66 1.1 mrg
67 1.1 mrg Modified 1997-07-06 by Henrik Harmsen
68 1.1 mrg - Fixed bug that made the HW cursor screw up on VT switches
69 1.1 mrg - Probably fixed bug that screwed up the screen when using
70 1.1 mrg screen-screen bitblts. This forced me to put an ApmSync() at
71 1.1 mrg the end of ApmSubsequentScreenToScreenCopy() which makes
72 1.1 mrg me unhappy... But: Better it works than not...
73 1.1 mrg
74 1.1 mrg Modified 1997-10-19 by Henrik Harmsen
75 1.1 mrg - HW line drawing.
76 1.1 mrg - HW clipping.
77 1.1 mrg - Added support for ROP's.
78 1.1 mrg - Text acceleration now lots faster and support for accelerated
79 1.1 mrg proportional text. (Uses SCANLINE_PAD_DWORD + clipping).
80 1.1 mrg - Combined write for many register writes gives good
81 1.1 mrg general speedup. (write x+y as a single 32 bit entity, rather
82 1.1 mrg obvious, really...:-)
83 1.1 mrg - Now waits for correct number of free slots in FIFO before
84 1.1 mrg issuing writes to the card.
85 1.1 mrg This seems to have eliminated the last instances of dropped
86 1.1 mrg interrupts from serial IO and no more lost packets in PPP :-)
87 1.1 mrg - Converted cursor support to use XAA interface.
88 1.1 mrg - Fixed ApmSync(). Finally removed call to ApmSync at end of
89 1.1 mrg ApmSubsequentScreenToScreenCopy() :-)
90 1.1 mrg
91 1.1 mrg Modified 1998-03-29 by Henrik Harmsen
92 1.1 mrg - Added DGA support.
93 1.1 mrg - Added accel support for AP6422. Fixed AT24 accel support.
94 1.1 mrg - Fixed clock register calculation for AP6422 and AT24.
95 1.1 mrg - DPMS support for AT24 & AP6422.
96 1.1 mrg - 2% faster text accel for AT24/AT3D :-)
97 1.1 mrg
98 1.1 mrg Modified 1998-12-18 by Loic Grenie
99 1.1 mrg - Converted to Xfree86 4.0 driver interface. (Only support for
100 1.1 mrg AT25/AT3D chips).
101 1.1 mrg
102 1.1 mrg Modified 1999-03-14 by Henrik Harmsen
103 1.1 mrg - Various fixes to bring it up to 3.9Pd.
104 1.1 mrg - Added preliminary (completely untested) support for dynamic
105 1.1 mrg loading.
106 1.1 mrg
107 1.1 mrg Modified 1999-07-07 by Loc Greni
108 1.1 mrg - Converted to new RAC. Support for DGA and DGA2, I2C, Rush extension.
109 1.1 mrg
110 1.1 mrg Modified 2000-02-10 by Loc Greni
111 1.1 mrg - Bug fixes
112 1.1 mrg - AP6422 (bugged !)
113 1.1 mrg - Xv driver
114