Commit graph

1733 commits

Author SHA1 Message Date
Paul Holden
5ebe5bda30 Fix link 2023-09-24 21:12:53 +01:00
Paul Holden
5f9b5e3cea Typo 2023-09-23 22:17:57 +01:00
Paul Holden
af64ee6952 Update readme. 2023-09-23 22:17:57 +01:00
Paul Holden
0ac30ff7c1 Fix TLB mod exception. 2023-09-23 22:17:57 +01:00
Paul Holden
63d1748fa0 Add a TODO. 2023-09-23 22:17:57 +01:00
Paul Holden
4cd75f567b Add executeVertex for SOTE. 2023-09-23 22:17:57 +01:00
Paul Holden
982f6f6835 Fix executeCullDL.
This is different on GBI0 from GBI1/GBI2.
2023-09-23 22:17:57 +01:00
Paul Holden
4e11c8533a Use calcTileDimension to calculate tlut size in executeLoadTLut.
This is a bit safer because it clamps the result so we avoid underflow/overflow.
2023-09-23 22:17:57 +01:00
Paul Holden
b446fda692 Use assert rather than alert. 2023-09-23 22:17:57 +01:00
Paul Holden
99d59140c7 Implement executeCullDL. 2023-09-23 22:17:57 +01:00
Paul Holden
13d79bb976 Compute clip flags. 2023-09-23 22:17:57 +01:00
Paul Holden
2775ba6e53 Format 2023-09-23 22:17:57 +01:00
Paul Holden
70ba061788 Split out ProjectedVertex. 2023-09-23 22:17:57 +01:00
Paul Holden
4e32895bdc Typo 2023-09-23 22:17:57 +01:00
Paul Holden
a1e08b0108 Fix swapping for RGBA/32 textures.
It looks like these are swapped on 8 byte boundary not 4 byte.
2023-09-23 22:17:57 +01:00
Paul Holden
ef77e646a7 Format. 2023-09-23 22:17:57 +01:00
Paul Holden
3a3861650a Fix vertexOffset reset. 2023-09-23 22:17:57 +01:00
Paul Holden
8c543ffa3e Fix UV coords (were swapped). 2023-09-23 22:17:57 +01:00
Paul Holden
64bf0cd36c Improve DKR rendering.
It's still very buggy but actually renders stuff now.
2023-09-23 22:17:57 +01:00
Paul Holden
be11daacd6 Add copy() method. 2023-09-23 22:17:57 +01:00
Paul Holden
f66d3da1e1 Format. 2023-09-23 22:17:57 +01:00
Paul Holden
dcaa28137a Remove hard-coded vertex limit. 2023-09-23 22:17:57 +01:00
Paul Holden
6e384eea95 Add a helper for projecting. 2023-09-23 22:17:57 +01:00
Paul Holden
76ee7d71f3 Update gsSPVertex arg order. 2023-09-23 22:17:57 +01:00
Paul Holden
78010d7738 Fix display list limit. 2023-09-23 22:17:57 +01:00
Paul Holden
10b0779baf Add support for display lists with an explicit length (Diddy Kong Racing). 2023-09-23 22:17:57 +01:00
Paul Holden
73acc7d2ab Store the ram DataView in RSPState so it doesn't need to be plumbed around. 2023-09-23 22:17:57 +01:00
Paul Holden
5659746809 Implement texrect commands using nextCommand. 2023-09-23 22:17:57 +01:00
Paul Holden
8eb792ec59 Don't reset the displaylist pc on loading too many verts. 2023-09-23 22:17:57 +01:00
Paul Holden
49b380bcc8 Fix eslint warnings about hasOwnProperty. 2023-09-23 22:17:57 +01:00
Paul Holden
579f0d50c3 Add a helper for processing batches of commands. 2023-09-23 22:17:57 +01:00
Paul Holden
bebf73efe4 Remove a stale comment. 2023-09-23 22:17:57 +01:00
Paul Holden
573a8e373c Encapsulate the displayList pc and stack better. 2023-09-23 22:17:57 +01:00
Paul Holden
bfa8cf39fa Fix loadVertices for Perfect Dark.
Still crashes after the loading screen though...
2023-09-23 22:17:57 +01:00
Paul Holden
175bc98517 Simplify loadVertices a bit. 2023-09-23 22:17:57 +01:00
Paul Holden
a726874e6b Unused imports. 2023-09-23 22:17:57 +01:00
Paul Holden
168cd447a4 Tidy color load. 2023-09-23 22:17:57 +01:00
Paul Holden
4d4a02e6b1 Tidy loadVertices. 2023-09-23 22:17:57 +01:00
Paul Holden
3c64e50136 Cache vi and vp transforms. 2023-09-23 22:17:57 +01:00
Paul Holden
6342a754ca Simplify viewport transforms using a Transform4D class. 2023-09-23 22:17:57 +01:00
Paul Holden
9f729002fb Add scaleInPlace. 2023-09-23 22:17:57 +01:00
Paul Holden
c42d66fd72 Invert viewport.scale.y when loading. 2023-09-23 22:17:57 +01:00
Paul Holden
15d7ce7639 Implement the viewport. 2023-09-23 22:17:57 +01:00
Paul Holden
a38ef9ce1a Fix viewport z. 2023-09-23 22:17:57 +01:00
Paul Holden
e2faa4255b Keep track of the viewport z component. 2023-09-23 22:17:57 +01:00
Paul Holden
6d700c1bb0 Allow Vector3 and Vector4 to be constructed with coord specified directly. 2023-09-23 22:17:57 +01:00
Paul Holden
255ccf47f5 Format. 2023-09-23 22:17:57 +01:00
Paul Holden
71516a1b11 Merge disassembly into main code for moveword to reduce some duplication. 2023-09-23 22:17:57 +01:00
Paul Holden
32accd3ccc Implement gSPFogPosition.
The values still aren't used anywhere.
2023-09-23 22:17:57 +01:00
Paul Holden
99364856b4 Add disassembly for gSPPerspNormalize and remove the unimplemented warning. 2023-09-23 22:17:57 +01:00