From 8bac113573fc1fbccb3e60dc7324831cd1a2223e Mon Sep 17 00:00:00 2001 From: Jonas 'Sortie' Termansen Date: Sat, 18 Aug 2012 23:17:12 +0200 Subject: [PATCH] Split libmaxsi/terminal.cpp into multiple files. --- libmaxsi/Makefile | 4 ++- libmaxsi/{terminal.cpp => gettermmode.cpp} | 42 ++++++++-------------- libmaxsi/isatty.cpp | 38 ++++++++++++++++++++ libmaxsi/settermmode.cpp | 38 ++++++++++++++++++++ 4 files changed, 94 insertions(+), 28 deletions(-) rename libmaxsi/{terminal.cpp => gettermmode.cpp} (58%) create mode 100644 libmaxsi/isatty.cpp create mode 100644 libmaxsi/settermmode.cpp diff --git a/libmaxsi/Makefile b/libmaxsi/Makefile index 66ff0c22..d2314ee6 100644 --- a/libmaxsi/Makefile +++ b/libmaxsi/Makefile @@ -43,7 +43,9 @@ process.o \ thread.o \ ioleast.o \ winsize.o \ -terminal.o \ +gettermmode.o \ +settermmode.o \ +isatty.o \ kernelinfo.o \ init.o \ exit.o \ diff --git a/libmaxsi/terminal.cpp b/libmaxsi/gettermmode.cpp similarity index 58% rename from libmaxsi/terminal.cpp rename to libmaxsi/gettermmode.cpp index c23ad57e..4558a7a4 100644 --- a/libmaxsi/terminal.cpp +++ b/libmaxsi/gettermmode.cpp @@ -1,6 +1,6 @@ -/****************************************************************************** +/******************************************************************************* - COPYRIGHT(C) JONAS 'SORTIE' TERMANSEN 2012. + Copyright(C) Jonas 'Sortie' Termansen 2012. This file is part of LibMaxsi. @@ -11,40 +11,28 @@ LibMaxsi 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 Lesser General Public License for - more details. + FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more + details. You should have received a copy of the GNU Lesser General Public License along with LibMaxsi. If not, see . - terminal.cpp - Allows user-space to access terminals. + gettermmode.cpp + Gets the terminal modes. -******************************************************************************/ +*******************************************************************************/ #include #include #include -#include -namespace Maxsi +namespace Maxsi { + +DEFN_SYSCALL2(int, sys_gettermmode, SYSCALL_GETTERMMODE, int, unsigned*); + +extern "C" int gettermmode(int fd, unsigned* mode) { - DEFN_SYSCALL2(int, SysSetTermMode, SYSCALL_SETTERMMODE, int, unsigned); - DEFN_SYSCALL2(int, SysGetTermMode, SYSCALL_GETTERMMODE, int, unsigned*); - DEFN_SYSCALL1(int, SysIsATTY, SYSCALL_ISATTY, int); - - extern "C" int settermmode(int fd, unsigned mode) - { - return SysSetTermMode(fd, mode); - } - - extern "C" int gettermmode(int fd, unsigned* mode) - { - return SysGetTermMode(fd, mode); - } - - extern "C" int isatty(int fd) - { - return SysIsATTY(fd); - } + return sys_gettermmode(fd, mode); } + +} // namespace Maxsi diff --git a/libmaxsi/isatty.cpp b/libmaxsi/isatty.cpp new file mode 100644 index 00000000..e743aa98 --- /dev/null +++ b/libmaxsi/isatty.cpp @@ -0,0 +1,38 @@ +/******************************************************************************* + + Copyright(C) Jonas 'Sortie' Termansen 2012. + + This file is part of LibMaxsi. + + LibMaxsi is free software: you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the Free + Software Foundation, either version 3 of the License, or (at your option) + any later version. + + LibMaxsi 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 Lesser General Public License for more + details. + + You should have received a copy of the GNU Lesser General Public License + along with LibMaxsi. If not, see . + + isatty.cpp + Queries whether a file descriptor is associated with a terminal. + +*******************************************************************************/ + +#include +#include +#include + +namespace Maxsi { + +DEFN_SYSCALL1(int, sys_isatty, SYSCALL_ISATTY, int); + +extern "C" int isatty(int fd) +{ + return sys_isatty(fd); +} + +} // namespace Maxsi diff --git a/libmaxsi/settermmode.cpp b/libmaxsi/settermmode.cpp new file mode 100644 index 00000000..580f1f13 --- /dev/null +++ b/libmaxsi/settermmode.cpp @@ -0,0 +1,38 @@ +/******************************************************************************* + + Copyright(C) Jonas 'Sortie' Termansen 2012. + + This file is part of LibMaxsi. + + LibMaxsi is free software: you can redistribute it and/or modify it under + the terms of the GNU Lesser General Public License as published by the Free + Software Foundation, either version 3 of the License, or (at your option) + any later version. + + LibMaxsi 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 Lesser General Public License for more + details. + + You should have received a copy of the GNU Lesser General Public License + along with LibMaxsi. If not, see . + + settermmode.cpp + Sets the terminal modes. + +*******************************************************************************/ + +#include +#include +#include + +namespace Maxsi { + +DEFN_SYSCALL2(int, sys_settermmode, SYSCALL_SETTERMMODE, int, unsigned); + +extern "C" int settermmode(int fd, unsigned mode) +{ + return sys_settermmode(fd, mode); +} + +} // namespace Maxsi