oops, looks like i was editing deprecated files
This commit is contained in:
parent
d287719900
commit
b9d6ffe8f2
@ -367,3 +367,42 @@ void GPU_SetTexEnv(u8 id, u16 rgbSources, u16 alphaSources, u16 rgbOperands, u16
|
||||
|
||||
GPUCMD_Add(0x800F0000|GPU_TEVID[id], param, 0x00000005);
|
||||
}
|
||||
|
||||
void GPU_DrawArray(GPU_Primitive_t primitive, u32 n)
|
||||
{
|
||||
// //?
|
||||
// GPUCMD_AddSingleParam(0x00040080, 0x00010000);
|
||||
//set primitive type
|
||||
GPUCMD_AddSingleParam(0x0002025E, primitive);
|
||||
GPUCMD_AddSingleParam(0x0002025F, 0x00000001);
|
||||
//index buffer not used for drawArrays but 0x000F0227 still required
|
||||
GPUCMD_AddSingleParam(0x000F0227, 0x80000000);
|
||||
//pass number of vertices
|
||||
GPUCMD_AddSingleParam(0x000F0228, n);
|
||||
|
||||
GPUCMD_AddSingleParam(0x00010253, 0x00000001);
|
||||
|
||||
GPUCMD_AddSingleParam(0x00010245, 0x00000000);
|
||||
GPUCMD_AddSingleParam(0x000F022E, 0x00000001);
|
||||
GPUCMD_AddSingleParam(0x00010245, 0x00000001);
|
||||
GPUCMD_AddSingleParam(0x000F0231, 0x00000001);
|
||||
}
|
||||
|
||||
void GPU_DrawElements(GPU_Primitive_t primitive, u32* indexArray, u32 n)
|
||||
{
|
||||
//set primitive type
|
||||
GPUCMD_AddSingleParam(0x0002025E, primitive);
|
||||
GPUCMD_AddSingleParam(0x0002025F, 0x00000001);
|
||||
//index buffer (TODO : support multiple types)
|
||||
GPUCMD_AddSingleParam(0x000F0227, 0x80000000|((u32)indexArray));
|
||||
//pass number of vertices
|
||||
GPUCMD_AddSingleParam(0x000F0228, n);
|
||||
|
||||
GPUCMD_AddSingleParam(0x00020229, 0x00000100);
|
||||
GPUCMD_AddSingleParam(0x00020253, 0x00000100);
|
||||
|
||||
GPUCMD_AddSingleParam(0x00010245, 0x00000000);
|
||||
GPUCMD_AddSingleParam(0x000F022F, 0x00000001);
|
||||
GPUCMD_AddSingleParam(0x00010245, 0x00000001);
|
||||
GPUCMD_AddSingleParam(0x000F0231, 0x00000001);
|
||||
}
|
||||
|
@ -188,10 +188,24 @@ void SHDR_UseProgram(DVLB_s* dvlb, u8 id)
|
||||
if(!dvlb || id>dvlb->numDVLE)return;
|
||||
DVLE_s* dvle=&dvlb->DVLE[id];
|
||||
|
||||
//?
|
||||
GPUCMD_AddSingleParam(0x00010229, 0x00000000);
|
||||
GPUCMD_AddSingleParam(0x00010244, 0x00000000);
|
||||
|
||||
DVLP_SendCode(&dvlb->DVLP);
|
||||
DVLP_SendOpDesc(&dvlb->DVLP);
|
||||
DVLE_SendOutmap(dvle);
|
||||
DVLE_SendConstants(dvle);
|
||||
|
||||
GPUCMD_AddSingleParam(0x00080229, 0x00000000);
|
||||
GPUCMD_AddSingleParam(0x000F02BA, 0x7FFF0000|(dvle->mainOffset&0xFFFF)); //set entrypoint
|
||||
|
||||
GPUCMD_AddSingleParam(0x000F0252, 0x00000000); // should all be part of DVLE_SendOutmap ?
|
||||
|
||||
DVLE_SendOutmap(dvle);
|
||||
|
||||
//?
|
||||
GPUCMD_AddSingleParam(0x000F0064, 0x00000001);
|
||||
GPUCMD_AddSingleParam(0x000F006F, 0x00000703);
|
||||
}
|
||||
|
||||
//TODO
|
||||
|
Loading…
Reference in New Issue
Block a user