It does not contain a microprocessor or a crystal- it's all discrete logic which takes the incoming 60Hz AC power signal, rectifies it down into a clock, and then drives a pair of 4 bit counters (74LS193) configured as a single 8 bit counter. Each counter pair goes into a dual 4 input NAND gate (74LS20) which determines when the appropriate count has been reached (60 in the case of minutes and seconds, and either 12 or 24 for the hours) which then clears the counters and passes one clock pulse down to the next section.
Which is pretty much how $10 alarm clocks worked for decades, except they used BCD counters and 7 segment displays. It also explains why the snooze bar always gave something like 9.1 minutes instead an even 10; at 60 Hz a 15 bit counter will roll over in 9.1 minutes.
I keep wanting to build a liquid clock, driven by the steady dripping of water from a single orifice into a series of weighted containers which tip over and fill one another. I've got a basic plan for it in my head, but haven't quite figured out some logistical details.
That would be cool! I can imagine an ancient Japanese or Chinese version.
I've highlighted it so that you can read it yourself:
For each row, the values add together. So in the seconds row, 32+16+1=49, in the minutes row 16+8+2+1=27, and in the hours row 8+1=9. It's 9:27:49.
How much would it cost to build one (minus case)?
You know, I never really costed it out. Lemme do a quick DigiKey BOM.
If you build it exactly the way I did, the front-panel semiconductors come to $20.35. The perfboard was $4.49 at RadioShack. The resistors will be about $3.50, switches would be about $10 for four, and there's probably another $15 worth of power supply in the back. Figure about $55 altogether, assuming you build the case out of scrap wood you have lying around. Less than a commercial kit, and it reads in "real" binary, which most of the kits actually do not.
Obviously some of the parts on the front panel are there purely for aesthetic reasons. You will never have seconds or minutes > 59, nor hours > 23, so a lot of those LEDs / resistors / transistors are purely cosmetic. They are, in fact, hooked up, but they'll never be used (well, I did light them all up during testing before the NAND gates were configured, while I was validating the operation of the counters. They can, in fact, count all the way to 255 in each row.) Cost on those parts is trivial, however.
edit: what do the switches do? For setting the time?
Yeah. The upper-right is a run/stop switch, so I can pause the time when I set it. Upper-left is a 12/24 hour selector. The two switches on the bottom are fast-set and slow-set. Slow-set bypass the 60ths of a second divider (so that the seconds row advances at a rate of 60 seconds per second), and fast-set bypasses both that and the seconds divider (so that minutes advances at 60 minutes per second).
So the setting procedure is:
1: Flip the run/stop switch to "stop."
2: Activate the "fast set" switch until you're within an hour or so of the actual time.
3: Activate the "slow set" switch until you just barely over-shoot the actual time.
4: When the actual time catches up to the displayed time, flip the run/stop switch back to "run."