rem: if (sSync++ == 2) {
add: if (++sSync == sPacketSize) {
context: handle_mouse_interrupt(void* data){	int8 read;	TRACE(("mouse interrupt occurred!!!\n"));		read = sIsa->read_io_8(PS2_PORT_CTRL);	TRACE(("PS2_PORT_CTRL: %02x\n", read));		if (read < 0) {		TRACE(("Interrupt was not generated by the ps2 mouse\n"));		return B_UNHANDLED_INTERRUPT;	}		read = read_data_byte();	cbuf_memcpy_to_chain(sMouseChain, 0, &read, sizeof(read));		if (sSync == 0 && !(read & 8)) {		TRACE(("mouse resynched, bad data\n"));		return B_HANDLED_INTERRUPT;	}			if (sSync++ == 2) {		TRACE(("mouse synched\n"));		sSync = 0;		release_sem_etc(sMouseSem, 1, B_DO_NOT_RESCHEDULE);				return B_INVOKE_SCHEDULER;	}		return B_HANDLED_INTERRUPT;}