COM1 25 uart.c outb(COM1+2, 0); COM1 28 uart.c outb(COM1+3, 0x80); // Unlock divisor COM1 29 uart.c outb(COM1+0, 115200/9600); COM1 30 uart.c outb(COM1+1, 0); COM1 31 uart.c outb(COM1+3, 0x03); // Lock divisor, 8 data bits. COM1 32 uart.c outb(COM1+4, 0); COM1 33 uart.c outb(COM1+1, 0x01); // Enable receive interrupts. COM1 36 uart.c if(inb(COM1+5) == 0xFF) COM1 42 uart.c inb(COM1+2); COM1 43 uart.c inb(COM1+0); COM1 58 uart.c for(i = 0; i < 128 && !(inb(COM1+5) & 0x20); i++) COM1 60 uart.c outb(COM1+0, c); COM1 68 uart.c if(!(inb(COM1+5) & 0x01)) COM1 70 uart.c return inb(COM1+0);