From owner-freebsd-multimedia Mon Mar 10 01:18:23 1997 Return-Path: Received: (from root@localhost) by freefall.freebsd.org (8.8.5/8.8.5) id BAA05723 for multimedia-outgoing; Mon, 10 Mar 1997 01:18:23 -0800 (PST) Received: from rah.star-gate.com (rah.star-gate.com [204.188.121.18]) by freefall.freebsd.org (8.8.5/8.8.5) with ESMTP id BAA05708 for ; Mon, 10 Mar 1997 01:18:19 -0800 (PST) Received: from rah.star-gate.com (localhost.star-gate.com [127.0.0.1]) by rah.star-gate.com (8.8.5/8.7.3) with ESMTP id BAA02166; Mon, 10 Mar 1997 01:18:12 -0800 (PST) Message-Id: <199703100918.BAA02166@rah.star-gate.com> X-Mailer: exmh version 1.6.9 8/22/96 To: Doug White cc: freebsd-multimedia@FreeBSD.ORG Subject: Re: BT848: Revenge of the smurfs In-reply-to: Your message of "Mon, 10 Mar 1997 00:08:23 PST." Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Date: Mon, 10 Mar 1997 01:18:12 -0800 From: Amancio Hasty Sender: owner-multimedia@FreeBSD.ORG X-Loop: FreeBSD.org Precedence: bulk >From The Desk Of Doug White : > 5. A special hack needs to be made for the Mach64 X server. Amancio > reports the Mach64 cards' RGB bit order is backwards from other (S3?) > units. This is best exhibited by firing up tv and tuning to the evening > news -- it's the attack of the killer human-sized smurfs! :) > Traditionally blue backgounds become fire red, and my nice blue raincoat > performs a similar transformation with my video camera. Green comes > through fine, as does captures from vic. > Just to get you going over there : Try setting the following bits: bt848[BKTR_COLOR_CTL] : bit 3 WORD SWAP ODD bit 2 WORD SWAP EVEN bit 1 BYTE SWAP ODD bit 0 BYTE SWAP EVEN Now if you look in brooktree848.c: start_capture you will see: case METEOR_ONLY_EVEN_FIELDS: bktr->flags |= METEOR_WANT_EVEN; i_flag = 1; break; case METEOR_ONLY_ODD_FIELDS: bktr->flags |= METEOR_WANT_ODD; i_flag = 2; break; default: bktr->flags |= METEOR_WANT_MASK; i_flag = 3; break; } even is for even frames odd is for odd frames default: is for even and odd frames For testing purposes I would just set bit 0 1 if you are capturing in 16bits If you are capturing 32bits I would set bit 3 2. bt848[BKTR_COLOR_CTL] |= 3; Obviously this is a quick and very dirty hack but I think it can get you going over there. Have fun, Amancio