24#define OSD_CONFIG_NO_LIBCDVD
27#define posixIODriver { open, close, (int (*)(int, void *, int))read, O_RDONLY }
29#ifdef F__libcglue_timezone_update_impl
30void _libcglue_timezone_update_impl()
34 int tzOffset = configGetTimezoneWithIODriver(&driver);
35 int tzOffsetAbs = tzOffset < 0 ? -tzOffset : tzOffset;
36 int hours = tzOffsetAbs / 60;
37 int minutes = tzOffsetAbs - hours * 60;
38 int daylight = configIsDaylightSavingEnabledWithIODriver(&driver);
40 #pragma GCC diagnostic push
41 #pragma GCC diagnostic ignored "-Wformat-overflow"
42 sprintf(tz,
"GMT%s%02i:%02i%s", tzOffset < 0 ?
"+" :
"-", hours, minutes, daylight ?
"DST" :
"");
43 #pragma GCC diagnostic pop
48#ifdef F__libcglue_timezone_update
50void __attribute((weak)) _tzset_unlocked_r(
struct _reent *reent_ptr);
52void _libcglue_timezone_update()
55 if (&_tzset_unlocked_r)
57 _libcglue_timezone_update_impl();
62#ifdef F_ps2sdk_setTimezone
63void ps2sdk_setTimezone(
int timezone) {
65 configSetTimezoneWithIODriver(timezone, &driver, _libcglue_timezone_update);
69#ifdef F_ps2sdk_setDaylightSaving
70void ps2sdk_setDaylightSaving(
int daylightSaving) {
72 configSetDaylightSavingEnabledWithIODriver(daylightSaving, &driver, _libcglue_timezone_update);