It's fun to think that the teeny chip in the corner is driving something that many LEDs...
i had some problems because you suggested not to use millis and delays, but i see that the problems are caused only by delays, so we can use millis and micros... we just need to do the update method very often, right?
I don't think millis() will do anything useful. I turned off the hardware timer in setup() (if it's ticking then there's a bug!)
Time spent in between calls to update() is time the LEDs aren't lit up. I think you'd have to do a lot before you notice them get visibly dimmer, but bear it in mind.
i've a question, i'm not an expert of making libraries, but to make this library work in an attiny84 do i just need to add this line?
#if defined (__AVR_ATtiny85__) || (__AVR_ATtiny84__)
or is there some register settings to do?
I just tried it and there's a line in setup() that doesn't compile. The line is:
TCCR1 = 0;
It should work if you replace that line with:
#if defined (__AVR_ATtiny85__)
TCCR1 = 0;
TCCR1A = TCCR1B = 0;