home *** CD-ROM | disk | FTP | other *** search
- /*************************************************************************
- *** cmdmap.c (JJB TEMPLAR) ***
- *** Date begun: 26/8/89. ***
- *** Last modified: 26/8/89. ***
- *************************************************************************/
-
- #include <exec/types.h>
-
- #include "cmd.h"
- #include "gadg.h"
-
- struct cmdmap uraw[] = { /* SHIFT and RAWKEY */
- {0x10,C_QUIT}, /* Q */
- {0x32,C_QUIT}, /* X */
- {0x45,C_QUIT}, /* ESC */
- {0x13,C_SEARCH_B}, /* R */
- {0x38,C_TOP}, /* < */
- {0x14,C_TOP}, /* T */
- {0x39,C_BOTTOM}, /* > */
- {0x35,C_BOTTOM}, /* B */
- {0x4c,C_BACK_PAGE}, /* UP */
- {0x41,C_BACK_PAGE}, /* <BS> */
- {0x4d,C_FORW_PAGE}, /* DOWN */
- {0x40,C_FORW_PAGE}, /* <SPC> */
- {0x4e,C_SRIGHT}, /* RIGHT */
- {0x4f,C_SLEFT}, /* LEFT */
- {0x3a,C_SEARCH_BNC}, /* ? */
- {0x25,C_ABOUT}, /* H */
- {0x5f,C_ABOUT}, /* <HLP> */
- {0x21,C_SEARCH_F}, /* S */
- {0x36,C_FORW_FILE}, /* N */
- {0x19,C_BACK_FILE}, /* P */
- {0x34,C_VERSION}, /* V */
- {0x44,C_FORW_LINE}, /* CR */
- {0x37,C_SET_MARK}, /* M */
- {0x24,C_GO_MARK}, /* G */
- {0x05,C_PERCENT}, /* % */
- {0x17,C_ICONIFY}, /* I */
- {0x50,C_PRINT}, /* F1 */
- {0x0c,C_MODE_ON}, /* + */
- {0x5e,C_MODE_ON}, /* + NK */
- {0x4a,C_MODE_OFF}, /* - NK */
- {0x33,C_NEWCLI}, /* C */
- {0x5d,C_NEWCLI}, /* * NK */
- {0x12,C_EDITOR}, /* E */
- {0x20,C_ADDFILE}, /* A */
- {0xff,C_UNKNOWN} /* Terminator element. MUST be last */
- };
-
- struct cmdmap lraw[] = { /* Not SHIFT and RAWKEY */
- {0x10,C_QUIT}, /* q */
- {0x32,C_QUIT}, /* x */
- {0x45,C_QUIT}, /* esc */
- {0x14,C_TOP}, /* t */
- {0x35,C_BOTTOM}, /* b */
- {0x13,C_SEARCH_B}, /* r */
- {0x38,C_SEARCH_B}, /* , */
- {0x3a,C_SEARCH_FNC}, /* / */
- {0x21,C_SEARCH_F}, /* s */
- {0x39,C_SEARCH_F}, /* . */
- {0x41,C_BACK_PAGE}, /* <bsp> */
- {0x40,C_FORW_PAGE}, /* <spc> */
- {0x4c,C_BACK_LINE}, /* up */
- {0x44,C_FORW_LINE}, /* CR */
- {0x4d,C_FORW_LINE}, /* down */
- {0x4e,C_RIGHT}, /* right */
- {0x4f,C_LEFT}, /* left */
- {0x25,C_HELP}, /* h */
- {0x5f,C_HELP}, /* help */
- {0x36,C_FORW_FILE}, /* n */
- {0x19,C_BACK_FILE}, /* p */
- {0x34,C_VERSION}, /* v */
- {0x0c,C_INFO}, /* = */
- {0x37,C_SET_MARK}, /* m */
- {0x24,C_GO_MARK}, /* g */
- {0x00,C_GO_MARK}, /* ` */
- {0x17,C_ICONIFY}, /* i */
- {0x50,C_PRINT}, /* f1 */
- {0x5e,C_MODE_ON}, /* + NK */
- {0x0b,C_MODE_OFF}, /* - */
- {0x4a,C_MODE_OFF}, /* - NK */
- {0x33,C_NEWCLI}, /* c */
- {0x5d,C_NEWCLI}, /* * NK */
- {0x12,C_EDITOR}, /* e */
- {0x20,C_ADDFILE}, /* a */
- {0xff,C_UNKNOWN} /* Terminator element. MUST be last */
- };
-
- struct cmdmap lgad[] = {
- {G_UP,C_BACK_LINE},
- {G_DOWN,C_FORW_LINE},
- {G_LEFT,C_LEFT},
- {G_RIGHT,C_RIGHT},
- {G_HELP,C_HELP},
- {G_BOOM,C_BOOM},
- {G_SEARCH,C_SEARCH_FNC},
- {G_MARK,C_SET_MARK},
- {G_MODE,C_MODE_ON},
- {G_SCROLL,C_SCROLL},
-
- {G_PERCENT,C_PERCENT},
- {G_VERSION,C_VERSION},
- {G_REPAINT,C_REPAINT},
- {G_PRINT,C_PRINT},
- {G_TOP,C_TOP},
- {G_BOTTOM,C_BOTTOM},
- {G_PREV,C_BACK_FILE},
- {G_FILE,C_INFO},
- {G_NEXT,C_FORW_FILE},
- {G_HSCROLL,C_HSCROLL},
- {0xff,C_UNKNOWN}
- };
-
- struct cmdmap rgad[] = {
- {G_UP,C_BACK_PAGE},
- {G_DOWN,C_FORW_PAGE},
- {G_LEFT,C_SLEFT},
- {G_RIGHT,C_SRIGHT},
- {G_HELP,C_ABOUT},
- {G_SEARCH,C_SEARCH_BNC},
- {G_MARK,C_GO_MARK},
- {G_MODE,C_MODE_OFF},
- {G_BOOM,C_ICONIFY},
- {0xff,C_UNKNOWN}
- };
-
- int mapcmd(code,cmd) /*==============================================*/
- register UBYTE code;
- register struct cmdmap *cmd;
- {
- while (cmd->command != C_UNKNOWN) {
- if (code == (UWORD)cmd->code) break;
- cmd++;
- }
- return((int)(cmd->command));
- }
-