summaryrefslogtreecommitdiff
path: root/usr/src/cmd/loadkeys/dumpkeys.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/loadkeys/dumpkeys.c')
-rw-r--r--usr/src/cmd/loadkeys/dumpkeys.c58
1 files changed, 32 insertions, 26 deletions
diff --git a/usr/src/cmd/loadkeys/dumpkeys.c b/usr/src/cmd/loadkeys/dumpkeys.c
index b200d5c73a..e16f319a2b 100644
--- a/usr/src/cmd/loadkeys/dumpkeys.c
+++ b/usr/src/cmd/loadkeys/dumpkeys.c
@@ -19,9 +19,6 @@
*
* CDDL HEADER END
*/
-#ifndef lint
-#ident "%Z%%M% %I% %E% SMI"
-#endif
/*
* Copyright (c) 1988 by Sun Microsystems, Inc.
@@ -66,9 +63,7 @@ static void printchar(int character, int delim);
/*ARGSUSED*/
int
-main(argc, argv)
- int argc;
- char **argv;
+main(int argc, char **argv)
{
register int kbdfd;
register int keystation;
@@ -242,6 +237,9 @@ static char *funnies[] = {
"nop",
"oops",
"hole",
+ "", /* not used */
+ "", /* not used */
+ "", /* not used */
"reset",
"error",
"idle",
@@ -258,6 +256,15 @@ static char *fa_class[] = {
"fa_cedilla",
"fa_acute",
"fa_grave",
+ "fa_macron",
+ "fa_breve",
+ "fa_dot",
+ "fa_slash",
+ "fa_ring",
+ "fa_apostrophe",
+ "fa_dacute",
+ "fa_ogonek",
+ "fa_caron"
};
#define NFA_CLASS (sizeof (fa_class) / sizeof (fa_class[0]))
@@ -311,15 +318,14 @@ static char *padkeys[] = {
#define NPADKEYS (sizeof (padkeys) / sizeof (padkeys[0]))
static void
-printentry(kio)
- register struct kiockeymap *kio;
+printentry(struct kiockeymap *kio)
{
- register int entry = (kio->kio_entry & 0x1F);
- register int fkeyset;
- register int i;
- register int c;
+ int entry = (kio->kio_entry & 0x1F);
+ int fkeyset;
+ int i;
+ int c;
- switch (kio->kio_entry >> 8) {
+ switch (KEYFLAGS(kio->kio_entry)) {
case 0x0:
if (kio->kio_entry == '"')
@@ -330,37 +336,37 @@ printentry(kio)
printchar((int)kio->kio_entry, '\'');
break;
- case SHIFTKEYS >> 8:
+ case SHIFTKEYS:
if (entry < NSHIFTKEYS)
(void) printf("shiftkeys+%s", shiftkeys[entry]);
else
(void) printf("%#4x", kio->kio_entry);
break;
- case BUCKYBITS >> 8:
+ case BUCKYBITS:
if (entry < NBUCKYBITS)
(void) printf("buckybits+%s", buckybits[entry]);
else
(void) printf("%#4x", kio->kio_entry);
break;
- case FUNNY >> 8:
+ case FUNNY:
if (entry < NFUNNIES)
(void) printf("%s", funnies[entry]);
else
(void) printf("%#4x", kio->kio_entry);
break;
- case FA_CLASS >> 8:
+ case FA_CLASS:
if (entry < NFA_CLASS)
(void) printf("%s", fa_class[entry]);
else
(void) printf("%#4x", kio->kio_entry);
break;
- case STRING >> 8:
+ case STRING:
if (entry < NBUILTIN_STRINGS && strncmp(kio->kio_string,
- builtin_strings[entry].string, KTAB_STRLEN) == 0)
+ builtin_strings[entry].string, KTAB_STRLEN) == 0)
(void) printf("string+%s", builtin_strings[entry].name);
else {
(void) printf("\"");
@@ -372,16 +378,16 @@ printentry(kio)
}
break;
- case FUNCKEYS >> 8:
+ case FUNCKEYS:
fkeyset = (int)(kio->kio_entry & 0xF0) >> 4;
if (fkeyset < NFKEYSETS)
(void) printf("%s(%d)", fkeysets[fkeyset],
- (entry&0x0F) + 1);
+ (entry & 0x0F) + 1);
else
(void) printf("%#4x", kio->kio_entry);
break;
- case PADKEYS >> 8:
+ case PADKEYS:
if (entry < NPADKEYS)
(void) printf("%s", padkeys[entry]);
else
@@ -395,9 +401,7 @@ printentry(kio)
}
static void
-printchar(character, delim)
- int character;
- int delim;
+printchar(int character, int delim)
{
switch (character) {
@@ -433,8 +437,10 @@ printchar(character, delim)
} else {
if (character < 040)
(void) printf("^%c", character + 0100);
- else
+ else if (character <= 0xff)
(void) printf("'\\%.3o'", character);
+ else
+ (void) printf("%#4x", character);
}
break;
}