From b4db31e5361478bc129e4995856ea80f2debf2cb Mon Sep 17 00:00:00 2001 From: fincs Date: Sat, 11 Apr 2020 00:08:12 +0200 Subject: [PATCH] time: Expose TimeStandardSteadyClockTimePointType, correct TimeSystemClockContext --- nx/include/switch/services/time.h | 9 +++++++-- nx/source/services/time.c | 8 ++------ 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/nx/include/switch/services/time.h b/nx/include/switch/services/time.h index e48d0f45..b570045f 100644 --- a/nx/include/switch/services/time.h +++ b/nx/include/switch/services/time.h @@ -58,8 +58,13 @@ typedef struct { } TimeSteadyClockTimePoint; typedef struct { - s64 time_point; - TimeSteadyClockTimePoint steady_clock_time_point; + s64 base_time; + Uuid source_id; +} TimeStandardSteadyClockTimePointType; + +typedef struct { + s64 offset; + TimeSteadyClockTimePoint timestamp; } TimeSystemClockContext; /// Initialize time. Used automatically during app startup. diff --git a/nx/source/services/time.c b/nx/source/services/time.c index 510f200d..3a86a0b3 100644 --- a/nx/source/services/time.c +++ b/nx/source/services/time.c @@ -163,13 +163,9 @@ Result timeGetStandardSteadyClockTimePoint(TimeSteadyClockTimePoint *out) { return serviceDispatchOut(&g_timeSteadyClock, 0, *out); } - struct { // SteadyClockContext - u64 internal_offset; - Uuid source_id; - } context; - + TimeStandardSteadyClockTimePointType context; _timeReadSharedmemObj(&context, 0x00, sizeof(context)); - out->time_point = (context.internal_offset + armTicksToNs(armGetSystemTick())) / 1000000000UL; + out->time_point = (context.base_time + armTicksToNs(armGetSystemTick())) / 1000000000UL; out->source_id = context.source_id; return 0; }