View Full Version : IBM Advanced Diagnostics on Cassette
mbbrutman
March 23rd, 2008, 03:49 PM
Does anybody have a cassette adapter for their 5150? I've got a wave file of this, and I'm curious to hear what it does. (I don't have an adapter, and don't see myself making one any time soon.)
The WAV file runs about 3:40 and should contain around 36KB of data. (0's take .5 milliseconds and 1's take 1.0 milliseconds .. I assume an average distribution that gives about 0.75 milliseconds per bit.)
Mike
frozenfire75i
March 23rd, 2008, 06:12 PM
I belive the TRASH-80 :p is the same cass. cable that is?
Would you mind sending me the WAV file? webmaster@vintageibm.net
tezza
March 23rd, 2008, 06:39 PM
I'd be interested in what you find on that WAV file Mike and Eric. I have the TRS-80 cable and now I have the 5150. What I won't have until tomorrow though, is the step-down transformer I need to power it up.
mbbrutman
March 23rd, 2008, 07:29 PM
I had a lot of fun with this recording. I haven't used the shoebox cassette recorder in close to 25 years. (That was when I upgraded from a Timex Sinclair 1000 to a PCjr with a diskette drive.) It needed a good cleaning.
Then I played around with the waveform. If you zoom in enough, you can see the 1s and 0s that make up the data! Here is a good writeup of it:
http://www.brutman.com/Cassette_Waveforms/
Lastly, an MP3 of the recording is posted on that page. Enjoy, and let me know what it does.
frozenfire75i
March 24th, 2008, 08:08 AM
In case anyone forgot or don’t know how load a cassette on the the 5150 ;-)
mikey99
March 24th, 2008, 09:33 AM
Do you really need a cassette player/cable for this ?
Or could you play the MP3 file on a PC or MP3 player and
somehow feed the output into the cassette interface on the
5150?
I'm thinking there is probably more involved than just reading
the entire file into the 5150. Does the 5150 need to control the
cassette play/rew/ff ?
frozenfire75i
March 24th, 2008, 09:53 AM
I don't believe that would work.... By looking at the Technical Reference manual. It needs a data cassette player!
Do you really need a cassette player/cable for this ?
Or could you play the MP3 file on a PC or MP3 player and
somehow feed the output into the cassette interface on the
5150?
I'm thinking there is probably more involved than just reading
the entire file into the 5150. Does the 5150 need to control the
cassette play/rew/ff ?
mbbrutman
March 24th, 2008, 10:01 AM
Actually, it would work quite well. The cassette interface doesn't care what the source of the waveform is .. if it can identify the bits it'll take them. Don't over amplify the signal or punch up the bass and you'll be fine. ;-) (Notice on the screen shots of the sound recording program that I was very careful to keep the levels in a safe range to avoid distortion and clipping.)
The cassette port does think that it is turning the motor on and off, but there is no feedback mechanism to tell it what happened. So just don't wire those pins.
frozenfire75i
March 24th, 2008, 10:07 AM
Well someone is going to have to try it that way ;) It might work for that but for other things it might need a data cass. player! I don't think anyone knows too much about it as it was never used!
Actually, it would work quite well. The cassette interface doesn't care what the source of the waveform is .. if it can identify the bits it'll take them. Don't over amplify the signal or punch up the bass and you'll be fine. ;-) (Notice on the screen shots of the sound recording program that I was very careful to keep the levels in a safe range to avoid distortion and clipping.)
The cassette port does think that it is turning the motor on and off, but there is no feedback mechanism to tell it what happened. So just don't wire those pins.
mbbrutman
March 24th, 2008, 11:15 AM
I guarantee you that it does not need a cassette player. It just wants an audio signal. An iPod could do this ...
People have been faking out cassette interfaces with sound cards for years. It's not a new trick.
tezza
March 24th, 2008, 12:10 PM
I guarantee you that it does not need a cassette player. It just wants an audio signal. An iPod could do this ...
People have been faking out cassette interfaces with sound cards for years. It's not a new trick.
Yes, it should work. I use this trick for my TRS-80 model 1 and Spectrum. All the cassette software is actually on my PC as WAV files and when I want to load in the software, I just attach the cassette cable to the sound card speaker port and play them.
Not authenic I know, but convenient. When I get to show the units off, I'll be using real cassettes.:)
tezza
March 25th, 2008, 12:27 AM
Hi Mike, Eric,
I tested that little diagnostic tape MP3 on my 5150. The TRS-80 cassette lead does indeed fit the port.
I booted the machine without a boot disk and hence it defaulted to cassette BASIC. So far, so good.
I couldn’t get past the loader program though. The loader loaded in fine, and I could run it. However, as it was loading in the data and poking it into memory, towards the end of the file the system suddenly reset. It did this consistently at the same place in the MP3 cassette file in three attempts.
I suspect the Diagnostics Tape only works on a 5150 without disk drives. As the loader program loads in data from the tape and pokes it into memory, I suspect what’s happening is that there is some conflict with the disk controller (is this likely? Is it memory mapped?).
Anyway, I’ve attached some pics. The filenames indicate what they are.
mikey99
March 25th, 2008, 06:52 AM
Good job tezza , thanks for trying that :-)
I'm wondering if the volume/bass/treble settings on the input signal could
cause problems.
You could try detaching the floppies by removing the diskette controller
and setting the motherboard switches for no diskettes. However, I'm not
suggesting that you tear your machine to pieces to test this :-)
mbbrutman
March 25th, 2008, 07:07 AM
I had noticed that the tape was broken up into two or three segments, and now that makes sense. The first segment is the loader and the second (and possibly third) segments are raw data that the load pokes into memory.
You said that you got the loader to work without any problems, so I suspect that the MP3 itself is fine and that you've got the volume levels close enough to work. You could experiment with different volume levels. Make sure your sound card is not enhancing bass/treble or adding any 3D effects. I'm sure the recording is good - look at the waveforms on the web page. Unless there was a physical defect in the tape ...
The floppy controller is not memory mapped - it just has I/O ports. 'Poke' commands will not be able to hit it. However, that diagnostics cassette might be making other assumptions about the machine that are not correct. Can you tell me the complete configuration of the machine? (Tell me what you have in all five slots ...)
Also, can you confirm that the loader is only using POKEs and not OUT or OUTP type statements? The POKEs might be dangerous because they obliterate memory, but OUT statements can really nuke I/O devices. ;-0
mbbrutman
March 25th, 2008, 07:26 PM
Tezza inspired me so I found my keyboard extension cable, some paper clips, some jumper wires, and I proceeded to make a temporary 'cassette' adapter for use with a Thinkpad.
Long story short - it worked. I got the loader portion, just like you did Tezza. But I also got it to read all of the data and start running. Here are the screen shots:
http://www.brutman.com/Cassette_Waveforms/Cassette_diags_step1.jpg
http://www.brutman.com/Cassette_Waveforms/Cassette_diags_loader_listing.jpg
http://www.brutman.com/Cassette_Waveforms/Cassette_diags_menu.jpg
The machine has a monochrome display, two floppy drives, and the 2nd revision of the BIOS. (Notice that it only counts up to 544KB, although it actually has 640KB on it.)
The bad news for the evening is that the 5151 monitor that goes to the machine doesn't light up anymore. I had a spare to test with. Another piece of bad hardware to debug ...
tezza
March 26th, 2008, 01:27 AM
Good one Mike.
Must be my volume level wasn't quite right. That can be a fiddly thing to get correct.
That screen is very similar to the "Diagnostics" program on the IBM 5150 diagnostic disk. I'm picking it's virtually the same program except in cassette form.
Trixter
March 26th, 2008, 09:22 AM
Long story short - it worked. I got the loader portion, just like you did Tezza. But I also got it to read all of the data and start running.
Awesome!
Now, please, save that somewhere so the rest of us can take a look at it :-)
mbbrutman
March 26th, 2008, 11:32 AM
It's in the MP3 ... I've made it available. Go ahead, fire up a 5150 under DOS, load BASIC and read the tape.
(Translation - I've done my bit. Time for somebody else to step up.)
Micom 2000
March 26th, 2008, 05:34 PM
From what I remember a common Radio Shack cassette player worked fine with the PC.
I remember years ago laborously typing a program onto a computer, copying it onto cassette and then slowly entering it into memory on a Commodore 8032. Occasionally the program actually worked.
I have an old KORG EX 8000 Synth. You entered the basic sound files in memory using a cassette or tape player. Usually done when your lithium battery failed or some similar event, and you lost the library. I replaced my dead soldered-in CR2032 with a holder and a new battery but have yet to replace the library altho I have it from the net. I'll have to look further into your method since most old cassette players have lost their speed after time.
Lawrence
vBulletin® v3.7.3, Copyright ©2000-2008, Jelsoft Enterprises Ltd.