Fork of David Smart's RA8875 library for the purpose of adding touch screen support

Fork of RA8875 by David Smart

Revision:
32:0e4f2ae512e2
Parent:
31:c72e12cd5c67
Child:
37:f19b7e7449dc
--- a/RA8875.cpp	Mon Jan 20 19:19:48 2014 +0000
+++ b/RA8875.cpp	Tue Jan 21 03:28:36 2014 +0000
@@ -159,9 +159,9 @@
         return font[2];
 }
 
-RetCode_t RA8875::locate(unsigned int x, unsigned int y)
+RetCode_t RA8875::locate(unsigned int column, unsigned int row)
 {
-    return SetTextCursor(x * fontwidth(), y * fontheight());
+    return SetTextCursor(column * fontwidth(), row * fontheight());
 }
 
 int RA8875::columns(void)
@@ -174,15 +174,13 @@
     return height() / fontheight();
 }
 
-int RA8875::width(void)
+uint16_t RA8875::width(void)
 {
-    //return RA8875_DISPLAY_WIDTH;
     return (ReadCommand(0x14) + 1) * 8;
 }
 
-int RA8875::height(void)
+uint16_t RA8875::height(void)
 {
-    //return RA8875_DISPLAY_HEIGHT;
     return (ReadCommand(0x19) | (ReadCommand(0x1A) << 8)) + 1;
 }
 
@@ -365,6 +363,24 @@
     return c;
 }
 
+RetCode_t RA8875::_StartGraphicsStream(void)
+{
+    WriteCommand(0x40,0x00);    // Graphics write mode
+    WriteCommand(0x02);         // Prepare for streaming data
+    return noerror;
+}
+
+RetCode_t RA8875::_EndGraphicsStream(void)
+{
+    return noerror;
+}
+
+RetCode_t RA8875::putp(color_t pixel)
+{
+    WriteData(pixel & 0xFF);
+    WriteData(pixel >> 8);
+    return noerror;   
+}
 
 void RA8875::puts(unsigned int x, unsigned int y, const char * string)
 {
@@ -378,7 +394,6 @@
                 
     if ((mwcr0 & 0x80) == 0x00)
         WriteCommand(0x40,0x80);    // Put in Text mode if not already
-
     if (*string != '\0') {
         #if 1
         while (*string) {           // @TODO calling individual _putc is slower... optimizations?
@@ -398,7 +413,7 @@
     }
 }
 
-RetCode_t RA8875::SetMemoryCursor(unsigned int x, unsigned int y)
+RetCode_t RA8875::SetGraphicsCursor(uint16_t x, uint16_t y)
 {
     WriteCommand(0x46, x & 0xFF);
     WriteCommand(0x47, x >> 8);
@@ -407,7 +422,7 @@
     return noerror;
 }
 
-RetCode_t RA8875::SetWindow(unsigned int x, unsigned int y, unsigned int width, unsigned int height)
+RetCode_t RA8875::window(unsigned int x, unsigned int y, unsigned int width, unsigned int height)
 {
     WriteCommand(0x30, x & 0xFF);   // HSAW0
     WriteCommand(0x31, x >> 8);     // HSAW1
@@ -452,7 +467,7 @@
     PERFORMANCE_RESET;
     color_t color = GetForeColor();
     WriteCommand(0x40,0x00);    // Graphics write mode
-    SetMemoryCursor(x, y);
+    SetGraphicsCursor(x, y);
     WriteCommand(0x02);         //start data write
     WriteData(color & 0xFF);
     WriteData(color >> 8);
@@ -934,7 +949,7 @@
     WriteCommand(0x1f, 0x01);                     //VPWR //VSYNC Polarity ,VSYNC Pulse Width[6:0]
 
     // Clear ram image
-    SetWindow(0,0, width(), height());          // Initialize to full screen
+    window(0,0, width(), height());          // Initialize to full screen
     SetTextCursorControl();
     foreground(Blue);
     background(Black);
@@ -1075,7 +1090,7 @@
     pc.printf("Web Color Test\r\n");
     display.background(Black);
     display.foreground(Blue);
-    display.SetWindow(0,0, display.width(), display.height());
+    display.window(0,0, display.width(), display.height());
     display.cls();
     display.puts(0,0, "Web Color Test\r\n");
     display.SetTextFontSize(1,2);