Help me choose the correct firmware

None of my 13A projects will work as they are, so here are some code snippets that should help.

When initializing the light you have to set which pins are output. Pins 3, 5 and 6 are called PB4, PB0 and PB1. This is how you configure them to be output pins:

DDRB = (1 << PB0) | (1 << PB1) | (1 << PB4);

When you want to turn one of them on (output high), enter the pin name of choice:
PORTB |= (1 << PB0);

When you want to turn it off (output low):
PORTB &= ~(1 << PB0);

I don’t have any momentary switch firmware for the 13A as I switched to other MCUs before I got into that. There are a few options, I hope someone else can help you there. Post a question here: Flashlight Firmware Repository