Я разрабатываю операционную систему как хобби-проект.Я подключил VGA-дисплей по адресу 0xB8000, количество строк равно 25, а столбцам - 80. Я использовал следующую функцию очистки экрана:
void vga_init(void) {
// Initialise the VGA variables and clear the screen : :
vga_buffer_pointer = (uint16_t *) VGA_MEMORY_LOCATION;
//start clear using 2 pass loop :
uint8_t iter_i = 0;
uint8_t iter_j = 0;
for(iter_i = 0; iter_i < VGA_ROWS; iter_i ++) {
for(iter_j = 0; iter_j < VGA_COLS; iter_j++) {
uint8_t index = (VGA_COLS * iter_i) + iter_j;
vga_buffer_pointer[index] = ((uint16_t)color << 8) | ' ';
}
}
enable_cursor(14,15);
}
Я инициализирую экран зеленым цветом,Дисплей занимает только порт экрана терминала qemu, как показано ниже:
![a busy cat](https://i.ibb.co/k1ZRQbm/Screenshot-from-2019-02-03-12-18-04.png)
Но я хочу, чтобы весь терминал был зеленым.И дисплей должен использовать весь терминал.Любая помощь наиболее ценится.Спасибо
Я приложил суть моего кода.
VGA.c