Commit Graph

45 Commits

Author SHA1 Message Date
Aaron Plattner
ee02e64788 Wrap libwfb memory access.
Use the READ and WRITE macros to wrap memory accesses that could be in video
memory.  Add MEMCPY_WRAPPED and MEMSET_WRAPPED macros to wrap memcpy and
memset, respectively.
2006-08-01 13:45:43 -07:00
Aaron Plattner
a4005c15fb Add framebuffer access wrapper infrastructure.
Create fbPrepareAccess macros to call into the driver to set up the
wfbReadMemory and wfbWriteWemory pointers.  Call these from fbGetDrawable and
fbGetStipDrawable.

Add the READ and WRITE macros, which expand to simple memory accesses for fb,
and calls through the function pointers for wfb.

Add fbFinishAccess macro to give the driver an opportunity to clean up.  Add
calls to this in the appropriate places.
2006-07-26 15:48:51 -07:00
Adam Jackson
0aaac95b0d Remove RCS tags. Fix Xprint makefile braindamage. 2006-07-21 17:56:00 -04:00
Eric Anholt
12563db59d Revert "Optimize out computing a gradient pixel if the mask value is 0."
This reverts cf46242e33 commit.  It wasn't meant
to be pushed to master yet, and doesn't work.
2006-07-03 12:52:27 -07:00
Eric Anholt
cf46242e33 Optimize out computing a gradient pixel if the mask value is 0.
Obtained from:	kdrive CVS (DavidR XGL fb/ megapatch)
2006-07-03 20:00:50 +02:00
Eric Anholt
c7ac485a59 Remove the default case from fbcompose.c switches which should cover all cases.
Instead, stick the NULL return default case afterwards, so that the compiler can
warn us when we've got unimplemented cases.  Removes some unimplemented and
unused 8bpp, depth 4 picture format names.
2006-06-23 13:56:20 -07:00
Kristian Høgsberg
ed18d776f0 Fix #2488 for fb too: sample pixel center when transforming. 2006-06-21 16:22:14 -04:00
Kristan Høgsberg
4365d16c86 Pull over convolution filter fixes from xgl-0-0-1 branch.
Cherry-picking patches:

	8a5ea68800 and
	4d755fe142
2006-06-19 22:21:49 -04:00
Eric Anholt
569c808a23 Fix crash when using PICT_x4a4 by supplying an appropriate fbFetchPixel_x4a4. 2006-06-19 16:42:09 -07:00
Eric Anholt
e793f0eeee Correct component ordering when fetching [ax]4b4g4r4 pixels.
Noticed by:	rendercheck
2006-06-19 15:11:55 -07:00
Adam Jackson
7893dadb2f Bug #6827: Fix texel fetch in fbFetchTransformed to avoid crashes. Still
not 100% correct, but better than 7.0. (Radek Doulik, Matthias Hopf)
2006-05-18 14:39:59 +00:00
Keith Packard
b37c515320 Add support for x4a4 format (depth 4 at 8bpp). Bug #6325. 2006-04-19 21:56:13 +00:00
Eric Anholt
c3d1403672 Remove libcwrapper usage from xorg server modules. The libcwrapper is only
of (marginal) use in the drivers, and that usage remains.
2006-02-10 22:00:30 +00:00
Adam Jackson
62f3ef930a Bug #5258: Restore binary compatibility with 6.8.2's PictureRec. (Aaron
Plattner)
2005-12-09 18:35:21 +00:00
Adam Jackson
d6f98cbdb8 Bug #3944: Fix 24bpp packed pixel. (Søren Sandmann Pedersen) 2005-12-08 19:33:09 +00:00
Eric Anholt
b2e451b93c Correct the test for whether projective transform is necessary. Also, use
"affine" to describe the variable (universally) on suggestion from
    vektor. Corrects a rendercheck failure.
2005-10-04 03:44:14 +00:00
Eric Anholt
84141fc299 Merge r1.36 of fbcompose.c from xserver CVS: Special case projective
transforms so we can avoid doing the expensive
64-bit math. Unroll the bilinear interpolation loops for an extra boost. I
    tested this with the up/downscaling cairo-benchmarks with Xvfb and saw
    a 12% +/- 4% decrease in time taken to run them.
2005-10-03 11:43:55 +00:00
Daniel Stone
b5d42012f9 Fix typo resulting in failure to swap between RGB/BGR properly. (Stephen P.
Becker)
2005-09-07 01:30:23 +00:00
Eric Anholt
f20e845b04 More 0 -> NULL for pointers missed in previous commit to this file. 2005-08-30 03:42:07 +00:00
Eric Anholt
e321f9e7ff Apply the xserver patch from vektor for bug #4208: Use NULL for pointers
instead of 0.
2005-08-30 03:01:38 +00:00
Søren Sandmann Pedersen
616a65c4cc Fri Aug 12 14:49:24 2005 Søren Sandmann <sandmann@redhat.com>
Apply another patch from Billy Biggs to fix precision issues.
2005-08-12 18:50:33 +00:00
Søren Sandmann Pedersen
8bfffb96b5 Fri Aug 12 14:29:09 2005 Søren Sandmann <sandmann@redhat.com>
Apply patch from Billy Biggs that fixes rounding problems with division.
    Part of bug 3945.
