![]() TV Out Support for Mach64 |
||||||||||
|
Last Updated: Mar. 28, 2003 If you find errors or omissions please email me. Patches / Binaries | Options | Changelog | TODO / Limitations | LICENSE NOTE: A source patch and binaries based on current GATOS cvs and XFree86 4.3.0 are now available below. The previous XFree86 4.2.0 binaries and patch are still available as well. I've adapted the experimental TV out code from GATOS cvs (devel branch) for Radeon and Rage128 to Mach64. The current patch should be applied to the GATOS cvs HEAD. If you'd like to use TV-out with DRI, use my patch or binaries for unified DRI and XVideo instead. This patch uses INT10 calls (sorry, x86 only) to the card BIOS to get/set TV out configuration, and uses VESA VBE BIOS calls to set the mode for TV out. It should work with 640x480, 800x600 and 1024x768 (1024x768 may not work with earlier cards, but should work with LT Pro, Rage XL(?), and Rage Mobility) at 15- and 16-bit color depths. 24 bit color is not supported (it's disabled in the patch if you want to try it, but it doesn't work for me). Some users with earlier cards (Rage II/II+/IIc and original Rage Pro) have reported that the TV output is initially black, but switching to a text console and back to X fixes the problem. This problem should be fixed in the newest (4.3.0) binaries/patch. Thanks go to Peter Surda, Vladimir Dergachev and Rick Scott of GATOS and the gatos-devel list for the original Rage 128 and Radeon tv out code that this patch is based on. Alternatives to the patch: NOTE: Several people have asked me for information on VBE functions for mach64 and other chipsets, such as Radeon. The only information I am able to provide can be found in the source of my patch. I only have documentation for mach64 chips, and I am not permitted to share this documentation. There is no publicly available hardware documentation from ATI, but they have already provided documentation to developers on the XFree86, gatos, and DRI open-source projects. If you are interested in helping the effort to support TV-out for ATI chipsets, I recommend subscribing to the gatos-devel mailing list. General information about VESA modes and the VESA BIOS Extension (VBE) as well as specifications for VESA standards can be found at the VESA website. To apply the patch: Begin in the 'ati.2' directory of your local GATOS cvs tree and run: % gunzip -c mach64-tvout-X.diff.gz | patch -p0 Then rebuild and install the driver. Then you'll need to add ' The most recent patch should apply cleanly to the GATOS cvs. The patch files are gzipped unidiff text files. The binaries are made from GATOS cvs HEAD (main tree, not devel branch). Note that these binaries don't include DRI support. If you're looking for unified support for DRI, XVideo, and TV-out, check out my GATOS patch for DRI. For more information about the GATOS drivers, check out the GATOS homepage and the gatos-devel mailing list. DISCLAIMER: This code is experimental and is provided as-is. It is intended for developers who want to help work on tv-out support for ATI video cards. No warranty or support is implied and I take no responsiblity for any damage it may cause to your hardware if you choose to use it. Enjoy! ;) Patch and Binaries for XFree86 4.3.0: source patch: mach64-tvout-20030328.diff.gz (3/28/03) binaries: ATI-4.3.0-mach64tvout-20030328.tar.gz (3/28/03) Patch and Binaries for XFree86 4.2.0: source patch: mach64-tvout-20020916.diff.gz (9/16/02) binaries: ATI-4.2.0-mach64tvout-20020916.tar.gz (9/16/02) Older patches Download via FTP Options: XF86Config Options ------------------ Option "TVOut" -- boolean, enable/disable TVOut probes and mode changes Option "TVStandard" -- Set TV standard (not supported for Rage LT Pro) Valid settings for "TVStandard": "NTSC", "PAL", "PAL-M", "PAL-60", "NTSC-J", "PAL-CN", "PAL-N", "SCART-PAL"Changes: * Mar. 28, 2003: - Ported patch to XFree86 4.3.0 - Included workaround for early mach64 chips (e.g. Rage II/IIC/II+), which should fix the black screen when starting the X server, so the vt switch workaround shouldn't be necessary. - Re-enabled BIOS display switching (disabled in stock 4.3.0 driver) - Created patched GATOS binaries from GATOS cvs HEAD and XFree86 4.3.0 * Sep. 17, 2002: - Move the VBE mode set to before the X server restores the VGA video memory when switching to text console. Partially fixes custom console fonts being reset on vt switches (non-standard console fonts sizes are still a problem). * Sep. 16, 2002: - Don't use flat panel stretching (for non-native DFP/LCD modes) if TV is active or Option "crt_screen" is enabled. - Don't clobber video memory contents when switching modes with VBE SetMode. * Aug. 9, 2002: - Fix text console modes - Add XF86Config options: "TVOut" and "TVStandard" * Apr. 24, 2002: - Fix 15-bit depth, disable 24-bit depth as it doesn't seem to work. * Jan. 26, 2002: - Created patched GATOS binaries from GATOS cvs HEAD and XFree86 4.2.0 * Jan. 15, 2002: - Don't do any BIOS probes if mode is invalid/unsupported for TV out. - Added TV attached query for cards other than (earlier than) Rage LT Pro, Rage XL, Rage Mobility - Try to enable TV out (if attached) for cards other than (earlier than) Rage LT Pro, Rage XL, Rage Mobility - Code is included (but disabled with #ifdef 0) for setting TV standard on cards other than LT Pro. Just enable the code and hard code your TV standard. Your card must support multiple TV standards. * Dec. 16, 2001: - Initial port of r128/Radeon TV out code from GATOS devel branch - Supports connecting/disconnecting TV on mode switches for Rage LT Pro, Rage XL, and Rage Mobility. Other cards should work if TV is connected at boot time.TODO / Limitations: - Only works on x86 - Cards other than Rage LT Pro, Rage XL, and Rage Mobility may not work at 1024x768 and may start up with a black screen and require a vt switch to a text console and back to fix the TV output. - No detection or enabling/disabling functions for LCD/DFP, CRT with cards other than Rage LT Pro, Rage XL, Rage Mobility.License: The source code and binaries on this page are based on the XFree86 project and are subject to the XFree86 License. |
|||||||||
All images and text © 1998-2003 Leif L. Delgass, All Rights Reserved Home |
World Trip |
Photos |
Linux |
Links |
Email me |