added some preprocessor, and ported to attiny26