GPUCMD_FlushAndRun
This commit is contained in:
parent
58a1f0c68e
commit
974b1094f3
@ -5,6 +5,7 @@ void GPU_Reset(u32* gxbuf, u32* gpuBuf, u32 gpuBufSize);
|
|||||||
|
|
||||||
void GPUCMD_SetBuffer(u32* adr, u32 size, u32 offset);
|
void GPUCMD_SetBuffer(u32* adr, u32 size, u32 offset);
|
||||||
void GPUCMD_Run(u32* gxbuf);
|
void GPUCMD_Run(u32* gxbuf);
|
||||||
|
void GPUCMD_FlushAndRun(u32* gxbuf);
|
||||||
void GPUCMD_Add(u32 cmd, u32* param, u32 paramlength);
|
void GPUCMD_Add(u32 cmd, u32* param, u32 paramlength);
|
||||||
void GPUCMD_AddSingleParam(u32 cmd, u32 param);
|
void GPUCMD_AddSingleParam(u32 cmd, u32 param);
|
||||||
void GPUCMD_Finalize();
|
void GPUCMD_Finalize();
|
||||||
|
@ -28,11 +28,20 @@ void GPUCMD_SetBuffer(u32* adr, u32 size, u32 offset)
|
|||||||
|
|
||||||
void GPUCMD_Run(u32* gxbuf)
|
void GPUCMD_Run(u32* gxbuf)
|
||||||
{
|
{
|
||||||
//should wait for some event here
|
|
||||||
GX_SetCommandList_First(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, NULL, 0, NULL, 0);
|
GX_SetCommandList_First(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, NULL, 0, NULL, 0);
|
||||||
GX_SetCommandList_Last(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, 0x0);
|
GX_SetCommandList_Last(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, 0x0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern u32 __linear_heap_size;
|
||||||
|
extern u32* __linear_heap;
|
||||||
|
|
||||||
|
void GPUCMD_FlushAndRun(u32* gxbuf)
|
||||||
|
{
|
||||||
|
//take advantage of GX_SetCommandList_First to flush gsp heap
|
||||||
|
GX_SetCommandList_First(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, __linear_heap, __linear_heap_size, NULL, 0);
|
||||||
|
GX_SetCommandList_Last(gxbuf, gpuCmdBuf, gpuCmdBufOffset*4, 0x0);
|
||||||
|
}
|
||||||
|
|
||||||
void GPUCMD_Add(u32 cmd, u32* param, u32 paramlength)
|
void GPUCMD_Add(u32 cmd, u32* param, u32 paramlength)
|
||||||
{
|
{
|
||||||
u32 zero=0x0;
|
u32 zero=0x0;
|
||||||
|
Loading…
Reference in New Issue
Block a user