From 1d09786fa445371c4b4898a8c35be1257e56d89d Mon Sep 17 00:00:00 2001 From: trsaunders Date: Wed, 27 Jun 2012 16:42:09 +0100 Subject: [PATCH] more safety checks --- drivers/lcd/ssd1289_lld.c | 19 ++++++------------- 1 file changed, 6 insertions(+), 13 deletions(-) diff --git a/drivers/lcd/ssd1289_lld.c b/drivers/lcd/ssd1289_lld.c index 4c9c4009..ffcbb167 100644 --- a/drivers/lcd/ssd1289_lld.c +++ b/drivers/lcd/ssd1289_lld.c @@ -188,22 +188,15 @@ void lld_lcdSetCursor(uint16_t x, uint16_t y) { /* Reg 0x004E is an 8 bit value * Reg 0x004F is 8 bit */ - /* - * if(PORTRAIT) { + + if(PORTRAIT) { lld_lcdWriteReg(0x004e, x & 0x00FF); lld_lcdWriteReg(0x004f, y & 0x01FF); } else if(LANDSCAPE) { lld_lcdWriteReg(0x004e, y & 0x00FF); lld_lcdWriteReg(0x004f, x & 0x01FF); } - */ - if(PORTRAIT) { - lld_lcdWriteReg(0x004e, x); - lld_lcdWriteReg(0x004f, y); - } else if(LANDSCAPE) { - lld_lcdWriteReg(0x004e, y); - lld_lcdWriteReg(0x004f, x); - } + } void lld_lcdSetOrientation(uint8_t newOrientation) { @@ -251,9 +244,9 @@ void lld_lcdSetWindow(uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1) { switch(lcdGetOrientation()) { case portrait: - lld_lcdWriteReg(0x44, (((x1-1) << 8) ) | (x0 )); - lld_lcdWriteReg(0x45, y0); - lld_lcdWriteReg(0x46, (y1-1)); + lld_lcdWriteReg(0x44, (((x1-1) << 8) & 0xFF00 ) | (x0 & 0x00FF)); + lld_lcdWriteReg(0x45, y0 & 0x01FF); + lld_lcdWriteReg(0x46, (y1-1) & 0x01FF); break; case landscape: lld_lcdWriteReg(0x44, (((y1-1) << 8) & 0xFF00) | (y1 & 0x00FF));