]> git.sur5r.net Git - cc65/blobdiff - include/time.h
Update cbm510.sgml
[cc65] / include / time.h
index 3566cb7b5f2a62db5dc31761663479db0a0a9907..4ee658da994789c2354b6f5da526c2e57efd5cbb 100644 (file)
@@ -7,7 +7,7 @@
 /*                                                                           */
 /*                                                                           */
 /* (C) 1998-2012 Ullrich von Bassewitz                                       */
-/*               Römerstrasse 52                                             */
+/*               Roemerstrasse 52                                            */
 /*               D-70794 Filderstadt                                         */
 /* EMail:        uz@cc65.org                                                 */
 /*                                                                           */
@@ -52,9 +52,10 @@ typedef unsigned size_t;
 
 typedef unsigned long time_t;
 typedef unsigned long clock_t;
+typedef unsigned char clockid_t;
 
 /* Structure for broken down time */
-struct tm {     
+struct tm {
     int     tm_sec;
     int     tm_min;
     int     tm_hour;
@@ -66,6 +67,12 @@ struct tm {
     int     tm_isdst;
 };
 
+/* Structure for seconds and nanoseconds */
+struct timespec {
+    time_t  tv_sec;
+    long    tv_nsec;
+};
+
 /* Timezone representation, default is UTC */
 extern struct _timezone {
     char    daylight;   /* True if daylight savings time active */
@@ -99,26 +106,27 @@ unsigned _clocks_per_sec (void);
 #elif defined(__NES__)
 #  define CLK_TCK               50      /* POSIX */
 #  define CLOCKS_PER_SEC        50      /* ANSI */
+#elif defined(__PCE__)
+#  define CLK_TCK               60      /* POSIX */
+#  define CLOCKS_PER_SEC        60      /* ANSI */
+#elif  defined(__GAMATE__)
+#  define CLK_TCK               135     /* POSIX */     /* FIXME */
+#  define CLOCKS_PER_SEC        135     /* ANSI */      /* FIXME */
 #elif  defined(__GEOS__)
 #  define CLK_TCK               1       /* POSIX */
 #  define CLOCKS_PER_SEC        1       /* ANSI */
 #elif defined(__LYNX__)
 /* The clock-rate depends on the video scan-rate;
-** so, read it at run-time. */
+** so, read it at run-time.
+*/
 extern clock_t _clk_tck (void);
 #  define CLK_TCK               _clk_tck()
 #  define CLOCKS_PER_SEC        _clk_tck()
 #endif
+#define CLOCK_REALTIME          0
 
 
 
-time_t _systime (void);
-/* Similar to time(), but:
- *   - Is not ISO C
- *   - Does not take the additional pointer
- *   - Does not set errno when returning -1
- */
-
 /* ISO C function prototypes */
 char* __fastcall__ asctime (const struct tm* timep);
 clock_t clock (void);
@@ -131,6 +139,13 @@ time_t __fastcall__ time (time_t* t);
 
 
 
+/* POSIX function prototypes */
+int __fastcall__ clock_getres (clockid_t clock_id, struct timespec *res);
+int __fastcall__ clock_gettime (clockid_t clock_id, struct timespec *tp);
+int __fastcall__ clock_settime (clockid_t clock_id, const struct timespec *tp);
+
+
+
 /* End of time.h */
 
 #endif