Where can you get a real hardware modem for $50??
I replaced a crappy Lucent WinModem in an XP box. The best it could get was 2400bps (no, NOT 24000, but 2400!) (hey, I remember my first 300bps modem was great). Under the original WinME on this computer, there were no problems – XP’s hardware abstraction is known to cause havok with many WinModems. So, if you’re running XP, be careful.
I looked for a real hardware modem, but the machine had no ISA slots, and it seems most hardware modems are ISA. Their high cost (>$100) and limited local availability (wanted it running NOW) led me to read a lot of reviews about a 3Com/USR WinModem that worked beautifully with XP. I don’t recall the model, but it was a “hybrid” WinModem meaning it had a DSP but not a controller(*). It was about $50, and I thought it was a bargain, and it consistently gets ~43Kbps.
It’s really the lack of a DSP in WinModems that slow the host machine down. The Digital Signal Processor is the thing that turns digital data into analogue data (i.e., the modem noise you hear). When you computer does this itself, your computer is really the modem in the strictest sense of the word; it’s doing the MOdulation and DEModulation. The “modem” is then just an interface to the telephone line; it puts the computer-generated audio on the telephone wire. Aside from the DSP onboard, you need the actual controller.
Before I explain the controller, understand the marketing: WinModem is a trademark of 3Com (I think), but like Kleenex is genericized. A “controllerless modem” you see on the shelf is a WinModem as we know it, and usually means it has no DSP and no controller. Some controllerless modems do have a DSP but no controller. I don’t think any exist that have a controller but no DSP, though.
So, what’s the controller? This is what processes modem commands and makes it a logical device. Back in the old days, you wanted to buy a modem that was “Hayes compatible.” I think they all are now (test in hyperterminal on Windows), either in software (no controller) or in hardware (with controller). The original “Hayes” controller issued commands to the modem with <pause>+++ATcommand<pause>. Things like pick up receiver, dial pulse number, dial touch-tone number, set settings, lookup settings, etc. In the normal course of a modem session, you didn’t need this but to startup the session and stop it.
So, really, having a hardware-based controller is not nearly as important as having the hardware-based DSP, unless you’re not using Windows. I know there’s a very good list of which modems work on Linux – if that’s a concern, don’t worry about it.