| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| | |
|
| |
| |
| |
| |
| | |
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
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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 <[email protected]>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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 <[email protected]>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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 <[email protected]>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
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 <[email protected]>
|
| |/
|/|
| |
| |
| |
| | |
Other nvXX drivers seem to do this, so I do it too.
Signed-off-by: Pekka Paalanen <[email protected]>
|
|/ |
|
| |
|
| |
|
|
|
|
|
| |
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 <[email protected]>
|
|
|
|
|
|
|
|
| |
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 <[email protected]>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Replace cell_batch{align,alloc)*() with cell_batch_alloc16(), allocating
multiples of 16 bytes that are 16 byte aligned.
Opcodes are stored in preferred slot of SPU machine word.
Various structures are explicitly padded to 16 byte multiples.
Added STATIC_ASSERT().
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Still a little dodgy:
- RTT will hit an assertion (hopefully!) and fail
- 3D textures with depth >= 32 will cause bad things to happen
|
| | |
|