@@ -1152,7 +1152,7 @@ void Adafruit_NeoPixel::show(void) {
1152
1152
next = lo;
1153
1153
bit = 8 ;
1154
1154
1155
- asm volatile (" head20:"
1155
+ asm volatile (" head20%= :"
1156
1156
" \n\t " // Clk Pseudocode (T = 0)
1157
1157
" st %a[port], %[hi]"
1158
1158
" \n\t " // 2 PORT = hi (T = 2)
@@ -1166,7 +1166,7 @@ void Adafruit_NeoPixel::show(void) {
1166
1166
" \n\t " // 1 next = lo (T = 7)
1167
1167
" dec %[bit]"
1168
1168
" \n\t " // 1 bit-- (T = 8)
1169
- " breq nextbyte20"
1169
+ " breq nextbyte20%= "
1170
1170
" \n\t " // 1-2 if(bit == 0)
1171
1171
" rol %[byte]"
1172
1172
" \n\t " // 1 b <<= 1 (T = 10)
@@ -1178,9 +1178,9 @@ void Adafruit_NeoPixel::show(void) {
1178
1178
" \n\t " // 2 nop nop (T = 16)
1179
1179
" rjmp .+0"
1180
1180
" \n\t " // 2 nop nop (T = 18)
1181
- " rjmp head20"
1181
+ " rjmp head20%= "
1182
1182
" \n\t " // 2 -> head20 (next bit out)
1183
- " nextbyte20:"
1183
+ " nextbyte20%= :"
1184
1184
" \n\t " // (T = 10)
1185
1185
" st %a[port], %[lo]"
1186
1186
" \n\t " // 2 PORT = lo (T = 12)
@@ -1192,7 +1192,7 @@ void Adafruit_NeoPixel::show(void) {
1192
1192
" \n\t " // 2 b = *ptr++ (T = 16)
1193
1193
" sbiw %[count], 1"
1194
1194
" \n\t " // 2 i-- (T = 18)
1195
- " brne head20"
1195
+ " brne head20%= "
1196
1196
" \n " // 2 if(i != 0) -> (next byte)
1197
1197
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1198
1198
[next] " +r" (next), [count] " +w" (i)
@@ -1701,7 +1701,7 @@ void Adafruit_NeoPixel::show(void) {
1701
1701
next = lo;
1702
1702
bit = 8 ;
1703
1703
1704
- asm volatile (" head20:"
1704
+ asm volatile (" head20%= :"
1705
1705
" \n\t " // Clk Pseudocode (T = 0)
1706
1706
" st %a[port], %[hi]"
1707
1707
" \n\t " // 2 PORT = hi (T = 2)
@@ -1715,7 +1715,7 @@ void Adafruit_NeoPixel::show(void) {
1715
1715
" \n\t " // 2 PORT = next (T = 7)
1716
1716
" mov %[next] , %[lo]"
1717
1717
" \n\t " // 1 next = lo (T = 8)
1718
- " breq nextbyte20"
1718
+ " breq nextbyte20%= "
1719
1719
" \n\t " // 1-2 if(bit == 0) (from dec above)
1720
1720
" rol %[byte]"
1721
1721
" \n\t " // 1 b <<= 1 (T = 10)
@@ -1729,9 +1729,9 @@ void Adafruit_NeoPixel::show(void) {
1729
1729
" \n\t " // 1 nop (T = 16)
1730
1730
" rjmp .+0"
1731
1731
" \n\t " // 2 nop nop (T = 18)
1732
- " rjmp head20"
1732
+ " rjmp head20%= "
1733
1733
" \n\t " // 2 -> head20 (next bit out)
1734
- " nextbyte20:"
1734
+ " nextbyte20%= :"
1735
1735
" \n\t " // (T = 10)
1736
1736
" ldi %[bit] , 8"
1737
1737
" \n\t " // 1 bit = 8 (T = 11)
@@ -1743,7 +1743,7 @@ void Adafruit_NeoPixel::show(void) {
1743
1743
" \n\t " // 1 nop (T = 16)
1744
1744
" sbiw %[count], 1"
1745
1745
" \n\t " // 2 i-- (T = 18)
1746
- " brne head20"
1746
+ " brne head20%= "
1747
1747
" \n " // 2 if(i != 0) -> (next byte)
1748
1748
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1749
1749
[next] " +r" (next), [count] " +w" (i)
@@ -1764,7 +1764,7 @@ void Adafruit_NeoPixel::show(void) {
1764
1764
next = lo;
1765
1765
bit = 8 ;
1766
1766
1767
- asm volatile (" head40:"
1767
+ asm volatile (" head40%= :"
1768
1768
" \n\t " // Clk Pseudocode (T = 0)
1769
1769
" st %a[port], %[hi]"
1770
1770
" \n\t " // 2 PORT = hi (T = 2)
@@ -1796,7 +1796,7 @@ void Adafruit_NeoPixel::show(void) {
1796
1796
" \n\t " // 1 next = lo (T = 24)
1797
1797
" dec %[bit]"
1798
1798
" \n\t " // 1 bit-- (T = 25)
1799
- " breq nextbyte40"
1799
+ " breq nextbyte40%= "
1800
1800
" \n\t " // 1-2 if(bit == 0)
1801
1801
" rol %[byte]"
1802
1802
" \n\t " // 1 b <<= 1 (T = 27)
@@ -1812,9 +1812,9 @@ void Adafruit_NeoPixel::show(void) {
1812
1812
" \n\t " // 2 nop nop (T = 36)
1813
1813
" rjmp .+0"
1814
1814
" \n\t " // 2 nop nop (T = 38)
1815
- " rjmp head40"
1815
+ " rjmp head40%= "
1816
1816
" \n\t " // 2 -> head40 (next bit out)
1817
- " nextbyte40:"
1817
+ " nextbyte40%= :"
1818
1818
" \n\t " // (T = 27)
1819
1819
" ldi %[bit] , 8"
1820
1820
" \n\t " // 1 bit = 8 (T = 28)
@@ -1828,7 +1828,7 @@ void Adafruit_NeoPixel::show(void) {
1828
1828
" \n\t " // 2 nop nop (T = 36)
1829
1829
" sbiw %[count], 1"
1830
1830
" \n\t " // 2 i-- (T = 38)
1831
- " brne head40"
1831
+ " brne head40%= "
1832
1832
" \n " // 1-2 if(i != 0) -> (next byte)
1833
1833
: [port] " +e" (port), [byte] " +r" (b), [bit] " +r" (bit),
1834
1834
[next] " +r" (next), [count] " +w" (i)
0 commit comments