Clearly, it's a bit like pinging a website. If the answer is no, it can take a long time to get that answer, because you have to wait for it to timeout. Perhaps there is some way to adjust the timeout? I don't think I'd like that solution much, but maybe as a last resort.
Isn't there some kind of message from the operating system which would be thrown when you insert a joystick? I mean even if it's only generic, like some kind of input device or even a generic peripheral, it would be much better to only poll once after that even, rather than all the time.
If you don't test joycount() on a regular basis, you can't test for the situation where the player disconnects the pad in the middle of a game.
Isn't there some kind of message from the operating system which would be thrown when you insert a joystick? I mean even if it's only generic, like some kind of input device or even a generic peripheral, it would be much better to only poll once after that even, rather than all the time.