<?xml version="1.0" encoding="iso-8859-1"?>
<rss version="2.0"
 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
 xmlns:dc="http://purl.org/dc/elements/1.1/"
 xmlns:admin="http://webns.net/mvcb/"
>
<channel>
<title>[www.tuxx-home.at] - Website of Alexander Griesser</title>
<link>http://www.tuxx-home.at/archives/cat_14/</link>
<description>News from the front</description>
<dc:language>en-us</dc:language>
<dc:creator>Alexander Griesser</dc:creator>
<dc:date>2009-03-17T21:46:01+01:00</dc:date>
<admin:generatorAgent rdf:resource="http://nanoblogger.sourceforge.net" />
<item>
<link>http://www.tuxx-home.at/archives/2009/03/17/T21_40_38/</link>
<title>Trying to port the mga driver to Xorg 1.5</title>
<dc:date>2009-03-17T21:40:38+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[As people using the unofficial mga driver already know: It doesn't work with Xorg 1.5 because too many things in the API have been changed.<br />
Currently, the only error message when trying to load the mga module in Xorg 1.5 is:<br />
<pre>
dlopen: /usr/lib/xorg/modules//drivers/mga_drv.so: undefined symbol: xf86ScreenIndex
(EE) Failed to load /usr/lib/xorg/modules//drivers/mga_drv.so
(EE) Failed to load module "mga" (loader failed, 7)
(EE) No drivers available.
</pre>
<br />
The reason for that is, that the driver doesn't make use of the libpciaccess functions that have been introduced in Xorg 1.5 (strangely, a search for xf86ScreenIndex doesn't point out a single LOC inside the mga driver source, nor is it referenced by any participating module, but it is used by some PCI related functions for unmapping video memory, etc.).<br />
<br />
Anyhow, my time at the moment is _VERY_ limited, but I tried to start with some changes that will eventually end in a working driver version some time soon.<br />
<br />
Whoever reads this and can code and wants to help out those poor mga driver users: Please help us/me to complete a working driver (if possible at all, I still don't know for now, if things have to be changed in the mgaHal library, we're out of luck anyways).<br />
<br />
As a sidenote: There's a great resource on the X.org wiki that deals with how to rework the PCI access functions, here's the link:<br />
<br />
<a class="external" href="http://www.x.org/wiki/PciReworkHowto">http://www.x.org/wiki/PciReworkHowto</a><br />
<br />
And here's what I've come up with so far:<br />
Download Link: <a class="file" href="http://projects.tuxx-home.at/mga/drivers/4.4/mga-xorg-1.5-migration-step1.diff">mga-xorg-1.5-migration-step1.diff</a><br />
<pre>
diff -Nur a/7.0.0/src/mga/src/clientlx.c b/7.0.0/src/mga/src/clientlx.c
--- a/7.0.0/src/mga/src/clientlx.c	2006-11-06 18:32:44.000000000 +0100
+++ b/7.0.0/src/mga/src/clientlx.c	2009-03-17 22:07:01.000000000 +0100
@@ -67,8 +67,11 @@
 
     ASSERT_HANDLER(pBoard);
 
+#if XSERVER_LIBPCIACCESS
+    pci_device_cfg_read_u8(pMga-&gt;PciInfo, *pucByte, ulOffset);
+#else
     *pucByte = pciReadByte(pMga-&gt;PciTag,ulOffset);
-
+#endif
     return 0;
 }
 
@@ -95,7 +98,11 @@
 
     ASSERT_HANDLER(pBoard);
 
+#if XSERVER_LIBPCIACCESS
+    pci_device_cfg_read_u32(pMga-&gt;PciInfo, *pulDword, ulOffset);
+#else
     *pulDword = pciReadLong(pMga-&gt;PciTag,ulOffset);
+#endif
 
     return 0;
 }
diff -Nur a/7.0.0/src/mga/src/mga.h b/7.0.0/src/mga/src/mga.h
--- a/7.0.0/src/mga/src/mga.h	2007-01-23 08:38:09.000000000 +0100
+++ b/7.0.0/src/mga/src/mga.h	2009-03-17 22:12:56.000000000 +0100
@@ -27,6 +27,11 @@
 
 #include "xf86int10.h"
 
+#include "xorg-server.h"
+#ifdef XSERVER_LIBPCIACCESS
+#include &lt;pciaccess.h&gt;
+#endif
+
 #ifdef XF86DRI
 #include "xf86drm.h"
 
