mirror of
https://github.com/hrydgard/ppsspp.git
synced 2025-02-12 01:25:55 +00:00
Make sceUtility test pass (assuming the last line is wrong)
It has to be more correct than before even if its still not 100%
This commit is contained in:
parent
f6ebad2f81
commit
d0fdd4c172
@ -376,34 +376,129 @@ void sceUtilityNetconfGetStatus()
|
||||
RETURN(__UtilityGetStatus());
|
||||
}
|
||||
|
||||
#define PSP_SYSTEMPARAM_ID_STRING_NICKNAME 1
|
||||
#define PSP_SYSTEMPARAM_ID_INT_ADHOC_CHANNEL 2
|
||||
#define PSP_SYSTEMPARAM_ID_INT_WLAN_POWERSAVE 3
|
||||
#define PSP_SYSTEMPARAM_ID_INT_DATE_FORMAT 4
|
||||
#define PSP_SYSTEMPARAM_ID_INT_TIME_FORMAT 5
|
||||
//Timezone offset from UTC in minutes, (EST = -300 = -5 * 60)
|
||||
#define PSP_SYSTEMPARAM_ID_INT_TIMEZONE 6
|
||||
#define PSP_SYSTEMPARAM_ID_INT_DAYLIGHTSAVINGS 7
|
||||
#define PSP_SYSTEMPARAM_ID_INT_LANGUAGE 8
|
||||
/**
|
||||
* #9 seems to be Region or maybe X/O button swap.
|
||||
* It doesn't exist on JAP v1.0
|
||||
* is 1 on NA v1.5s
|
||||
* is 0 on JAP v1.5s
|
||||
* is read-only
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_ID_INT_UNKNOWN 9
|
||||
|
||||
void sceUtilityGetSystemParamString()
|
||||
/**
|
||||
* Return values for the SystemParam functions
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_RETVAL_OK 0
|
||||
#define PSP_SYSTEMPARAM_RETVAL_FAIL 0x80110103
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_ADHOC_CHANNEL
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_ADHOC_CHANNEL_AUTOMATIC 0
|
||||
#define PSP_SYSTEMPARAM_ADHOC_CHANNEL_1 1
|
||||
#define PSP_SYSTEMPARAM_ADHOC_CHANNEL_6 6
|
||||
#define PSP_SYSTEMPARAM_ADHOC_CHANNEL_11 11
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_WLAN_POWERSAVE
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_WLAN_POWERSAVE_OFF 0
|
||||
#define PSP_SYSTEMPARAM_WLAN_POWERSAVE_ON 1
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_DATE_FORMAT
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_DATE_FORMAT_YYYYMMDD 0
|
||||
#define PSP_SYSTEMPARAM_DATE_FORMAT_MMDDYYYY 1
|
||||
#define PSP_SYSTEMPARAM_DATE_FORMAT_DDMMYYYY 2
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_TIME_FORMAT
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_TIME_FORMAT_24HR 0
|
||||
#define PSP_SYSTEMPARAM_TIME_FORMAT_12HR 1
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_DAYLIGHTSAVINGS
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_DAYLIGHTSAVINGS_STD 0
|
||||
#define PSP_SYSTEMPARAM_DAYLIGHTSAVINGS_SAVING 1
|
||||
|
||||
/**
|
||||
* Valid values for PSP_SYSTEMPARAM_ID_INT_LANGUAGE
|
||||
*/
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_JAPANESE 0
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_ENGLISH 1
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_FRENCH 2
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_SPANISH 3
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_GERMAN 4
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_ITALIAN 5
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_DUTCH 6
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_PORTUGUESE 7
|
||||
#define PSP_SYSTEMPARAM_LANGUAGE_KOREAN 8
|
||||
|
||||
|
||||
|
||||
|
||||
u32 sceUtilityGetSystemParamString(u32 id, u32 destaddr, u32 unknownparam)
|
||||
{
|
||||
int id = PARAM(0);
|
||||
DEBUG_LOG(HLE,"sceUtilityGetSystemParamString(%i, %08x, %i)", id, PARAM(1), PARAM(2));
|
||||
char *buf = (char *)Memory::GetPointer(PARAM(1));
|
||||
strcpy(buf, "FAKE");
|
||||
RETURN(0);
|
||||
//DEBUG_LOG(HLE,"sceUtilityGetSystemParamString(%i, %08x, %i)", id,destaddr,unknownparam);
|
||||
char *buf = (char *)Memory::GetPointer(destaddr);
|
||||
switch (id) {
|
||||
case PSP_SYSTEMPARAM_ID_STRING_NICKNAME:
|
||||
strcpy(buf, "shadow");
|
||||
break;
|
||||
|
||||
default:
|
||||
return PSP_SYSTEMPARAM_RETVAL_FAIL;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
void sceUtilityGetSystemParamInt()
|
||||
u32 sceUtilityGetSystemParamInt(u32 id, u32 destaddr)
|
||||
{
|
||||
DEBUG_LOG(HLE,"sceUtilityGetSystemParamInt(%i, %08x)", PARAM(0), PARAM(1));
|
||||
u32 *outPtr = (u32*)Memory::GetPointer(PARAM(1));
|
||||
const int defaultValues[16] =
|
||||
{
|
||||
0,
|
||||
0,
|
||||
0,
|
||||
0,//date notation
|
||||
0,//time notation
|
||||
0,//timezone offset in minutes
|
||||
0,//daylight savings
|
||||
1,//language (0=jap 1=eng)
|
||||
0,
|
||||
};
|
||||
*outPtr = defaultValues[PARAM(0)];
|
||||
RETURN(0);
|
||||
DEBUG_LOG(HLE,"sceUtilityGetSystemParamInt(%i, %08x)", id,destaddr);
|
||||
u32 *outPtr = (u32*)Memory::GetPointer(destaddr);
|
||||
switch (id) {
|
||||
case PSP_SYSTEMPARAM_ID_INT_ADHOC_CHANNEL:
|
||||
*outPtr = PSP_SYSTEMPARAM_ADHOC_CHANNEL_AUTOMATIC;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_WLAN_POWERSAVE:
|
||||
*outPtr = PSP_SYSTEMPARAM_WLAN_POWERSAVE_OFF;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_DATE_FORMAT:
|
||||
*outPtr = PSP_SYSTEMPARAM_DATE_FORMAT_DDMMYYYY;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_TIME_FORMAT:
|
||||
*outPtr = PSP_SYSTEMPARAM_TIME_FORMAT_24HR;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_TIMEZONE:
|
||||
*outPtr = 60;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_DAYLIGHTSAVINGS:
|
||||
*outPtr = PSP_SYSTEMPARAM_TIME_FORMAT_24HR;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_LANGUAGE:
|
||||
*outPtr = PSP_SYSTEMPARAM_LANGUAGE_ENGLISH;
|
||||
break;
|
||||
case PSP_SYSTEMPARAM_ID_INT_UNKNOWN:
|
||||
*outPtr = 1;
|
||||
break;
|
||||
default:
|
||||
return PSP_SYSTEMPARAM_RETVAL_FAIL;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
u32 sceUtilityLoadNetModule(u32 module)
|
||||
@ -436,8 +531,8 @@ const HLEFunction sceUtility[] =
|
||||
{0xf3f76017, sceUtilityOskGetStatus, "sceUtilityOskGetStatus"},
|
||||
|
||||
{0x41e30674, 0, "sceUtilitySetSystemParamString"},
|
||||
{0x34b78343, sceUtilityGetSystemParamString, "sceUtilityGetSystemParamString"},
|
||||
{0xA5DA2406, sceUtilityGetSystemParamInt, "sceUtilityGetSystemParamInt"},
|
||||
{0x34b78343, &WrapU_UUU<sceUtilityGetSystemParamString>, "sceUtilityGetSystemParamString"},
|
||||
{0xA5DA2406, &WrapU_UU<sceUtilityGetSystemParamInt>, "sceUtilityGetSystemParamInt"},
|
||||
{0xc492f751, 0, "sceUtilityGameSharingInitStart"},
|
||||
{0xefc6f80f, 0, "sceUtilityGameSharingShutdownStart"},
|
||||
{0x7853182d, 0, "sceUtilityGameSharingUpdate"},
|
||||
|
Loading…
x
Reference in New Issue
Block a user