// Video Card I/O ports
#define TEXT_INDEX	0x03D4
#define TEXT_DATA	0x03D5

// Video Card Index Registers
#define TEXT_CURSOR_LO	0x0F
#define TEXT_CURSOR_HI	0x0E

void update_cursor(uint x, uint y) {
	short pos=y*sizex+x;
	outb(TEXT_CURSOR_LO,TEXT_INDEX);	// access lo cursor data reg
	outb((char)pos,TEXT_DATA);
	outb(TEXT_CURSOR_HI,TEXT_INDEX);	// access hi cursor data reg
	outb((char)(pos >> 8),TEXT_DATA);
}

// Hardware cursor update routine.  (c)1997 Douglas Armstrong