Pro-formance c't 10/96 S. 124, Andreas Stiller, translated by Thomas Pabst ----------------------------------------------------- ctppro.exe executable program The Pentium Pro CPU contains internal registers (Memory Type Range Register MTRR), which have to be programed for reaching full PCI performance, e.g. for the frame buffer of the video card. In this case the transfer performance of fast video cards (Matrox Millennium, ET6000, etc.) goes up from about 20 MB/sec to about 90 MB/sec - as long as the chipset write buffers are enabled as well. The MTRRs of the PPro are divided between the Fix Range MTRRs between 0 und 1 MByte of the main memory (where you can find the VGA buffer at A0000 - BFFFF), and 8 Variable Range MTRRs, responsible for the address range above 1 MB. For the regarding address ranges you can choose between the following memory attributes: UC uncached WC Write Combining WP Write Protect WT Write Through WB Write Back The first Variable Range MTRR (no. 0) is responsible for the normal main memory and hence usually set to WB. The second Variable Range MTRR (no. 1) is usually not used, so you can enter the linear frame buffer (LFB) of the video card, which has to bet set to WC (write combining). To find the location of the frame buffer, have a look into the Win95 Device Manager under 'ressorces' of the video adapter. ctppro can display and change the contents of the MTRRs and is able to change some special bits in the Intel Orion (450GX/KX) and Intel Natoma (440FX) chipsets, to e.g. enable/disable the PCI write buffers and more. Command line parameters: V : sets VGA-memory A0000-BFFFF to WC V:aa : sets VGA-memory A0000-BFFFF to attribute 'aa' n/xx,yy:aa : sets MTRR 'n' for start address 'xx' and size 'yy' to 'aa' xx,yy:aa : sets MTRR 1 for start address 'xx' and size 'yy' to 'aa' xx,yy : sets MTRR 1 for start address 'xx' and size 'yy' to 'WC' 'xx' and 'yy' have to be either hex or decimal with additional K, M, G for kB, MB or GB. M: : enable 'Fast String Move' S1 : set bits displayed under 1) to ON or '1' S123 : set bits displayed under 1), 2), 3) to ON or '1' R1 : set bits displayed under 1) to OFF or '0' R123 : set bits displayed under 1), 2), 3) to OFF or '0' P : display frame buffer address (detected from PCI header) FRAME,yy : set MTRR1 to detected frame buffer address with size 'yy' FRAME : set MTRR1 to detected frame buffer address with detected size, this can sometimes lead to crashes or system instabilities You can sum up the command line parameters for using in batch files, seperated by spaces. If you want to use this for Windows95, you can add this command in your autoexec.bat. For further help please use the help function of ctppro.