*** platforms\win32.c	Sat Nov 03 14:53:17 2001
--- ..\..\Org\parrot\platforms\win32.c	Fri Nov 02 14:00:02 2001
***************
*** 22,31 ****
  
  FLOATVAL Parrot_floatval_time (void)
  {
    LARGE_INTEGER i;
!   GetSystemTimeAsFileTime((FILETIME*)&i);
!   /* Adjust to  1970-01-01T00:00:00 is 0, and force to be 64bit */
!   i.QuadPart -= 116444736000000000i64;
  
    return (FLOATVAL)i.QuadPart / 10000000.0; /*1e7*/
  }
--- 22,35 ----
  
  FLOATVAL Parrot_floatval_time (void)
  {
+   SYSTEMTIME sysTime;
+   FILETIME fileTime;  /* 100ns == 1 */
    LARGE_INTEGER i;
! 
!   GetSystemTime(&sysTime);
!   SystemTimeToFileTime(&sysTime, &fileTime);
!   /* Documented as the way to get a 64 bit from a FILETIME. */
!   memcpy(&i, &fileTime, sizeof(LARGE_INTEGER));
  
    return (FLOATVAL)i.QuadPart / 10000000.0; /*1e7*/
  }
