Хочу поделиться с вами своим опытом разработки терминальных приложений и игр. Так как вы уже использовали библиотеку termios, то хороший пример есть тут, для работы с некононичным режимом.
Далее есть ещё библиотека ncurses и вообще я бы посоветовал пользоваться именно ей, чтобы облегчить работу с терминальным курсором или же кареткой, так же в ней есть функции для обработки нажатий с клавиатуры, типа getch. Все утилиты вроде network manager, links, gdb в качестве tui(terminal user interface) под капотом используют curses или наследника ncurses. Подробнее можно почитать тут.
На самом деле есть пример на YouTube, как разработчик Ogre 3D(игровой движок), показывает как с помощью visual studio такие симбиозы можно отлаживать.
https://youtu.be/P9edayG8rkg?si=9yhlsgKvc8ze92_q
Хочу поделиться с вами своим опытом разработки терминальных приложений и игр. Так как вы уже использовали библиотеку termios, то хороший пример есть тут, для работы с некононичным режимом.
Далее есть ещё библиотека ncurses и вообще я бы посоветовал пользоваться именно ей, чтобы облегчить работу с терминальным курсором или же кареткой, так же в ней есть функции для обработки нажатий с клавиатуры, типа getch. Все утилиты вроде network manager, links, gdb в качестве tui(terminal user interface) под капотом используют curses или наследника ncurses. Подробнее можно почитать тут.
Удачи в изучении и разработке!!!