Contents of this section
- 1995.01.29:
- Updated P9000.sgml to mention using Robin's scanpci rather
than PCIDUMP.EXE.
- 1995.01.15:
- Fixed problem with line capping in accelerated line
drawing. (Chris Mason)
- Fixed p9000QuadAluGXset to be ~0 rather than 1. (Erik Nygren)
- 1995.01.14:
Clocks
line is no longer used in XF86Config
file.
Operation should now be consistent with the operation of the
other servers which use programmable clocks. (Erik Nygren)
- Users with 1MB cards can now explicitly specify
videoRam
in the XF86Config
file when autoprobing fails.
The new vram_128
option may also be used to force
the detection of 128Kx8 SIMM's. (Erik Nygren)
- Added p9000line.c and p9000seg.c for accelerated line drawing code
using the p9000 quad/clipping engine. Blazingly fast for 1 clipping
rectangle, could be made faster for multiple clipping regions by
using software clipping. There is still a bug which causes
xtest to report
Cap style incorrect for thin line and
CapNotLast
for the XDrawLines
tests but not
for the XDrawLine
or XDrawSegments
tests
fixed in 1995.01.15 patch. (Chris Mason)
- Changed p9000blt.c, and p9000win.c to wait for the quad/blit engine
to be free. Before a quad/blit, check SR_ISSUE_QBN, then blit, then
when all blits are done, do a p9000QBNotBusy. (Chris Mason)
- Changed p9000init.c to clear the screen using the quad meta coord
drawing mode. Appears the rect mode does not update the CINDEX
register correctly. Changed the color to 1 (black) from 0. (Chris)
- Added p9000QuadAlu. When drawing a quad, the p9000 equivalent to X's
source is the foreground mask. When bliting/pixel8ing/pixel1ing,
it is the p9000 source mask and the p9000alu lookup table should be
used. (Chris Mason)
- Added some more registers to p9000reg.h. (Chris Mason)
- 1994.09.20:
- Fixed problem which prevented 16 bpp modes from working (Erik Nygren)
- 1994.09.16:
- Added screen blanking support for 16 bpp and 32 bpp modes.
Screen blanking now powers down the RAMDAC rather than
just changing the planemask. (Chris Mason, Erik Nygren)
- Fixed more problems caused by switch to
XF86Config
(Erik Nygren)
- Possible fix to maxclock for Orchid P9000 (Harry Langenbacher,
Erik Nygren)
- 1994.09.15:
- Now almost always works with
XF86Config
changes
(Erik Nygren)
- Cursor code looks at VTSema before writing to RAMDAC.
This had been causing the x11perf server crash (Erik Nygren)
- 1994.09.08:
- Fixed problem with xdm and restarting the server (Erik Nygren)
- Fixed and enabled ImageRead in CopyArea (Chris Mason)
- Made informational comments conform to standard :-) (Erik Nygren)
- 1994.09.05:
- Fixed BIOS probe for Viper PCI (Bob Hollinger)
- Fixes to Orchid P9000 support (Harry Langenbacher)
- Changing of datatypes in clock code (Harry Langenbacher)
- Fixed clock and misc reg restoration so now works fine with svgalib
(Chris Mason, Harry, Erik)
- 1994.08.29:
- Increased number of memory regions in xf86_OSlib.h from 2 to 3
as needed by the Viper PCI (Erik Nygren)
- Changed method of short pauses in p9000vga.c to outb(0x80,0) (Erik)
- Rewrote routines to determine sysconfig from horizontal resolution.
Also added check for valid hres to probe. (Erik Nygren)
- Added MoveWindow acceleration for all depths. Opaque move even
looks nice at 32bpp now! (Chris Mason)
- Minor fixes to acceleration. Acceleration is now enabled
by default (Chris Mason)
- Added
"noaccel"
option (Erik Nygren)
- Added some fixes for Viper PCI (Matt Thomas)
- 1994.07.21:
- Preliminary Viper PCI support - totally untested so disabled
(Erik Nygren)
- Preliminary Orchid P9000 support - incomplete and totally
untested so disabled (Erik Nygren)
- Preliminary accelerated support - incomplete and not fully tested
so disabled (Erik Nygren and Chris Mason)
- 1994.07.08:
- 16 and 32 bpp TrueColor support (Erik Nygren)
- Color restoration hopefully fixed (Erik Nygren)
- Changes to how
"Modes"
line in Xconfig is processed
- Removed banking support :-(
I've started adding in support for other cards and for acceleration.
Due to its untested nature, it is disabled. A define at the top of
p9000.h
controls all of these features. The Viper PCI code is
untested and probably won't work the first time! The Orchid P9000
code is incomplete and is waiting for a few mods by Harry to change the
way it deals with the clock. The acceleration code has been started
on but probably won't work. It's provided more to give our developers
a common base to start from. Notice the new global variable
p9000BytesPerPixel
, BTW. Before working on any acceleration, please
contact nygren@mit.edu so we don't duplicate efforts. The code
in p9000blt.c
should work, but the stuff in p9000im.c
probably won't.
For Diamond Viper PCI owners, you'll need to get the PCIDUMP.EXE
program from the Unixware P9000 server for now. Run it under DOS and
use the values to fill in MemBase
and IOBase
in the
Device
section of XF86Config
. These values will change
whenever you move cards around or add cards.
I've started adding in support for other cards and for acceleration.
Due to its untested nature, much of it is disabled. A define at the top of
p9000.h
controls all of these features.
Next Chapter, Previous Chapter
Table of contents of this chapter,
General table of contents
Top of the document,
Beginning of this Chapter