|
28 | 28 |
|
29 | 29 | #define U32_TO_BINARY_FMT "%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c%c" |
30 | 30 | #define U32_TO_BINARY(u32) \ |
31 | | - (u32 & 0x80000000 ? '1' : '0'), \ |
32 | | - (u32 & 0x40000000 ? '1' : '0'), \ |
33 | | - (u32 & 0x20000000 ? '1' : '0'), \ |
34 | | - (u32 & 0x10000000 ? '1' : '0'), \ |
35 | | - (u32 & 0x8000000 ? '1' : '0'), \ |
36 | | - (u32 & 0x4000000 ? '1' : '0'), \ |
37 | | - (u32 & 0x2000000 ? '1' : '0'), \ |
38 | | - (u32 & 0x1000000 ? '1' : '0'), \ |
39 | | - (u32 & 0x800000 ? '1' : '0'), \ |
40 | | - (u32 & 0x400000 ? '1' : '0'), \ |
41 | | - (u32 & 0x200000 ? '1' : '0'), \ |
42 | | - (u32 & 0x100000 ? '1' : '0'), \ |
43 | | - (u32 & 0x80000 ? '1' : '0'), \ |
44 | | - (u32 & 0x40000 ? '1' : '0'), \ |
45 | | - (u32 & 0x20000 ? '1' : '0'), \ |
46 | | - (u32 & 0x10000 ? '1' : '0'), \ |
47 | | - (u32 & 0x8000 ? '1' : '0'), \ |
48 | | - (u32 & 0x4000 ? '1' : '0'), \ |
49 | | - (u32 & 0x2000 ? '1' : '0'), \ |
50 | | - (u32 & 0x1000 ? '1' : '0'), \ |
51 | | - (u32 & 0x800 ? '1' : '0'), \ |
52 | | - (u32 & 0x400 ? '1' : '0'), \ |
53 | | - (u32 & 0x200 ? '1' : '0'), \ |
54 | | - (u32 & 0x100 ? '1' : '0'), \ |
55 | | - (u32 & 0x80 ? '1' : '0'), \ |
56 | | - (u32 & 0x40 ? '1' : '0'), \ |
57 | | - (u32 & 0x20 ? '1' : '0'), \ |
58 | | - (u32 & 0x10 ? '1' : '0'), \ |
59 | | - (u32 & 0x8 ? '1' : '0'), \ |
60 | | - (u32 & 0x4 ? '1' : '0'), \ |
61 | | - (u32 & 0x2 ? '1' : '0'), \ |
62 | | - (u32 & 0x1 ? '1' : '0') |
| 31 | + (u32 & 0x80000000 ? '1' : '0'), \ |
| 32 | + (u32 & 0x40000000 ? '1' : '0'), \ |
| 33 | + (u32 & 0x20000000 ? '1' : '0'), \ |
| 34 | + (u32 & 0x10000000 ? '1' : '0'), \ |
| 35 | + (u32 & 0x8000000 ? '1' : '0'), \ |
| 36 | + (u32 & 0x4000000 ? '1' : '0'), \ |
| 37 | + (u32 & 0x2000000 ? '1' : '0'), \ |
| 38 | + (u32 & 0x1000000 ? '1' : '0'), \ |
| 39 | + (u32 & 0x800000 ? '1' : '0'), \ |
| 40 | + (u32 & 0x400000 ? '1' : '0'), \ |
| 41 | + (u32 & 0x200000 ? '1' : '0'), \ |
| 42 | + (u32 & 0x100000 ? '1' : '0'), \ |
| 43 | + (u32 & 0x80000 ? '1' : '0'), \ |
| 44 | + (u32 & 0x40000 ? '1' : '0'), \ |
| 45 | + (u32 & 0x20000 ? '1' : '0'), \ |
| 46 | + (u32 & 0x10000 ? '1' : '0'), \ |
| 47 | + (u32 & 0x8000 ? '1' : '0'), \ |
| 48 | + (u32 & 0x4000 ? '1' : '0'), \ |
| 49 | + (u32 & 0x2000 ? '1' : '0'), \ |
| 50 | + (u32 & 0x1000 ? '1' : '0'), \ |
| 51 | + (u32 & 0x800 ? '1' : '0'), \ |
| 52 | + (u32 & 0x400 ? '1' : '0'), \ |
| 53 | + (u32 & 0x200 ? '1' : '0'), \ |
| 54 | + (u32 & 0x100 ? '1' : '0'), \ |
| 55 | + (u32 & 0x80 ? '1' : '0'), \ |
| 56 | + (u32 & 0x40 ? '1' : '0'), \ |
| 57 | + (u32 & 0x20 ? '1' : '0'), \ |
| 58 | + (u32 & 0x10 ? '1' : '0'), \ |
| 59 | + (u32 & 0x8 ? '1' : '0'), \ |
| 60 | + (u32 & 0x4 ? '1' : '0'), \ |
| 61 | + (u32 & 0x2 ? '1' : '0'), \ |
| 62 | + (u32 & 0x1 ? '1' : '0') |
63 | 63 |
|
64 | 64 |
|
65 | 65 | inline __attribute__((always_inline)) |
@@ -413,7 +413,7 @@ displayio_area_t *vectorio_vector_shape_get_refresh_areas(vectorio_vector_shape_ |
413 | 413 | self->current_area.x1, self->current_area.y1, self->current_area.x2, self->current_area.y2, |
414 | 414 | area_swap.x1, area_swap.y1, area_swap.x2, area_swap.y2, |
415 | 415 | union_size, dirty_size, current_size, overlap_size, (int32_t)union_size - dirty_size - current_size + overlap_size |
416 | | - ); |
| 416 | + ); |
417 | 417 |
|
418 | 418 | if ((int32_t)union_size - dirty_size - current_size + overlap_size <= min(dirty_size, current_size)) { |
419 | 419 | // The excluded / non-overlapping area from the disjoint dirty and current areas is smaller |
|
0 commit comments