Патч keyboard.drv Windows 98SE для обхода зависаний клавиатуры

Поиск, обмен ссылками, вопросы по устаревшему программному обеспечению.
Ответить
ys05
Advanced Member
Сообщения: 398
Зарегистрирован: 27.02.2012,21:35
Откуда: spb

Патч keyboard.drv Windows 98SE для обхода зависаний клавиатуры

Сообщение ys05 » 22.09.2022,14:05

Давно мучался со случайными зависаниями Windows 98SE при работе с клавиатурой. Наиболее просто это воспроизводилось у меня в Acrobat Reader 6.0.3, достаточно было непрерывно листать многостраничный pdf с помощью PgUp или PdDn, как практически 100% можно было попасть в зависон. При этом иногда не выскакивало окно ошибки GPF, а иногда выскакивало, но клавиатура всё равно зависала, в любом случае дальше только Reset.

Решил чуть поразбираться, возможно проблема либо в виндовом VMM32, либо в драйвере видеокарты Nvidia, но симптомы такие, что при наложении прерываний клавиатуры и кого-то ещё (например, видеокарты) возврат в keyboard.drv из вложенного прерывания происходит по неправильному адресу (на 1 меньше нужного) и попадает на неправильный опкод. Исходную причину такого поведения винды искать пока лень, то есть она может проявляться в вылетах винды и в других случаях, но для конкретных зависаний с клавиатурой удалось поменять keyboard.drv, чтобы ситуацию заметно улучшить. Патч в аттаче.
Вложения
keyboard_win98se_patch.zip
(16.95 КБ) 39 скачиваний

Ответить