10 datestr(char *s, Timet t)
15 sprint(s, "%.4d%.2d%.2d", tm->year+1900, tm->mon+1, tm->mday);
21 print("%T\n", time(nil));
25 ct_numb(char *cp, int n)
28 cp[0] = (n/10)%10 + '0';
42 t = va_arg(fmt->args, Timet);
44 return fmtstrcpy(fmt, "The Epoch");
47 strcpy(s, "Day Mon 00 00:00:00 1900");
48 cp = &"SunMonTueWedThuFriSat"[tm->wday*3];
52 cp = &"JanFebMarAprMayJunJulAugSepOctNovDec"[tm->mon*3];
56 ct_numb(s+8, tm->mday);
57 ct_numb(s+11, tm->hour+100);
58 ct_numb(s+14, tm->min+100);
59 ct_numb(s+17, tm->sec+100);
64 ct_numb(s+22, tm->year+100);
66 return fmtstrcpy(fmt, s);
70 * compute the next time after t
71 * that has hour hr and is not on
72 * day in bitpattern --
76 nextime(Timet t, int hr, int day)
81 if(hr < 0 || hr >= 24)
83 if((day&0x7f) == 0x7f)
93 } while(nhr%24 != hr);
103 if(day & (1<<tm->wday))
111 * delay for l milliseconds more or less.