- self.days = bcd2int(b & 0x3f)
- self.putx([0, ['Days: %d' % self.days]])
-
- def handle_reg_0x06(self, b): # Day counter
- pass
-
- def handle_reg_0x07(self, b): # Months / century
- # TODO: Handle century bit.
- self.months = bcd2int(b & 0x1f)
- self.putx([0, ['Months: %d' % self.months]])
+ self.putr(7)
+ self.putr(6)
+ d = self.days = bcd2int(b & 0x3f)
+ self.putd(5, 0, [5, ['Day: %d' % d, 'D: %d' % d, 'D']])
+
+ def handle_reg_0x06(self, b): # Weekdays
+ for i in (7, 6, 5, 4, 3):
+ self.putr(i)
+ w = self.weekdays = bcd2int(b & 0x07)
+ self.putd(2, 0, [6, ['Weekday: %d' % w, 'WD: %d' % w, 'WD', 'W']])
+
+ def handle_reg_0x07(self, b): # Months / century bit
+ c = 1 if (b & (1 << 7)) else 0
+ self.putd(7, 7, [13, ['Century bit: %d' % c, 'Century: %d' % c,
+ 'Cent: %d' % c, 'C: %d' % c, 'C']])
+ self.putr(6)
+ self.putr(5)
+ m = self.months = bcd2int(b & 0x1f)
+ self.putd(4, 0, [7, ['Month: %d' % m, 'Mon: %d' % m, 'M: %d' % m, 'M']])