@@ -1141,7 +1141,7 @@ void Adafruit_NeoPixel::show(void) {
1141
1141
next = lo;
1142
1142
bit = 8 ;
1143
1143
1144
- asm volatile (" head20:"
1144
+ asm volatile (" head20%= :"
1145
1145
" \n\t " // Clk Pseudocode (T = 0)
1146
1146
" st %a[port], %[hi]"
1147
1147
" \n\t " // 2 PORT = hi (T = 2)
@@ -1155,7 +1155,7 @@ void Adafruit_NeoPixel::show(void) {
1155
1155
" \n\t " // 1 next = lo (T = 7)
1156
1156
" dec %[bit]"
1157
1157
" \n\t " // 1 bit-- (T = 8)
1158
- " breq nextbyte20"
1158
+ " breq nextbyte20%= "
1159
1159
" \n\t " // 1-2 if(bit == 0)
1160
1160
" rol %[byte]"
1161
1161
" \n\t " // 1 b <<= 1 (T = 10)
@@ -1167,9 +1167,9 @@ void Adafruit_NeoPixel::show(void) {
1167
1167
" \n\t " // 2 nop nop (T = 16)
1168
1168
" rjmp .+0"
1169
1169
" \n\t " // 2 nop nop (T = 18)
1170
- " rjmp head20"
1170
+ " rjmp head20%= "
1171
1171
" \n\t " // 2 -> head20 (next bit out)
1172
- " nextbyte20:"
1172
+ " nextbyte20%= :"
1173
1173
" \n\t " // (T = 10)
1174
1174
" st %a[port], %[lo]"
1175
1175
" \n\t " // 2 PORT = lo (T = 12)
@@ -1181,7 +1181,7 @@ void Adafruit_NeoPixel::show(void) {
1181
1181
" \n\t " // 2 b = *ptr++ (T = 16)
1182
1182
" sbiw %[count], 1"
1183
1183
" \n\t " // 2 i-- (T = 18)
1184
- " brne head20"
1184
+ " brne head20%= "
1185
1185
" \n " // 2 if(i != 0) -> (next byte)
1186
1186
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1187
1187
[next] " +r" (next), [count] " +w" (i)
@@ -1690,7 +1690,7 @@ void Adafruit_NeoPixel::show(void) {
1690
1690
next = lo;
1691
1691
bit = 8 ;
1692
1692
1693
- asm volatile (" head20:"
1693
+ asm volatile (" head20%= :"
1694
1694
" \n\t " // Clk Pseudocode (T = 0)
1695
1695
" st %a[port], %[hi]"
1696
1696
" \n\t " // 2 PORT = hi (T = 2)
@@ -1704,7 +1704,7 @@ void Adafruit_NeoPixel::show(void) {
1704
1704
" \n\t " // 2 PORT = next (T = 7)
1705
1705
" mov %[next] , %[lo]"
1706
1706
" \n\t " // 1 next = lo (T = 8)
1707
- " breq nextbyte20"
1707
+ " breq nextbyte20%= "
1708
1708
" \n\t " // 1-2 if(bit == 0) (from dec above)
1709
1709
" rol %[byte]"
1710
1710
" \n\t " // 1 b <<= 1 (T = 10)
@@ -1718,9 +1718,9 @@ void Adafruit_NeoPixel::show(void) {
1718
1718
" \n\t " // 1 nop (T = 16)
1719
1719
" rjmp .+0"
1720
1720
" \n\t " // 2 nop nop (T = 18)
1721
- " rjmp head20"
1721
+ " rjmp head20%= "
1722
1722
" \n\t " // 2 -> head20 (next bit out)
1723
- " nextbyte20:"
1723
+ " nextbyte20%= :"
1724
1724
" \n\t " // (T = 10)
1725
1725
" ldi %[bit] , 8"
1726
1726
" \n\t " // 1 bit = 8 (T = 11)
@@ -1732,7 +1732,7 @@ void Adafruit_NeoPixel::show(void) {
1732
1732
" \n\t " // 1 nop (T = 16)
1733
1733
" sbiw %[count], 1"
1734
1734
" \n\t " // 2 i-- (T = 18)
1735
- " brne head20"
1735
+ " brne head20%= "
1736
1736
" \n " // 2 if(i != 0) -> (next byte)
1737
1737
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1738
1738
[next] " +r" (next), [count] " +w" (i)
@@ -1753,7 +1753,7 @@ void Adafruit_NeoPixel::show(void) {
1753
1753
next = lo;
1754
1754
bit = 8 ;
1755
1755
1756
- asm volatile (" head40:"
1756
+ asm volatile (" head40%= :"
1757
1757
" \n\t " // Clk Pseudocode (T = 0)
1758
1758
" st %a[port], %[hi]"
1759
1759
" \n\t " // 2 PORT = hi (T = 2)
@@ -1785,7 +1785,7 @@ void Adafruit_NeoPixel::show(void) {
1785
1785
" \n\t " // 1 next = lo (T = 24)
1786
1786
" dec %[bit]"
1787
1787
" \n\t " // 1 bit-- (T = 25)
1788
- " breq nextbyte40"
1788
+ " breq nextbyte40%= "
1789
1789
" \n\t " // 1-2 if(bit == 0)
1790
1790
" rol %[byte]"
1791
1791
" \n\t " // 1 b <<= 1 (T = 27)
@@ -1801,9 +1801,9 @@ void Adafruit_NeoPixel::show(void) {
1801
1801
" \n\t " // 2 nop nop (T = 36)
1802
1802
" rjmp .+0"
1803
1803
" \n\t " // 2 nop nop (T = 38)
1804
- " rjmp head40"
1804
+ " rjmp head40%= "
1805
1805
" \n\t " // 2 -> head40 (next bit out)
1806
- " nextbyte40:"
1806
+ " nextbyte40%= :"
1807
1807
" \n\t " // (T = 27)
1808
1808
" ldi %[bit] , 8"
1809
1809
" \n\t " // 1 bit = 8 (T = 28)
@@ -1817,7 +1817,7 @@ void Adafruit_NeoPixel::show(void) {
1817
1817
" \n\t " // 2 nop nop (T = 36)
1818
1818
" sbiw %[count], 1"
1819
1819
" \n\t " // 2 i-- (T = 38)
1820
- " brne head40"
1820
+ " brne head40%= "
1821
1821
" \n " // 1-2 if(i != 0) -> (next byte)
1822
1822
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1823
1823
[next] " +r" (next), [count] " +w" (i)
0 commit comments