diff options
Diffstat (limited to 'src/kernel/keyb.c')
-rw-r--r-- | src/kernel/keyb.c | 45 |
1 files changed, 0 insertions, 45 deletions
diff --git a/src/kernel/keyb.c b/src/kernel/keyb.c deleted file mode 100644 index 2c87422..0000000 --- a/src/kernel/keyb.c +++ /dev/null @@ -1,45 +0,0 @@ -/* -Copyright 2019 Benji Dial - -Permission to use, copy, modify, and/or distribute this -software for any purpose with or without fee is hereby -granted, provided that the above copyright notice and this -permission notice appear in all copies. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS -ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO -EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER -RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN -ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, -ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE -OF THIS SOFTWARE. -*/ - -#include "serial.h" -#include "vga.h" - -uint8_t get_char(bool echo) { - uint8_t ch = 0; - do - if (poll_port(COM2)) - ch = read_byte(COM2); - else - ;//TODO: get from get_key - while (!ch); - if (echo) - put_char(ch); - return ch; -} - -uint32_t get_line(uint32_t max, uint8_t *buffer, bool echo) { - uint8_t *i = (uint8_t *)buffer; - while (i < (uint8_t *)buffer + max) { - if ((*i = get_char(echo)) == (uint8_t)'\n') { - *i = 0; - return i - (uint8_t *)buffer; - } - ++i; - } -}
\ No newline at end of file |