Here are the key mappings for the emulated calculator:
Code: static keyprog_t keygrps[256] = {
{KEY_PRGM_SHIFT, 6, 5}, // 2nd
{KEY_PRGM_OPTN, 6, 6}, // Mode
{KEY_PRGM_DEL, 6, 7}, // Delete
{KEY_PRGM_ALPHA, 5, 7}, // Alpha
{KEY_PRGM_XTHETAT, 4, 7}, // Default Var
{KEY_PRGM_F6, 3, 7}, // Stat
{KEY_PRGM_FRAC, 5, 6}, // Math
{KEY_PRGM_FRAC2DEC, 4, 6}, // Apps
{KEY_PRGM_EXIT, 3, 6}, // Prgm
{KEY_PRGM_VARS, 2, 6}, // Vars
{KEY_PRGM_ACON, 1, 6}, // Clear
{KEY_PRGM_EXP, 5, 5}, // Inverse
{KEY_PRGM_SIN, 4, 5}, // Sin
{KEY_PRGM_COS, 3, 5}, // Cos
{KEY_PRGM_TAN, 2, 5}, // Tan
{KEY_PRGM_CARET, 1, 5}, // Power
{KEY_PRGM_XSQUARED, 5, 4}, // Square
{KEY_PRGM_COMMA, 4, 4}, // Comma
{KEY_PRGM_LPAREN, 3, 4}, // (
{KEY_PRGM_RPAREN, 2, 4}, // )
{KEY_PRGM_DIVIDE, 1, 4}, // Divide
{KEY_PRGM_LOG, 5, 3}, // Log
{KEY_PRGM_7, 4, 3}, // 7
{KEY_PRGM_8, 3, 3}, // 8
{KEY_PRGM_9, 2, 3}, // 9
{KEY_PRGM_MULTIPLY, 1, 3}, // Multiply
{KEY_PRGM_LN, 5, 2}, // Ln
{KEY_PRGM_4, 4, 2}, // 4
{KEY_PRGM_5, 3, 2}, // 5
{KEY_PRGM_6, 2, 2}, // 6
{KEY_PRGM_SUBTRACT, 1, 2}, // Subtract
{KEY_PRGM_ARROW, 5, 1}, // Sto
{KEY_PRGM_1, 4, 1}, // 1
{KEY_PRGM_2, 3, 1}, // 2
{KEY_PRGM_3, 2, 1}, // 3
{KEY_PRGM_ADD, 1, 1}, // Add
{KEY_PRGM_MENU, 5, 0}, // Power On/Off, This is a special key that will be used to bring up the emulator menu/handle exiting the add-in
{KEY_PRGM_0, 4, 0}, // 0
{KEY_PRGM_PERIOD, 3, 0}, // Decimal Point
{KEY_PRGM_NEGATE, 2, 0}, // Negate
{KEY_PRGM_RETURN, 1, 0}, // Enter
{KEY_PRGM_F1, 6, 4}, // Y=
{KEY_PRGM_F2, 6, 3}, // Window
{KEY_PRGM_F3, 6, 2}, // Zoom
{KEY_PRGM_F4, 6, 1}, // Trace
{KEY_PRGM_F5, 6, 0}, // Graph
{KEY_PRGM_UP, 0, 3}, // Up Arrow
{KEY_PRGM_DOWN, 0, 0}, // Down Arrow
{KEY_PRGM_LEFT, 0, 1}, // Left Arrow
{KEY_PRGM_RIGHT, 0, 2} // Right Arrow
};
The emulated MATH, APPS(MATRIX), STAT, PRGM, and the inverse key are mapped to keys that have nothing to do with those functions, because the Prizm doesn't have any equivalents.