Brian [Mon, 6 Aug 2007 18:28:33 +0000 (12:28 -0600)]
remove more intel dependencies
Brian [Mon, 6 Aug 2007 18:07:48 +0000 (12:07 -0600)]
remove intel dependencies from intel_mipmap_tree.c
Brian [Mon, 6 Aug 2007 17:51:16 +0000 (11:51 -0600)]
checkpoint: move some texture layout code
Brian [Mon, 6 Aug 2007 17:22:00 +0000 (11:22 -0600)]
Checkpoint lifting of intel_mipmap_tree (intel_mipmap_tree -> pipe_mipmap_tree and move some code)
Keith Whitwell [Mon, 6 Aug 2007 09:15:30 +0000 (10:15 +0100)]
Add pipe buffer managment functions.
The state_tracker driver needs these to implement, eg. pixel buffer objects,
vertex buffer objects.
Keith Whitwell [Sun, 5 Aug 2007 16:23:38 +0000 (17:23 +0100)]
Add a new interface between softpipe and the window system / buffer manager.
This interface is defined by softpipe and any window system (eg i915pipe)
wishing to use softpipe is required to implement the interface.
Currently the interface is all about buffer management.
Generalizing, each pipe driver will advertise an interface in a similar
spirit to this, and again any window system driver wishing to use that
rendering pipeline will have to implement the interface it defines. It
clearly isn't a one-way street however, as softpipe could just do its own
buffer management with malloc. The interaction with a buffer manager is
desired to allow us to exercise the hardware swapbuffers functionality of
the i915pipe driver, and also to get a feel for the way hardware drivers
which really need a buffer manager will work.
Brian [Fri, 3 Aug 2007 19:31:56 +0000 (13:31 -0600)]
remove intel_pixel.c
Brian [Fri, 3 Aug 2007 19:30:55 +0000 (13:30 -0600)]
added st_cb_fbo.c
Brian [Fri, 3 Aug 2007 19:29:02 +0000 (13:29 -0600)]
more work on st_choose_pipe_format()
Brian [Fri, 3 Aug 2007 19:28:35 +0000 (13:28 -0600)]
framebuffer object functions
Keith Whitwell [Fri, 3 Aug 2007 17:58:41 +0000 (18:58 +0100)]
Remove dead files
Keith Whitwell [Fri, 3 Aug 2007 17:56:12 +0000 (18:56 +0100)]
Rip out more dead drawing-related code.
Keith Whitwell [Fri, 3 Aug 2007 12:22:30 +0000 (13:22 +0100)]
Remove "static region" support.
The frontbuffer/driBufMgr interactions are handled as a special case
in the intel_screen code.
Keith Whitwell [Fri, 3 Aug 2007 12:14:27 +0000 (13:14 +0100)]
Simplify frontbuffer / sarea / rotation management.
Remove lots of old cruft.
Keith Whitwell [Fri, 3 Aug 2007 11:28:03 +0000 (12:28 +0100)]
Workaround wierd oops on gutsy when building mesa.
Brian [Fri, 3 Aug 2007 02:40:33 +0000 (20:40 -0600)]
added pipe->supported_formats()
Brian [Fri, 3 Aug 2007 02:40:19 +0000 (20:40 -0600)]
hook in teximage bits
Brian [Fri, 3 Aug 2007 02:39:45 +0000 (20:39 -0600)]
more formats
Brian [Fri, 3 Aug 2007 02:36:36 +0000 (20:36 -0600)]
trim #includes
Brian [Fri, 3 Aug 2007 02:36:06 +0000 (20:36 -0600)]
beginings of teximage functions
Brian [Thu, 2 Aug 2007 22:08:18 +0000 (16:08 -0600)]
pipe->clear() now takes a surface, rather than color/depth/stencil flags.
pipe->clear() only used to clear whole buffers (no scissor) w/out masking.
Draw a colored quadrilateral in all other cases.
Brian [Thu, 2 Aug 2007 20:21:16 +0000 (14:21 -0600)]
call st_init_cb_drawpixels
Brian [Thu, 2 Aug 2007 20:21:02 +0000 (14:21 -0600)]
added st_cb_drawpixels.c
Brian [Thu, 2 Aug 2007 20:20:40 +0000 (14:20 -0600)]
initial work for textured-quad glDrawPixels
Brian [Thu, 2 Aug 2007 20:20:13 +0000 (14:20 -0600)]
remove st_draw.h include
Brian [Thu, 2 Aug 2007 19:48:02 +0000 (13:48 -0600)]
setup more state for clear_with_quad()
Brian [Thu, 2 Aug 2007 19:46:47 +0000 (13:46 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch
Brian [Thu, 2 Aug 2007 19:38:38 +0000 (13:38 -0600)]
get rid of accum param
Keith Whitwell [Thu, 2 Aug 2007 19:35:50 +0000 (20:35 +0100)]
Remove all references to swrast.
The one place the functionality continues to be needed is as last-ditch
implementations of TexCopyImage, etc. TBD what to do about that, but
that will be an issue for state_tracker, not for here.
Keith Whitwell [Thu, 2 Aug 2007 19:33:58 +0000 (20:33 +0100)]
Fix make recursion.
Unfortunately means you can't just type make in softpipe any more.
Brian [Thu, 2 Aug 2007 18:14:16 +0000 (12:14 -0600)]
added clear-scissor.c
Brian [Thu, 2 Aug 2007 18:14:05 +0000 (12:14 -0600)]
test glClear w/ scissor
Brian [Thu, 2 Aug 2007 18:12:48 +0000 (12:12 -0600)]
Implement new draw_vertices() path for simple vertex array drawing, use it for glClear.
Keith Whitwell [Thu, 2 Aug 2007 17:25:10 +0000 (18:25 +0100)]
Remove references to accum buffers in softpipe.
Also some minor clear fixes.
Keith Whitwell [Thu, 2 Aug 2007 13:56:44 +0000 (14:56 +0100)]
Remove intel_state.c, intel_rotate.[ch]
Brian [Thu, 2 Aug 2007 16:30:32 +0000 (10:30 -0600)]
New header file.
Brian [Thu, 2 Aug 2007 16:29:50 +0000 (10:29 -0600)]
include st_cb_clear.h
Brian [Thu, 2 Aug 2007 16:29:42 +0000 (10:29 -0600)]
sketch out clearing with quads
Brian [Thu, 2 Aug 2007 16:29:04 +0000 (10:29 -0600)]
add PIPE_MASK_RGBA
Brian [Thu, 2 Aug 2007 16:01:14 +0000 (10:01 -0600)]
comment follow-up
Brian [Thu, 2 Aug 2007 15:17:56 +0000 (09:17 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch
Keith Whitwell [Thu, 2 Aug 2007 13:53:08 +0000 (14:53 +0100)]
Remove intelClear() hack.
Have added intel_batchbuffer_flush calls to the blit functions. We
still shouldn't be calling back into this remnant intel code from the
softpipe driver, though, so that will go too at some point.
Keith Whitwell [Thu, 2 Aug 2007 13:50:08 +0000 (14:50 +0100)]
Remove remnants of i915 texture-from-pbo code.
Keith Whitwell [Thu, 2 Aug 2007 12:59:31 +0000 (13:59 +0100)]
Reroute some clear functionality.
Still require the intelClear() call to flush batchbuffers. That will be
removed later...
Brian [Wed, 1 Aug 2007 22:15:30 +0000 (16:15 -0600)]
implement masking in sp_region_fill()
Brian [Wed, 1 Aug 2007 21:39:19 +0000 (15:39 -0600)]
rearrange things in xmesa_clear() a bit
Brian [Wed, 1 Aug 2007 21:38:59 +0000 (15:38 -0600)]
get cliprect bounds after softpipe_update_derived()
Brian [Wed, 1 Aug 2007 21:11:59 +0000 (15:11 -0600)]
Re-implement intelClear() in terms of softpipe_clear(). Pretty simple/small now.
Note: softpipe_clear() should really be renamed to something like
pipe_clear_with_blits() and put into a driver-indepedent module...
Brian [Wed, 1 Aug 2007 20:46:07 +0000 (14:46 -0600)]
More work on glClear.
Add a 'mask' param to region_fill() to help with clearing combined Z/stencil buffers, glColorMask, etc.
Brian [Wed, 1 Aug 2007 19:11:34 +0000 (13:11 -0600)]
s/Z24_S8/S8_Z24/
Brian [Wed, 1 Aug 2007 19:04:58 +0000 (13:04 -0600)]
s/Z24_S8/S8_Z24/ (stencil is in the high byte)
Brian [Wed, 1 Aug 2007 18:58:38 +0000 (12:58 -0600)]
Checkpoint: glClear changes - working, bug very rough.
Keith Whitwell [Wed, 1 Aug 2007 14:56:23 +0000 (15:56 +0100)]
Build libsoftpipe.a
Each pipe driver will build to a .a library, as these will optionally
be included in the various DRI drivers (this will make more sense once
there is at least one hardware driver...). Not strictly necessary for
softpipe, but want to minimize the differences between it and
actual hw implementations.
Keith Whitwell [Tue, 31 Jul 2007 20:06:31 +0000 (21:06 +0100)]
Remove unused file intel_render.c
Keith Whitwell [Tue, 31 Jul 2007 20:06:02 +0000 (21:06 +0100)]
Remove unused file
Keith Whitwell [Tue, 31 Jul 2007 20:05:24 +0000 (21:05 +0100)]
Remove intel_span.[ch]
Brian [Tue, 31 Jul 2007 23:55:32 +0000 (17:55 -0600)]
sp_z_surface.h is dead
Brian [Tue, 31 Jul 2007 23:54:56 +0000 (17:54 -0600)]
Obsolete.
Brian [Tue, 31 Jul 2007 23:42:03 +0000 (17:42 -0600)]
Redesign pipe_surface in terms of pipe_region.
struct pipe_buffer goes away.
Added basic region functions to softpipe to allocate/release malloc'd regions.
Surface-related code is fairly coherent now.
Brian [Tue, 31 Jul 2007 21:44:50 +0000 (15:44 -0600)]
Lift region-related functions up to the pipe interface.
Some of these functions probably should be driver-private.
Note: intel_buffer_object is in p_state.h and should be fixed/removed.
There are just a few i915 dependencies in intel_region.c
Brian [Tue, 31 Jul 2007 19:42:23 +0000 (13:42 -0600)]
re-fix stencil addressing bug
Keith Whitwell [Tue, 31 Jul 2007 19:34:17 +0000 (20:34 +0100)]
Add missing files
Keith Whitwell [Tue, 31 Jul 2007 19:28:26 +0000 (20:28 +0100)]
Remove references to intel_tris.h
Keith Whitwell [Tue, 31 Jul 2007 19:22:49 +0000 (20:22 +0100)]
Build the "pipe" version of the i915tex driver.
This hands all rendering off to the softpipe rasterizer.
Keith Whitwell [Tue, 31 Jul 2007 19:06:09 +0000 (20:06 +0100)]
A version of the i915tex driver with all drawing code removed.
This is intended to support the softpipe development work. More code
will be removed and pushed into softpipe until this basicially becomes
the DRI/GLX interface for that driver.
Brian [Tue, 31 Jul 2007 19:03:18 +0000 (13:03 -0600)]
simplify clear.x1,y2,x2,y2 setup
Brian [Tue, 31 Jul 2007 18:49:11 +0000 (12:49 -0600)]
In i915/i830_emit_state(), check if state->draw_region is non-null.
This fixes a problem hit by glClear in the samples/stencil.c program.
Brian [Tue, 31 Jul 2007 17:15:30 +0000 (11:15 -0600)]
fix stencil addressing bug
Brian [Tue, 31 Jul 2007 16:43:36 +0000 (10:43 -0600)]
remove obsolete xmesa_get_stencil_surface() stub
Brian [Tue, 31 Jul 2007 16:43:16 +0000 (10:43 -0600)]
fix comments and param names for intel_miptree_image_map()
Brian [Tue, 31 Jul 2007 16:42:39 +0000 (10:42 -0600)]
fix value returned by intel_new_renderbuffer_fb()
Brian [Tue, 31 Jul 2007 14:22:18 +0000 (08:22 -0600)]
fix assertions
Keith Whitwell [Tue, 31 Jul 2007 13:37:45 +0000 (14:37 +0100)]
Merge branch 'i915tex_privbuffers' into softpipe_0_1_branch
Conflicts:
src/mesa/drivers/dri/i915tex/intel_buffers.c
src/mesa/drivers/dri/i915tex/intel_context.c
src/mesa/drivers/dri/i915tex/intel_fbo.c
src/mesa/drivers/dri/i915tex/intel_pixel_draw.c
Brian [Tue, 31 Jul 2007 03:39:57 +0000 (21:39 -0600)]
32 and z24s8 softpipe buffers
Brian [Mon, 30 Jul 2007 23:20:02 +0000 (17:20 -0600)]
remove some obsolete xmesa remnants
Brian [Mon, 30 Jul 2007 23:16:38 +0000 (17:16 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch
Brian [Mon, 30 Jul 2007 23:17:44 +0000 (17:17 -0600)]
Lots of improvements to the surface-related code.
Z testing now works with i915 driver.
Add gl_renderbuffer::surface pointer (and reverse pointer).
Remove intel_surface and xmesa_surface types - no longer used.
Brian [Mon, 30 Jul 2007 23:15:50 +0000 (17:15 -0600)]
compute scale for Z24 buffers
Brian [Mon, 30 Jul 2007 20:00:27 +0000 (14:00 -0600)]
implement read_quad_f_swz()
Brian [Mon, 30 Jul 2007 19:46:00 +0000 (13:46 -0600)]
Merge branch 'softpipe_0_1_branch' of git+ssh://brianp@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch
Brian [Mon, 30 Jul 2007 19:11:52 +0000 (13:11 -0600)]
implement surfaces for softpipe rendering
Brian [Mon, 30 Jul 2007 19:11:27 +0000 (13:11 -0600)]
map/unmap surfaces before/after rendering
Brian [Mon, 30 Jul 2007 19:11:09 +0000 (13:11 -0600)]
remove old comments
Brian [Mon, 30 Jul 2007 19:10:52 +0000 (13:10 -0600)]
disable ProgramStringNotify assertion
Brian [Mon, 30 Jul 2007 19:10:12 +0000 (13:10 -0600)]
call st_invalidate_state()
Brian [Mon, 30 Jul 2007 19:09:53 +0000 (13:09 -0600)]
added map/unmap() stubs
Roland Scheidegger [Sun, 29 Jul 2007 17:40:50 +0000 (19:40 +0200)]
fix range reduction for sin/cos in i915tex (#11609)
Roland Scheidegger [Sun, 29 Jul 2007 16:04:28 +0000 (18:04 +0200)]
Fix crashes when the frag prog can't be handled in hardware (#11131)
Must not change to/from swrast after Render.Start or bad things will happen.
(Driver will still somewhat incorrectly report an implementation error,
and apps can't really figure out if a prog is natively supported as validation
is later - could try doing it earlier to give some hint at least, even though
native status may still change later due to fog etc.)
Brian [Fri, 27 Jul 2007 17:02:54 +0000 (11:02 -0600)]
renaming, comments, clean-up
Brian [Fri, 27 Jul 2007 16:50:35 +0000 (10:50 -0600)]
Clip triangles against softpipe->cliprect which includes scissor and surface bounds.
This prevents rendering out of bounds when the viewport is partially outside the surface bounds.
Brian [Fri, 27 Jul 2007 16:25:11 +0000 (10:25 -0600)]
remove obsolete comments
Brian [Fri, 27 Jul 2007 16:21:34 +0000 (10:21 -0600)]
Maintain cliprect (scissor) info in sp_state_derived.c.
The cliprect depends on the scissor rect (if enabled), otherwise the drawing
surface bounds.
Brian [Fri, 27 Jul 2007 16:10:49 +0000 (10:10 -0600)]
Implement point/line quad clipping. Not quite as efficient as it probably could be, but sufficient for now.
Brian [Fri, 27 Jul 2007 15:27:56 +0000 (09:27 -0600)]
check scissor state
Brian [Fri, 27 Jul 2007 15:06:15 +0000 (09:06 -0600)]
s/SP_TILE_H/SP_QUAD_H/
Brian [Fri, 27 Jul 2007 15:06:02 +0000 (09:06 -0600)]
init quad.coverage values to 1.0 in case line AA is enabled so that we see something
michal [Fri, 27 Jul 2007 10:50:38 +0000 (12:50 +0200)]
Avoid unnecessary input attrib copy by aligning exec_machine attribs.
michal [Fri, 27 Jul 2007 08:05:40 +0000 (10:05 +0200)]
Merge branch 'master' of git+ssh://michal@git.freedesktop.org/git/mesa/mesa into softpipe_0_1_branch
Brian [Thu, 26 Jul 2007 21:32:02 +0000 (15:32 -0600)]
Fix function call bug 11731. Also, fix up IR_CALL/IR_FUNC confusion.
Brian [Thu, 26 Jul 2007 17:39:11 +0000 (11:39 -0600)]
generate error upon writing to varying var in fragment program (bug 11733)