#include <avr/io.h>

#define setBit(value, bit)             (value |= (1 << bit))
#define testBit(vale, bit)            (value & (1 << bit))

char checkButton(int pino) {
  for (uint16_t i = 0; i < 20000; i++) {
    if (!(testBit(PINB, pino))) {
      return 0;
    }
  }
  return 1;
}

int main(void) {
  setBit(DDRB, PB1);
  setBit(DDRB, PB2);
  setBit(DDRB, PB3);
  setBit(DDRB, PB4);

  PORTB &= 0xE1;

  unsigned char count = 0;

  for (;;) {
    if (checkButton(PB0)) {
      count++;
      while (testBit(PINB, PB0)) {}
    }

    count = count % 0x10;
    PORTB = ((PORTB & 0xE1) | (count << 1));
  }
}
ATTINY8520PU
tiny:PB5
tiny:PB3
tiny:PB4
tiny:GND
tiny:PB0
tiny:PB1
tiny:PB2
tiny:VCC
led1:A
led1:C
led2:A
led2:C
led3:A
led3:C
led4:A
led4:C
r1:1
r1:2
r2:1
r2:2
r3:1
r3:2
r4:1
r4:2
btn1:1.l
btn1:2.l
btn1:1.r
btn1:2.r
r5:1
r5:2