Программирование Usb под Ms-dos

  • Автор темы Автор темы chetr
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.
C

chetr

В общем проблема следующая:
--запрограммировал я UHCI контроллер под ДОС для работы с одной микрухой, но не до конца всё хорошо работает. После отработки моей проги отключается подключенная USB клавиатура, вследствие чего в Windows98 уже не попадёшь. Вопрос--> каким правильным должен быть алгоритм инициализации хоста, чтобы клава продолжала работать???
--сейчас программирую OHCI контроллер тоже под ДОС и с той же микрухой. Здесь проблема другая--после инициализации хоста и формирования SETUP пакетов для проведения процедуры нумерации на шине хост не отсылает пакеты!!! Почему??? Код могу показать, если знатоки согласятся помочь ;)
 
Подобная проблема у меня была когда работал напрямую с COM1 (грызун) под Win98, не мог отработать пакеты. Ответ оказался прост, винда блокирует порты. А под голым ДОС всё нормально пашет. Ещё есть конечно варианты с режимами работы: реальный или protected mode? Если PM32, то можно сделать через DPMI аля 0x31. Вариантов море =)
 
Режим реальный. содержимое регистра HcRhPortStatus в момент ошибки:00000113h
Установливается бит Halted в ЕD->HeadP. Condition Code = 5 (Device Not Responding). Адрес на начало буфера с командой Set Address = TD->CurBufPtr = 000156C4, TD->BufEnd = 000156CB это нормально?
И ещё вот чо заметил TD->NextTDPtr= 0, хотя я туда записвывал адрес на пустой пакет!!!!
 
Теперь проходит нумерация, но дескриптор устройства не получается хостом!!!
Опять код ошибки 5 (Device not responding) Мужики помогите!!!! Могу выложить код где это реализовано.
 
Статус
Закрыто для дальнейших ответов.
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab