GET_FIELD
enum { BETWEEN_FIELDS, START_FIELD, GET_FIELD, DONE } state;
#define GET_FIELD(reg, field) (reg & ~(field##_MASK))