Make the minute lengths unsigned here too.
Drop the "frac" and "maxone" fields from bitinfo.
They can still be derived from the other fields if required.

Adjust display of dcf77pi and readpin.
Convert all floating point operations to corresponding integer operations.

Fields bit0, bit20, and realfreq get multiplied by 10^6. Note that 1e6 is
a floating point number, so write 1000000 instead.

Drop field a, it can be derived from the realfreq field if required.

Properly size the counter fields.

Move the signal buffer to the end of the structure.

Adjust displaying in dcf77pi.c (counters can now be 6 digits wide) and
readpin.c
If the minute overflows, increase the minute counter before displaying it
to prevent time from temporarily going backwards.

While here remove some obsolete includes.
Update the description of the bitinfo structure.
Indentation/whitespace fixes.