Thanks Bob, struggling to understand here but I guess would use it like if (bitof(days.day,tm_wday)) { do something } and if tm_wday = 1 (monday) it expand to if(((bitv *)&(days.day))->b1) and now I am lost. What is bitv and how can I break it down further. Cheers Justin 2009/11/25 Bob Blick > You might be able to use this to help you access bits: > > #define _paste(a,b) a##b > #define bitof(var,num) (((bitv *)&(var))->_paste(b,num)) > > Cheers, > > Bob > > -- > http://www.piclist.com PIC/SX FAQ & list archive > View/change your membership options at > http://mailman.mit.edu/mailman/listinfo/piclist > -- http://www.piclist.com PIC/SX FAQ & list archive View/change your membership options at http://mailman.mit.edu/mailman/listinfo/piclist