From aa82236dd093743bd2973f8b61127582aaf6e96f Mon Sep 17 00:00:00 2001 From: Hans-Christoph Steiner Date: Sun, 18 Dec 2005 18:57:13 +0000 Subject: lots of MinGW fixes for RC6 svn path=/trunk/externals/unauthorized/; revision=4250 --- exciter/exciter.c | 6 +++-- exciter/timeval.h | 76 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 2 deletions(-) create mode 100755 exciter/timeval.h (limited to 'exciter') diff --git a/exciter/exciter.c b/exciter/exciter.c index a7bd528..a8fdeda 100644 --- a/exciter/exciter.c +++ b/exciter/exciter.c @@ -44,8 +44,9 @@ #include "t_tk.h" #include "exciter.h" -#ifdef NT +#ifdef _WIN32 #include +#include "timeval.h" #else #include #endif @@ -349,7 +350,8 @@ static void exciter_properties(t_gobj *z, t_glist *owner) t_exciter *x=(t_exciter *)z; sprintf(buf, "pdtk_exciter_dialog %%s %d %d %d %.2f %d %d\n", - x->x_width, x->x_height, x->x_nbevents, x->x_timegrain, x->x_loop, x->x_save ); + (int)x->x_width, (int)x->x_height, (int)x->x_nbevents, + x->x_timegrain, x->x_loop, x->x_save ); // post("exciter_properties : %s", buf ); gfxstub_new(&x->x_obj.ob_pd, x, buf); } diff --git a/exciter/timeval.h b/exciter/timeval.h new file mode 100755 index 0000000..ff04962 --- /dev/null +++ b/exciter/timeval.h @@ -0,0 +1,76 @@ +/* + * timeval.h 1.0 01/12/19 + * + * Defines gettimeofday, timeval, etc. for Win32 + * + * By Wu Yongwei + * + */ + +#ifndef _TIMEVAL_H +#define _TIMEVAL_H + +#ifdef _WIN32 + +#define WIN32_LEAN_AND_MEAN +#include +#include + +#ifndef __GNUC__ +#define EPOCHFILETIME (116444736000000000i64) +#else +#define EPOCHFILETIME (116444736000000000LL) +#endif /* not __GNUC__ */ + +#if 0 +struct timeval { + long tv_sec; /* seconds */ + long tv_usec; /* microseconds */ +}; +#endif /* 0 */ + +struct timezone { + int tz_minuteswest; /* minutes W of Greenwich */ + int tz_dsttime; /* type of dst correction */ +}; + +__inline int gettimeofday(struct timeval *tv, struct timezone *tz) +{ + FILETIME ft; + LARGE_INTEGER li; + __int64 t; + static int tzflag; + + if (tv) + { + GetSystemTimeAsFileTime(&ft); + li.LowPart = ft.dwLowDateTime; + li.HighPart = ft.dwHighDateTime; + t = li.QuadPart; /* In 100-nanosecond intervals */ + t -= EPOCHFILETIME; /* Offset to the Epoch time */ + t /= 10; /* In microseconds */ + tv->tv_sec = (long)(t / 1000000); + tv->tv_usec = (long)(t % 1000000); + } + + if (tz) + { + if (!tzflag) + { + _tzset(); + tzflag++; + } + tz->tz_minuteswest = _timezone / 60; + tz->tz_dsttime = _daylight; + } + + return 0; +} + +#else /* _WIN32 */ + +#include + +#endif /* _WIN32 */ + +#endif /* _TIMEVAL_H */ -- cgit v1.2.1