• Please review our updated Terms and Rules here

Tandy 1000 SX strange audio issue

The 3-voice plays low through the external speaker when the mixer is set to 97. It defaulted to 103 and didn't play at all.

I wonder why it's set to 103 on the SX. The difference in binary between those two numbers is this:

01100001
01100111

The bits are numbered 7-0 starting from the left, and according to the user manual bit 2 is "unused". Bits 0 and 1 relate to the actual PC speaker sound generation and according to the first reference on programming PC sound I scraped up are usually both "0"s when there's no sound playing, although the state of bit 0 can be left in a random state.

For laughs I played with toggling these bits on &h61 on my HX, and when bits 0 and 1 are stuck on I get a continuous annoying tone from the speaker. It doesn't matter if it's set to "99" or "103", bit 2 doesn't make any difference. It'd be great if someone could try this on a "known working" SX because this is sort of baffling, setting that port so it leaves an annoying screech on constantly would seem to be counter-productive.

Maybe the more important takeaway, though, is the bits relating to the audio multiplexer were already set up to pipe Tandy sound to both jacks. So there's definitely something seriously awry. If you're not adverse to changing that multiplexer chip I'd suggest going ahead and doing it, but I'm starting to think there might be bigger fish to fry.

Honestly the thing about the multiplexer is it's just a low-resistance analog CMOS switch. I don't suppose you're lucky enough for the part to already be in a socket, but if you get it out a really brain-dead thing you could alternate try cross-connecting pin 9 (the rear output jack) and pin 10 (the speaker) to any of pin 5, 14, 13, or 11, preferably through a small resistor. (Something around 120 ohms according to the datasheet.) This would effectively completely remove it from the equation. You could also, as I suggested, try sampling any of those input pins and running them directly to an external amplified speaker, although for safety's sake it would be good to use a small decoupling capacitor in the line. (I'm not sure what the impedence of the circuit is but for a brain-dead test it should be mostly non-critical, maybe use something like the .1mfd on the schematic.)

Before you do that, I guess here's one more thing to try:

Code:
sound on
beep on
out &H61,113
BEEP
PLAY "N10","N20","N30"
NOISE 1,15,10

The first two commands make *sure* all the sound "soft-switches" are on. Then the poke force-sets the multiplexer to disable the feed to the internal speaker. Try this and see if you get any clearer sound. I don't think it'll make any difference, but if there's some kind of short in the speaker amplifier it could be dragging the sound down to a low level and switching the "w" output from the multiplexer off will magically make it come to life out the rear port.

Also, just for laughs, try these:

Code:
# I can't test without a real SX, but my prediction is that these should both make a really annoying noise
# out the rear jack if everything is working properly. If not, something's broke.
out &h61,115
out &h61,19

So the BEEP does not make the beep sound for me. The beep on POST works fine though (through the external speaker).

Again, just for sanity checking, you also get no sound from non-Tandy-sound aware programs? What about if you do this at the dos prompt before doing anything else?

Code:
echo ^g

(The ^g there is holding control and hitting the "G" key, not typing "^" and "g".)
 
Ok I had some time to do the low hanging fruit and poked the multiplexer. When I use 19 I get a continuous PC beep out of the external speaker. When I do 115 I get what sounds like a Tandy voice version of the same beep, but very low level like other Tandy voice sounds.

I'll try the other suggestions in a bit. Oh, and echoing the keyboard gong does play the PC beep through the external speaker as well. I always thought you could control-g and it would beep but thanks for pointing out that it needs to be echoed.
 
It's starting to sound to me like there might be something hard shorting the Tandy sound down to ground, that this might not be the multiplexer at all. According to that blog entry the default setting at the SX at boot time is to *just* have the PC beeper routed out the back, and that continuous tone at ear-splitting volume you got with "19" is just setting it back to that with the speaker shunted on. (If you want to try just PC-sound only without the beep stuck on try "out &h61,17" Set this and hit Ctrl-G in BASIC, in BASIC it should beep on entry.)
 
Back
Top