modify CSI_ESC

This commit is contained in:
xiaoxiao 2023-01-20 23:22:04 +08:00
parent 27c1d3c033
commit 2e9e43cd8e
2 changed files with 13 additions and 13 deletions

View File

@ -9,16 +9,6 @@
#define LASTLINE(row) LAST(row, SCR_MAXLINE)
#define ADDLINE(row, add_num) (((row) + add_num) % SCR_MAXLINE)
void enable_blink()
{
disable_int();
inb(0x3DA);
outb(0x3C0, 0x30);
u8 temp = inb(0x3C1);
outb(0x3C0, temp | 0x08);
enable_int();
}
void disable_blink()
{
disable_int();
@ -29,6 +19,16 @@ void disable_blink()
enable_int();
}
void enable_blink()
{
disable_int();
inb(0x3DA);
outb(0x3C0, 0x30);
u8 temp = inb(0x3C1);
outb(0x3C0, temp | 0x08);
enable_int();
}
void set_underline(u32 addr)
{
disable_int();
@ -327,7 +327,7 @@ void CSI_Erase_handler(vga_buf *vgabuf, int n)
void CSI_handler(u8 terminator, vga_buf *vgabuf)
{
vgabuf->CSI = CSI_ESC;
i16 param[MAXNUM_PARAM] = {0};
i16 param_cnt = 0;
for (int i = 0; i < vgabuf->param_num && param_cnt < MAXNUM_PARAM; i++)
@ -343,6 +343,7 @@ void CSI_handler(u8 terminator, vga_buf *vgabuf)
continue;
}
}
switch (terminator)
{
case 'A': // Cursor Up

View File

@ -265,8 +265,7 @@ void vga_tty_write(NTTY *tty, char ch)
}
break;
default:
if (!(0x20 <= ch && ch <= 0x7e))
vga->CSI = CSI_ESC;
vga->CSI = CSI_ESC;
if (0x40 <= ch && ch <= 0x7e)
CSI_handler(ch, vga);
break;