• Main Page
  • Related Pages
  • Namespaces
  • Data Structures
  • Files
  • File List
  • Globals

sw-host/tty.h (r4864/r225)

Go to the documentation of this file.
00001 #ifndef TTY_H
00002 #define TTY_H
00003 
00004 #undef linux //to use with gcc crosscompile
00005 
00006 // TTY init/exit functions
00007 int tty_init();
00008 int tty_exit();
00009 
00010 // Basic I/O functions
00011 int tty_getchar();
00012 void tty_print(char *buf);
00013 void tty_putchar(int c);
00014 
00015 // Advanced input functions
00016 int tty_get_key();
00017 char *tty_get_string(char *s, int size);
00018 
00019 enum key_type {
00020   KEY_CTRL_A = 1, KEY_CTRL_B, KEY_CTRL_C, KEY_CTRL_D, KEY_CTRL_E, KEY_CTRL_F,
00021   KEY_CTRL_G, KEY_CTRL_H, KEY_CTRL_I, KEY_CTRL_J, KEY_CTRL_K, KEY_CTRL_L,
00022   KEY_CTRL_M, KEY_CTRL_N, KEY_CTRL_O, KEY_CTRL_P, KEY_CTRL_Q, KEY_CTRL_R,
00023   KEY_CTRL_S, KEY_CTRL_T, KEY_CTRL_U, KEY_CTRL_V, KEY_CTRL_W, KEY_CTRL_X,
00024   KEY_CTRL_Y, KEY_CTRL_Z,
00025   KEY_UP = (1 << 8) + 'A', KEY_DOWN, KEY_RIGHT, KEY_LEFT,
00026 #ifdef linux
00027   KEY_HOME = (1 << 8) + '1', KEY_INS, KEY_DEL, KEY_END, KEY_PGUP, KEY_PGDOWN,
00028 #else
00029   KEY_INS = (1 << 8) + '1', KEY_HOME, KEY_PGUP, KEY_DEL, KEY_END, KEY_PGDOWN,
00030 #endif
00031   KEY_F1 = (1 << 16) + ('1' << 8) + '1', KEY_F2, KEY_F3, KEY_F4,
00032   KEY_F5, KEY_F5_, KEY_F6, KEY_F7, KEY_F8,
00033   KEY_F9 = (1 << 16) + ('2' << 8) + '0', KEY_F10, KEY_F10_, KEY_F11, KEY_F12
00034 };
00035 
00036 // Advanced input with command history
00037 #define HISTSIZE 20
00038 #define CMDLENGTH 80
00039 
00040 char *tty_get_command();//char *prompt);
00041 
00042 // Helper functions
00043 int x_strlen(const char *s);
00044 char *x_strcpy(char *dest, const char *src);
00045 
00046 #endif

Generated on Tue Dec 10 2013 04:52:24 for ROCsoft by  doxygen 1.7.1