ard_newbie:
IMO you scratch r18 in TM1637_DELAY_US whereas you are using this register in TM1637_write_segments_arguments_r16_r17_r18_r19_uses_r24. Use r0 instead in TM1637_DELAY_US should fix the issue.
Dude you're my saviour!!! I usually code after my family goes to sleep so I'm not very concentrated and these stupid details slip through... Anyways, I'm putting registers used in names of functions, and now my DELAY function uses r20 instead of 18 and is now called "TM1637_DELAY_US_uses_r20"
THANX MAN!!!