summaryrefslogtreecommitdiff
path: root/glcddrivers/hd61830.h
diff options
context:
space:
mode:
authorandreas 'randy' weinberger <vdr@smue.org>2010-02-21 19:58:27 +0100
committerandreas 'randy' weinberger <vdr@smue.org>2010-02-21 19:58:27 +0100
commit10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3 (patch)
tree60ad7c856565f03e145b2996d1bb5f9cd64c0532 /glcddrivers/hd61830.h
downloadgraphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.gz
graphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.bz2
initial git upload, based on graphlcd-base-0.1.5
Diffstat (limited to 'glcddrivers/hd61830.h')
-rw-r--r--glcddrivers/hd61830.h54
1 files changed, 54 insertions, 0 deletions
diff --git a/glcddrivers/hd61830.h b/glcddrivers/hd61830.h
new file mode 100644
index 0000000..50f3b26
--- /dev/null
+++ b/glcddrivers/hd61830.h
@@ -0,0 +1,54 @@
+/*
+ * GraphLCD driver library
+ *
+ * hd61830.h - HD61830 driver class
+ *
+ * This file is released under the GNU General Public License. Refer
+ * to the COPYING file distributed with this package.
+ *
+ * (c) 2001-2004 Carsten Siebholz <c.siebholz AT t-online.de>
+ */
+
+#ifndef _GLCDDRIVERS_HD61830_H_
+#define _GLCDDRIVERS_HD61830_H_
+
+#include "driver.h"
+
+namespace GLCD
+{
+
+class cDriverConfig;
+class cParallelPort;
+
+class cDriverHD61830 : public cDriver
+{
+private:
+ cParallelPort * port;
+
+ unsigned char ** newLCD; // wanted state
+ unsigned char ** oldLCD; // current state
+ cDriverConfig * config;
+ cDriverConfig * oldConfig;
+ int refreshCounter;
+ long timeForPortCmdInNs;
+ bool useSleepInit;
+
+ int CheckSetup();
+ int InitGraphic();
+ void Write(unsigned char cmd, unsigned char data);
+
+public:
+ cDriverHD61830(cDriverConfig * config);
+ virtual ~cDriverHD61830();
+
+ virtual int Init();
+ virtual int DeInit();
+
+ virtual void Clear();
+ virtual void Set8Pixels(int x, int y, unsigned char data);
+ virtual void Refresh(bool refreshAll = false);
+};
+
+} // end of namespace
+
+#endif