VOGONS


First post, by fsck100

User metadata
Rank Newbie
Rank
Newbie

Complete Overhaul - 22 Bugs Fixed - Menu added - Bootdisk img added

This is a real-mode DOS USB driver for 386/486-and-later machines with a UHCI, OHCI, or EHCI controller (USB 1.x/2.0 — no xHCI/USB 3). It handles USB keyboards, mice, and mass storage. The test build runs on FreeDOS 1.4 under an HDPMI DPMI host and logs to COM1 at 9600 8-N-1.

What's new in this major version:

  • 22 bugs fixed (19 from the audit list, 3 found along the way) — including an OHCI register-read fix that revives every non-Intel/VIA controller (SiS, ALi, NEC, OPTi, Compaq), and two fixes that stop the driver hanging on a USB mouse.
  • A boot-time menu tester: pick keyboard+mouse, mass storage, or both; switch builds; set baud.
  • A ready-to-write 1.44 MB bootable FreeDOS floppy image — boot straight into the tester with memory management already set up.

Licensing, up front: everything in the package is open-source or freeware with explicit redistribution rights — no abandonware, no grayware. The driver is GPL-2.0 (fork of crazii/USBDDOS); the FreeDOS pieces are GPL/open-source; HDPMI is Japheth's freely-distributable HX runtime; MODE is FreeDOS GPL-2.0. Per-file detail is in LICENSE.TXT.

Testers wanted: enumeration, hubs, and no-hang behaviour all check out in emulation (QEMU + Bochs), but the one thing emulators can't exercise is real USB-to-PS/2 mouse motion and buttons reaching a DOS mouse driver on actual hardware — that, plus how it behaves on your chipset, is what this round is for. Boot it on a 386/486+ box, capture the COM1 log while you exercise a device, and file a bug. A hang or crash (rather than an unsupported device being safely ignored) is the most useful thing to flag; REPORT.TXT lists what to note.

Please file bugs as GitHub issues — I can't monitor forum replies frequently, so a reply in this thread is not a reliable way to reach me:
https://github.com/netrunner01/USBDDOS/issues

Download — files-only, or files plus the bootdisk image:
https://github.com/netrunner01/USBDDOS/releas … /v2.0.0-alpha.1

THANK YOU!

Reply 3 of 8, by fsck100

User metadata
Rank Newbie
Rank
Newbie
vetz wrote on Today, 15:22:

If this is developed with AI tools/assistance (which it very much seems like) you have to disclose that according to forum rules, or thread will be deleted.

Ok, thanks. I'm a developer and analyst. And yes, I use AI daily in my job. Didn't even occur to me. The bugs and patches are handled using AI assistance and automation.

Reply 4 of 8, by vetz

User metadata
Rank l33t
Rank
l33t
fsck100 wrote on Today, 15:33:
vetz wrote on Today, 15:22:

If this is developed with AI tools/assistance (which it very much seems like) you have to disclose that according to forum rules, or thread will be deleted.

Ok, thanks. I'm a developer and analyst. And yes, I use AI daily in my job. Didn't even occur to me. The bugs and patches are handled using AI assistance and automation.

Thanks!

Else good initiative/project, DOS USB support needs some love:)

3D Accelerated Games List (Proprietary APIs - No 3DFX/Direct3D)
3D Acceleration Comparison Episodes

Reply 5 of 8, by wierd_w

User metadata
Rank Oldbie
Rank
Oldbie

my asus anachronist laptop (AMD E1 cpu) has an AMD EHCI / OHCI with VEN number 14B7.

Previously it was hanging when trying to emumerate devices. Most recent test has it loading with /HID and /DISK

Is there any plans to extend /HID to support USB joystick emulation?

Reply 6 of 8, by fsck100

User metadata
Rank Newbie
Rank
Newbie
vetz wrote on Today, 15:45:
fsck100 wrote on Today, 15:33:
vetz wrote on Today, 15:22:

If this is developed with AI tools/assistance (which it very much seems like) you have to disclose that according to forum rules, or thread will be deleted.

Ok, thanks. I'm a developer and analyst. And yes, I use AI daily in my job. Didn't even occur to me. The bugs and patches are handled using AI assistance and automation.

Thanks!

Else good initiative/project, DOS USB support needs some love:)

Thanks. I got sick of patching one bug here and there. So I pulled down every USB 1.1 and 2.0/UHCI/OHCI/EHCI specifications and implementation doc I could find. That lead to even more relevant document sets being found. The doc stack I finally ended up using to audit against is huge. It's nice to see large numbers of bugs patched and (emulation) tested, but it has been extremely painful. The last three bugs were the worst. They came after all the audit bugs were fixed, showed up only in a "final" round of controller/hid/msc combinations testing. Three more rounds of patch, smoke test, regression test, full test matrix, commit, refresh baseline, start again.

Reply 7 of 8, by fsck100

User metadata
Rank Newbie
Rank
Newbie
wierd_w wrote on 58 minutes ago:

my asus anachronist laptop (AMD E1 cpu) has an AMD EHCI / OHCI with VEN number 14B7.

Previously it was hanging when trying to emumerate devices. Most recent test has it loading with /HID and /DISK

Is there any plans to extend /HID to support USB joystick emulation?

Sorry, no. Keyboard, mouse and mass storage only. What you want would be a feature request to the upstream project. Please include "[Feature Request]" in the title so he knows it's not a bug report. Here is the link: https://github.com/crazii/USBDDOS/issues .

PLEASE let me know what version of the driver you are testing with. Thanks.

Reply 8 of 8, by wierd_w

User metadata
Rank Oldbie
Rank
Oldbie

My most recent test was with your current released alpha. (version 2.00 alpha 1.1)

(as for the feature request, it would actually be THIS project that does USB Joystick emulation on UHCI controllers. But since my box does not have a UHCI controller, I cant use it.)