mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-22 22:00:39 -06:00
1) fix texture caching issue (ie. MP1 "Main menu" fps drop).
2) "fix" Pokemon Coloseum font issue in SafeTextureCache mode. We should kill the unsafe one. TODO: get why it works :p 3) readjust FAKE_GP_WATCHDOG_PERIOD for omega's ZTP to boot in DC. Too late to split, sorry. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@1871 8ced0084-cf51-0410-be5f-012b33b47a6e
This commit is contained in:
@ -132,11 +132,10 @@ int
|
||||
IPC_HLE_PERIOD = GetTicksPerSecond() / 250,
|
||||
|
||||
// For DC watchdog hack
|
||||
// Once every 10 frame-period seems to be enough (arbitrary taking 60fps as the ref).
|
||||
// Once every 4 frame-period seems to be enough (arbitrary taking 60fps as the ref).
|
||||
// TODO: make it VI output frame rate compliant (30/60 and 25/50)
|
||||
// Assuming game's frame-finish-watchdog wait more than 10 emulated frame-period before starting its mess.
|
||||
// Note: 1/4 sec is the very maximum for ZTP to work in DC... 1/6 for safety.
|
||||
FAKE_GP_WATCHDOG_PERIOD = GetTicksPerSecond() / 6;
|
||||
FAKE_GP_WATCHDOG_PERIOD = GetTicksPerSecond() / 15;
|
||||
///////////////////////////////////
|
||||
|
||||
|
||||
|
@ -65,11 +65,12 @@ int TexDecoder_GetTextureSizeInBytes(int width, int height, int format)
|
||||
return (width * height * TexDecoder_GetTexelSizeInNibbles(format)) / 2;
|
||||
}
|
||||
|
||||
u32 TexDecoder_GetTlutHash(const u16 *src, int len)
|
||||
u32 TexDecoder_GetTlutHash(const u8* src, int len)
|
||||
{
|
||||
u32 hash = 0xbeefbabe;
|
||||
for (int i = 0; i < len / 2; i += 2) {
|
||||
hash = _rotl(hash, 17) ^ ((u32 *)src)[i];
|
||||
for (int i = 0; i < len ; i++) {
|
||||
hash = _rotl(hash, 7) ^ src[i];
|
||||
hash += 7;
|
||||
}
|
||||
return hash;
|
||||
}
|
||||
|
@ -78,7 +78,7 @@ enum PC_TexFormat
|
||||
PC_TexFormat TexDecoder_Decode(u8 *dst, const u8 *src, int width, int height, int texformat, int tlutaddr, int tlutfmt);
|
||||
|
||||
u32 TexDecoder_GetSafeTextureHash(const u8 *src, int width, int height, int texformat, u32 seed=0);
|
||||
u32 TexDecoder_GetTlutHash(const u16 *src, int len);
|
||||
u32 TexDecoder_GetTlutHash(const u8* src, int len);
|
||||
|
||||
void TexDecoder_SetTexFmtOverlayOptions(bool enable, bool center);
|
||||
|
||||
|
Reference in New Issue
Block a user