diff options
author | andreas 'randy' weinberger <vdr@smue.org> | 2010-02-21 19:58:27 +0100 |
---|---|---|
committer | andreas 'randy' weinberger <vdr@smue.org> | 2010-02-21 19:58:27 +0100 |
commit | 10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3 (patch) | |
tree | 60ad7c856565f03e145b2996d1bb5f9cd64c0532 /glcddrivers/t6963c.h | |
download | graphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.gz graphlcd-base-10ab31fa86dbf9875b5f6baa6ac59fefaaf86be3.tar.bz2 |
initial git upload, based on graphlcd-base-0.1.5
Diffstat (limited to 'glcddrivers/t6963c.h')
-rw-r--r-- | glcddrivers/t6963c.h | 76 |
1 files changed, 76 insertions, 0 deletions
diff --git a/glcddrivers/t6963c.h b/glcddrivers/t6963c.h new file mode 100644 index 0000000..88be16b --- /dev/null +++ b/glcddrivers/t6963c.h @@ -0,0 +1,76 @@ +/* + * GraphLCD driver library + * + * t6963c.h - T6963C driver class + * + * low level routines based on lcdproc 0.5 driver, (c) 2001 Manuel Stahl + * + * This file is released under the GNU General Public License. Refer + * to the COPYING file distributed with this package. + * + * (c) 2003, 2004 Andreas Regel <andreas.regel AT powarman.de> + */ + +#ifndef _GLCDDRIVERS_T6963C_H_ +#define _GLCDDRIVERS_T6963C_H_ + +#include "driver.h" + +namespace GLCD +{ + +class cDriverConfig; +class cParallelPort; + +class cDriverT6963C : public cDriver +{ +private: + cParallelPort * port; + unsigned char ** newLCD; // wanted state + unsigned char ** oldLCD; // current state + cDriverConfig * config; + cDriverConfig * oldConfig; + int refreshCounter; + int bidirectLPT; + int displayMode; + bool useAutoMode; + bool useStatusCheck; + + int serial; + int FS; + int WRHI; + int WRLO; + int RDHI; + int RDLO; + int CEHI; + int CELO; + int CDHI; + int CDLO; + bool autoWrite; + + void T6963CSetControl(unsigned char flags); + void T6963CDSPReady(); + void T6963CData(unsigned char data); + void T6963CCommand(unsigned char cmd); + void T6963CCommandByte(unsigned char cmd, unsigned char data); + void T6963CCommand2Bytes(unsigned char cmd, unsigned char data1, unsigned char data2); + void T6963CCommandWord(unsigned char cmd, unsigned short data); + void T6963CDisplayMode(unsigned char mode, bool enable); + + int CheckSetup(); + +public: + cDriverT6963C(cDriverConfig * config); + virtual ~cDriverT6963C(); + + 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 |