term: support '\r'

This commit is contained in:
Zihao Yu 2024-01-10 17:14:12 +08:00
parent 8a5c368d84
commit 237c74467a
2 changed files with 6 additions and 0 deletions

View File

@ -17,6 +17,7 @@ private:
void clear_screen();
void newline();
void _return();
uint8_t *add_line();
void draw_cursor();
bool is_cursor_on_screen();

View File

@ -57,6 +57,10 @@ void Term::newline() {
}
}
void Term::_return() {
cursor_x = 0;
}
uint8_t* Term::add_line() {
uint8_t *l = new uint8_t[w_in_char];
memset(l, ' ', w_in_char);
@ -96,6 +100,7 @@ void Term::feed_ch(uint8_t ch) {
int y = cursor_y;
assert(y < lines.size());
if (ch == '\n') { newline(); return; }
else if (ch == '\r') { _return(); return; }
else if (ch == '\b') { backspace(false); return; }
lines[y][cursor_x] = ch;
cursor_x ++;