Msg: 7053 *Conference*
04-03-97 16:25:16
From: RON WIESEN
To : TOM UPTON
Subj: REPLY TO MSG #7048 (NAYBOR.BA)
What Comet means is there's only one input line from the Wand port. For mouse movement, 2-axis input is needed - if there are mouse "buttons" then they are additional input requirements. Considering 2-axis motion input, and ignoring "buttons", there's a conventional solution and a comprimised unconventional solution. You're interrupted light beam is closer to the unconventional solution Tom. First, the conventional solution: use the Wand input as one axis and SOME OTHER INPUT for the second axis. The Cassette port has an input - bet you're not using a cassette recorder. So the cable "tail of the mouse" splits to two connectors (Wand and Cassette) - no biggie. For unconventional solutions that have only PHYSICAL INPUT PORT, modulation can multiplex more than one signal onto one physical input. The Cassette port in fact demodulates to two signals (1 and 0), but they are mutually exclusive so it's just commutation. You prefer (need?) simultaneous demodulation to two signals. Modems above 600 Baud do this. For example, at 2400 bits per second transmission rate the "carrier" changes at only 600 Baud and each change represents one of 4 possible "bit pairs". So in one second of time, 600 changes of the carrier expresses 2400 bits of transmission. The 300 bit per second transmission of the Modem in the Model 100 isn't like this - it's carrier changes at 300 Baud but each change expresses just "one bit" so transmission rate is 300 bit per second. Here's an unconventional solution using the Wand port. The Wand port supplies +5 volt continuously at a modest power - enough power for a "mouse modulator" circuit. Make a circuit that multiplexes the forward/backward and left/right positional information onto the Wand input port. There's a comprimise because no circuitry is changed inside the Model 100 - a software driver discriminates the signal of the Wand input port to derive "TWO SIMULTANEOUS AXIS POSITIONS" of the mouse. There's several ways to do it - here's one. Left/Right presents 1 of 3 possible states: motion left, no motion, or motion right. Likewise Forward/Backward has 3 states: motion forward, no motion, or motion backward. The circuit has a 3-frequency oscillator controlled by Left/Right state, which feeds a 3-mode octave generator controlled by Forward/Backward state. The circuit produces 1 of 9 frequencies which the software samples and discriminates. For simple electronics, the modes of the octave generator are: 1. half frequency 2. same frequency (it passes through unaltered) 3. double frequency For easy discrimination by the software, choose the 3 frequencies of the oscillator so they: o all lay within the same octave scale (highest/lowest is less than 2) o avoid "paired" relationships of equal difference I'll leave the choice of 3 frequencies (f1, f2, and f3) for you to investigate. Choose them for easy discrimination among the 9 results. The results are: f1/2 Left & Forward f1 Left f1*2 Left & Backward f2/2 Forward f2 no motion f2*2 Backward f3/2 Right & Forward f3 Right f3*2 Right & Backward