mirror of
https://github.com/libretro/ppsspp.git
synced 2024-11-28 10:51:06 +00:00
Note that VADDR/IADDR are not updated on PRIM.
Even though they do increase the addresses, they don't affect the CMD registers. Also, make sure not to use a crazy bytesRead for a zero-sized prim.
This commit is contained in:
parent
7f5be6b35d
commit
4cc4cfed4c
@ -654,7 +654,7 @@ void DIRECTX9_GPU::ExecuteOp(u32 op, u32 diff) {
|
||||
|
||||
// After drawing, we advance the vertexAddr (when non indexed) or indexAddr (when indexed).
|
||||
// Some games rely on this, they don't bother reloading VADDR and IADDR.
|
||||
// Q: Are these changed reflected in the real registers? Needs testing.
|
||||
// The VADDR/IADDR registers are NOT updated.
|
||||
if (inds) {
|
||||
int indexSize = 1;
|
||||
if ((gstate.vertType & GE_VTYPE_IDX_MASK) == GE_VTYPE_IDX_16BIT)
|
||||
|
@ -752,7 +752,7 @@ void GLES_GPU::Execute_Prim(u32 op, u32 diff) {
|
||||
}
|
||||
#endif
|
||||
|
||||
int bytesRead;
|
||||
int bytesRead = 0;
|
||||
transformDraw_.SubmitPrim(verts, inds, prim, count, gstate.vertType, &bytesRead);
|
||||
|
||||
int vertexCost = transformDraw_.EstimatePerVertexCost();
|
||||
@ -761,7 +761,7 @@ void GLES_GPU::Execute_Prim(u32 op, u32 diff) {
|
||||
|
||||
// After drawing, we advance the vertexAddr (when non indexed) or indexAddr (when indexed).
|
||||
// Some games rely on this, they don't bother reloading VADDR and IADDR.
|
||||
// Q: Are these changed reflected in the real registers? Needs testing.
|
||||
// The VADDR/IADDR registers are NOT updated.
|
||||
if (inds) {
|
||||
int indexSize = 1;
|
||||
if ((gstate.vertType & GE_VTYPE_IDX_MASK) == GE_VTYPE_IDX_16BIT)
|
||||
|
@ -412,7 +412,7 @@ void SoftGPU::ExecuteOp(u32 op, u32 diff)
|
||||
|
||||
// After drawing, we advance the vertexAddr (when non indexed) or indexAddr (when indexed).
|
||||
// Some games rely on this, they don't bother reloading VADDR and IADDR.
|
||||
// Q: Are these changed reflected in the real registers? Needs testing.
|
||||
// The VADDR/IADDR registers are NOT updated.
|
||||
if (indices) {
|
||||
int indexSize = 1;
|
||||
if ((gstate.vertType & GE_VTYPE_IDX_MASK) == GE_VTYPE_IDX_16BIT)
|
||||
|
Loading…
Reference in New Issue
Block a user