|
TacOS
0.2
|
#include <fs/devfs.h>#include <kfcntl.h>#include <klibc/string.h>#include <klog.h>#include <kmalloc.h>#include <kprocess.h>#include <ksem.h>#include <ksignal.h>#include <scheduler.h>#include <tty.h>
Macros | |
| #define | EOF (-1) |
| #define | I_ECHO(tty) (tty->termios.c_lflag & ECHO) |
| #define | I_CANON(tty) (tty->termios.c_lflag & ICANON) |
| #define | I_IGNCR(tty) (tty->termios.c_iflag & IGNCR) |
| #define | I_ICRNL(tty) (tty->termios.c_iflag & ICRNL) |
| #define | I_INLCR(tty) (tty->termios.c_iflag & INLCR) |
| #define | L_ISIG(tty) (tty->termios.c_lflag & ISIG) |
| #define | L_ECHOE(tty) (tty->termios.c_lflag & ECHOE) |
| #define | L_ECHOCTL(tty) (tty->termios.c_lflag & ECHOCTL) |
| #define | QUIT_CHAR(tty) ((tty)->termios.c_cc[VQUIT]) |
| #define | INTR_CHAR(tty) ((tty)->termios.c_cc[VINTR]) |
| #define | SUSP_CHAR(tty) ((tty)->termios.c_cc[VSUSP]) |
| #define | ERASE_CHAR(tty) ((tty)->termios.c_cc[VERASE]) |
| #define | ERASE_WORD(tty) ((tty)->termios.c_cc[VWERASE]) |
| #define | EOF_CHAR(tty) ((tty)->termios.c_cc[VEOF]) |
| #define | PREV_CHAR_INDEX(tty) ((tty->p_end + MAX_INPUT - 1) % MAX_INPUT) |
| #define | NEXT_CHAR_INDEX(tty) ((tty->p_end + 1) % MAX_INPUT) |
Fonctions | |
| void | tty_init () |
| Initialisation du système de terminaux. | |
| void | tty_insert_flip_char (tty_struct_t *tty, unsigned char c) |
| tty_driver_t * | alloc_tty_driver (int lines) |
| int | tty_register_driver (tty_driver_t *driver) |
Variables | |
| struct termios | tty_std_termios |
Copyright (C) 2010-2014 TacOS developers.
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details at http://www.gnu.org/copyleft/gpl.html
You should have received a copy of the GNU General Public License along with this program; if not, see http://www.gnu.org/licenses.
Gestion des terminaux tty.
| #define EOF_CHAR | ( | tty | ) | ((tty)->termios.c_cc[VEOF]) |
EOF char
| #define ERASE_CHAR | ( | tty | ) | ((tty)->termios.c_cc[VERASE]) |
Erase char
| #define ERASE_WORD | ( | tty | ) | ((tty)->termios.c_cc[VWERASE]) |
Erase char
| #define I_CANON | ( | tty | ) | (tty->termios.c_lflag & ICANON) |
Mode canonique ?
| #define I_ECHO | ( | tty | ) | (tty->termios.c_lflag & ECHO) |
Echo activé ?
| #define I_ICRNL | ( | tty | ) | (tty->termios.c_iflag & ICRNL) |
CR => NL ?
| #define I_IGNCR | ( | tty | ) | (tty->termios.c_iflag & IGNCR) |
Ignore CR ?
| #define I_INLCR | ( | tty | ) | (tty->termios.c_iflag & INLCR) |
NL => CR ?
| #define INTR_CHAR | ( | tty | ) | ((tty)->termios.c_cc[VINTR]) |
Interrupt char
| #define L_ECHOCTL | ( | tty | ) | (tty->termios.c_lflag & ECHOCTL) |
Echo Ctrl ?
| #define L_ECHOE | ( | tty | ) | (tty->termios.c_lflag & ECHOE) |
Echo erase ?
| #define L_ISIG | ( | tty | ) | (tty->termios.c_lflag & ISIG) |
Signals enabled ?
Indice du charactère precedent.
| #define QUIT_CHAR | ( | tty | ) | ((tty)->termios.c_cc[VQUIT]) |
Quit char
| #define SUSP_CHAR | ( | tty | ) | ((tty)->termios.c_cc[VSUSP]) |
Suspend char
| tty_driver_t* alloc_tty_driver | ( | int | lines | ) |
Allocation d'un driver de terminal.
| lines | Nombre de terminaux géré par ce driver. |


| void tty_insert_flip_char | ( | tty_struct_t * | tty, |
| unsigned char | ch | ||
| ) |
Ajoute un caractère dans le butter du tty.
| tty | le tty qui nous intéresse. |
| ch | le caractère à ajouter. |


| int tty_register_driver | ( | tty_driver_t * | driver | ) |
Enregistre en tant que char device un driver alloué et configuré.
| driver | Le driver à enregistrer. |


| struct termios tty_std_termios |
1.8.7