Age | Commit message (Collapse) | Author |
|
nv20_miptree_create() should set various flags.
Copy stuff over from nv40.
trivial/tri does not abort on nv04 swizzled copy anymore.
I still miss my triangle.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
If do_flipp is true, it would first do the proper copy, height would
wrap around to unsigned maximum, and then it attempts to do another
copy.
Return after doing the proper copy.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
Wrong hardware object being used, when compared with earlier code.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
|
|
|
|
|
|
|
|
|
|
Don't look at nouveau_winsys_pipe.h... I promise it's temporary!
|
|
|
|
this change disassociates, at least from the driver perspective,
the surface from buffer. surfaces are technically now views on the
textures so make it so by hiding the buffer in the internals of
textures.
|
|
git+ssh://marcheu@git.freedesktop.org/git/mesa/mesa into gallium-0.2
|
|
|
|
|
|
Color and Z buffer offsets were emitted here, now also the buffer
handles are emitted so they target the correct memory.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
Probably not necessary, but just in case. Depth registers point to the
color buffer, when there is no depth buffer.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
Based on my renouveau dump, adjust initial hw state related to Z-mapping,
and add one unknown depth reg into depth/stencil/alpha emission.
Now trivial/tri-z on nv20 looks identical to swrast rendered one.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
nv20_draw_elements() uses the draw module, and draw_flush() needs to be
called to actually emit the vertices immediately.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
Other nvXX drivers seem to do this, so I do it too.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
|
|
move it to pipe/internal/p_winsys_screen.h and start converting
the state trackers to the screen usage
|
|
|
|
allows the driver to overwrite buffer allocation, first step on the way
to making winsys interface internal to the drivers. state trackers and
the code above it will go through the screen
|
|
|
|
|
|
|
|
Only enabled while in development this commit
will be reverted in the future.
|
|
|
|
|
|
reuse the size of the actual buffer
|
|
|
|
|
|
|
|
|
|
|
|
|
|
NV20 seems to be very different to NV10. In vertex array, pos is first,
not last. There are maximum 16 attributes and only few are currently
known.
This makes trivial/tri work on NV20.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
VIEWPORT_SCALE0 seems to do with translation and the sane
value for x and y is zero.
VIEWPORT_SCALE1 is still a mystery.
Signed-off-by: Pekka Paalanen <pq@iki.fi>
|
|
|
|
|
|
This commit is mostly just a cosmetic change that cleans-up the interfaces,
replacing pipe_winsys::surface_* calls by
/**
* Allocate storage for a display target surface.
*
* Often surfaces which are meant to be blitted to the front screen (i.e.,
* display targets) must be allocated with special characteristics, memory
* pools, or obtained directly from the windowing system.
*
* This callback is invoked by the pipe_screenwhen creating a texture marked
* with the PIPE_TEXTURE_USAGE_DISPLAY_TARGET flag to get the underlying
* buffer storage.
*/
struct pipe_buffer *(*surface_buffer_create)(struct pipe_winsys *ws,
unsigned width, unsigned height,
enum pipe_format format,
unsigned usage,
unsigned *stride);
Most drivers were updated but not all were tested. Use the softpipe pipe
driver and the xlib winsys changes as a reference when fixing other drivers.
|
|
|
|
Without the f, the constant is treated as a double, resulting in
slower arithmetic and libgcc conversion calls each time CEILF()
is used.
|
|
Previously all squares were textured with the same texture.. not quite what
the demo was supposed to look like!
|
|
This fixes a lot of other things where not all the geometry got drawn
also.
|
|
No real idea what this does.. but a lot of things that misrendered and
made the GPU throw a DATA_ERROR now work.. I'm wondering what side-effects
we'll see from this :)
|
|
|
|
|
|
|
|
Not quite working, but the general idea is right I think.
|