2005-08-12 18:31:07 +00:00
Lars Knoll
bfb10bd2dc Fix potential buffer overflow and a smaller bug in the convolution filter 2005-07-13 07:28:17 +00:00
Lars Knoll
41002623f3 Add MMX Code paths for the basic composition operations in
fbComposeGeneral.
2005-07-12 10:02:10 +00:00
Lars Knoll
ba011dc77d don't be too smart and try to replace PictOpOver by PictOpSrc when we have
an external alpha map.
Make fbmmx.c compile on gcc 4.0.1.
2005-07-04 14:47:03 +00:00
Lars Knoll
a4df8ad755 Fix handling of "super luminescent" colors Fix off by one error in the
transformation handling.
2005-07-04 14:23:59 +00:00
Daniel Stone
46b64bd5c6 Fix more include paths; add dix-config.h to XKB code. 2005-07-03 07:37:35 +00:00
Daniel Stone
e03198972c Add Xtrans definitions (FONT_t, TRANS_CLIENT) to clean up warnings.
Add XSERV_t, TRANS_SERVER, TRANS_REOPEN to quash warnings.
Add #include <dix-config.h> or <xorg-config.h>, as appropriate, to all
    source files in the xserver/xorg tree, predicated on defines of
    HAVE_{DIX,XORG}_CONFIG_H. Change all Xfont includes to
    <X11/fonts/foo.h>.
2005-07-03 07:02:09 +00:00
Daniel Stone
9b1debcdb6 Change all misc.h and os.h references to <X11/foo.h>. 2005-07-01 22:43:43 +00:00
Lars Knoll
b5b2a0522e Add support for gradients and solid fills to Render.
Changed the semantics of the Convolution filter a bit. It now doesn't try
    to normalize the filter values but leaves this to the client. This
    gives more reasonable behaviour in the limit where the filter
    parameters sum up to 0.
2005-07-01 10:05:43 +00:00
Lars Knoll
c6166ee741 Fix projective transformations in fbcompose.c Bugfix for convolution
filters
2005-06-15 14:51:12 +00:00
Lars Knoll
49476ca73c add the convolution filter from xserver to xorg 2005-06-13 14:40:25 +00:00
Alan Coopersmith
f58a54668b Change return statements to fix compiler errors: "fbcompose.c", line 2815:
void function cannot return value "fbcompose.c", line 2861: void
    function cannot return value
2005-05-14 20:13:45 +00:00
Adam Jackson
2de24db63e Render performance improvements. (Lars Knoll, Zack Rusin) 2005-05-08 23:34:15 +00:00
Søren Sandmann Pedersen
433c38f22f Thu Jan 13 15:40:29 2005 Søren Sandmann <sandmann@redhat.com>
Add MMX implementation of non-repeating source IN repeating mask, aka
    "translucent window".
Add MMX implementation of CopyArea.
Use MMX implementation of CopyArea.
Use the new implementations.
2005-01-13 20:49:21 +00:00
Markus Kuhn
44f4713a05 Encoding of numerous files changed to UTF-8 2004-12-04 00:43:13 +00:00
Eric Anholt
4078457919 Fix problems in render fb implementation found by rendercheck:
- fbCombineSaturate was pointed at fbCombineDisjointOver, instead of
    fbCombineDisjointOverReverse as it should. Instead, point
    fbCombineDisjointOverReverse at fbCombineSaturate (which is likely to
    be faster).
- fix previously-unused fbCombineSaturate implementation.
- fbCombineMaskAlphaC was just a copy of fbCombineMaskValueC. Make it do
    what it's supposed to (return a cs.alpha).
- fbCombineAtopC didn't invert the source alpha value.
- fix copy'n'paste errors in fbCombine(Dis/Con)jointGeneralC, also source
    alpha wasn't treated in a component fashion.
- fbCompositeSrc_8888* didn't handle when the source lacks an alpha
    channel. Rather than adding that and possilby slowing down the (normal)
    alpha case, don't let x8r8g8b8/x8b8g8r8 Pictures be used in
    fbCompositeSrc_8888* because Over with one of these is just Src.
2004-05-12 01:49:46 +00:00
Egbert Eich
2fb5886200 Merging XORG-CURRENT into trunk 2004-04-23 19:54:30 +00:00
Egbert Eich
dae90c3af9 Importing vendor version xf86-4_4_99_1 on Sun Mar 14 00:26:39 PST 2004 2004-03-14 08:34:49 +00:00
Egbert Eich
867451f1ab Importing vendor version xf86-4_4_0 on Wed Mar 3 04:09:24 PST 2004 2004-03-03 12:12:50 +00:00
Egbert Eich
df0313d35b readding XFree86's cvs IDs 2004-02-26 13:36:15 +00:00
Egbert Eich
147aae87fd Importing vendor version xf86-4_3_99_903 on Wed Feb 26 01:21:00 PST 2004 2004-02-26 09:23:53 +00:00
Kaleb Keithley
12e532010b XFree86 4.3.99.902 (RC 2) 2003-12-19 20:55:39 +00:00
Kaleb Keithley
adc7f9a4eb XFree86 4.3.99.16 Bring the tree up to date for the Cygwin folks 2003-11-25 19:29:01 +00:00
Kaleb Keithley
9508a382f8 Initial revision 2003-11-14 16:48:57 +00:00