@@ -48,6 +53,17 @@
 #include "client.h"
 #endif
 
+#if XSERVER_LIBPCIACCESS
+#define MGA_DEVICE_MATCH(d,i) \
+    { 0x102b, (d), PCI_MATCH_ANY, PCI_MATCH_ANY, 0, 0, (i) }
+
+static const struct pci_id_match mga_device_match[] = {
+   MGA_DEVICE_MATCH (PCI_MATCH_ANY, 0 ),
+    { 0, 0, 0 },
+};
+
+#endif /* XSERVER_LIBPCIACCESS */
+
 #define MGA_XVIMAGE_LIMIT_WIDTH 1280
 #define MGA_XVIMAGE_LIMIT_HEIGHT 1280
 
@@ -165,6 +181,22 @@
 #define MGA_MINOR_VERSION 4
 #define MGA_PATCHLEVEL 1
 
+#if XSERVER_LIBPCIACCESS
+#define MGA_MEMBASE(p,n) (p)-&gt;regions[(n)].base_addr
+#define VENDOR_ID(p)      (p)-&gt;vendor_id
+#define DEVICE_ID(p)      (p)-&gt;device_id
+#define SUBVENDOR_ID(p)          (p)-&gt;subvendor_id
+#define SUBSYS_ID(p)      (p)-&gt;subdevice_id
+#define CHIP_REVISION(p)  (p)-&gt;revision
+#else
+#define MGA_MEMBASE(p,n) (p)-&gt;memBase[n]
+#define VENDOR_ID(p)      (p)-&gt;vendor
+#define DEVICE_ID(p)      (p)-&gt;chipType
+#define SUBVENDOR_ID(p)          (p)-&gt;subsysVendor
+#define SUBSYS_ID(p)      (p)-&gt;subsysCard
+#define CHIP_REVISION(p)  (p)-&gt;chipRev
+#endif
+
 typedef struct {
     unsigned char	ExtVga[6];
     unsigned char 	DacClk[6];
@@ -397,8 +429,15 @@
     EntityInfoPtr	pEnt;
     struct mga_bios_values bios;
     CARD8               BiosOutputMode;
+#if XSERVER_LIBPCIACCESS
+    struct pci_device *PciInfo;
+    int mmio_bar;
+    int fb_bar;
+    int gtt_bar;
+#else
     pciVideoPtr		PciInfo;
     PCITAG		PciTag;
+#endif
     xf86AccessRec	Access;
     int			Chipset;
     int                 ChipRev;
diff -Nur a/7.0.0/src/mga/src/mga_bios.c b/7.0.0/src/mga/src/mga_bios.c
--- a/7.0.0/src/mga/src/mga_bios.c	2006-11-06 18:35:15.000000000 +0100
+++ b/7.0.0/src/mga/src/mga_bios.c	2009-03-17 22:06:20.000000000 +0100
@@ -451,8 +451,12 @@
     }
 
     if (pciBIOS) {
+#if XSERVER_LIBPCIACCESS
+  rlen = pci_device_read_rom(pMga-&gt;PciInfo, bios_data);
+#else
 	rlen = xf86ReadPciBIOS(0, pMga-&gt;PciTag, pMga-&gt;FbBaseReg,
 			       bios_data, sizeof(bios_data));
+#endif
     }
     else {
 	rlen = xf86ReadDomainMemory(pMga-&gt;PciTag, pMga-&gt;BiosAddress,
diff -Nur a/7.0.0/src/mga/src/mga_dac3026.c b/7.0.0/src/mga/src/mga_dac3026.c
--- a/7.0.0/src/mga/src/mga_dac3026.c	2006-11-06 18:35:33.000000000 +0100
+++ b/7.0.0/src/mga/src/mga_dac3026.c	2009-03-17 22:07:13.000000000 +0100
@@ -865,9 +865,13 @@
 	
 	for (i = 0; i &lt; DACREGSIZE; i++)
 		mgaReg-&gt;DacRegs[i]	 = inTi3026(MGADACregs[i]);
-	
+
+#if XSERVER_LIBPCIACCESS
+  pci_device_cfg_read_u32(pMga-&gt;PciInfo, mgaReg-&gt;Option, PCI_OPTION_REG);
+#else	
 	mgaReg-&gt;Option = pciReadLong(pMga-&gt;PciTag, PCI_OPTION_REG);
-	
+#endif	
+
 #ifdef DEBUG		
 	ErrorF("read: %02X %02X %02X	%02X %02X %02X	%08lX\n",
 		mgaReg-&gt;DacClk[0], mgaReg-&gt;DacClk[1], mgaReg-&gt;DacClk[2], mgaReg-&gt;DacClk[3], mgaReg-&gt;DacClk[4], mgaReg-&gt;DacClk[5], mgaReg-&gt;Option);
diff -Nur a/7.0.0/src/mga/src/mga_dacG.c b/7.0.0/src/mga/src/mga_dacG.c
--- a/7.0.0/src/mga/src/mga_dacG.c	2006-11-06 18:52:16.000000000 +0100
+++ b/7.0.0/src/mga/src/mga_dacG.c	2009-03-17 22:07:33.000000000 +0100
@@ -962,11 +962,20 @@
 
         mgaReg-&gt;PIXPLLCSaved = TRUE;
 
+#if XSERVER_LIBPCIACCESS
+  pci_device_cfg_read_u32(pMga-&gt;PciInfo, mgaReg-&gt;Option, PCI_OPTION_REG);
+  pci_device_cfg_read_u32(pMga-&gt;PciInfo, mgaReg-&gt;Option2, PCI_MGA_OPTION2);
+#else
 	mgaReg-&gt;Option = pciReadLong(pMga-&gt;PciTag, PCI_OPTION_REG);
-
 	mgaReg-&gt;Option2 = pciReadLong(pMga-&gt;PciTag, PCI_MGA_OPTION2);
+#endif
+
 	if (pMga-&gt;Chipset == PCI_CHIP_MGAG400 || pMga-&gt;Chipset == PCI_CHIP_MGAG550)
+#if XSERVER_LIBPCIACCESS
+      pci_device_cfg_read_u32(pMga-&gt;PciInfo, mgaReg-&gt;Option3, PCI_MGA_OPTION3);
+#else
 	    mgaReg-&gt;Option3 = pciReadLong(pMga-&gt;PciTag, PCI_MGA_OPTION3);
+#endif
 	);	/* MGA_NOT_HAL */
 
 	for (i = 0; i &lt; 6; i++)
diff -Nur a/7.0.0/src/mga/src/mga_dri.c b/7.0.0/src/mga/src/mga_dri.c
--- a/7.0.0/src/mga/src/mga_dri.c	2006-11-06 18:57:11.000000000 +0100
+++ b/7.0.0/src/mga/src/mga_dri.c	2009-03-17 21:43:01.000000000 +0100
@@ -606,8 +606,8 @@
 	xf86DrvMsg( pScreen-&gt;myNum, X_INFO,
 		    "[agp] Mode 0x%08lx [AGP 0x%04x/0x%04x; Card 0x%04x/0x%04x]\n",
 		    mode, vendor, device,
-		    pMga-&gt;PciInfo-&gt;vendor,
-		    pMga-&gt;PciInfo-&gt;chipType );
+		    VENDOR_ID(pMga-&gt;PciInfo),
+		    DEVICE_ID(pMga-&gt;PciInfo));
 
 	if ( drmAgpEnable( pMga-&gt;drmFD, mode ) &lt; 0 ) {
 	    xf86DrvMsg( pScreen-&gt;myNum, X_ERROR, "[agp] AGP not enabled\n" );
@@ -858,9 +858,17 @@
    if (!pMga-&gt;irq) {
       pMga-&gt;irq = drmGetInterruptFromBusID(
 	 pMga-&gt;drmFD,
+#if XSERVER_LIBPCIACCESS
+   ((pMga-&gt;PciInfo-&gt;domain &lt;&lt; 8 ) |
+   pMga-&gt;PciInfo-&gt;bus),
+   pMga-&gt;PciInfo-&gt;dev,
+   pMga-&gt;PciInfo-&gt;func
+#else
 	 ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;busnum,
 	 ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;devnum,
-	 ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;funcnum);
+	 ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;funcnum
+#endif
+   );
 
       if((drmCtlInstHandler(pMga-&gt;drmFD, pMga-&gt;irq)) != 0) {
 	 xf86DrvMsg(pScrn-&gt;scrnIndex, X_INFO,
@@ -971,9 +979,15 @@
    } else {
       pDRIInfo-&gt;busIdString = xalloc(64);
       sprintf( pDRIInfo-&gt;busIdString, "PCI:%d:%d:%d",
+#if XSERVER_LIBPCIACCESS
+         ((pMga-&gt;PciInfo-&gt;domain &lt;&lt; 8 ) | pMga-&gt;PciInfo-&gt;bus),
+				 pMga-&gt;PciInfo-&gt;dev, pMga-&gt;PciInfo-&gt;func
+#else
 	       ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;busnum,
 	       ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;devnum,
-	       ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;funcnum );
+	       ((pciConfigPtr)pMga-&gt;PciInfo-&gt;thisCard)-&gt;funcnum
+#endif
+   );
    }
    pDRIInfo-&gt;ddxDriverMajorVersion = MGA_MAJOR_VERSION;
    pDRIInfo-&gt;ddxDriverMinorVersion = MGA_MINOR_VERSION;
diff -Nur a/7.0.0/src/mga/src/mga_driver.c b/7.0.0/src/mga/src/mga_driver.c
--- a/7.0.0/src/mga/src/mga_driver.c	2007-01-23 08:52:36.000000000 +0100
+++ b/7.0.0/src/mga/src/mga_driver.c	2009-03-17 22:07:40.000000000 +0100
@@ -180,10 +180,19 @@
     MGA_VERSION,
     MGA_DRIVER_NAME,
     MGAIdentify,
+#if XSERVER_LIBPCIACCESS
+	  NULL,
+#else
     MGAProbe,
+#endif
     MGAAvailableOptions,
     NULL,
-    0
+    0,
+    NULL,
+#if XSERVER_LIBPCIACCESS
+    mga_device_match,
+    mga_pci_probe
+#endif
 };
 
 /* Supported chipsets */
