-/*--------------------------------------------------------------------
- * static functions
- *------------------------------------------------------------------*/
-static inline uint16_t wait_clock_lo(uint16_t us)
-{
- while (clock_in() && us) { asm(""); wait_us(1); us--; }
- return us;
-}
-static inline uint16_t wait_clock_hi(uint16_t us)
-{
- while (!clock_in() && us) { asm(""); wait_us(1); us--; }
- return us;
-}
-static inline uint16_t wait_data_lo(uint16_t us)
-{
- while (data_in() && us) { asm(""); wait_us(1); us--; }
- return us;
-}
-static inline uint16_t wait_data_hi(uint16_t us)
-{
- while (!data_in() && us) { asm(""); wait_us(1); us--; }
- return us;
-}
+#define XT_CLOCK_LO() do { \
+ XT_CLOCK_PORT &= ~(1<<XT_CLOCK_BIT); \
+ XT_CLOCK_DDR |= (1<<XT_CLOCK_BIT); \
+} while (0)
+
+
+void xt_host_init(void);
+uint8_t xt_host_recv(void);