summaryrefslogtreecommitdiff
path: root/src/mesa/drivers/dri/r300/r300_context.h
AgeCommit message (Collapse)Author
2007-06-14Initial r300 modes for swtcl it compiles!!Dave Airlie
2007-05-30r300: Document registers 0x2220 to 0x2230.Oliver McFadden
These registers are per-pixel and per-vertex X and Y clipping planes.
2007-05-30r300: Removed the (completely broken since new VBO branch) OPTIMIZE_ELTS path.Oliver McFadden
The VTXFMT code was broken by the new VBO branch and the OPTIMIZE_ELTS path relied on the VTXFMT code... I'm not even sure if the OPTIMIZE_ELTS path ever worked; the testing that I did after minimizing the code duplication would have taken the same path as the non-OPTIMIZE_ELTS code.
2007-05-26r300: Removed duplicate AOS format defines; already defined in r300_reg.h.Oliver McFadden
2007-05-26r300: Removed unused aos_reg variable.Oliver McFadden
2007-05-25r300: Cleaned up t_vir0 and t_vir1 slightly.Oliver McFadden
2007-05-22r300: Implement SetTexOffset hook.Michel Dänzer
2007-05-20r300: Just use "inline" rather than "__inline__".Oliver McFadden
2007-05-17r300: Removed the radeon_vertex_buffer structure.Tommy Schultz Lassen
2007-05-13r300: Enable the non-user-buffers code to compile.Oliver McFadden
2007-05-13r300: Removed the unused r300_aos_rec (replaced by r300_dma_region) structure.Oliver McFadden
2007-05-11r300: Removed unused FORCE_32BITS_ELTS define.Oliver McFadden
2007-05-11r300: Removed the unused CPT macro.Oliver McFadden
2007-05-11r300: Moved r300PackFloat24 near r300PackFloat32.Oliver McFadden
2007-05-09r300: Added some more Doxygen documentation and made some functions static.Oliver McFadden
2007-05-09r300: Removed the "texmicrotile" variable; the tiling code is disabled via aOliver McFadden
compiler conditional anyway; probably broken?
2007-05-09r300: Cleaned up radeon_context.h slightly; mostly Indent.Oliver McFadden
2007-05-09r300: Renamed the R300 memory manager from "radeon" to "r300"; it's R300Oliver McFadden
specific.
2007-05-09r300: Removed the dangerous R300_SPAN_DISABLE_LOCKING flag.Oliver McFadden
Enabling R300_SPAN_DISABLE_LOCKING would probably cause more lockups; I think there are a couple of other little bugs in this code, too. It's best to remove it.
2007-05-09r300: Added some Doxygen comments.Christoph Bill
2007-05-09r300: Removed the deprecated VTXFMT code.Oliver McFadden
This was okayed by Jerome Glisse and Keith Whitwell on the dri-devel IRC channel and list, respectively.
2007-05-09r300: Fixed some more function names.Oliver McFadden
Note there might be some calls to the old function names in conditionally disabled code, but I think I've got them all.
2007-05-09r300: Changed r300_run_vb_render calls to r300RunRender in some conditionallyOliver McFadden
disabled code.
2007-05-09r300: Indented r300_context.[ch].Oliver McFadden
2007-05-09r300: Removed the ugly CARD32 type.Oliver McFadden
2007-05-09r300: Renamed vertex_shader.h to r300_vertprog.hOliver McFadden
2007-05-08r300: Renamed the VBO functions to the R300 name format.Oliver McFadden
2007-05-06r300: fix broken vbosAapo Tahkola
2007-05-05don't use hw to perform vertex transform etc. when using swtcl. This for ↵Aapo Tahkola
compatibility with vertex programs and the fact that swtcl very rarely gets hit with tcl capable hw.
2007-03-24r300: Fix texture coordinate calculation for rectangle texturesNicolai Haehnle
R300 hardware takes texcoords in the range 0..1 even for rectangle textures. Previously, the necessary texcoord conversion was applied to the texture coordinate during vertex processing in a render stage. This is obviously wrong when fragment programs are used, which can calculate arbitrary coordinates for TEX instructions. Therefore, we now inject an appropriate MUL instruction before a TEX that reference a rectangle texture.
2007-03-24r300: No assertion when accessing incomplete texture images.Nicolai Haehnle
There used to be an assertion when a fragment program accesses an incomplete texture image. Work around this assertion. Note: I am unsure whether this workaround produces the desired result (0,0,0,1) on all hardware.
2007-03-21r300: Remove the program-global const_sin indexNicolai Haehnle
The index is no longer necessary to share constants between multiple SIN/COS/SCS instructions inside a single fragment program, and storing a tiny implementation detail like this in the fragment_program structure itself was just nasty.
2007-03-20r300: Whitespace cleanup (remove trailing spaces)Nicolai Haehnle
2007-03-19r300: Cleanup fragment program constant allocation, share constantsNicolai Haehnle
The constant/parameter allocation was significantly simplified, removing one unnecessary copy operation of parameters. The dirty state tracking is unchanged and far from optimal, since all state is always re-fetched. Constants and parameters are now emitted only once, which significantly reduces the resource pressure on larger programs.
2007-03-19r300: Fix fragment program reorderingNicolai Haehnle
Do not move an instruction that writes to a temp forward past an instruction that reads the same temporary.
2007-03-19r300: Fix fragment program instruction pairing and register allocationNicolai Haehnle
There were a number of bugs related to the pairing of vector and scalar operations where swizzles ended up using the wrong source register, or an instruction was moved forward and ended up overwriting an aliased register. The new algorithm for register allocation is quite conservative and may run out of registers before necessary. On the plus side, It Just Works. Pairing is done whenever possible, and in more cases than before, so in practice this change should be a net win.
2007-03-11Guess another unknown register in R300 command buffer initialization. ↵Aapo Tahkola
(Oliver McFadden)
2007-03-11Renamed some of the unkXXX variables in the command buffer initOliver McFadden
ialization code. Note that there are still plenty of actual unknown variables left that should probably be deciphered. There are a number of things incomplete in the driver; the different polygon offset modes (line, point, etc), the other texture filter, texture chroma key, etc. These should probably be fixed in the future, or at least added to the TODO list.
2007-02-22r300: get rid of CB_DPATH legacyDave Airlie
2007-02-14r300: Fix cos & add scs to fragment program.Rune Peterson
So this do : - Fixes COS. - Does range reductions for SIN & COS. - Adds SCS. - removes the optimized version of SIN & COS. - tweaked weight (should help on precision). - fixed a copy paste typo in emit_arith().
2007-02-12r300: Add proper support for sin/cos instruction in fragment programRune Peterson
Getting proper SIN and COS wasn't as easy as it appeared. I had to make make some changes to the fragment program code. general FP changes: - support HHH swizzle for vector instructions. - don't copy a source to a temp when it is not XYZW swizzled, but combine the two and have the swizzle resolve any issues. (saves temps/instructions with more elaborate shader code) - fix overflow in cnstv[].
2007-01-16Merge branch 'master' of git+ssh://keithw@git.freedesktop.org/git/mesa/mesa ↵Keith Whitwell
into vbo-0.2 Conflicts: src/mesa/array_cache/sources src/mesa/drivers/dri/i965/brw_context.c src/mesa/drivers/dri/i965/brw_draw.c src/mesa/drivers/dri/i965/brw_fallback.c src/mesa/drivers/dri/i965/brw_vs_emit.c src/mesa/drivers/dri/i965/brw_vs_tnl.c src/mesa/drivers/dri/mach64/mach64_context.c src/mesa/main/extensions.c src/mesa/main/getstring.c src/mesa/tnl/sources src/mesa/tnl/t_save_api.c src/mesa/tnl/t_save_playback.c src/mesa/tnl/t_vtx_api.c src/mesa/tnl/t_vtx_exec.c src/mesa/vbo/vbo_attrib.h src/mesa/vbo/vbo_exec_api.c src/mesa/vbo/vbo_save_api.c src/mesa/vbo/vbo_save_draw.c
2006-11-17fragment.position supportRune Petersen
World position is calculated in the vertex shader and passed to the fragment shader via an unused texcoord.
2006-11-17r300_select_vertex_shader4:Rune Petersen
Makes the vertex program output from the fragment input. It makes the driver capable of catching output-input mismatches safely. Primarily based on some of Aapo Tahkola's code.
2006-10-31disable vtxfmt_a code, switch over to vboKeith Whitwell
2006-09-12Removing some of r200 dependency, cleaning up code a bit,Jerome Glisse
and fixing a couple of warning. More cleanup and shuffle to come. I have tested this change they might broke things especialy with r300_texstate.c change (format_x doesn't seems to be use at all by r300).
2006-08-31Give the user posibility to choose speed over correctness.Rune Petersen
It does 2 things: 1) Allows you to disable S3TC, wine-games sometimes need S3TC enabled. 2) Disable fallbacks that usually have low impact.
2006-08-22extend some DrawRangeElements cases to support rendering more than 65535 ↵Aapo Tahkola
verts in one blast. ut2k4 cases in other words ...
2006-08-11support shorts as vertex dataAapo Tahkola
2006-07-20Some structure renaming. Prefix vertex/fragment-related structs withBrian Paul
"gl_" to match other structs.