Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 28 Sep 1996 01:38:24 +0000
From:      Gary Jennejohn <Gary.Jennejohn@munich.netsurf.de>
To:        freebsd-hackers@freefall.FreeBSD.org
Subject:   translation of "Readme" for ctppro utility
Message-ID:  <199609280138.BAA21121@peedub.gj.org>

next in thread | raw e-mail | index | archive | help
OK, here's a rough translation of PRO_FORM.TXT from pro_form.zip.

--------------------------- SNIP -------------------------------

Pro-formance c't 10/96 S. 124, as
-----------------------------------------------------
ppro.doc     this document
ctppro1.pas  Source in BP 7.0, as it appeared in c't magazine
ctppro1.exe  executable Programm
ctppro.exe   extended version with Chipset configuration etc.

             Programs by J.Hinkley
             (used with the author's permission)
fastvid.zip  various utilities
OS2.zip      drivers for OS/2


The PPRO has various internal registers (Memory Type Range Register MTRR)
which have to be programmed to acheive full PCI bus performance,
e.g. to the frame buffer on a graphics card. When that's done the
transfer speed to a fast graphics card (Matrox Millenium, ET600 etc.)
increases from about 20 MB/sec to about 90 MB/sec -- as long as
write posting in the chip set is enabled.

The MTRRs of the PPRO are divided into Fixed Range MTRRs for memory
between 0 and 1 MB, where VGA video buffers A0000-BFFFF are, and
Variable Range MTRRs for addresses above 1 MB. For each memory range
the following memory attributes can be assigend:
UC uncached
WC write combining
WP write protect
WT write through
WB write back

The first variable MTRR is used for main memory and is usually set to
WB. The second register is generally free and can be used to map
the linear frame buffer (LFB) of a graphics card as write combining
(WC). The LFB address can be found e.g. under Windows 95 using the
device manager under resources.

J. Hinkley's FastVid can enable write posting in the Orion chip set
and also set the MTRRs for the VGA and LFB memory ranges to WC. If the
graphics card is VESA comaptible then FastVid also shows the start address
of the LFB. See also FASTVID.TXT for a more detailed description.

OS2.ZIP has drivers for OS/2.

Vspeed can be used to measure the video throughput, see VSPEED.TXT for
more details.

Alternatively, ctcm with the parameter /vid can also be used to measure
video throughput.

Instead of FastVid you can use ctppro, which will also show the current
settings of the MTRRs. ctppro is provided in 2 versions. With the smaller
version from the magazine, ctppro1, you can program the MTTRs and set
whichever attributes you want for the VGA frame buffer. Additionally
you can enable fast string moves for PPROs with stepping 2 or better using
the "M" parameter. Fast string moves are normally disabled in stepping 1
due to an error in the chip.

V		: set the VGA memory range A0000-BFFFF to WC
V:aa		: set attribute aa for the VGA memory range A0000-BFFFF
n/xx,yy:aa	: set MTRR n with start address xx and length yy to aa
xx,yy:a		: set MTRR 1 with start address xx and length yy to aa
xx.yy		: set MTRR 1 with start address xx and length yy to WC
		: where xx and yy are hex or decimal with appended K,M,G
i		: for K/M/Gbyte
M		: turn on fast string moves

All commands can be combined on the command line, e.g.

ctppro1 V E0000000,8M M

ctppro has more functionality and offers the following additional features:

-- it can be used to set various bits of the Orion and Natoma chip sets, e.g
   enable/disable buffers, turn on read around write, etc.

S1	sets the bit shown under 1) to on (not sure what this means)
S123	sets the bits shown under 1,2,3 to on (ditto)
R1	resets the bit shown under 1) (ditto)
R123	...

-- it can determine the frame buffer address from the PCI header and, if 
desired,
   the maximum size (the latter function isn't run by default since it can
   collide with other hardware during detection)

P		: evaluate the PCI header
FRAME,yy	: set MTRR1 to the frame buffer address with length yy
FRAME		: set MTRR1 to the frame buffer address using the detected length

-- it can also be used to set the Fixed Range MTRRs

Use the Help function in ctppro for additional info (which is probably in 
German.
Since this is a DOS program and I don't have a DOS box you're on your own here 
!).



--------
Gary Jennejohn
Home - Gary.Jennejohn@munich.netsurf.de
Work - gjennejohn@frt.dec.com




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199609280138.BAA21121>