Lines Matching +full:lsb +full:- +full:first
2 * /src/NTP/ntp4-dev/parseutil/testdcf.c,v 4.10 2005/08/06 14:18:43 kardel RELEASE_20050806_A
8 * Copyright (c) 1995-2015 by Frank Kardel <kardel <AT> ntp.org>
9 …* Copyright (c) 1989-1994 by Frank Kardel, Friedrich-Alexander Universitaet Erlangen-Nuernberg, Ge…
79 #define CVT_FAIL 0x00000002 /* conversion failed - error code returned */
81 #define CVT_BADFMT 0x00000010 /* general format error - (unparsable) */
86 * From "Zur Zeit", Physikalisch-Technische Bundesanstalt (PTB), Braunschweig
99 * see the spec. (basically a (non-)inverted psuedo random phase shift)
103 * 0 - 10 AM: free, FM: 0
104 * 11 - 14 free
105 * 15 R - "call bit" used to signalize irregularities in the control facilities
107 * 16 A1 - expect zone change (1 hour before)
108 * 17 - 18 Z1,Z2 - time zone
113 * 19 A2 - expect leap insertion/deletion (1 hour before)
114 * 20 S - start of time code (1)
115 * 21 - 24 M1 - BCD (lsb first) Minutes
116 * 25 - 27 M10 - BCD (lsb first) 10 Minutes
117 * 28 P1 - Minute Parity (even)
118 * 29 - 32 H1 - BCD (lsb first) Hours
119 * 33 - 34 H10 - BCD (lsb first) 10 Hours
120 * 35 P2 - Hour Parity (even)
121 * 36 - 39 D1 - BCD (lsb first) Days
122 * 40 - 41 D10 - BCD (lsb first) 10 Days
123 * 42 - 44 DW - BCD (lsb first) day of week (1: Monday -> 7: Sunday)
124 * 45 - 49 MO - BCD (lsb first) Month
125 * 50 MO0 - 10 Months
126 * 51 - 53 Y1 - BCD (lsb first) Years
127 * 54 - 57 Y10 - BCD (lsb first) 10 Years
128 * 58 P3 - Date Parity (even)
129 * 59 - usually missing (minute indication), except for leap insertion
186 register int i, first; in ext_bf() local
188 first = rawdcfcode[idx].offset; in ext_bf()
190 for (i = rawdcfcode[idx+1].offset - 1; i >= first; i--) in ext_bf()
193 sum |= (buf[i] != '-'); in ext_bf()
210 psum ^= (buf[i] != '-'); in pcheck()
224 printf("%-30s", "*** INCOMPLETE"); in convert_rawdcf()
240 clock_time->flags = 0; in convert_rawdcf()
241 clock_time->usecond= 0; in convert_rawdcf()
242 clock_time->second = 0; in convert_rawdcf()
243 clock_time->minute = ext_bf(buffer, DCF_M10); in convert_rawdcf()
244 clock_time->minute = TIMES10(clock_time->minute) + ext_bf(buffer, DCF_M1); in convert_rawdcf()
245 clock_time->hour = ext_bf(buffer, DCF_H10); in convert_rawdcf()
246 clock_time->hour = TIMES10(clock_time->hour) + ext_bf(buffer, DCF_H1); in convert_rawdcf()
247 clock_time->day = ext_bf(buffer, DCF_D10); in convert_rawdcf()
248 clock_time->day = TIMES10(clock_time->day) + ext_bf(buffer, DCF_D1); in convert_rawdcf()
249 clock_time->month = ext_bf(buffer, DCF_MO0); in convert_rawdcf()
250 clock_time->month = TIMES10(clock_time->month) + ext_bf(buffer, DCF_MO); in convert_rawdcf()
251 clock_time->year = ext_bf(buffer, DCF_Y10); in convert_rawdcf()
252 clock_time->year = TIMES10(clock_time->year) + ext_bf(buffer, DCF_Y1); in convert_rawdcf()
253 clock_time->wday = ext_bf(buffer, DCF_DW); in convert_rawdcf()
258 clock_time->utcoffset = -60; in convert_rawdcf()
262 clock_time->flags |= DCFB_DST; in convert_rawdcf()
263 clock_time->utcoffset = -120; in convert_rawdcf()
267 printf("%-30s", "*** BAD TIME ZONE"); in convert_rawdcf()
272 clock_time->flags |= DCFB_ANNOUNCE; in convert_rawdcf()
275 clock_time->flags |= DCFB_LEAP; in convert_rawdcf()
278 clock_time->flags |= DCFB_CALLBIT; in convert_rawdcf()
285 * bad format - not for us in convert_rawdcf()
287 printf("%-30s", "*** BAD FORMAT (invalid/parity)"); in convert_rawdcf()
313 static char pat[] = "-\\|/";
315 #define LINES (24-2) /* error lines after which the two headlines are repeated */
325 fprintf(stderr, "usage: %s [-f|-t|-ft|-tf] <device>\n", argv[0]); in main()
342 if (strcmp(argv[1], "-f") == 0) in main()
344 if (strcmp(argv[1], "-t") == 0) in main()
346 if ((strcmp(argv[1], "-ft") == 0) || in main()
347 (strcmp(argv[1], "-tf") == 0)) in main()
360 if (fd == -1) in main()
377 if (tcgetattr(fd, &term) == -1) in main()
398 if (tcsetattr(fd, TCSANOW, &term) == -1) in main()
409 if (ioctl(fd, TIOCMBIC, (caddr_t)&on) == -1) in main()
415 printf(" DCF77 monitor %s - Copyright (C) 1993-2005, Frank Kardel\n\n", revision); in main()
434 t.tv_sec -= tlast.tv_sec; in main()
435 t.tv_usec -= tlast.tv_usec; in main()
439 t.tv_sec -= 1; in main()
445 printf(" %s", &"---------------RADMLS1248124P124812P1248121241248112481248P\n"[offset]); in main()
453 printf("%c %.*s ", pat[i % (sizeof(pat)-1)], 59 - offset, &buf[offset]); in main()
471 buf[0] = type(c) ? '#' : '-'; in main()
483 buf[i] = type(c) ? '#' : '-'; in main()
485 printf("%c %.*s ", pat[i % (sizeof(pat)-1)], 59 - offset, &buf[offset]); in main()