ds1743_read
if ((ds1743_read(sc, DS_DAY) & DS_CTL_BF) == 0)
return(ds1743_read(sc, addr));
octl = ds1743_read(sc, DS_CENTURY);
ctl = ds1743_read(sc, DS_CENTURY);
ds1743_write(sc, DS_CENTURY, ((ds1743_read(sc, DS_CENTURY) & DS_CTL_RW)
dt->dt_sec = bcdtobin(ds1743_read(sc, DS_SECONDS) & 0x7f);
dt->dt_min = bcdtobin(ds1743_read(sc, DS_MINUTES) & 0x7f);
dt->dt_hour = bcdtobin(ds1743_read(sc, DS_HOURS) & 0x3f);
dt->dt_day = bcdtobin(ds1743_read(sc, DS_DATE) & 0x3f);
dt->dt_mon = bcdtobin(ds1743_read(sc, DS_MONTH) & 0x1f);
bcdtobin(ds1743_read(sc, DS_YEAR)) +
bcdtobin(ds1743_read(sc, DS_CENTURY) & ~DS_CTL_RW) * 100;
static inline u_char ds1743_read(struct dsrtc_softc *, int);