I'd start by comparing the following in the working vs non-working cases:
- Is there a corresponding /dev/input/js* device?
- If it's there in both cases, any difference in permissions? Check both regular Unix perms using
ls -lorstatand ACLs usinggetfacl
To be fair the "no USB support" window was quite short. USB started becoming available to consumers around 1998-1999 and there was some level of USB support in the Linux kernel within a few months. I remember using an early USB stack written by someone else that Linus didn't like so he rewrote it from scratch. Even the new Linus stack was in place by 1999. We got USB-2 and 3 support pretty quickly too.