Removed the command-line support, left the config file stuff only.
This commit is contained in:
+1
-125
@@ -63,7 +63,7 @@
|
|||||||
#define DEFAULT_SIZE "20x4"
|
#define DEFAULT_SIZE "20x4"
|
||||||
#define DEFAULT_BACKLIGHT 1
|
#define DEFAULT_BACKLIGHT 1
|
||||||
#define DEFAULT_TYPE "lcd"
|
#define DEFAULT_TYPE "lcd"
|
||||||
#define CONFIG_FILE
|
/* #define CONFIG_FILE Non config file code removed by David GLAUDE */
|
||||||
/* Above 5 lines added by Joris :( */
|
/* Above 5 lines added by Joris :( */
|
||||||
|
|
||||||
#define IS_LCD_DISPLAY (MtxOrb_type == MTXORB_LCD)
|
#define IS_LCD_DISPLAY (MtxOrb_type == MTXORB_LCD)
|
||||||
@@ -168,7 +168,6 @@ static int cellwidth = LCD_DEFAULT_CELLWIDTH;
|
|||||||
static int cellheight = LCD_DEFAULT_CELLHEIGHT;
|
static int cellheight = LCD_DEFAULT_CELLHEIGHT;
|
||||||
static int contrast = DEFAULT_CONTRAST;
|
static int contrast = DEFAULT_CONTRAST;
|
||||||
|
|
||||||
#ifdef CONFIG_FILE
|
|
||||||
static int backlightenabled = DEFAULT_BACKLIGHT;
|
static int backlightenabled = DEFAULT_BACKLIGHT;
|
||||||
|
|
||||||
static int backlight_state = -1;
|
static int backlight_state = -1;
|
||||||
@@ -179,7 +178,6 @@ static char back_key = MTXORB_DEFAULT_BACK_KEY;
|
|||||||
static char forward_key = MTXORB_DEFAULT_FORWARD_KEY;
|
static char forward_key = MTXORB_DEFAULT_FORWARD_KEY;
|
||||||
static char main_menu_key = MTXORB_DEFAULT_MAIN_MENU_KEY;
|
static char main_menu_key = MTXORB_DEFAULT_MAIN_MENU_KEY;
|
||||||
static int keypad_test_mode = 0;
|
static int keypad_test_mode = 0;
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Vars for the server core */
|
/* Vars for the server core */
|
||||||
MODULE_EXPORT char *api_version = API_VERSION;
|
MODULE_EXPORT char *api_version = API_VERSION;
|
||||||
@@ -246,18 +244,6 @@ MtxOrb_parse_speed (Driver *drvthis, char *arg) {
|
|||||||
return speed;
|
return speed;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
|
||||||
MtxOrb_usage (void) {
|
|
||||||
printf ("LCDproc Matrix-Orbital LCD driver\n"
|
|
||||||
"\t-d\t\tSelect the output device to use [/dev/lcd]\n"
|
|
||||||
"\t-t\t\tSelect the LCD type (size) [20x4]\n"
|
|
||||||
/* "\t-b\t--backlight\tSelect the backlight state [on]\n" */
|
|
||||||
"\t-c\t\tSet the initial contrast [140]\n"
|
|
||||||
"\t-s\t\tSet the communication speed [19200]\n"
|
|
||||||
"\t-h\t\tShow this help information\n"
|
|
||||||
"\t-b\t\tdisplay type: lcd, lkd, vfd, vkd\n");
|
|
||||||
}
|
|
||||||
|
|
||||||
int
|
int
|
||||||
MtxOrb_parse_contrast (Driver *drvthis, char * str) {
|
MtxOrb_parse_contrast (Driver *drvthis, char * str) {
|
||||||
int contrast;
|
int contrast;
|
||||||
@@ -271,7 +257,6 @@ MtxOrb_parse_contrast (Driver *drvthis, char * str) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
#ifdef CONFIG_FILE
|
|
||||||
/* Parse one key from the configfile */
|
/* Parse one key from the configfile */
|
||||||
static char MtxOrb_parse_keypad_setting (Driver *drvthis, char * keyname, char default_value)
|
static char MtxOrb_parse_keypad_setting (Driver *drvthis, char * keyname, char default_value)
|
||||||
{
|
{
|
||||||
@@ -289,7 +274,6 @@ static char MtxOrb_parse_keypad_setting (Driver *drvthis, char * keyname, char d
|
|||||||
}
|
}
|
||||||
return return_val;
|
return return_val;
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
|
||||||
/* TODO: Get the frame buffers working right */
|
/* TODO: Get the frame buffers working right */
|
||||||
|
|
||||||
@@ -300,7 +284,6 @@ static char MtxOrb_parse_keypad_setting (Driver *drvthis, char * keyname, char d
|
|||||||
MODULE_EXPORT int
|
MODULE_EXPORT int
|
||||||
MtxOrb_init (Driver *drvthis, char *args)
|
MtxOrb_init (Driver *drvthis, char *args)
|
||||||
{
|
{
|
||||||
#ifdef CONFIG_FILE
|
|
||||||
/* Start of command line parsing*/
|
/* Start of command line parsing*/
|
||||||
|
|
||||||
struct termios portset;
|
struct termios portset;
|
||||||
@@ -430,114 +413,7 @@ MtxOrb_init (Driver *drvthis, char *args)
|
|||||||
main_menu_key = MtxOrb_parse_keypad_setting (drvthis, "MainMenuKey", MTXORB_DEFAULT_MAIN_MENU_KEY);
|
main_menu_key = MtxOrb_parse_keypad_setting (drvthis, "MainMenuKey", MTXORB_DEFAULT_MAIN_MENU_KEY);
|
||||||
report (RPT_DEBUG, "MtxOrb: Using \"%c\" as main_menu_key", main_menu_key);
|
report (RPT_DEBUG, "MtxOrb: Using \"%c\" as main_menu_key", main_menu_key);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* End of config file parsing*/
|
/* End of config file parsing*/
|
||||||
#else
|
|
||||||
/* Start of command line parsing*/
|
|
||||||
|
|
||||||
char *argv[64]; /* Notice: 64 arguments - overflows? */
|
|
||||||
int argc;
|
|
||||||
struct termios portset;
|
|
||||||
int i;
|
|
||||||
/* int tmp; */
|
|
||||||
|
|
||||||
int contrast = DEFAULT_CONTRAST;
|
|
||||||
char device[256] = DEFAULT_DEVICE;
|
|
||||||
int speed = DEFAULT_SPEED;
|
|
||||||
/* char c; */
|
|
||||||
|
|
||||||
MtxOrb_type = MTXORB_LKD; /* Assume it's an LCD w/keypad */
|
|
||||||
|
|
||||||
/* debug("MtxOrb_init: Args(all): %s\n", args); */
|
|
||||||
|
|
||||||
argc = get_args (argv, args, 64);
|
|
||||||
|
|
||||||
/*
|
|
||||||
for(i=0; i<argc; i++)
|
|
||||||
{
|
|
||||||
printf("Arg(%i): %s\n", i, argv[i]);
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
for (i = 0; i < argc; i++) {
|
|
||||||
char *p;
|
|
||||||
|
|
||||||
p = argv[i];
|
|
||||||
/* printf("Arg(%i): %s\n", i, argv[i]); */
|
|
||||||
|
|
||||||
if (*p == '-') {
|
|
||||||
|
|
||||||
p++;
|
|
||||||
switch (*p) {
|
|
||||||
case 'd':
|
|
||||||
if (i + 1 > argc) {
|
|
||||||
report (RPT_ERR, "MtxOrb_init: %s requires an argument\n", argv[i]);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
strcpy (device, argv[++i]);
|
|
||||||
break;
|
|
||||||
case 'c':
|
|
||||||
if (i + 1 > argc) {
|
|
||||||
report (RPT_ERR, "MtxOrb_init: %s requires an argument\n", argv[i]);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
contrast = MtxOrb_parse_contrast (drvthis, argv[++i]);
|
|
||||||
break;
|
|
||||||
case 's':
|
|
||||||
if (i + 1 > argc) {
|
|
||||||
report (RPT_ERR, "MtxOrb_init: %s requires an argument\n", argv[i]);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
speed = MtxOrb_parse_speed (drvthis, argv[++i]);
|
|
||||||
break;
|
|
||||||
case 'h':
|
|
||||||
MtxOrb_usage();
|
|
||||||
return -1;
|
|
||||||
break;
|
|
||||||
case 't':
|
|
||||||
if (i + 1 > argc) {
|
|
||||||
report (RPT_ERR, "MtxOrb_init: %s requires an argument\n", argv[i]);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
p = argv[i];
|
|
||||||
|
|
||||||
if (isdigit((unsigned int) *p) && isdigit((unsigned int) *(p+1))) {
|
|
||||||
int wid, hgt;
|
|
||||||
|
|
||||||
wid = ((*p - '0') * 10) + (*(p+1) - '0');
|
|
||||||
p += 2;
|
|
||||||
|
|
||||||
if (*p != 'x')
|
|
||||||
break;
|
|
||||||
|
|
||||||
p++;
|
|
||||||
if (!isdigit((unsigned int) *p))
|
|
||||||
break;
|
|
||||||
|
|
||||||
hgt = (*p - '0');
|
|
||||||
|
|
||||||
width = wid;
|
|
||||||
height = hgt;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
case 'b':
|
|
||||||
if (i + 1 > argc) {
|
|
||||||
report (RPT_ERR, "MtxOrb_init: %s requires an argument\n", argv[i]);
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
i++;
|
|
||||||
MtxOrb_type = MtxOrb_parse_type(drvthis, argv[i]);
|
|
||||||
break;
|
|
||||||
default:
|
|
||||||
printf ("Invalid parameter: %s\n", argv[i]);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* End of command line parsing */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/* Set up io port correctly, and open it... */
|
/* Set up io port correctly, and open it... */
|
||||||
fd = open (device, O_RDWR | O_NOCTTY | O_NDELAY);
|
fd = open (device, O_RDWR | O_NOCTTY | O_NDELAY);
|
||||||
|
|||||||
Reference in New Issue
Block a user