@@ -485,7 +494,13 @@
 
     if (!setupDone) {
 	setupDone = TRUE;
-	xf86AddDriver(&MGA_C_NAME, module, 0);
+	xf86AddDriver(&MGA_C_NAME, module, 
+#if XSERVER_LIBPCIACCESS
+	HaveDriverFuncs
+#else
+	0
+#endif
+  );
 
 	/*
 	 * Modules that this driver always requires may be loaded here
@@ -1093,7 +1108,12 @@
     ErrorF("mga: VgaIOSave: %d:%d:%d\n", sMga-&gt;pvp-&gt;bus, sMga-&gt;pvp-&gt;device,
 	   sMga-&gt;pvp-&gt;func);
 #endif
+
+#if XSERVER_LIBPCIACCESS
+    sMga-&gt;enable = 0;
+#else
     sMga-&gt;enable = (pciReadLong(tag, PCI_OPTION_REG) & 0x100) != 0;
+#endif
 }
 
 static void
@@ -2303,7 +2323,13 @@
  	     (pMga-&gt;Chipset != PCI_CHIP_MGA2164_AGP)) 
  #endif
     {
-        CARD32 option_reg = pciReadLong(pMga-&gt;PciTag, PCI_OPTION_REG);
+        CARD32 option_reg;
+
+#if XSERVER_LIBPCIACCESS
+  pci_device_cfg_read_u32(pMga-&gt;PciInfo, option_reg, PCI_OPTION_REG);
+#else	
+  option_reg = pciReadLong(pMga-&gt;PciTag, PCI_OPTION_REG);
+#endif
 	if(!(option_reg & (1 &lt;&lt; 14))) {
 	    pMga-&gt;HasSDRAM = TRUE;
 	    xf86DrvMsg(pScrn-&gt;scrnIndex, X_PROBED, "Has SDRAM\n");
</pre>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2007/03/18/T18_31_42/</link>
<title>Tiny update to the Unofficial MGA driver</title>
<dc:date>2007-03-18T18:31:42+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Long time no see, ey?<br /><br />
Well, been very busy the last weeks and am hoping that situation gets better soon.
In the meanwhile, I'd like to present the unofficial MGA driver v4.4.3 to you with just
one tiny update:<br /><br />
<pre>
ChangeLog:
  * Support for Xorg 7.2.0+ (with the help of the relaxed version checking 
    also known by the MTX driver)
</pre>
<br />
Get it here:<br />
<span class="uln bold">Downloads:</span><br />
<ul>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_32-4.4.3-installer.run">matroxdriver_mga-x86_32-4.4.3-installer.run</a> (32bit)</li>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_64-4.4.3-installer.run">matroxdriver_mga-x86_64-4.4.3-installer.run</a> (64bit)</li>
</ul>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2007/01/03/T15_12_34/</link>
<title>New MGA driver (v4.4.2) fixing the DRI locking issue</title>
<dc:date>2007-01-03T15:12:34+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Today I want to release the new unofficial mga driver v4.4.2 which basically
fixes the DRI locking issue experienced by many users out there.
<br /><br />
<pre>
<strong>ChangeLog:</strong><br />
  * Added support for Xorg 7.1.99.902.0 (SuSE 10.2)
  * Force the installer to run with /bin/bash (fixes issues with Ubuntu users having /bin/dash as default shell)
  * Applied the DRI locking fix
  * Applied the pseudofb fix
  * Cleaned up the installer a little bit
</pre>
<br />
<span class="uln bold">Downloads:</span><br />
<ul>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_32-4.4.2-installer.run">matroxdriver_mga-x86_32-4.4.2-installer.run</a> (32bit)</li>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_64-4.4.2-installer.run">matroxdriver_mga-x86_64-4.4.2-installer.run</a> (64bit)</li>
  <li><a class="file" href="/projects/mga/4.4/readme.txt">readme.txt</a></li>
</ul>
<br />
<br />
If you're experiencing troubles with this release, please visit the <a class="external" href="http://matrox.tuxx-home.at">Unofficial Matrox Technical Support Forum</a> and drop me a note there.]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2007/01/01/T12_30_33/</link>
<title>New year, new forum</title>
<dc:date>2007-01-01T12:30:33+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers, Matrox Parhelia Drivers</dc:subject>
<description><![CDATA[As promised, after the holidays I started the new <a class="external" href="http://matrox.tuxx-home.at">Unofficial Matrox Technical Support Forum</a> which can be found here: <a class="external" href="http://matrox.tuxx-home.at">http://matrox.tuxx-home.at</a>.<br /><br />
I hope that it will suit our needs in the future and that we will be able to
be more productive with the new forum software as it is maintained by me and not by Matrox itself ;)<br /><br />
I'll see if I can manage to get a link to this forum on the Matrox website, but
until this is done, I need you to tell all people out there that this forum is the successor of the Matrox Technical support forum that has been taken down
for some unknown reasons. So, please advertise this forum so that all people looking for help are able to find it quickly :)<br /><br />
Have Fun!]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/10/24/T11_52_15/</link>
<title>First repackaged mga drivers v4.4.1 available</title>
<dc:date>2006-10-24T11:52:15+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Today I finally found the time to repackage the official mga drivers.
The new unofficial driver series (v4.4.1) differs from the official version in the
following few things:<br />
<pre>
<strong>ChangeLog:</strong>
  * Added support for Xorg 7.1 and 7.1.1
  * Introducing the updated-installer from David E. Anderson
  * Put the tarball into a nice installer known from the mtx drivers
</pre>
<br />
<span class="uln bold">Downloads:</span><br />
<ul>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_32-4.4.1-installer.run">matroxdriver_mga-x86_32-4.4.1-installer.run</a> (32bit)</li>
  <li><a class="file" href="/projects/mga/4.4/matroxdriver_mga-x86_64-4.4.1-installer.run">matroxdriver_mga-x86_64-4.4.1-installer.run</a> (64bit)</li>
</ul>
<br />
<span class="uln bold">Limitations:</span><br />
When installing these drivers for Xorg 7.1* you still need to add the following section to your &quot;/etc/X11/xorg.conf&quot;:
<br />
<pre>
Section "ServerFlags"
  Option "IgnoreABI" "True"
EndSection
</pre>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/06/17/T23_50_56/</link>
<title>Another update to the mga_xorg7_installer</title>
<dc:date>2006-06-17T23:50:56+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Today I read a topic in the <a class="external" href="http://forum.matrox.com/mga/viewforum.php?f=64">Matrox General Linux Forum</a> where a user had
problems to run this script on his machine.<br /><br />
The reason for this was the abscense of an installed C++ compiler, so I have
to check for this too in the script.<br /><br />
<span class="uln bold">ChangeLog:</span><br />
<pre>
1.1.1 Added missing dependency to g++
      * g++ is also needed to compile this driver
</pre>
<br />
<span class="uln bold">Download:</span><br />
<ul>
  <li><a class="file" href="/projects/mga/mga_xorg7_installer.run">mga_xorg7_installer.run V1.1.1</a></li>
</ul>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/06/14/T14_46_10/</link>
<title>Update to the automatic mga_xorg7_installer (V1.1.0)</title>
<dc:date>2006-06-14T14:46:10+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[A new version of the magic mga_xorg7_installer is online. This new version
adds basic support for RPM based distributions (esp. RedHat FC5) and includes
some minor improvements and &quot;bugfixes&quot;.<br />
Here's the relevant part of the ChangeLog:<br />
<pre>
1.1.0 Featuring RPM support
      * Added basic support for RPM based distributions, especially Redhat FC5
        Many thanks to Andr&eacute; Frick (projects@andrefrick.de) for providing the
        necessary background information on FC5
      * Some small improvements for checking for necessary binaries before
        doing the automatic package installation
      * Implemented more generalization for future updates
      * Added speed improvements by using temporary files for the output of
        the package installation programs

</pre>
<br />
<span class="uln bold">Download:</span><br />
<ul>
  <li><a href="/projects/mga/mga_xorg7_installer.run" class="file">mga_xorg7_installer.run V1.1.0</a></li>
</ul>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/06/12/T18_07_25/</link>
<title>Recovering from a blank Text console after switching back from X</title>
<dc:date>2006-06-12T18:07:25+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers, Matrox Parhelia Drivers</dc:subject>
<description><![CDATA[Today I wanted to do something on my text console and of course, it has
been blanked by the mtx driver.<br />
As I didn't want do kill my uptime, I tried to dig a little deeper into
this and finally, I found the solution to this problem.<br /><br />
The Blanking is caused by a buggy VBE Mode restoration/implementation of
the mtx and mga drivers and therefore, this small little script applies
to all users out there (it's not Matrox specific) that have this problem
too with their graphics card drivers.<br /><br />
Detailed information about how it works and how to use it can be found in
the included README file.<br /><br />
<span class="uln bold">Downloads:</span><br />
<ul>
  <li><a href="/projects/vbemagic/vbemagic-1.0.tgz" class="file">vbemagic-1.0.tgz</a></li>
</ul>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/06/04/T14_46_29/</link>
<title>First update to the mga_xorg7_installer</title>
<dc:date>2006-06-04T14:46:29+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Only in short terms, here's the update making it up from version 1.0
to 1.0.1 bugfix release.<br /><br />

<span class="uln bold">The ChangeLog:</span><br />
<pre>
1.0.1   Bugfix release
        * The apt-get command redirects its output to $LOGFILE and because we
          want the user to enter y or n for the installation of packages, he
          doesn't see the question produced by apt-get -> Don't redirect the
          output of apt-get [FIXED]
        * Added additional functionality for checking the availability of
          packages before we try to install them automatically [ADDED]
        * Added a quick and dirty workaround for the Ubuntu problem mentioned
          by Hark in the General Linux Forums. Ubuntu has no installable
          package called xutils-dev, instaed it provides the package "imake"

1.0     Initial release
</pre>
<br />
<span class="uln bold">The links:</span><br />
<ul>
  <li><a class="file" href="/projects/mga/HOWTO_mga_Xorg7">HOWTO_mga_Xorg7</a></li>
  <li><a class="file" href="/projects/mga/mga_xorg7_installer.run">mga_xorg7_installer.run, Version 1.0.1</a></li>
</ul>]]></description>
</item>
<item>
<link>http://www.tuxx-home.at/archives/2006/06/04/T06_59_39/</link>
<title>HOWTO for installing the Matrox mga driver in Xorg 7.0.0</title>
<dc:date>2006-06-04T06:59:39+01:00</dc:date>
<dc:creator>Alexander Griesser</dc:creator>
<dc:subject>Matrox MGA Drivers</dc:subject>
<description><![CDATA[Here is a detailed HOWTO and an automatic installation script for
getting Matrox' mga display driver installed correctly on Xorg 7.0.0
including support for the mgaHALlib and hardware acceleration.<br /><br />
I'm working on this HOWTO and the installer now since 20:00 at the last
day, that means nearly eleven (11!) hours, therefore please excuse possible
typos in this blog entry, as my motivation to write long stories here
has gone.<br /><br />
If you find this software/HOWTO useful, please consider to <a href="http://www.tuxx-home.at/archives/2006/04/11/T09_05_44/">donate</a>.<br /><br />
<span class="uln bold">Links:</span><br />
<ul>
  <li><a href="/projects/mga/HOWTO_mga_Xorg7" class="file">HOWTO_mga_Xorg7</a></li>
  <li><a href="/projects/mga/mga_xorg7_installer.run" class="file">mga_xorg7_installer.run</a></li>
</ul>]]></description>
</item>
</channel>
</rss>
