// console.c // Author: Josh Holtrop // Date: 08/02/04 #include "char/console.h" #include "hos_defines.h" #include "fs/devices.h" console_t *consoles[256]; int console_new(minor_t minor) { if (consoles[minor]) return -1; // minor already taken if ( consoles[minor] = kmalloc(sizeof(console_t)) ) { consoles[minor]->cursorPosition = 0; consoles[minor]->width = 80; consoles[minor]->height = 25; consoles[minor]->attribute = 0x07; if (consoles[minor]->buffer = kmalloc(4000)) { memsetw(consoles[minor]->buffer, 0, 2000); } else { kfree (consoles[minor]); consoles[minor] = 0; return -3; // couldn't allocate memory } return 0; } else return -2; // couldn't allocate memory } void console_outb(minor_t id, int c) { if (!consoles[minor]) return; }