From 605ea88e4090ec55dab2416ead8819606fc6bafd Mon Sep 17 00:00:00 2001 From: Melissa LeBlanc-Williams Date: Wed, 16 Mar 2022 11:51:38 -0700 Subject: [PATCH 01/26] Revert "Speed up internal font drawing for opaque background color" --- Adafruit_GFX.cpp | 84 ++++++++++++------------------------------------ Adafruit_GFX.h | 2 -- 2 files changed, 20 insertions(+), 66 deletions(-) diff --git a/Adafruit_GFX.cpp b/Adafruit_GFX.cpp index 75cb36fb..ed4c98ef 100644 --- a/Adafruit_GFX.cpp +++ b/Adafruit_GFX.cpp @@ -244,37 +244,6 @@ void Adafruit_GFX::writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, fillRect(x, y, w, h, color); } -/**************************************************************************/ -/*! - @brief set the address window (memory area), overwrite in subclasses if - needed - @param x starting x coordinate - @param y starting y coordinate - @param w width in pixels - @param h height in pixels -*/ -/**************************************************************************/ -void Adafruit_GFX::setAddrWindow(uint16_t x, uint16_t y, uint16_t w, - uint16_t h) { - (void)x; - (void)y; - (void)w; - (void)h; -} - -/**************************************************************************/ -/*! - @brief write len pixels of the given color, overwrite in subclasses if - needed - @param color 16-bit 5-6-5 color to write - @param len number of pixels to write -*/ -/**************************************************************************/ -void Adafruit_GFX::writeColor(uint16_t color, uint32_t len) { - (void)color; - (void)len; -} - /**************************************************************************/ /*! @brief End a display-writing routine, overwrite in subclasses if @@ -1178,41 +1147,28 @@ void Adafruit_GFX::drawChar(int16_t x, int16_t y, unsigned char c, c++; // Handle 'classic' charset behavior startWrite(); - if (color != bg) { // faster opaque text - setAddrWindow(x, y, 5 * size_x, 7 * size_y); - for (int8_t j = 0; j < 7; j++) { // 7 lines - uint8_t uc, ucMask = (1 << j); - for (uint8_t k = 0; k < size_y; k++) { // repeat size_y lines - for (uint8_t i = 0; i < 5; i++) { // 5 columns - uc = pgm_read_byte(&font[(c * 5) + i]); - writeColor((uc & ucMask) ? color : bg, size_x); - } // for each column - } // repeat for each line of size_y - } // for j - } else { // slower text which doesn't overwrite the background color - for (int8_t i = 0; i < 5; i++) { // Char bitmap = 5 columns - uint8_t line = pgm_read_byte(&font[c * 5 + i]); - for (int8_t j = 0; j < 8; j++, line >>= 1) { - if (line & 1) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, color); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, - color); - } else if (bg != color) { - if (size_x == 1 && size_y == 1) - writePixel(x + i, y + j, bg); - else - writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, bg); - } + for (int8_t i = 0; i < 5; i++) { // Char bitmap = 5 columns + uint8_t line = pgm_read_byte(&font[c * 5 + i]); + for (int8_t j = 0; j < 8; j++, line >>= 1) { + if (line & 1) { + if (size_x == 1 && size_y == 1) + writePixel(x + i, y + j, color); + else + writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, + color); + } else if (bg != color) { + if (size_x == 1 && size_y == 1) + writePixel(x + i, y + j, bg); + else + writeFillRect(x + i * size_x, y + j * size_y, size_x, size_y, bg); } } - if (bg != color) { // If opaque, draw vertical line for last column - if (size_x == 1 && size_y == 1) - writeFastVLine(x + 5, y, 8, bg); - else - writeFillRect(x + 5 * size_x, y, size_x, 8 * size_y, bg); - } + } + if (bg != color) { // If opaque, draw vertical line for last column + if (size_x == 1 && size_y == 1) + writeFastVLine(x + 5, y, 8, bg); + else + writeFillRect(x + 5 * size_x, y, size_x, 8 * size_y, bg); } endWrite(); diff --git a/Adafruit_GFX.h b/Adafruit_GFX.h index 19cf1fc0..b9d63c6e 100644 --- a/Adafruit_GFX.h +++ b/Adafruit_GFX.h @@ -32,8 +32,6 @@ class Adafruit_GFX : public Print { // These MAY be overridden by the subclass to provide device-specific // optimized code. Otherwise 'generic' versions are used. virtual void startWrite(void); - virtual void setAddrWindow(uint16_t x, uint16_t y, uint16_t w, uint16_t h); - virtual void writeColor(uint16_t color, uint32_t len); virtual void writePixel(int16_t x, int16_t y, uint16_t color); virtual void writeFillRect(int16_t x, int16_t y, int16_t w, int16_t h, uint16_t color); From 6f4981e2f15dc7c80e53ecc6b721e9afed3f2815 Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Thu, 17 Mar 2022 11:51:55 -0400 Subject: [PATCH 02/26] Bump to 1.10.14 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 8434b7d7..6b86c753 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.10.13 +version=1.10.14 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From 09cb6f49931d8c0b2b66da85f3a832328022b778 Mon Sep 17 00:00:00 2001 From: Alexander Golovanov <45916903+homeodor@users.noreply.github.com> Date: Tue, 26 Apr 2022 15:28:36 +0300 Subject: [PATCH 03/26] Add dmaBusy() --- Adafruit_SPITFT.cpp | 13 +++++++++++++ Adafruit_SPITFT.h | 1 + 2 files changed, 14 insertions(+) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index b78d5ce5..9b997fb4 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -1171,6 +1171,19 @@ void Adafruit_SPITFT::dmaWait(void) { #endif } +/*! + @brief Check if DMA transfer is active. Always returts false if DMA + is not enabled. +*/ +bool Adafruit_SPITFT::dmaBusy(void) const +{ +#if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) + return dma_busy; +#else + return false; +#endif +} + /*! @brief Issue a series of pixels, all the same color. Not self- contained; should follow startWrite() and setAddrWindow() calls. diff --git a/Adafruit_SPITFT.h b/Adafruit_SPITFT.h index 7f5d80f3..8064a742 100644 --- a/Adafruit_SPITFT.h +++ b/Adafruit_SPITFT.h @@ -234,6 +234,7 @@ class Adafruit_SPITFT : public Adafruit_GFX { void dmaWait(void); // Used by writePixels() in some situations, but might have rare need in // user code, so it's public... + bool dmaBusy(void) const; // true if DMA is used and busy, false otherwise void swapBytes(uint16_t *src, uint32_t len, uint16_t *dest = NULL); // These functions are similar to the 'write' functions above, but with From 8d14ea77ac245d058988fd298fd36ef724781e37 Mon Sep 17 00:00:00 2001 From: Alexander Golovanov <45916903+homeodor@users.noreply.github.com> Date: Wed, 27 Apr 2022 18:43:27 +0300 Subject: [PATCH 04/26] Fixed clang-format --- Adafruit_SPITFT.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index 9b997fb4..aab63af4 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -1175,8 +1175,7 @@ void Adafruit_SPITFT::dmaWait(void) { @brief Check if DMA transfer is active. Always returts false if DMA is not enabled. */ -bool Adafruit_SPITFT::dmaBusy(void) const -{ +bool Adafruit_SPITFT::dmaBusy(void) const { #if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) return dma_busy; #else From 0548084d9a097e2c218a401e4aeef4758408bcca Mon Sep 17 00:00:00 2001 From: Alexander Golovanov <45916903+homeodor@users.noreply.github.com> Date: Wed, 27 Apr 2022 19:01:45 +0300 Subject: [PATCH 05/26] Fixed Doxygen --- Adafruit_SPITFT.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index aab63af4..2c8ef01b 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -1172,8 +1172,9 @@ void Adafruit_SPITFT::dmaWait(void) { } /*! - @brief Check if DMA transfer is active. Always returts false if DMA + @brief Check if DMA transfer is active. Always returts false if DMA is not enabled. + @return true if DMA is enabled and transmitting data, false otherwise. */ bool Adafruit_SPITFT::dmaBusy(void) const { #if defined(USE_SPI_DMA) && (defined(__SAMD51__) || defined(ARDUINO_SAMD_ZERO)) From f1f78664203271544dfd2d6c26d031842e09f175 Mon Sep 17 00:00:00 2001 From: Paint Your Dragon Date: Wed, 27 Apr 2022 10:23:22 -0700 Subject: [PATCH 06/26] Update version in library.properies for dmaBusy() --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 6b86c753..b5455654 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.10.14 +version=1.10.15 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From 071b6d5715bfd06410544a8d810118c8c6811a00 Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Mon, 2 May 2022 17:49:51 -0400 Subject: [PATCH 07/26] Bump to 1.11.0 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index b5455654..736b49fb 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.10.15 +version=1.11.0 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From ef17614241c1a79c18c553d68c2aca89bb20d36d Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Mon, 9 May 2022 15:49:22 -0400 Subject: [PATCH 08/26] Bump to 1.11.1 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 736b49fb..c587c6b8 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.0 +version=1.11.1 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From ad4b6b420641683656309e5075002112cad25dbd Mon Sep 17 00:00:00 2001 From: alba-ado <91315153+alba-ado@users.noreply.github.com> Date: Tue, 7 Jun 2022 18:38:02 +0300 Subject: [PATCH 09/26] Fixing PlatformIO dependency problem (#389) Fixing the PlatformIO dependency problem mentioned in; https://community.platformio.org/t/adafruit-gfx-lib-will-not-build-any-more-pio-5/15776/12 --- Adafruit_GFX.h | 3 +++ 1 file changed, 3 insertions(+) diff --git a/Adafruit_GFX.h b/Adafruit_GFX.h index b9d63c6e..cd549aaa 100644 --- a/Adafruit_GFX.h +++ b/Adafruit_GFX.h @@ -9,6 +9,9 @@ #endif #include "gfxfont.h" +#include +#include + /// A generic graphics superclass that can handle all sorts of drawing. At a /// minimum you can subclass and provide drawPixel(). At a maximum you can do a /// ton of overriding to optimize. Used for any/all Adafruit displays! From 976bfb3d8b6dceed07fa5a4fa74dfd3233fa1d14 Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Mon, 13 Jun 2022 14:35:18 -0400 Subject: [PATCH 10/26] Bump to 1.11.2 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index c587c6b8..b09314c3 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.1 +version=1.11.2 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From f8e9621bad2250292d691d2eeea1bee84447e99c Mon Sep 17 00:00:00 2001 From: Wayne Piekarski Date: Wed, 22 Jun 2022 09:32:00 -0700 Subject: [PATCH 11/26] Fixes -Wshadow "error: declaration of 'buffer' shadows a member of 'GFXcanvas1'" No need to declare local buffer variable for getBuffer() since it already exists. --- Adafruit_GFX.cpp | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/Adafruit_GFX.cpp b/Adafruit_GFX.cpp index ed4c98ef..988412df 100644 --- a/Adafruit_GFX.cpp +++ b/Adafruit_GFX.cpp @@ -1867,8 +1867,7 @@ bool GFXcanvas1::getPixel(int16_t x, int16_t y) const { bool GFXcanvas1::getRawPixel(int16_t x, int16_t y) const { if ((x < 0) || (y < 0) || (x >= WIDTH) || (y >= HEIGHT)) return 0; - if (this->getBuffer()) { - uint8_t *buffer = this->getBuffer(); + if (buffer) { uint8_t *ptr = &buffer[(x / 8) + y * ((WIDTH + 7) / 8)]; #ifdef __AVR__ @@ -2017,7 +2016,6 @@ void GFXcanvas1::drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color) { // x & y already in raw (rotation 0) coordinates, no need to transform. int16_t row_bytes = ((WIDTH + 7) / 8); - uint8_t *buffer = this->getBuffer(); uint8_t *ptr = &buffer[(x / 8) + y * row_bytes]; if (color > 0) { @@ -2056,7 +2054,6 @@ void GFXcanvas1::drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color) { // x & y already in raw (rotation 0) coordinates, no need to transform. int16_t rowBytes = ((WIDTH + 7) / 8); - uint8_t *buffer = this->getBuffer(); uint8_t *ptr = &buffer[(x / 8) + y * rowBytes]; size_t remainingWidthBits = w; From c341c18f7ada9e1f43a420758a5a73dd8302d634 Mon Sep 17 00:00:00 2001 From: Wayne Piekarski Date: Wed, 22 Jun 2022 09:33:21 -0700 Subject: [PATCH 12/26] Fixes -Wshadow "error: declaration of 'byte' shadows a global declaration" Arduino.h defines "typedef uint8_t byte" that conflicts with this declaration --- Adafruit_GFX.cpp | 72 ++++++++++++++++++++++++------------------------ 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/Adafruit_GFX.cpp b/Adafruit_GFX.cpp index 988412df..7b9a1833 100644 --- a/Adafruit_GFX.cpp +++ b/Adafruit_GFX.cpp @@ -718,16 +718,16 @@ void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, int16_t h, uint16_t color) { int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - if (byte & 0x80) + b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); + if (b & 0x80) writePixel(x + i, y, color); } } @@ -753,16 +753,16 @@ void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, const uint8_t bitmap[], uint16_t bg) { int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); - writePixel(x + i, y, (byte & 0x80) ? color : bg); + b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); + writePixel(x + i, y, (b & 0x80) ? color : bg); } } endWrite(); @@ -784,16 +784,16 @@ void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, uint16_t color) { int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = bitmap[j * byteWidth + i / 8]; - if (byte & 0x80) + b = bitmap[j * byteWidth + i / 8]; + if (b & 0x80) writePixel(x + i, y, color); } } @@ -818,16 +818,16 @@ void Adafruit_GFX::drawBitmap(int16_t x, int16_t y, uint8_t *bitmap, int16_t w, int16_t h, uint16_t color, uint16_t bg) { int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = bitmap[j * byteWidth + i / 8]; - writePixel(x + i, y, (byte & 0x80) ? color : bg); + b = bitmap[j * byteWidth + i / 8]; + writePixel(x + i, y, (b & 0x80) ? color : bg); } } endWrite(); @@ -852,18 +852,18 @@ void Adafruit_GFX::drawXBitmap(int16_t x, int16_t y, const uint8_t bitmap[], int16_t w, int16_t h, uint16_t color) { int16_t byteWidth = (w + 7) / 8; // Bitmap scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte >>= 1; + b >>= 1; else - byte = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); + b = pgm_read_byte(&bitmap[j * byteWidth + i / 8]); // Nearly identical to drawBitmap(), only the bit order // is reversed here (left-to-right = LSB to MSB): - if (byte & 0x01) + if (b & 0x01) writePixel(x + i, y, color); } } @@ -937,15 +937,15 @@ void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, const uint8_t mask[], int16_t w, int16_t h) { int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = pgm_read_byte(&mask[j * bw + i / 8]); - if (byte & 0x80) { + b = pgm_read_byte(&mask[j * bw + i / 8]); + if (b & 0x80) { writePixel(x + i, y, (uint8_t)pgm_read_byte(&bitmap[j * w + i])); } } @@ -971,15 +971,15 @@ void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, void Adafruit_GFX::drawGrayscaleBitmap(int16_t x, int16_t y, uint8_t *bitmap, uint8_t *mask, int16_t w, int16_t h) { int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = mask[j * bw + i / 8]; - if (byte & 0x80) { + b = mask[j * bw + i / 8]; + if (b & 0x80) { writePixel(x + i, y, bitmap[j * w + i]); } } @@ -1048,15 +1048,15 @@ void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], const uint8_t mask[], int16_t w, int16_t h) { int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = pgm_read_byte(&mask[j * bw + i / 8]); - if (byte & 0x80) { + b = pgm_read_byte(&mask[j * bw + i / 8]); + if (b & 0x80) { writePixel(x + i, y, pgm_read_word(&bitmap[j * w + i])); } } @@ -1081,15 +1081,15 @@ void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, const uint16_t bitmap[], void Adafruit_GFX::drawRGBBitmap(int16_t x, int16_t y, uint16_t *bitmap, uint8_t *mask, int16_t w, int16_t h) { int16_t bw = (w + 7) / 8; // Bitmask scanline pad = whole byte - uint8_t byte = 0; + uint8_t b = 0; startWrite(); for (int16_t j = 0; j < h; j++, y++) { for (int16_t i = 0; i < w; i++) { if (i & 7) - byte <<= 1; + b <<= 1; else - byte = mask[j * bw + i / 8]; - if (byte & 0x80) { + b = mask[j * bw + i / 8]; + if (b & 0x80) { writePixel(x + i, y, bitmap[j * w + i]); } } From 91d916deeb75263582a2456cb211ebdaf06b840b Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Wed, 29 Jun 2022 13:17:48 -0400 Subject: [PATCH 13/26] Bump to 1.11.3 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index b09314c3..355e170c 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.2 +version=1.11.3 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From 740677a73364683043cedda87cc623a5e9b0b212 Mon Sep 17 00:00:00 2001 From: Phillip Burgess Date: Mon, 16 Jan 2023 15:02:36 -0800 Subject: [PATCH 14/26] Make canvas buffers protected instead of private members A use case came up where it was helpful to be able to alter the buffer pointer in a subclass. This is esoteric and should be used with care. --- Adafruit_GFX.h | 11 +++-------- library.properties | 2 +- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/Adafruit_GFX.h b/Adafruit_GFX.h index cd549aaa..8000fa01 100644 --- a/Adafruit_GFX.h +++ b/Adafruit_GFX.h @@ -328,10 +328,9 @@ class GFXcanvas1 : public Adafruit_GFX { bool getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); + uint8_t *buffer; // protected (no longer private) for subclass flexibility private: - uint8_t *buffer; - #ifdef __AVR__ // Bitmask tables of 0x80>>X and ~(0x80>>X), because X>>Y is slow on AVR static const uint8_t PROGMEM GFXsetBit[], GFXclrBit[]; @@ -360,9 +359,7 @@ class GFXcanvas8 : public Adafruit_GFX { uint8_t getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - -private: - uint8_t *buffer; + uint8_t *buffer; // protected (no longer private) for subclass flexibility }; /// A GFX 16-bit canvas context for graphics @@ -388,9 +385,7 @@ class GFXcanvas16 : public Adafruit_GFX { uint16_t getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - -private: - uint16_t *buffer; + uint16_t *buffer; // protected (no longer private) for subclass flexibility }; #endif // _ADAFRUIT_GFX_H diff --git a/library.properties b/library.properties index 355e170c..3ebbb0a7 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.3 +version=1.11.4 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From e122c3d20f5ee6baf366d9b72d162ba6d0a133b0 Mon Sep 17 00:00:00 2001 From: Phillip Burgess Date: Mon, 16 Jan 2023 15:18:35 -0800 Subject: [PATCH 15/26] Doxy class members moved from private to protected --- Adafruit_GFX.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Adafruit_GFX.h b/Adafruit_GFX.h index 8000fa01..63c6ab68 100644 --- a/Adafruit_GFX.h +++ b/Adafruit_GFX.h @@ -328,7 +328,7 @@ class GFXcanvas1 : public Adafruit_GFX { bool getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; // protected (no longer private) for subclass flexibility + uint8_t *buffer; ///< Raster data: no longer private, allow subclass access private: #ifdef __AVR__ @@ -359,7 +359,7 @@ class GFXcanvas8 : public Adafruit_GFX { uint8_t getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint8_t *buffer; // protected (no longer private) for subclass flexibility + uint8_t *buffer; ///< Raster data: no longer private, allow subclass access }; /// A GFX 16-bit canvas context for graphics @@ -385,7 +385,7 @@ class GFXcanvas16 : public Adafruit_GFX { uint16_t getRawPixel(int16_t x, int16_t y) const; void drawFastRawVLine(int16_t x, int16_t y, int16_t h, uint16_t color); void drawFastRawHLine(int16_t x, int16_t y, int16_t w, uint16_t color); - uint16_t *buffer; // protected (no longer private) for subclass flexibility + uint16_t *buffer; ///< Raster data: no longer private, allow subclass access }; #endif // _ADAFRUIT_GFX_H From 5ea4be3ffeae918899aeec8cbb67f87359cf0026 Mon Sep 17 00:00:00 2001 From: Phillip Burgess Date: Wed, 18 Jan 2023 14:53:07 -0800 Subject: [PATCH 16/26] Fix bug w/large GFXcanvas1's (use 32-bit byte counts) --- Adafruit_GFX.cpp | 4 ++-- library.properties | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Adafruit_GFX.cpp b/Adafruit_GFX.cpp index 7b9a1833..af989002 100644 --- a/Adafruit_GFX.cpp +++ b/Adafruit_GFX.cpp @@ -1761,7 +1761,7 @@ const uint8_t PROGMEM GFXcanvas1::GFXclrBit[] = {0x7F, 0xBF, 0xDF, 0xEF, */ /**************************************************************************/ GFXcanvas1::GFXcanvas1(uint16_t w, uint16_t h) : Adafruit_GFX(w, h) { - uint16_t bytes = ((w + 7) / 8) * h; + uint32_t bytes = ((w + 7) / 8) * h; if ((buffer = (uint8_t *)malloc(bytes))) { memset(buffer, 0, bytes); } @@ -1887,7 +1887,7 @@ bool GFXcanvas1::getRawPixel(int16_t x, int16_t y) const { /**************************************************************************/ void GFXcanvas1::fillScreen(uint16_t color) { if (buffer) { - uint16_t bytes = ((WIDTH + 7) / 8) * HEIGHT; + uint32_t bytes = ((WIDTH + 7) / 8) * HEIGHT; memset(buffer, color ? 0xFF : 0x00, bytes); } } diff --git a/library.properties b/library.properties index 3ebbb0a7..bd92ca6f 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.4 +version=1.11.5 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From 2b3e45853a9457e915f71602c3a1060d271a58bc Mon Sep 17 00:00:00 2001 From: dherrada Date: Fri, 12 May 2023 11:23:54 -0400 Subject: [PATCH 17/26] Update CI action versions --- .github/workflows/githubci.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/githubci.yml b/.github/workflows/githubci.yml index dfda218f..a04a1621 100644 --- a/.github/workflows/githubci.yml +++ b/.github/workflows/githubci.yml @@ -7,11 +7,11 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/setup-python@v1 + - uses: actions/setup-python@v4 with: python-version: '3.x' - - uses: actions/checkout@v2 - - uses: actions/checkout@v2 + - uses: actions/checkout@v3 + - uses: actions/checkout@v3 with: repository: adafruit/ci-arduino path: ci From 15ebe114c4f4036d8a70d10c14e35720b482a0cf Mon Sep 17 00:00:00 2001 From: Marcel Robitaille Date: Fri, 16 Jun 2023 10:47:34 -0400 Subject: [PATCH 18/26] Fix missing imports in font files for PlatformIO (#423) * Fix missing imports in font files for PlatformIO Fixes #416 * Add #pragma once * Run clang-format --- Fonts/FreeMono12pt7b.h | 3 +++ Fonts/FreeMono18pt7b.h | 3 +++ Fonts/FreeMono24pt7b.h | 3 +++ Fonts/FreeMono9pt7b.h | 3 +++ Fonts/FreeMonoBold12pt7b.h | 3 +++ Fonts/FreeMonoBold18pt7b.h | 3 +++ Fonts/FreeMonoBold24pt7b.h | 3 +++ Fonts/FreeMonoBold9pt7b.h | 3 +++ Fonts/FreeMonoBoldOblique12pt7b.h | 3 +++ Fonts/FreeMonoBoldOblique18pt7b.h | 3 +++ Fonts/FreeMonoBoldOblique24pt7b.h | 3 +++ Fonts/FreeMonoBoldOblique9pt7b.h | 3 +++ Fonts/FreeMonoOblique12pt7b.h | 3 +++ Fonts/FreeMonoOblique18pt7b.h | 3 +++ Fonts/FreeMonoOblique24pt7b.h | 3 +++ Fonts/FreeMonoOblique9pt7b.h | 3 +++ Fonts/FreeSans12pt7b.h | 3 +++ Fonts/FreeSans18pt7b.h | 3 +++ Fonts/FreeSans24pt7b.h | 3 +++ Fonts/FreeSans9pt7b.h | 3 +++ Fonts/FreeSansBold12pt7b.h | 3 +++ Fonts/FreeSansBold18pt7b.h | 3 +++ Fonts/FreeSansBold24pt7b.h | 3 +++ Fonts/FreeSansBold9pt7b.h | 3 +++ Fonts/FreeSansBoldOblique12pt7b.h | 3 +++ Fonts/FreeSansBoldOblique18pt7b.h | 3 +++ Fonts/FreeSansBoldOblique24pt7b.h | 3 +++ Fonts/FreeSansBoldOblique9pt7b.h | 3 +++ Fonts/FreeSansOblique12pt7b.h | 3 +++ Fonts/FreeSansOblique18pt7b.h | 3 +++ Fonts/FreeSansOblique24pt7b.h | 3 +++ Fonts/FreeSansOblique9pt7b.h | 3 +++ Fonts/FreeSerif12pt7b.h | 3 +++ Fonts/FreeSerif18pt7b.h | 3 +++ Fonts/FreeSerif24pt7b.h | 3 +++ Fonts/FreeSerif9pt7b.h | 3 +++ Fonts/FreeSerifBold12pt7b.h | 3 +++ Fonts/FreeSerifBold18pt7b.h | 3 +++ Fonts/FreeSerifBold24pt7b.h | 3 +++ Fonts/FreeSerifBold9pt7b.h | 3 +++ Fonts/FreeSerifBoldItalic12pt7b.h | 3 +++ Fonts/FreeSerifBoldItalic18pt7b.h | 3 +++ Fonts/FreeSerifBoldItalic24pt7b.h | 3 +++ Fonts/FreeSerifBoldItalic9pt7b.h | 3 +++ Fonts/FreeSerifItalic12pt7b.h | 3 +++ Fonts/FreeSerifItalic18pt7b.h | 3 +++ Fonts/FreeSerifItalic24pt7b.h | 3 +++ Fonts/FreeSerifItalic9pt7b.h | 3 +++ Fonts/Org_01.h | 3 +++ Fonts/Picopixel.h | 3 +++ Fonts/Tiny3x3a2pt7b.h | 3 +++ Fonts/TomThumb.h | 3 +++ 52 files changed, 156 insertions(+) diff --git a/Fonts/FreeMono12pt7b.h b/Fonts/FreeMono12pt7b.h index effbf4d1..d124f207 100644 --- a/Fonts/FreeMono12pt7b.h +++ b/Fonts/FreeMono12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMono12pt7bBitmaps[] PROGMEM = { 0x49, 0x24, 0x92, 0x48, 0x01, 0xF8, 0xE7, 0xE7, 0x67, 0x42, 0x42, 0x42, 0x42, 0x09, 0x02, 0x41, 0x10, 0x44, 0x11, 0x1F, 0xF1, 0x10, 0x4C, 0x12, diff --git a/Fonts/FreeMono18pt7b.h b/Fonts/FreeMono18pt7b.h index 2361c981..6a3641c3 100644 --- a/Fonts/FreeMono18pt7b.h +++ b/Fonts/FreeMono18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMono18pt7bBitmaps[] PROGMEM = { 0x27, 0x77, 0x77, 0x77, 0x77, 0x22, 0x22, 0x20, 0x00, 0x6F, 0xF6, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC3, 0x98, 0x33, 0x06, 0x60, 0xCC, diff --git a/Fonts/FreeMono24pt7b.h b/Fonts/FreeMono24pt7b.h index 8596d0ab..2540ed49 100644 --- a/Fonts/FreeMono24pt7b.h +++ b/Fonts/FreeMono24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMono24pt7bBitmaps[] PROGMEM = { 0x73, 0x9C, 0xE7, 0x39, 0xCE, 0x73, 0x9C, 0xE7, 0x10, 0x84, 0x21, 0x08, 0x00, 0x00, 0x00, 0x03, 0xBF, 0xFF, 0xB8, 0xFE, 0x7F, 0x7C, 0x3E, 0x7C, diff --git a/Fonts/FreeMono9pt7b.h b/Fonts/FreeMono9pt7b.h index a3034eb0..a2e9a00d 100644 --- a/Fonts/FreeMono9pt7b.h +++ b/Fonts/FreeMono9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMono9pt7bBitmaps[] PROGMEM = { 0xAA, 0xA8, 0x0C, 0xED, 0x24, 0x92, 0x48, 0x24, 0x48, 0x91, 0x2F, 0xE4, 0x89, 0x7F, 0x28, 0x51, 0x22, 0x40, 0x08, 0x3E, 0x62, 0x40, 0x30, 0x0E, diff --git a/Fonts/FreeMonoBold12pt7b.h b/Fonts/FreeMonoBold12pt7b.h index 9faf3518..a205386a 100644 --- a/Fonts/FreeMonoBold12pt7b.h +++ b/Fonts/FreeMonoBold12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBold12pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xF6, 0x66, 0x60, 0x6F, 0x60, 0xE7, 0xE7, 0x62, 0x42, 0x42, 0x42, 0x42, 0x11, 0x87, 0x30, 0xC6, 0x18, 0xC3, 0x31, 0xFF, 0xFF, diff --git a/Fonts/FreeMonoBold18pt7b.h b/Fonts/FreeMonoBold18pt7b.h index fee446bb..36664c1d 100644 --- a/Fonts/FreeMonoBold18pt7b.h +++ b/Fonts/FreeMonoBold18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBold18pt7bBitmaps[] PROGMEM = { 0x77, 0xFF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xC4, 0x03, 0xBF, 0xFF, 0xB8, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1E, 0xC1, 0x98, 0x33, diff --git a/Fonts/FreeMonoBold24pt7b.h b/Fonts/FreeMonoBold24pt7b.h index 5ff07d40..eb79d6e8 100644 --- a/Fonts/FreeMonoBold24pt7b.h +++ b/Fonts/FreeMonoBold24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBold24pt7bBitmaps[] PROGMEM = { 0x38, 0xFB, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFD, 0xF3, 0xE7, 0xCF, 0x9F, 0x3E, 0x7C, 0xF9, 0xF3, 0xE3, 0x82, 0x00, 0x00, 0x00, 0x71, 0xF7, diff --git a/Fonts/FreeMonoBold9pt7b.h b/Fonts/FreeMonoBold9pt7b.h index 3fb82aac..44320f81 100644 --- a/Fonts/FreeMonoBold9pt7b.h +++ b/Fonts/FreeMonoBold9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBold9pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xD2, 0x1F, 0x80, 0xEC, 0x89, 0x12, 0x24, 0x40, 0x36, 0x36, 0x36, 0x7F, 0x7F, 0x36, 0xFF, 0xFF, 0x3C, 0x3C, 0x3C, 0x00, 0x18, 0xFF, diff --git a/Fonts/FreeMonoBoldOblique12pt7b.h b/Fonts/FreeMonoBoldOblique12pt7b.h index 6f18c478..095fdd34 100644 --- a/Fonts/FreeMonoBoldOblique12pt7b.h +++ b/Fonts/FreeMonoBoldOblique12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBoldOblique12pt7bBitmaps[] PROGMEM = { 0x1C, 0xF3, 0xCE, 0x38, 0xE7, 0x1C, 0x61, 0x86, 0x00, 0x63, 0x8C, 0x00, 0xE7, 0xE7, 0xE6, 0xC6, 0xC6, 0xC4, 0x84, 0x03, 0x30, 0x19, 0x81, 0xDC, diff --git a/Fonts/FreeMonoBoldOblique18pt7b.h b/Fonts/FreeMonoBoldOblique18pt7b.h index 76b07640..0400f254 100644 --- a/Fonts/FreeMonoBoldOblique18pt7b.h +++ b/Fonts/FreeMonoBoldOblique18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBoldOblique18pt7bBitmaps[] PROGMEM = { 0x0F, 0x07, 0xC7, 0xE3, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x1F, 0x0F, 0x07, 0x87, 0xC3, 0xC1, 0xE0, 0x60, 0x00, 0x38, 0x3E, 0x1F, 0x0F, 0x83, diff --git a/Fonts/FreeMonoBoldOblique24pt7b.h b/Fonts/FreeMonoBoldOblique24pt7b.h index b0c33706..ac923bff 100644 --- a/Fonts/FreeMonoBoldOblique24pt7b.h +++ b/Fonts/FreeMonoBoldOblique24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBoldOblique24pt7bBitmaps[] PROGMEM = { 0x01, 0xE0, 0x3F, 0x07, 0xF0, 0xFF, 0x0F, 0xF0, 0xFF, 0x0F, 0xE0, 0xFE, 0x0F, 0xE0, 0xFE, 0x0F, 0xC0, 0xFC, 0x1F, 0xC1, 0xF8, 0x1F, 0x81, 0xF8, diff --git a/Fonts/FreeMonoBoldOblique9pt7b.h b/Fonts/FreeMonoBoldOblique9pt7b.h index 334ab7b9..86d3e9c7 100644 --- a/Fonts/FreeMonoBoldOblique9pt7b.h +++ b/Fonts/FreeMonoBoldOblique9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoBoldOblique9pt7bBitmaps[] PROGMEM = { 0x39, 0xCC, 0x67, 0x31, 0x8C, 0x07, 0x38, 0x6C, 0xD9, 0x36, 0x48, 0x80, 0x09, 0x0D, 0x86, 0xCF, 0xF7, 0xF9, 0xB3, 0xFD, 0xFE, 0x6C, 0x36, 0x1B, diff --git a/Fonts/FreeMonoOblique12pt7b.h b/Fonts/FreeMonoOblique12pt7b.h index f17a0f84..06176033 100644 --- a/Fonts/FreeMonoOblique12pt7b.h +++ b/Fonts/FreeMonoOblique12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoOblique12pt7bBitmaps[] PROGMEM = { 0x11, 0x11, 0x12, 0x22, 0x22, 0x00, 0x0E, 0xE0, 0xE7, 0xE7, 0xC6, 0xC6, 0xC6, 0x84, 0x84, 0x02, 0x40, 0x88, 0x12, 0x02, 0x40, 0x48, 0x7F, 0xC2, diff --git a/Fonts/FreeMonoOblique18pt7b.h b/Fonts/FreeMonoOblique18pt7b.h index 93fa1cfb..c12ae08b 100644 --- a/Fonts/FreeMonoOblique18pt7b.h +++ b/Fonts/FreeMonoOblique18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoOblique18pt7bBitmaps[] PROGMEM = { 0x00, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x06, 0x18, 0x30, 0x60, 0xC1, 0x02, 0x04, 0x00, 0x00, 0x01, 0xC7, 0x8F, 0x1C, 0x00, 0x78, 0x7B, 0xC3, 0xFC, diff --git a/Fonts/FreeMonoOblique24pt7b.h b/Fonts/FreeMonoOblique24pt7b.h index ca097393..28bbf9e3 100644 --- a/Fonts/FreeMonoOblique24pt7b.h +++ b/Fonts/FreeMonoOblique24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoOblique24pt7bBitmaps[] PROGMEM = { 0x01, 0xC0, 0xF0, 0x3C, 0x0E, 0x03, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, 0xC0, 0xE0, 0x38, 0x0E, 0x03, 0x00, 0xC0, 0x70, 0x1C, 0x06, 0x01, 0x80, diff --git a/Fonts/FreeMonoOblique9pt7b.h b/Fonts/FreeMonoOblique9pt7b.h index e39ef495..1e829640 100644 --- a/Fonts/FreeMonoOblique9pt7b.h +++ b/Fonts/FreeMonoOblique9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeMonoOblique9pt7bBitmaps[] PROGMEM = { 0x11, 0x22, 0x24, 0x40, 0x00, 0xC0, 0xDE, 0xE5, 0x29, 0x00, 0x09, 0x05, 0x02, 0x82, 0x47, 0xF8, 0xA0, 0x51, 0xFE, 0x28, 0x14, 0x0A, 0x09, 0x00, diff --git a/Fonts/FreeSans12pt7b.h b/Fonts/FreeSans12pt7b.h index 4e027fc9..6e77392e 100644 --- a/Fonts/FreeSans12pt7b.h +++ b/Fonts/FreeSans12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSans12pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xF0, 0xF0, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x06, 0x30, 0x31, 0x03, 0x18, 0x18, 0xC7, 0xFF, 0xBF, 0xFC, 0x31, 0x03, 0x18, 0x18, diff --git a/Fonts/FreeSans18pt7b.h b/Fonts/FreeSans18pt7b.h index 82ac4797..f3a96060 100644 --- a/Fonts/FreeSans18pt7b.h +++ b/Fonts/FreeSans18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSans18pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xE9, 0x20, 0x3F, 0xFC, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, 0x3F, 0x1F, 0x8E, 0x82, 0x41, 0x00, 0x01, 0xC3, 0x80, diff --git a/Fonts/FreeSans24pt7b.h b/Fonts/FreeSans24pt7b.h index 5939c316..35595305 100644 --- a/Fonts/FreeSans24pt7b.h +++ b/Fonts/FreeSans24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSans24pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, 0x66, 0x00, 0x0F, 0xFF, 0xFF, 0xF1, 0xFE, 0x3F, 0xC7, 0xF8, 0xFF, 0x1F, diff --git a/Fonts/FreeSans9pt7b.h b/Fonts/FreeSans9pt7b.h index f151f326..91c33b03 100644 --- a/Fonts/FreeSans9pt7b.h +++ b/Fonts/FreeSans9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSans9pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xF8, 0xC0, 0xDE, 0xF7, 0x20, 0x09, 0x86, 0x41, 0x91, 0xFF, 0x13, 0x04, 0xC3, 0x20, 0xC8, 0xFF, 0x89, 0x82, 0x61, 0x90, 0x10, 0x1F, diff --git a/Fonts/FreeSansBold12pt7b.h b/Fonts/FreeSansBold12pt7b.h index d75ef625..c1d6ef4f 100644 --- a/Fonts/FreeSansBold12pt7b.h +++ b/Fonts/FreeSansBold12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBold12pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xFF, 0x76, 0x66, 0x60, 0xFF, 0xF0, 0xF3, 0xFC, 0xFF, 0x3F, 0xCF, 0x61, 0x98, 0x60, 0x0E, 0x70, 0x73, 0x83, 0x18, 0xFF, 0xF7, diff --git a/Fonts/FreeSansBold18pt7b.h b/Fonts/FreeSansBold18pt7b.h index ed34c632..f0e2807b 100644 --- a/Fonts/FreeSansBold18pt7b.h +++ b/Fonts/FreeSansBold18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBold18pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0xE7, 0x39, 0xCE, 0x73, 0x80, 0x0F, 0xFF, 0xFF, 0xF8, 0xF8, 0xFF, 0xC7, 0xFE, 0x3F, 0xF1, 0xFF, 0x8F, diff --git a/Fonts/FreeSansBold24pt7b.h b/Fonts/FreeSansBold24pt7b.h index b128e215..5dd7a54a 100644 --- a/Fonts/FreeSansBold24pt7b.h +++ b/Fonts/FreeSansBold24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBold24pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0x3E, 0x7C, 0xF9, 0xF3, 0xE7, 0xC7, 0x0E, 0x1C, 0x00, 0x00, 0x07, diff --git a/Fonts/FreeSansBold9pt7b.h b/Fonts/FreeSansBold9pt7b.h index 3d850f4b..cffb178d 100644 --- a/Fonts/FreeSansBold9pt7b.h +++ b/Fonts/FreeSansBold9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBold9pt7bBitmaps[] PROGMEM = { 0xFF, 0xFF, 0xFE, 0x48, 0x7E, 0xEF, 0xDF, 0xBF, 0x74, 0x40, 0x19, 0x86, 0x67, 0xFD, 0xFF, 0x33, 0x0C, 0xC3, 0x33, 0xFE, 0xFF, 0x99, 0x86, 0x61, diff --git a/Fonts/FreeSansBoldOblique12pt7b.h b/Fonts/FreeSansBoldOblique12pt7b.h index f7c769cb..ff76ce35 100644 --- a/Fonts/FreeSansBoldOblique12pt7b.h +++ b/Fonts/FreeSansBoldOblique12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBoldOblique12pt7bBitmaps[] PROGMEM = { 0x1C, 0x3C, 0x78, 0xE1, 0xC3, 0x8F, 0x1C, 0x38, 0x70, 0xC1, 0x83, 0x00, 0x1C, 0x78, 0xF0, 0x71, 0xFC, 0xFE, 0x3B, 0x8E, 0xC3, 0x30, 0xC0, 0x01, diff --git a/Fonts/FreeSansBoldOblique18pt7b.h b/Fonts/FreeSansBoldOblique18pt7b.h index c947f66d..441c6b50 100644 --- a/Fonts/FreeSansBoldOblique18pt7b.h +++ b/Fonts/FreeSansBoldOblique18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBoldOblique18pt7bBitmaps[] PROGMEM = { 0x06, 0x01, 0xC0, 0x7C, 0x1F, 0x0F, 0xC3, 0xE0, 0xF8, 0x3E, 0x0F, 0x83, 0xC0, 0xF0, 0x7C, 0x1E, 0x07, 0x81, 0xE0, 0x78, 0x1C, 0x07, 0x01, 0xC0, diff --git a/Fonts/FreeSansBoldOblique24pt7b.h b/Fonts/FreeSansBoldOblique24pt7b.h index 69ba7afb..a20229d6 100644 --- a/Fonts/FreeSansBoldOblique24pt7b.h +++ b/Fonts/FreeSansBoldOblique24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBoldOblique24pt7bBitmaps[] PROGMEM = { 0x01, 0xE0, 0x07, 0xF0, 0x1F, 0xC0, 0xFF, 0x03, 0xF8, 0x0F, 0xE0, 0x3F, 0x80, 0xFE, 0x07, 0xF0, 0x1F, 0xC0, 0x7F, 0x01, 0xFC, 0x07, 0xE0, 0x1F, diff --git a/Fonts/FreeSansBoldOblique9pt7b.h b/Fonts/FreeSansBoldOblique9pt7b.h index 263e615e..ff72f735 100644 --- a/Fonts/FreeSansBoldOblique9pt7b.h +++ b/Fonts/FreeSansBoldOblique9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansBoldOblique9pt7bBitmaps[] PROGMEM = { 0x21, 0x8E, 0x73, 0x18, 0xC6, 0x21, 0x19, 0xCE, 0x00, 0xEF, 0xDF, 0xBE, 0x68, 0x80, 0x06, 0xC1, 0x99, 0xFF, 0xBF, 0xF1, 0xB0, 0x66, 0x0C, 0xC7, diff --git a/Fonts/FreeSansOblique12pt7b.h b/Fonts/FreeSansOblique12pt7b.h index b9fbbfc4..ce55f4d2 100644 --- a/Fonts/FreeSansOblique12pt7b.h +++ b/Fonts/FreeSansOblique12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansOblique12pt7bBitmaps[] PROGMEM = { 0x0C, 0x61, 0x86, 0x18, 0x63, 0x0C, 0x30, 0xC2, 0x18, 0x61, 0x00, 0x00, 0xC3, 0x00, 0xCF, 0x3C, 0xE2, 0x8A, 0x20, 0x01, 0x8C, 0x03, 0x18, 0x06, diff --git a/Fonts/FreeSansOblique18pt7b.h b/Fonts/FreeSansOblique18pt7b.h index cb1106aa..f85b07fe 100644 --- a/Fonts/FreeSansOblique18pt7b.h +++ b/Fonts/FreeSansOblique18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansOblique18pt7bBitmaps[] PROGMEM = { 0x03, 0x83, 0x81, 0xC0, 0xE0, 0x70, 0x78, 0x38, 0x1C, 0x0E, 0x07, 0x07, 0x83, 0x81, 0xC0, 0xE0, 0x60, 0x30, 0x30, 0x18, 0x0C, 0x04, 0x00, 0x00, diff --git a/Fonts/FreeSansOblique24pt7b.h b/Fonts/FreeSansOblique24pt7b.h index d5fd29fc..805aefaf 100644 --- a/Fonts/FreeSansOblique24pt7b.h +++ b/Fonts/FreeSansOblique24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansOblique24pt7bBitmaps[] PROGMEM = { 0x01, 0xE0, 0x3C, 0x0F, 0x81, 0xE0, 0x3C, 0x07, 0x80, 0xF0, 0x3C, 0x07, 0x80, 0xF0, 0x1E, 0x03, 0xC0, 0xF0, 0x1E, 0x03, 0xC0, 0x78, 0x0F, 0x03, diff --git a/Fonts/FreeSansOblique9pt7b.h b/Fonts/FreeSansOblique9pt7b.h index a44f3738..0b5db813 100644 --- a/Fonts/FreeSansOblique9pt7b.h +++ b/Fonts/FreeSansOblique9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSansOblique9pt7bBitmaps[] PROGMEM = { 0x10, 0x84, 0x22, 0x10, 0x84, 0x42, 0x10, 0x08, 0x00, 0xDE, 0xE5, 0x20, 0x06, 0x40, 0x88, 0x13, 0x06, 0x43, 0xFE, 0x32, 0x04, 0x40, 0x98, 0x32, diff --git a/Fonts/FreeSerif12pt7b.h b/Fonts/FreeSerif12pt7b.h index 052857a4..22cb53de 100644 --- a/Fonts/FreeSerif12pt7b.h +++ b/Fonts/FreeSerif12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerif12pt7bBitmaps[] PROGMEM = { 0xFF, 0xFE, 0xA8, 0x3F, 0xCF, 0x3C, 0xF3, 0x8A, 0x20, 0x0C, 0x40, 0xC4, 0x08, 0x40, 0x8C, 0x08, 0xC7, 0xFF, 0x18, 0x81, 0x88, 0x10, 0x81, 0x08, diff --git a/Fonts/FreeSerif18pt7b.h b/Fonts/FreeSerif18pt7b.h index 4eeb1550..3fd1ba59 100644 --- a/Fonts/FreeSerif18pt7b.h +++ b/Fonts/FreeSerif18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerif18pt7bBitmaps[] PROGMEM = { 0x6F, 0xFF, 0xFF, 0xFE, 0x66, 0x66, 0x66, 0x64, 0x40, 0x00, 0x6F, 0xF6, 0xE7, 0xE7, 0xE7, 0xE7, 0xE7, 0x46, 0x42, 0x42, 0x42, 0x03, 0x06, 0x01, diff --git a/Fonts/FreeSerif24pt7b.h b/Fonts/FreeSerif24pt7b.h index 5cd6d14b..cac19998 100644 --- a/Fonts/FreeSerif24pt7b.h +++ b/Fonts/FreeSerif24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerif24pt7bBitmaps[] PROGMEM = { 0x77, 0xBF, 0xFF, 0xFF, 0xFF, 0xFB, 0x9C, 0xE7, 0x39, 0xCE, 0x61, 0x08, 0x42, 0x10, 0x84, 0x00, 0x00, 0xEF, 0xFF, 0xEE, 0x60, 0x6F, 0x0F, 0xF0, diff --git a/Fonts/FreeSerif9pt7b.h b/Fonts/FreeSerif9pt7b.h index 7acf307e..22f82e45 100644 --- a/Fonts/FreeSerif9pt7b.h +++ b/Fonts/FreeSerif9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerif9pt7bBitmaps[] PROGMEM = { 0xFF, 0xEA, 0x03, 0xDE, 0xF7, 0x20, 0x11, 0x09, 0x04, 0x82, 0x4F, 0xF9, 0x10, 0x89, 0xFF, 0x24, 0x12, 0x09, 0x0C, 0x80, 0x10, 0x7C, 0xD6, 0xD2, diff --git a/Fonts/FreeSerifBold12pt7b.h b/Fonts/FreeSerifBold12pt7b.h index 7b4b0c92..9dedae04 100644 --- a/Fonts/FreeSerifBold12pt7b.h +++ b/Fonts/FreeSerifBold12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBold12pt7bBitmaps[] PROGMEM = { 0x7F, 0xFF, 0x77, 0x66, 0x22, 0x00, 0x6F, 0xF7, 0xE3, 0xF1, 0xF8, 0xFC, 0x7E, 0x3A, 0x09, 0x04, 0x0C, 0x40, 0xCC, 0x0C, 0xC0, 0x8C, 0x18, 0xC7, diff --git a/Fonts/FreeSerifBold18pt7b.h b/Fonts/FreeSerifBold18pt7b.h index d28014e9..faecf4f7 100644 --- a/Fonts/FreeSerifBold18pt7b.h +++ b/Fonts/FreeSerifBold18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBold18pt7bBitmaps[] PROGMEM = { 0x7B, 0xEF, 0xFF, 0xFF, 0xF7, 0x9E, 0x71, 0xC7, 0x0C, 0x20, 0x82, 0x00, 0x00, 0x07, 0x3E, 0xFF, 0xFF, 0xDC, 0x60, 0x37, 0x83, 0xFC, 0x1F, 0xE0, diff --git a/Fonts/FreeSerifBold24pt7b.h b/Fonts/FreeSerifBold24pt7b.h index a1850514..e6681f5b 100644 --- a/Fonts/FreeSerifBold24pt7b.h +++ b/Fonts/FreeSerifBold24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBold24pt7bBitmaps[] PROGMEM = { 0x3C, 0x7E, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x7E, 0x7E, 0x7C, 0x7C, 0x3C, 0x3C, 0x38, 0x38, 0x38, 0x38, 0x18, 0x10, 0x10, 0x10, 0x00, 0x00, diff --git a/Fonts/FreeSerifBold9pt7b.h b/Fonts/FreeSerifBold9pt7b.h index 37ac7147..2f1cf8f7 100644 --- a/Fonts/FreeSerifBold9pt7b.h +++ b/Fonts/FreeSerifBold9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBold9pt7bBitmaps[] PROGMEM = { 0xFF, 0xF4, 0x92, 0x1F, 0xF0, 0xCF, 0x3C, 0xE3, 0x88, 0x13, 0x09, 0x84, 0xC2, 0x47, 0xF9, 0x90, 0xC8, 0x4C, 0xFF, 0x13, 0x09, 0x0C, 0x86, 0x40, diff --git a/Fonts/FreeSerifBoldItalic12pt7b.h b/Fonts/FreeSerifBoldItalic12pt7b.h index 79d8d7a7..d6674ce8 100644 --- a/Fonts/FreeSerifBoldItalic12pt7b.h +++ b/Fonts/FreeSerifBoldItalic12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBoldItalic12pt7bBitmaps[] PROGMEM = { 0x07, 0x07, 0x07, 0x0F, 0x0E, 0x0E, 0x0C, 0x0C, 0x08, 0x18, 0x10, 0x00, 0x00, 0x60, 0xF0, 0xF0, 0x60, 0x61, 0xF1, 0xF8, 0xF8, 0x6C, 0x34, 0x12, diff --git a/Fonts/FreeSerifBoldItalic18pt7b.h b/Fonts/FreeSerifBoldItalic18pt7b.h index 750b81d9..8e75b241 100644 --- a/Fonts/FreeSerifBoldItalic18pt7b.h +++ b/Fonts/FreeSerifBoldItalic18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBoldItalic18pt7bBitmaps[] PROGMEM = { 0x01, 0xC0, 0x7C, 0x0F, 0x81, 0xF0, 0x3E, 0x07, 0x80, 0xF0, 0x3C, 0x07, 0x80, 0xE0, 0x1C, 0x03, 0x00, 0x60, 0x0C, 0x03, 0x00, 0x60, 0x08, 0x00, diff --git a/Fonts/FreeSerifBoldItalic24pt7b.h b/Fonts/FreeSerifBoldItalic24pt7b.h index f5b7ed88..e2fa4cb9 100644 --- a/Fonts/FreeSerifBoldItalic24pt7b.h +++ b/Fonts/FreeSerifBoldItalic24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBoldItalic24pt7bBitmaps[] PROGMEM = { 0x00, 0x3C, 0x00, 0xFC, 0x01, 0xF8, 0x07, 0xF0, 0x0F, 0xE0, 0x1F, 0xC0, 0x3F, 0x00, 0x7E, 0x00, 0xF8, 0x01, 0xF0, 0x07, 0xC0, 0x0F, 0x80, 0x1E, diff --git a/Fonts/FreeSerifBoldItalic9pt7b.h b/Fonts/FreeSerifBoldItalic9pt7b.h index 50a2ebe6..b5d9a551 100644 --- a/Fonts/FreeSerifBoldItalic9pt7b.h +++ b/Fonts/FreeSerifBoldItalic9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifBoldItalic9pt7bBitmaps[] PROGMEM = { 0x0C, 0x31, 0xC6, 0x18, 0x41, 0x08, 0x20, 0x0E, 0x38, 0xE0, 0xCF, 0x38, 0xA2, 0x88, 0x02, 0x40, 0xC8, 0x13, 0x06, 0x43, 0xFC, 0x32, 0x06, 0x40, diff --git a/Fonts/FreeSerifItalic12pt7b.h b/Fonts/FreeSerifItalic12pt7b.h index 967a52fd..85de005f 100644 --- a/Fonts/FreeSerifItalic12pt7b.h +++ b/Fonts/FreeSerifItalic12pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifItalic12pt7bBitmaps[] PROGMEM = { 0x0C, 0x31, 0xC6, 0x18, 0x43, 0x0C, 0x20, 0x84, 0x10, 0x03, 0x0C, 0x30, 0x66, 0xCD, 0x12, 0x24, 0x51, 0x00, 0x03, 0x10, 0x11, 0x80, 0x8C, 0x0C, diff --git a/Fonts/FreeSerifItalic18pt7b.h b/Fonts/FreeSerifItalic18pt7b.h index 7200365d..c25db35b 100644 --- a/Fonts/FreeSerifItalic18pt7b.h +++ b/Fonts/FreeSerifItalic18pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifItalic18pt7bBitmaps[] PROGMEM = { 0x01, 0xC0, 0xF0, 0x3C, 0x0F, 0x03, 0x81, 0xE0, 0x70, 0x1C, 0x06, 0x01, 0x80, 0xC0, 0x30, 0x0C, 0x02, 0x01, 0x80, 0x40, 0x10, 0x00, 0x00, 0x01, diff --git a/Fonts/FreeSerifItalic24pt7b.h b/Fonts/FreeSerifItalic24pt7b.h index e14a151b..98233a78 100644 --- a/Fonts/FreeSerifItalic24pt7b.h +++ b/Fonts/FreeSerifItalic24pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifItalic24pt7bBitmaps[] PROGMEM = { 0x00, 0xF0, 0x0F, 0x00, 0xF0, 0x0F, 0x01, 0xF0, 0x1E, 0x01, 0xE0, 0x1C, 0x01, 0xC0, 0x3C, 0x03, 0x80, 0x38, 0x03, 0x80, 0x30, 0x07, 0x00, 0x60, diff --git a/Fonts/FreeSerifItalic9pt7b.h b/Fonts/FreeSerifItalic9pt7b.h index 9f3d5df0..be4ad051 100644 --- a/Fonts/FreeSerifItalic9pt7b.h +++ b/Fonts/FreeSerifItalic9pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + const uint8_t FreeSerifItalic9pt7bBitmaps[] PROGMEM = { 0x11, 0x12, 0x22, 0x24, 0x40, 0x0C, 0xDE, 0xE5, 0x40, 0x04, 0x82, 0x20, 0x98, 0x24, 0x7F, 0xC4, 0x82, 0x23, 0xFC, 0x24, 0x11, 0x04, 0x83, 0x20, diff --git a/Fonts/Org_01.h b/Fonts/Org_01.h index eabbd92a..9b80258e 100644 --- a/Fonts/Org_01.h +++ b/Fonts/Org_01.h @@ -1,3 +1,6 @@ +#pragma once +#include + // Org_v01 by Orgdot (www.orgdot.com/aliasfonts). A tiny, // stylized font with all characters within a 6 pixel height. diff --git a/Fonts/Picopixel.h b/Fonts/Picopixel.h index c1a00928..463b1b56 100644 --- a/Fonts/Picopixel.h +++ b/Fonts/Picopixel.h @@ -1,3 +1,6 @@ +#pragma once +#include + // Picopixel by Sebastian Weber. A tiny font // with all characters within a 6 pixel height. diff --git a/Fonts/Tiny3x3a2pt7b.h b/Fonts/Tiny3x3a2pt7b.h index c3071d74..5b0ba4a0 100644 --- a/Fonts/Tiny3x3a2pt7b.h +++ b/Fonts/Tiny3x3a2pt7b.h @@ -1,3 +1,6 @@ +#pragma once +#include + /** ** The FontStruction “Tiny3x3a” ** (https://fontstruct.com/fontstructions/show/670512) by “Michaelangel007” is diff --git a/Fonts/TomThumb.h b/Fonts/TomThumb.h index 08b20800..21555002 100644 --- a/Fonts/TomThumb.h +++ b/Fonts/TomThumb.h @@ -1,3 +1,6 @@ +#pragma once +#include + /** ** The original 3x5 font is licensed under the 3-clause BSD license: ** From 8094f6a295c33265354242e3587bb34e19fee063 Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Tue, 18 Jul 2023 15:34:28 -0400 Subject: [PATCH 19/26] Bumped to 1.11.6 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index bd92ca6f..67dfb9ac 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.5 +version=1.11.6 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From 83a182d26011063411d59ec97d65c41d2d6ebb59 Mon Sep 17 00:00:00 2001 From: Eva Herrada <33632497+evaherrada@users.noreply.github.com> Date: Tue, 18 Jul 2023 15:34:52 -0400 Subject: [PATCH 20/26] Bumped to 1.11.7 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 67dfb9ac..ae22633b 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.6 +version=1.11.7 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From ff70355ed66326a7f84ffb77c2b42eea3b619a46 Mon Sep 17 00:00:00 2001 From: ladyada Date: Sun, 24 Sep 2023 01:09:06 -0400 Subject: [PATCH 21/26] for unknown reason, esp8266 wants delay() not yield() so it doesnt crash --- Adafruit_SPITFT.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index 2c8ef01b..c5ec86c2 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -1348,7 +1348,7 @@ void Adafruit_SPITFT::writeColor(uint16_t color, uint32_t len) { if (pixelsThisPass > 50000) pixelsThisPass = 50000; len -= pixelsThisPass; - yield(); // Periodic yield() on long fills + delay(1); // Periodic delay on long fills while (pixelsThisPass--) { hwspi._spi->write(hi); hwspi._spi->write(lo); From b0ac6871594c22d7792295697a3c8a1806b77b42 Mon Sep 17 00:00:00 2001 From: Tyeth Gundry Date: Tue, 26 Sep 2023 13:36:01 +0100 Subject: [PATCH 22/26] Update library.properties - bump to version 1.11.8 --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index ae22633b..5a2bef5b 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.7 +version=1.11.8 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from. From f9821f68214dfc9834ab6e08a9d95b05334217ac Mon Sep 17 00:00:00 2001 From: caternuson Date: Tue, 10 Oct 2023 12:19:26 -0700 Subject: [PATCH 23/26] remove volatile --- Adafruit_SPITFT.cpp | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index c5ec86c2..fdec817d 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -2306,7 +2306,7 @@ inline void Adafruit_SPITFT::SPI_MOSI_HIGH(void) { #else // !USE_FAST_PINIO digitalWrite(swspi._mosi, HIGH); #if defined(ESP32) - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif // end ESP32 #endif // end !USE_FAST_PINIO @@ -2329,7 +2329,7 @@ inline void Adafruit_SPITFT::SPI_MOSI_LOW(void) { #else // !USE_FAST_PINIO digitalWrite(swspi._mosi, LOW); #if defined(ESP32) - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif // end ESP32 #endif // end !USE_FAST_PINIO @@ -2346,7 +2346,7 @@ inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { #else // !KINETISK *swspi.sckPortSet = swspi.sckPinMask; #if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif #endif @@ -2356,7 +2356,7 @@ inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { #else // !USE_FAST_PINIO digitalWrite(swspi._sck, HIGH); #if defined(ESP32) - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif // end ESP32 #endif // end !USE_FAST_PINIO @@ -2373,7 +2373,7 @@ inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { #else // !KINETISK *swspi.sckPortClr = swspi.sckPinMask; #if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif #endif @@ -2383,7 +2383,7 @@ inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { #else // !USE_FAST_PINIO digitalWrite(swspi._sck, LOW); #if defined(ESP32) - for (volatile uint8_t i = 0; i < 1; i++) + for (uint8_t i = 0; i < 1; i++) ; #endif // end ESP32 #endif // end !USE_FAST_PINIO From 8eca715530f8af0d62faed2a01e83eedcd4f9f5d Mon Sep 17 00:00:00 2001 From: caternuson Date: Tue, 10 Oct 2023 14:13:04 -0700 Subject: [PATCH 24/26] remove loops --- Adafruit_SPITFT.cpp | 24 ------------------------ 1 file changed, 24 deletions(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index fdec817d..6a0fc58d 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -2305,10 +2305,6 @@ inline void Adafruit_SPITFT::SPI_MOSI_HIGH(void) { #endif // end !HAS_PORT_SET_CLR #else // !USE_FAST_PINIO digitalWrite(swspi._mosi, HIGH); -#if defined(ESP32) - for (uint8_t i = 0; i < 1; i++) - ; -#endif // end ESP32 #endif // end !USE_FAST_PINIO } @@ -2328,10 +2324,6 @@ inline void Adafruit_SPITFT::SPI_MOSI_LOW(void) { #endif // end !HAS_PORT_SET_CLR #else // !USE_FAST_PINIO digitalWrite(swspi._mosi, LOW); -#if defined(ESP32) - for (uint8_t i = 0; i < 1; i++) - ; -#endif // end ESP32 #endif // end !USE_FAST_PINIO } @@ -2345,20 +2337,12 @@ inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { *swspi.sckPortSet = 1; #else // !KINETISK *swspi.sckPortSet = swspi.sckPinMask; -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - for (uint8_t i = 0; i < 1; i++) - ; -#endif #endif #else // !HAS_PORT_SET_CLR *swspi.sckPort |= swspi.sckPinMaskSet; #endif // end !HAS_PORT_SET_CLR #else // !USE_FAST_PINIO digitalWrite(swspi._sck, HIGH); -#if defined(ESP32) - for (uint8_t i = 0; i < 1; i++) - ; -#endif // end ESP32 #endif // end !USE_FAST_PINIO } @@ -2372,20 +2356,12 @@ inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { *swspi.sckPortClr = 1; #else // !KINETISK *swspi.sckPortClr = swspi.sckPinMask; -#if defined(__IMXRT1052__) || defined(__IMXRT1062__) // Teensy 4.x - for (uint8_t i = 0; i < 1; i++) - ; -#endif #endif #else // !HAS_PORT_SET_CLR *swspi.sckPort &= swspi.sckPinMaskClr; #endif // end !HAS_PORT_SET_CLR #else // !USE_FAST_PINIO digitalWrite(swspi._sck, LOW); -#if defined(ESP32) - for (uint8_t i = 0; i < 1; i++) - ; -#endif // end ESP32 #endif // end !USE_FAST_PINIO } From 3c0c85ba5d739bb052f9687fe485d7eb4a953e51 Mon Sep 17 00:00:00 2001 From: caternuson Date: Tue, 10 Oct 2023 14:34:28 -0700 Subject: [PATCH 25/26] clang --- Adafruit_SPITFT.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Adafruit_SPITFT.cpp b/Adafruit_SPITFT.cpp index 6a0fc58d..eeffce78 100644 --- a/Adafruit_SPITFT.cpp +++ b/Adafruit_SPITFT.cpp @@ -2335,7 +2335,7 @@ inline void Adafruit_SPITFT::SPI_SCK_HIGH(void) { #if defined(HAS_PORT_SET_CLR) #if defined(KINETISK) *swspi.sckPortSet = 1; -#else // !KINETISK +#else // !KINETISK *swspi.sckPortSet = swspi.sckPinMask; #endif #else // !HAS_PORT_SET_CLR @@ -2354,7 +2354,7 @@ inline void Adafruit_SPITFT::SPI_SCK_LOW(void) { #if defined(HAS_PORT_SET_CLR) #if defined(KINETISK) *swspi.sckPortClr = 1; -#else // !KINETISK +#else // !KINETISK *swspi.sckPortClr = swspi.sckPinMask; #endif #else // !HAS_PORT_SET_CLR From 126007f2c52d3238b7a1133ec14192c3d1deb8a9 Mon Sep 17 00:00:00 2001 From: Carter Nelson Date: Tue, 10 Oct 2023 14:48:48 -0700 Subject: [PATCH 26/26] Update library.properties --- library.properties | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library.properties b/library.properties index 5a2bef5b..7d8849e5 100644 --- a/library.properties +++ b/library.properties @@ -1,5 +1,5 @@ name=Adafruit GFX Library -version=1.11.8 +version=1.11.9 author=Adafruit maintainer=Adafruit sentence=Adafruit GFX graphics core library, this is the 'core' class that all our other graphics libraries derive from.