SceRtc

Real Time Clock.

Information
If some ticks in rtc are lower than the constant set in SceRtc, those ticks are set to 0.

constant list per fw.

sceRtcGetCurrentNetworkTickForDriver
If the current NetworkTick is less than 2015/01/01, the system will ignore the registry setting and update the NetworkTick from the internet.

sceRtcGetCurrentSecureTickForDriver
If the current SecureTick is less than 2015/01/01, it sets 0xDDDEF8B3A14000(1980/01/01 00:00:00 UTC) to the Secure Tick and returns error code 0x80251002.

sceRtcConvertTickToDateTimeForDriver
This is a guessed name.

Used with the result of sceRtcGetCurrentSecureTickForDriver. Used by SceCoredump, SceSblGcAuthMgr.

sceRtcConvertDateTimeToUnixTimeForDriver
This is a guessed name.

Used by SceCoredump.

SceRtcForDriver_A2D280B4
Initializes SceRtc internal flags.

SceRtcForDriver_ABA035B7
Reset all SceRtc internal flags to 0.

Returns 0.

sceRtcGetCurrentToolSecureTickForDriver
This is a guessed name.

Used on Tool only. Used when checking DevKit activation license expire date.

Creates a tick using SceKernelThreadMgr.

SceRtcForDriver_9C8AF264
Adds time (in second) to a time structure (in nanosecond).

SceRtcForDriver_CE51C2A1
Adds time (in microseconds) to a time structure (in nanosecond).

SceRtcForDriver_0CB72FAF
Used by SceCompat.

How to get current time and date
Getting the current time and date involves Syscon scratchpad and Syscon command 0x11. Syscon command 0x11 that returns twice the number of seconds the Syscon has been running since its power on. Syscon scratchpad at offset 0x10 contains the timestamp when syscon "started" running. It is stored in the following format: microseconds since 01/01/0001 and divided by 2^19. By adding those values together the OS obtains the current time.

In pseudocode: