use macros to read/write ports