When I got to the part in learning programming (in BASIC) on the TRS-80 where it covered music and sounds, I couldn’t afford an amplifier, so I had to record the sounds I was making, then unplug the recorder and playback the tape to see how it sounded.
I had a TRS-80 Model I we got around 1978. Almost immediately took it back to get the upgrade that quadrupled its RAM. 4k was tight, but 16k was luxurious.
Yes boys and girls, my first computer’s memory was 1/250th of a megabyte.
While my computer never shared the noise of programs with me, I became quite familiar with it.
Rather than try to make special products for very limited markets, companies that sold software would make one tape that had the program for several different computers on it. So to load the program for … Midway Campaign for the TRS-80, you’d have to fast-forward past the version for the Atari 400 (The reverse side of the tape had the Commodore PET version and something else).*
So you would have to unplug the player/recorder, then hold down both fast forward and play (which they told you NEVER to do) so you could hear when you got to the end of the first file. Then stop, plug everything back in, and press play.
*These may not be exactly factually correct. I’m not sure what order the files were in for Midway Campaign, and sometimes TRS-80 was first, or on the B side of the tape. Most stuff from Avalon Hill had files for 4 different computers and I can’t remember what the fourth one was, most stuff from Radio Shack had versions for the Model I, Model II, Model III and so on.
Did you get the hardware upgrade for upper/lower case? We did…it was awesome. Except our printer didn’t handle it properly, and reversed all the cases. So we had to add a SW patch to print properly.
Ahh…the good ol’ days.
I believe there was a way for the cassette recorder to play the sounds it was receiving, as it received them. Something like holding down the write-protect tab detector with your finger and pressing play-and-record with no cassette in the drive.
I used the speaker unit from a cheap old intercom system instead. I just plugged the Aux. Input jack into the speaker unit and switched it on. Not as good as a real stereo amplifier, but a hell of a lot cheaper.
EDIT: Wait, how did you get the TRS-80 to make sounds in BASIC? A FOR loop on OUT255,1 and OUT255,0 wouldn’t run nearly fast enough to make any recognizable tones – I had to do all my sound in machine language.
Yeah, well my Atari 2600 only had 128 bytes of RAM. (Well, okay, it wasn’t a computer the average user could program, but it’s pretty interesting to remember how little variable space and the such it had.)
There’s a reason computer data should sound like noise. If it’s compressed, earlier parts will be unhelpful in predicting later parts, and there will be little autocorrelation, which is what noise is like. If there was predictability and autocorrelation, the compression is not very thorough.
Yes, cartridge RAM was typically 4k (although with bank-switching you can get a good bit more than that, I think 32k.) Still, when I read about 2600 programming (the book Racing the Beam comes to mind), I’m flabbergasted at what was accomplished on such a basic piece of hardware.
One of the things I love – and I’m not sure whether it was in that book or on a Youtube post-mortem of it–was how the game “Pitfall”'s maze was generated using a reversible pseudo-random equation. A full map for 255 screens, with the way the description for each screen was recorded (in one byte), would take up 255 bytes of ROM. But with a 4K limit, that was precious–that’s 1/16 of your program. So, they managed to get it down to something like 20 bytes by using a rather hard-to-follow but easy-to-implement equation that cycled through 255 different numbers pseudo-randomly, but reversibly in each direction. (If you wanted the next number you can generate it, and if you wanted the previous you could, too). So all the layouts you see in Pitfall are not designed by the programmers, but by an equation. The programmer just picked the starting point (seed) for the equation that made the most sense (so, for example, if you started with 1, it might have placed Pitfall Harry in a screen in the middle of a swamp, for instance.) Not good. Better look for a better seed.
That kind of stuff impresses me immensely. And I remember some 2600 game, whose name escapes me, that used bits of the code itself to generate random-looking graphical objects to display. So, basically, the code itself was being rendered graphically as part of gameplay.
I wouldn’t describe it exactly as a *problem *for the Spectrum - it was just a symptom of the extremely limited audio hardware that the machine had - essentially a piezoelectric sounder wired to a digital IO line - monophonic audio tones were created by the CPU just sending modulated square waves out on that IO line.
The sounder was also directly wired to both of the 3.5mm ‘EAR’ and ‘MIC’ sockets - thus:
[li]Any sound played on the sounder could be heard on an earphone plugged into the ‘EAR’ socket. or recorded by a tape machine connected to the ‘MIC’ socket.[/li][li]The CPU could listen for incoming sounds (i.e. program loading) on the same line as it used for outputting sounds.[/li][/ul]
However, as a result of this - and the fact that no additional switching components were included in the design (because of economy), any sound played into the EAR socket was also audible on the internal sounder.
I can tell you from personal experience that software stored on a TRS-80 cassette was most assuredly NOT compressed. Basically, the bytes were written to cassette exactly as they were laid out in memory. This was true for both BASIC programs (stored as ASCII source code, except for keywords which were stored as 1-byte codes in memory) and machine code.
Not to find out what it sounded like (as I recall it sounded like high-pitched screeches) but to steal the software off of what was supposed to be secure hardware. Very clever of him, but in all honesty he always was a thief in that regard.
Even if it’s compressed, it wont sound like noise if the bit rate is low and expressed as tones. It will sound like warbling or chirping sounds. That’s still ‘like noise’ in a technical sense, but not a perceptual one.