• Please review our updated Terms and Rules here

Practical Applications; SOL-20 sense switch Input port FF

Hugo Holden

Veteran Member
Joined
Dec 23, 2015
Messages
4,647
Location
Australia
In the SOL-20 there is an input port allocated address FF, which has an array of "sense switches" that could provide a fixed byte of data on that port.

What would be some examples of the practical applications of having these switches there and that data available as a fixed value on an input port ?

(The port control signal activates 7406 open collector buffers that feed the switches and the "data" is applied to the data lines DI0-0 to DIO-7 which are normally held logic high (3.36V) by a 330R & 680R resistive divider).
 
Sense switches go way back into the mainframe day. "2 up and go" was a familiar instruction in the old days.

512px-IBM_1620.jpg


See the 2x2 "square" of bat-handle toggle switches in the lower left? Those are the 4 1620 sense switches.

FORTRAN II even had a "IF SENSE SWITCH n" statement. (FORTRAN IV changed this to a function call). This also hails from the day when FORTRAN's STOP statement meant just that--the program stopped, waiting for the operator to press "GO" to resume. (The other toggle switches determine whether or not a program will stop on certain error conditions).
 
Thanks Chuck & Mike for that info. So the general idea was to make a program behave differently, depending on the switch settings. It makes more sense if the switches are available on the outside of the computer like on the 1620, rather than DIP switches on the pcb. I guess also they could be set so a program or user could identify one of 256 different physical computers, or maybe set part of an address that the program could go to for some start up routine. Now I'm looking for a way to incorporate them into a project.
 
Later, the switches became more of a notion when multi-user/programming got to be a thing.

For example, on a CDC 6600 running the SCOPE or NOS operating system (can't remember what the Chippewa OS did), there are no physical sense switches, but rather operator commands x.ONSW,y and x.OFFSW,y. The "x" refers to the control point number (i.e. number of a currently active user), as each user had unique sense switches--and y was the switch number.

Gradually, the old "sense switch" notion faded away.
 
I used the sense switches for the Music System on my Sol-20. Here is the box I built to add an external speaker, volume control and the sense switches to change the playback speed. This was about the limit of my microcomputer design limits in the late 70's. (And I haven't advanced much further to date!)

Sol-music.jpg
 
I used the sense switches for the Music System on my Sol-20. Here is the box I built to add an external speaker, volume control and the sense switches to change the playback speed. This was about the limit of my microcomputer design limits in the late 70's. (And I haven't advanced much further to date!)

View attachment 60633

That was a good idea to make that external box.

Was your music system the one on a blue Solid Sate Music S-100 card for music, or was it the R-C coupling a pulse from one of the S-100 connectors to get the audio ?
In your case you probably sent the pulses out the port or was there a separate audio cable ?
 
That was a good idea to make that external box.

Was your music system the one on a blue Solid Sate Music S-100 card for music, or was it the R-C coupling a pulse from one of the S-100 connectors to get the audio ?
In your case you probably sent the pulses out the port or was there a separate audio cable ?


My music box was connected SOLely [heh-heh] via the parallel port - not exactly a hi-fi source of music, but 'bit-twiddling' at its best at a time when you had to write your own programs in BASIC5 or FOCAL. The Music System gave you a simple language to play tunes to convince your friends that your $2000 computer could do more than play Lunar Lander or Hunt-the-Wumpus!
 
Back
Top