git.cweiske.de
/
enigma2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
experiments
[enigma2.git]
/
lib
/
gdi
/
lcd.cpp
diff --git
a/lib/gdi/lcd.cpp
b/lib/gdi/lcd.cpp
index 3911719466e7e1c6b5b37db45585db5161867b5a..0908d890994bc896091bf7844898ff1ce1c27ed0 100644
(file)
--- a/
lib/gdi/lcd.cpp
+++ b/
lib/gdi/lcd.cpp
@@
-49,7
+49,9
@@
eDBoxLCD::eDBoxLCD(): eLCD(eSize(132, 64))
lcdfd = open("/dev/dbox/oled0", O_RDWR);
if (lcdfd < 0)
{
lcdfd = open("/dev/dbox/oled0", O_RDWR);
if (lcdfd < 0)
{
- FILE *f=fopen("/proc/stb/fp/oled_brightness", "w");
+ FILE *f=fopen("/proc/stb/lcd/oled_brightness", "w");
+ if (!f)
+ f = fopen("/proc/stb/fp/oled_brightness", "w");
if (f)
{
is_oled = 2;
if (f)
{
is_oled = 2;
@@
-102,11
+104,13
@@
int eDBoxLCD::setLCDContrast(int contrast)
int eDBoxLCD::setLCDBrightness(int brightness)
{
eDebug("setLCDBrightness %d", brightness);
int eDBoxLCD::setLCDBrightness(int brightness)
{
eDebug("setLCDBrightness %d", brightness);
- FILE *f=fopen("/proc/stb/fp/oled_brightness", "w");
+ FILE *f=fopen("/proc/stb/lcd/oled_brightness", "w");
+ if (!f)
+ f = fopen("/proc/stb/fp/oled_brightness", "w");
if (f)
{
if (fprintf(f, "%d", brightness) == 0)
if (f)
{
if (fprintf(f, "%d", brightness) == 0)
- eDebug("write /proc/stb/
fp
/oled_brightness failed!! (%m)");
+ eDebug("write /proc/stb/
lcd
/oled_brightness failed!! (%m)");
fclose(f);
}
else
fclose(f);
}
else
@@
-166,8
+170,14
@@
void eDBoxLCD::update()
memset(raw, 0, 64*64);
for (y=0; y<64; y++)
{
memset(raw, 0, 64*64);
for (y=0; y<64; y++)
{
+ int pix=0;
for (x=0; x<128 / 2; x++)
for (x=0; x<128 / 2; x++)
- raw[y*64+x] = (_buffer[y*132 + x * 2 + 2] & 0xF0) |(_buffer[y*132 + x * 2 + 1 + 2] >> 4);
+ {
+ pix = (_buffer[y*132 + x * 2 + 2] & 0xF0) |(_buffer[y*132 + x * 2 + 1 + 2] >> 4);
+ if (inverted)
+ pix = 0xFF - pix;
+ raw[y*64+x] = pix;
+ }
}
if (lcdfd >= 0)
write(lcdfd, raw, 64*64);
}
if (lcdfd >= 0)
write(lcdfd, raw, 64*64);