1 /* 2 * Copyright 2006, Ingo Weinhold <bonefish@cs.tu-berlin.de>. 3 * All rights reserved. Distributed under the terms of the MIT License. 4 */ 5 6 #include <OS.h> 7 8 #include <arch_cpu.h> 9 #include <libroot_private.h> 10 #include <real_time_data.h> 11 12 13 static vint32 *sConversionFactor; 14 15 void 16 __m68k_setup_system_time(vint32 *cvFactor) 17 { 18 sConversionFactor = cvFactor; 19 } 20 21 22 bigtime_t 23 system_time(void) 24 { 25 uint64 timeBase = __m68k_get_time_base(); 26 27 uint32 cv = *sConversionFactor; 28 return (timeBase >> 32) * cv + (((timeBase & 0xffffffff) * cv) >> 32); 29 } 30