Fix handling of custom characters. ccmode was not reset on screen clear().
Remove unused ccmode from serialPOS.
This commit is contained in:
@@ -8,6 +8,7 @@ Key:
|
|||||||
v.0.5dev (ongoing development)
|
v.0.5dev (ongoing development)
|
||||||
+ sed1330 driver: Add support for HG25504 (L. Lagendijk)
|
+ sed1330 driver: Add support for HG25504 (L. Lagendijk)
|
||||||
* Build system: Fix xosd detection
|
* Build system: Fix xosd detection
|
||||||
|
* Reset ccmode on screen clear for NoritakeVFD, tyan driver
|
||||||
|
|
||||||
v0.5.4
|
v0.5.4
|
||||||
* Update driver includes and LDFLAGS (fixed glk and bayrad binding error)
|
* Update driver includes and LDFLAGS (fixed glk and bayrad binding error)
|
||||||
|
|||||||
@@ -387,6 +387,7 @@ NoritakeVFD_clear (Driver *drvthis)
|
|||||||
PrivateData *p = drvthis->private_data;
|
PrivateData *p = drvthis->private_data;
|
||||||
|
|
||||||
memset(p->framebuf, ' ', p->width * p->height);
|
memset(p->framebuf, ' ', p->width * p->height);
|
||||||
|
p->ccmode = standard;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -132,17 +132,6 @@ typedef enum {
|
|||||||
} AEDEXCommands;
|
} AEDEXCommands;
|
||||||
|
|
||||||
|
|
||||||
typedef enum {
|
|
||||||
standard, /* only char 0 is used for heartbeat */
|
|
||||||
vbar, /* vertical bars */
|
|
||||||
hbar, /* horizontal bars */
|
|
||||||
custom, /* custom settings */
|
|
||||||
bignum, /* big numbers */
|
|
||||||
bigchar /* big characters */
|
|
||||||
} CGmode;
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/** private data for the \c serialPOS driver */
|
/** private data for the \c serialPOS driver */
|
||||||
typedef struct serialPOS_private_data {
|
typedef struct serialPOS_private_data {
|
||||||
int fd; /**< LCD file descriptor */
|
int fd; /**< LCD file descriptor */
|
||||||
@@ -155,9 +144,6 @@ typedef struct serialPOS_private_data {
|
|||||||
unsigned char *framebuf;
|
unsigned char *framebuf;
|
||||||
unsigned char *backingstore;
|
unsigned char *backingstore;
|
||||||
|
|
||||||
/* defineable characters */
|
|
||||||
CGmode ccmode;
|
|
||||||
|
|
||||||
/* feature enable */
|
/* feature enable */
|
||||||
int hardwrap;
|
int hardwrap;
|
||||||
int hardscroll;
|
int hardscroll;
|
||||||
|
|||||||
@@ -307,26 +307,30 @@ tyan_lcdm_get_key (Driver *drvthis)
|
|||||||
switch (key) {
|
switch (key) {
|
||||||
case TYAN_LCDM_KEY_LEFT:
|
case TYAN_LCDM_KEY_LEFT:
|
||||||
return "Left";
|
return "Left";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
case TYAN_LCDM_KEY_UP:
|
case TYAN_LCDM_KEY_UP:
|
||||||
return "Up";
|
return "Up";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
case TYAN_LCDM_KEY_DOWN:
|
case TYAN_LCDM_KEY_DOWN:
|
||||||
return "Down";
|
return "Down";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
case TYAN_LCDM_KEY_RIGHT:
|
case TYAN_LCDM_KEY_RIGHT:
|
||||||
return "Right";
|
return "Right";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
case TYAN_LCDM_KEY_ENTER:
|
case TYAN_LCDM_KEY_ENTER:
|
||||||
return "Enter";
|
return "Enter";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
case TYAN_LCDM_KEY_ESCAPE:
|
case TYAN_LCDM_KEY_ESCAPE:
|
||||||
return "Escape";
|
return "Escape";
|
||||||
break;
|
/* NOTREACHED */
|
||||||
|
case 0xF4:
|
||||||
|
report(RPT_WARNING, "%s: Error while reading key", drvthis->name);
|
||||||
|
return NULL;
|
||||||
|
/* NOTREACHED */
|
||||||
default:
|
default:
|
||||||
report(RPT_INFO, "%s: Untreated key 0x%02X", drvthis->name, key);
|
report(RPT_INFO, "%s: Untreated key 0x%02X", drvthis->name, key);
|
||||||
return NULL;
|
return NULL;
|
||||||
break;
|
/* NOTREACHED */
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -701,6 +705,7 @@ tyan_lcdm_clear (Driver *drvthis)
|
|||||||
PrivateData *p = drvthis->private_data;
|
PrivateData *p = drvthis->private_data;
|
||||||
|
|
||||||
memset(p->framebuf, ' ', p->width * p->height);
|
memset(p->framebuf, ' ', p->width * p->height);
|
||||||
|
p->ccmode = standard;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user