Currently, the patched D3D API D3DDevice_DrawIndexedVertices and D3DDevice_DrawIndexedVerticesUp doesn't support xbox PrimitiveType X_D3DPT_LINESTRIP and X_D3DPT_QUADLIST and give a warning about it without further patching the vertex data.
but in push-buffer processing, the two indexed buffer method 0X1800 and 0x1808 patched the vertex data and even tries to render the IB and VB without any warning, which might introduce unknown issues.
the vertex patch function seems already support these two primitive type. The problem is that when an Index Buffer is used, the indexed buffer wasn't patched accordingly.
So a new code shall be added to patch the indexed buffer as well, and then remove any further limit or warning for the 4 forementioned functions above.
I've done this already in my https://github.com/PatrickvL/Cxbx-Reloaded/commits/WIP_LessVertexPatching branch, which I've re-done later in my https://github.com/PatrickvL/Cxbx-Reloaded/commits/DrawingPrimitives branch - both are in a state that prevents them getting merged, and they both aren't up-to-date with master (hard to rebase), so if any of these changes are used for this issue, then cherry-pick them carefully (or just copy code over and play it nice by crediting me as source)
Update : I'm trying to rebase the drawing primitives branch
Edit : My DrawingPrimitives branch is rebased, and we're busy fixing various render bugs, striving to get this deliverable a.s.a.p
Update : meanwhile, most regressions in the DrawingPrimitives branch are solved - once it's merged, this issue can be closed
Most helpful comment
Update : I'm trying to rebase the drawing primitives branch
Edit : My DrawingPrimitives branch is rebased, and we're busy fixing various render bugs, striving to get this deliverable a.s.a.p