1 /* 2 * libtilemcore - Graphing calculator emulation library 3 * 4 * Copyright (C) 2001 Solignac Julien 5 * Copyright (C) 2004-2009 Benjamin Moody 6 * 7 * This library is free software; you can redistribute it and/or 8 * modify it under the terms of the GNU Lesser General Public License 9 * as published by the Free Software Foundation; either version 2.1 of 10 * the License, or (at your option) any later version. 11 * 12 * This library is distributed in the hope that it will be useful, but 13 * WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 * Lesser General Public License for more details. 16 * 17 * You should have received a copy of the GNU Lesser General Public 18 * License along with this library; if not, see 19 * <http://www.gnu.org/licenses/>. 20 */ 21 22 #ifdef HAVE_CONFIG_H 23 # include <config.h> 24 #endif 25 26 #include <stdio.h> 27 #include <tilem.h> 28 29 #include "x1.h" 30 31 static const char* hwregnames[NUM_HW_REGS] = HW_REG_NAMES; 32 33 static const char* hwtimernames[NUM_HW_TIMERS] = HW_TIMER_NAMES; 34 35 static const char* keynames[64] = { 36 "Down", "Left", "Right", "Up", 0, 0, 0, 0, 37 "Enter", "Add", "Sub", "Mul", "Div", "Power", "Clear", 0, 38 "Chs", "3", "6", "9", "RParen", "Tan", "Vars", 0, 39 "DecPnt", "2", "5", "8", "LParen", "Cos", "Prgm", "Mode", 40 "0", "1", "4", "7", "EE", "Sin", "Matrix", "Graphvar", 41 "On", "Store", "Ln", "Log", "Square", "Recip", "Math", "Alpha", 42 "Graph", "Trace", "Zoom", "Range", "YEqu", "2nd", "Ins", "Del", 43 0, 0, 0, 0, 0, 0, 0, 0}; 44 45 const TilemHardware hardware_ti81 = { 46 '1', "ti81", "TI-81", TILEM_CALC_HAS_T6A04, 47 96, 64, 0x8000, 0x2000, 15 * 64, 0x40, 48 0, NULL, 0, 49 NUM_HW_REGS, hwregnames, 50 NUM_HW_TIMERS, hwtimernames, 51 keynames, 52 x1_reset, NULL, 53 x1_z80_in, x1_z80_out, 54 x1_z80_wrmem, x1_z80_rdmem, x1_z80_rdmem, NULL, 55 x1_z80_ptimer, x1_get_lcd, 56 x1_mem_ltop, x1_mem_ptol }; 57