Была такая проблема при программировании и чтении счетчиков по оптопорту (232) и через преобразователь RS232/RS485 а так же радиостанций с ноута. На ноуте порт хитрый - PTS-DOS нормально с ним работает, а ХР - как попало.
Встречал альтернативные дрова COM порта у промышленных ПК(Системы ЧПУ станков на базе PC) работающих по Win98 и под XP.
Правда доводилось работать только под 98, ХР не юзал. Может дрова такие поискать под XP.
Вот и я начал рыть. Нашел где возникают ошибки при работе с портом и начал искать драйвер. Их оказалось множество в интернете, но работает у меня только с этим:
http://leo.yuriev.ru/SerialXp . При чем не с самым свежим, а с версией R1_3_0_1_2490 от 23.09.03.
Ноутбук - Ровер Эксплорер. Так же пришлось поставить эти же дровишки на одну писюгу, тоже стало всё нормально работать. А на iRU с SISовским чипсетом - не потребовалось, наверное там порт совсем "железный".