KurtE
Senior Member+
Good Morning!
Tried hacking your one function to see if it made a difference:
Debug output:
Display looks sort of off...

Also with the rotation, I might have missed it, but not sure who/if anything is updating the _width and _height members, whose values get returned by
tft.width(); and tft.height()?
Likewise the members, which in the init are set:
As these are used in things like fill screen:
Tried hacking your one function to see if it made a difference:
Code:
void RA8876_t3::MemWrite_Down_Top_Left_Right(void)
{
/* Host Write Memory Direction (Only for Graphic Mode)
11b: Bottom .. Top then Left .. Right.
Ignored if canvas in linear addressing mode. */
unsigned char temp;
temp = lcdRegDataRead(RA8876_MACR);
Serial.println(temp, BIN);
temp |= cSetb2;
temp |= cSetb1;
Serial.println(temp, BIN);
lcdRegDataWrite(RA8876_MACR, temp);
temp = lcdRegDataRead(RA8876_MACR);
Serial.println(temp, BIN);
}
Code:
Setup
0
110
110

Also with the rotation, I might have missed it, but not sure who/if anything is updating the _width and _height members, whose values get returned by
tft.width(); and tft.height()?
Likewise the members, which in the init are set:
Code:
_scrollXL = 0;
_scrollXR = _width;
_scrollYT = 0;
_scrollYB = _height;
Code:
void RA8876_t3::fillScreen(uint16_t color) {
drawSquareFill(_scrollXL, _scrollYT, _scrollXR, _scrollYB, color);
check2dBusy(); //must wait for fill to finish before setting foreground color
textColor(_TXTForeColor,_TXTBackColor);
setTextCursor(_scrollXL,_scrollYT);
}
Last edited: