One tiny thing that might help in your analysis: Nintendo accidentally included all the symbol names and locations on the Wind Waker disc in a file called "framework.map".
Doing some basic demangling on the CodeWarriors names gives you C++ classes and methods:
The "sea" animation is controlled by "daSea" -- "da" meaning "dynamic actor" in Nintendo's naming terminology.
It's extremely unlikely they used texture distortion for the sea effect, since the GPU they used didn't have fragment shaders -- the only method of texture warping is INDTEXMTX, which was only used for the heat effects in Dragon Roost Cavern.
They probably modified UVs directly on their triangular sea mesh.
Smoke effects and such use their in-house particle engine, "JPA".
At my old company I wrote an assembler to read text source and assemble the instructions into TEV format.
My point was more that TEVs can't modify texture coordinates, since texcoordgen happens before the TEV stage. TEVs only specify how to blend vertex colors, texture samples, game-set registers and lighting results together using configurable formulas.
> the only method of texture warping is INDTEXMTX, which was only used for the heat effects in Dragon Roost Cavern