mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-04-02 11:01:50 -04:00
Merge pull request #311 from unknownbrackets/more-dcache
Do more cache invalidation, fix return values
This commit is contained in:
commit
f8f691be78
3 changed files with 29 additions and 22 deletions
|
@ -77,7 +77,7 @@ const HLEFunction UtilsForUser[] =
|
|||
{0x91E4F6A7, WrapU_V<sceKernelLibcClock>, "sceKernelLibcClock"},
|
||||
{0x27CC57F0, WrapU_U<sceKernelLibcTime>, "sceKernelLibcTime"},
|
||||
{0x71EC4271, sceKernelLibcGettimeofday, "sceKernelLibcGettimeofday"},
|
||||
{0xBFA98062, WrapV_UI<sceKernelDcacheInvalidateRange>, "sceKernelDcacheInvalidateRange"},
|
||||
{0xBFA98062, WrapI_UI<sceKernelDcacheInvalidateRange>, "sceKernelDcacheInvalidateRange"},
|
||||
{0xC8186A58, 0, "sceKernelUtilsMd5Digest"},
|
||||
{0x9E5C5086, 0, "sceKernelUtilsMd5BlockInit"},
|
||||
{0x61E1E525, 0, "sceKernelUtilsMd5BlockUpdate"},
|
||||
|
@ -90,10 +90,10 @@ const HLEFunction UtilsForUser[] =
|
|||
{0x06FB8A63, 0, "sceKernelUtilsMt19937UInt"},
|
||||
{0x37FB5C42, sceKernelGetGPI, "sceKernelGetGPI"},
|
||||
{0x6AD345D7, sceKernelSetGPO, "sceKernelSetGPO"},
|
||||
{0x79D1C3FA, sceKernelDcacheWritebackAll, "sceKernelDcacheWritebackAll"},
|
||||
{0xB435DEC5, sceKernelDcacheWritebackInvalidateAll, "sceKernelDcacheWritebackInvalidateAll"},
|
||||
{0x3EE30821, WrapV_UI<sceKernelDcacheWritebackRange>, "sceKernelDcacheWritebackRange"},
|
||||
{0x34B9FA9E, WrapV_UI<sceKernelDcacheWritebackInvalidateRange>, "sceKernelDcacheWritebackInvalidateRange"},
|
||||
{0x79D1C3FA, WrapI_V<sceKernelDcacheWritebackAll>, "sceKernelDcacheWritebackAll"},
|
||||
{0xB435DEC5, WrapI_V<sceKernelDcacheWritebackInvalidateAll>, "sceKernelDcacheWritebackInvalidateAll"},
|
||||
{0x3EE30821, WrapI_UI<sceKernelDcacheWritebackRange>, "sceKernelDcacheWritebackRange"},
|
||||
{0x34B9FA9E, WrapI_UI<sceKernelDcacheWritebackInvalidateRange>, "sceKernelDcacheWritebackInvalidateRange"},
|
||||
{0xC2DF770E, 0, "sceKernelIcacheInvalidateRange"},
|
||||
{0x80001C4C, 0, "sceKernelDcacheProbe"},
|
||||
{0x16641D70, 0, "sceKernelDcacheReadTag"},
|
||||
|
|
|
@ -237,23 +237,30 @@ void sceKernelGetGPI()
|
|||
// Don't even log these, they're spammy and we probably won't
|
||||
// need to emulate them. Might be useful for invalidating cached
|
||||
// textures, and in the future display lists, in some cases though.
|
||||
void sceKernelDcacheInvalidateRange(u32 addr, int size)
|
||||
int sceKernelDcacheInvalidateRange(u32 addr, int size)
|
||||
{
|
||||
gpu->InvalidateCache(addr, size);
|
||||
return 0;
|
||||
}
|
||||
void sceKernelDcacheWritebackAll()
|
||||
{
|
||||
}
|
||||
void sceKernelDcacheWritebackRange(u32 addr, int size)
|
||||
{
|
||||
}
|
||||
void sceKernelDcacheWritebackInvalidateRange(u32 addr, int size)
|
||||
{
|
||||
gpu->InvalidateCache(addr, size);
|
||||
}
|
||||
void sceKernelDcacheWritebackInvalidateAll()
|
||||
int sceKernelDcacheWritebackAll()
|
||||
{
|
||||
gpu->InvalidateCache(0, -1);
|
||||
return 0;
|
||||
}
|
||||
int sceKernelDcacheWritebackRange(u32 addr, int size)
|
||||
{
|
||||
gpu->InvalidateCache(addr, size);
|
||||
return 0;
|
||||
}
|
||||
int sceKernelDcacheWritebackInvalidateRange(u32 addr, int size)
|
||||
{
|
||||
gpu->InvalidateCache(addr, size);
|
||||
return 0;
|
||||
}
|
||||
int sceKernelDcacheWritebackInvalidateAll()
|
||||
{
|
||||
gpu->InvalidateCache(0, -1);
|
||||
return 0;
|
||||
}
|
||||
|
||||
KernelObjectPool::KernelObjectPool()
|
||||
|
|
|
@ -294,11 +294,11 @@ void sceKernelFindModuleByName();
|
|||
|
||||
void sceKernelSetGPO();
|
||||
void sceKernelGetGPI();
|
||||
void sceKernelDcacheInvalidateRange(u32 addr, int size);
|
||||
void sceKernelDcacheWritebackAll();
|
||||
void sceKernelDcacheWritebackRange(u32 addr, int size);
|
||||
void sceKernelDcacheWritebackInvalidateRange(u32 addr, int size);
|
||||
void sceKernelDcacheWritebackInvalidateAll();
|
||||
int sceKernelDcacheInvalidateRange(u32 addr, int size);
|
||||
int sceKernelDcacheWritebackAll();
|
||||
int sceKernelDcacheWritebackRange(u32 addr, int size);
|
||||
int sceKernelDcacheWritebackInvalidateRange(u32 addr, int size);
|
||||
int sceKernelDcacheWritebackInvalidateAll();
|
||||
void sceKernelGetThreadStackFreeSize();
|
||||
void sceKernelIcacheInvalidateAll();
|
||||
void sceKernelIcacheClearAll();
|
||||
|
|
Loading…
Add table
Reference in a new issue