From 833c5ae87aa89124451efafdf0cf9fc0400f4b03 Mon Sep 17 00:00:00 2001 From: brickbots Date: Fri, 6 Mar 2020 16:52:39 -0800 Subject: Buffer based OLED panning, write byte to buffer at arbitrary index (#8055) * Add buffer based single line pan, arbitrary byte write to buffer * Change dirty mask to inverse of OLED_BLOCK_TYPE for future proofing larger buffer sizes * Updating docs to include new functions * Updating to clarify scroll vs pan --- docs/feature_oled_driver.md | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'docs') diff --git a/docs/feature_oled_driver.md b/docs/feature_oled_driver.md index ebabc314ff..f4e5db0f4b 100644 --- a/docs/feature_oled_driver.md +++ b/docs/feature_oled_driver.md @@ -221,6 +221,12 @@ void oled_write(const char *data, bool invert); // Advances the cursor to the next page, wiring ' ' to the remainder of the current page void oled_write_ln(const char *data, bool invert); +// Pans the buffer to the right (or left by passing true) by moving contents of the buffer +// Useful for moving the screen in preparation for new drawing +// oled_scroll_left or oled_scroll_right should be preferred for all cases of moving a static +// image such as a logo or to avoid burn-in as it's much, much less cpu intensive +void oled_pan(bool left); + // Writes a PROGMEM string to the buffer at current cursor position // Advances the cursor while writing, inverts the pixels if true // Remapped to call 'void oled_write(const char *data, bool invert);' on ARM @@ -235,6 +241,9 @@ void oled_write_ln_P(const char *data, bool invert); // Writes a string to the buffer at current cursor position void oled_write_raw(const char *data, uint16_t size); +// Writes a single byte into the buffer at the specified index +void oled_write_raw_byte(const char data, uint16_t index); + // Writes a PROGMEM string to the buffer at current cursor position void oled_write_raw_P(const char *data, uint16_t size); -- cgit v1.2.3