trying to fix input

This commit is contained in:
2025-01-30 03:31:12 +00:00
parent 81d664f45e
commit 23be603dfc
5 changed files with 82 additions and 2 deletions

View File

@@ -23,6 +23,8 @@ struct tart_vec2 term_current_size() {
#include <sys/ioctl.h>
#include <stdio.h>
#include <unistd.h>
#include <string.h>
#include <termios.h>
struct tart_vec2 term_current_size() {
struct tart_vec2 ret;
@@ -42,4 +44,43 @@ struct tart_vec2 term_current_size() {
return ret;
}
struct termios old, current;
void init_termios(int args) {
tcgetattr(0, &old);
current = old;
current.c_lflag &= ~ICANON;
if(args == 0x01) {
current.c_lflag |= ECHO;
} else {
current.c_lflag &= ~ECHO;
}
tcsetattr(0,TCSANOW, &current);
}
void reset_termios(void) {
tcsetattr(0, TCSANOW, &old);
}
char term_getch() {
char tmp;
init_termios(0x00);
tmp = getchar();
reset_termios();
return tmp;
}
char term_getche() {
char tmp;
init_termios(0x01);
tmp = getchar();
reset_termios();
return tmp;
}
#endif