modem

Hear a Bell 103 modem, live in your browser

The ritual before CONNECT

Press play and you hear the dial-up sound the way a modem actually made it, generated live in your browser rather than played back from a recording. The whole handshake goes first - off-hook, dial tone, DTMF digits, ringback, the ANSam answer tone and its phase reversals - and underneath it modem runs a real Bell 103 connection at 300 baud between two machines over their sound cards.

The overture is a reconstruction. The FSK connection underneath it is real.

Fast data-over-sound tools such as minimodem already move bytes across a room quicker than this ever will, and that is not what this is for. They have no interest in the dial tone, the DTMF, the answer tone or the negotiation, because none of it makes them faster. This performs exactly the parts a fast tool has no reason to want.

Try it now

Three ways in. Watch a full handshake and a real connection right here, nothing to set up. Or open this device as one real end of an acoustic call - dial from one, answer on the other, the sound genuinely crossing the room between them.

Sound help

If Dial looks like it is running but nothing plays: check the mute switch and the volume, then try Resume sound below. This tracks what the audio pipeline has actually done, not just whether a button responded.

    Two ways to try this

    Split screen is the default, so anyone can watch a full handshake without a second machine. The real thing is two machines, one end each, sound genuinely crossing the room.

    One device

    Run modem with no flags and both ends open in one window, originate on the left and answer on the right, sharing one spectrum. The link between them is wired in software rather than crossing the air, so the status bar says [DEMO MODE] - not an apology, the same honesty this whole project runs on. It appears whenever the link is not acoustic, and only then.

    Two devices

    The real thing needs one machine per end, speakers and microphone facing. Like a real modem, you choose which end you are: the calling machine runs modem --single --acoustic, the receiving machine runs modem --single --acoustic --answer and waits for a call. Dial from the calling machine with ATDT<digits>. Whichever end dials becomes originate and whichever end answers becomes answer, so the two land in opposite Bell 103 bands automatically - originate on 1270/1070 Hz, answer on 2225/2025 Hz - and each can hear the other, exactly as a Hayes modem's own originate/answer switch worked.

    Why dial-up sounded like that

    Nine phases make up the overture above - dial tone, DTMF, ringback, the ANSam answer tone and more - each rendered live by the same code that runs the connection, not a recording.

    Hear every phase explained