by AltairClone » August 22nd, 2014, 2:44 pm
Glad I asked! That makes things much simpler.
The AUX-R switch is normally open. Raising the switch closes the BOTTOM two contacts. Depressing the switch closes the TOP two contacts. Note there are three holes next to AUX-R switch you can connect to instead of soldering directly to the switch if you'd like.
Let's say you want to "trick" the 2SIO port into receiving a character (and generating an interrupt) when the AUX-R switches is depressed:
1) Connect a wire from +3.3v to the CENTER switch contact on AUX-R (pick up +3.3v from the bottom terminal of the adjacent left AUX-L switch).
2) Connect a wire from the TOP AUX-R terminal to serial port 1, pin 2, on the DB-25 (receive data into the Altair).
When the switch is in the center position (open), the RS-232 receiver treats this as an idle marking state (i.e., no data is coming in). When you depress and release the switch, the RS-232 receiver sees a space condition which starts reception of a character. After 10 bit times, the 2SIO UART will interrupt the 8080 processor with the character it "received." You will most likely have a framing error and a data over-run error when you actually look at the status register bits as you single-step through the demo. However, the demo then reads the character from the data register which clears the error status flags and the interrupt, so the demo should work as you expect!
Mike