Jump to content
ed1475

IBM 5150 PC loading game from cassette tape

Recommended Posts

Here's a video I uploaded using the cassette tape interface on an IBM 5150.  I've booted up IBM PC DOS 1.00 and loaded basica (Advanced BASIC) and then load the donkey.bas game from tape. I'm using a Mattel Aquarius data recorder and a cable made for the TRS-80.

 

 

Edited by ed1475
  • Like 7

Share this post


Link to post
Share on other sites

It is funny.  I used cassettes on TI-99/4A, Apple II, and Atari 8-bit.  I never would have considered tape as a storage medium for IBM/clones.

Share this post


Link to post
Share on other sites
14 minutes ago, OLD CS1 said:

It is funny.  I used cassettes on TI-99/4A, Apple II, and Atari 8-bit.  I never would have considered tape as a storage medium for IBM/clones.

I don't think anyone really used it bitd.  Loading from disk is so much faster and easier.  The only program released on tape was a diagnostic program by IBM.

 

The donkey.bas game only takes 3 seconds to load from disk.  23 seconds to load from tape.

Edited by ed1475
  • Like 1

Share this post


Link to post
Share on other sites

Yeah, anybody with a PC likely had a disk drive with it.  If I recall correctly, even the XT removed the cassette interface, since any multiple-thousand-dollar computer simply made no sense with less than the convenience of a disk drive.  My family had the 5150 BITD, but I never had a cassette player or adaptor for it.  It was a curiosity though, especially since it had the ability to automatically start and stop an appropriately featured player.

Share this post


Link to post
Share on other sites

Not totally related, but does anyone remember the MOTOR command?

I had a small relay in my old PC on the motherboard and if I used the MOTOR command, it would trigger...

I never knew what it was for, but it stuck in my memory....

Share this post


Link to post
Share on other sites

Well, there it is. Someone actually uses the cassette interface on an IBM PC.

If you think about it, there's literally no reason at all to use a cassette on a PC. Did they sell 5150s with no disk drives back then?

It's a bit weird you know... With no disk drives the 5150 is a lot worse than, say, a Commodore 64. I mean, how many PC software runs on BASIC via cassette?

12 minutes ago, desiv said:

Not totally related, but does anyone remember the MOTOR command?

I mean, there's the MOTORON on the CoCo. By MOTORON:AUDIOON and pressing PLAY on the tape recorder you could get it to play whatever was on the tape. I thought it would be a great way to "show off the CoCo's sound chip capabilities" :) 

Share this post


Link to post
Share on other sites

Ibm sold the model without a floppy until 1987.  It was probably cheaper to source your own floppy drive than get the floppy model from ibm.

 

I would think the motor command turns on/off the cassette player.

 

EA music construction set can save to the ibm cassette interface.  Is that digital data or analog audio.

Edited by mr_me

Share this post


Link to post
Share on other sites
13 hours ago, desiv said:

Not totally related, but does anyone remember the MOTOR command?

I had a small relay in my old PC on the motherboard and if I used the MOTOR command, it would trigger...

I never knew what it was for, but it stuck in my memory....

Yep, that was the command to start and stop the cassette motor.  Probably one of the least-used commands IBM BASIC ever had :)

  • Thanks 1

Share this post


Link to post
Share on other sites
7 hours ago, ChildOfCv said:

Yep, that was the command to start and stop the cassette motor.  Probably one of the least-used commands IBM BASIC ever had :)

Thanx, for some reason I can't remember, I thought it had something to do with the cassette interface, but as I never used tapes with it, I wasn't sure..

I only ever used it to make clicking noises.. ;-)

Share this post


Link to post
Share on other sites
11 hours ago, JFD62780 said:

I think I found another relevant video...

 

"Nobody ever used the cassette port."

 

"I must be nobody, because in 2020 I'm going to use the cassette port."

 

Come on, dude.

Edited by OLD CS1
Clarify the target of my comment is the video...

Share this post


Link to post
Share on other sites
11 hours ago, JFD62780 said:

I think I found another relevant video...

 

 

Was watching this video this morning a little.  Pretty interesting stuff.

Share this post


Link to post
Share on other sites

I like how the machine code is read from tape in segments and poked to the appropriate memory location with a loop.  Did other computers do this?

Share this post


Link to post
Share on other sites
2 hours ago, mr_me said:

I like how the machine code is read from tape in segments and poked to the appropriate memory location with a loop.  Did other computers do this?

It's weird though, because even cassette BASIC allows BLOAD, which pulls a binary file directly into memory.  The header format even clues BASIC in on where it needs to be poked, and how big it is, so it's not as if the user would have to run a huge incantation to load it in.

Share this post


Link to post
Share on other sites

Cool!

 

In the 90's, like 1990 I believe, I worked in a shop still using paper tape to drive machines.  Saved "Invaders.com" to tape and loaded it back in.

 

Should have kept that tape!

 

Paper tape is fun and visual, but is a lot like cassette in other ways.  Serial load.  Slow.  Though a good reader will beat a cassette in many cases.  Writing a tape is slower than a cassette in many cases.

 

And one gets an actual bit bucket with bits in it!

 

Nice video.  I never saw cassette used with a PC.

 

 

  • Like 1

Share this post


Link to post
Share on other sites
On 10/8/2020 at 12:16 AM, potatohead said:

Cool!

 

In the 90's, like 1990 I believe, I worked in a shop still using paper tape to drive machines.  Saved "Invaders.com" to tape and loaded it back in.

 

Should have kept that tape!

 

Paper tape is fun and visual, but is a lot like cassette in other ways.  Serial load.  Slow.  Though a good reader will beat a cassette in many cases.  Writing a tape is slower than a cassette in many cases.

 

And one gets an actual bit bucket with bits in it!

 

Nice video.  I never saw cassette used with a PC.

 

 

I'm not sure how to run a dos game from tape unless DOS supports cassette driver as well.

Share this post


Link to post
Share on other sites

Back in early 2019, Retrohun on Github modified two games (Archon and Boulder Dash) to load from the cassette port on the 5150 which followed an earlier effort to load games from the serial port. No drives needed. 

  • Like 1

Share this post


Link to post
Share on other sites

Just to be clear, I was talking about paper tape and loading a file from it onto the filesystem.

 

Loading it to be directly executed is likely possible, but that isn't what I did at the time.

 

I actually used the system to handle CNC programs.  Write tapes, read edit, write new ones, and the very occasional "append", which was literally taping a segment to the end of an already written tape!  Usually after trimming some portion of it in advance.

 

Also did some actual patches!

 

So a tape gets mangled.  One could read it, look at a printed program listing, or perhaps production drawing, to figure out what used to be in the mangled part, or what could work.

 

Literally, trim the tape to get two clean ends, load it into a machine, tape up a blank portion, then press punches to write that bit, one bit at a time!

 

Old school as hell.  Loved it.  I was 19'ish at the time.

  • Like 1

Share this post


Link to post
Share on other sites

The standard punched paper reader handled 10 characters per second which is slower than the fastest typists. But those were the very cheap machines priced at under $200. High end paper tape readers could read hundreds of characters per second with the fastest one I know of reading 1000 characters per second. Punch speeds were lower but some of the punch/readers had a sizable memory buffer and would continue outputting paper tape for long time if the roll was large enough. The DEC high speed punch was priced at $4,000 which might be a bit more than many PC owners were willing to contemplate. 

 

Many paper punch/readers were serial devices* and would readily hook up to any PC. The downside was the limited capacity. The GNT4606 manual estimates that a roll 8" (205 mm) in diameter would store 120,000 characters. Unrolled, that paper tape would be 1/5 of a mile long.  

 

* Not the DEC high speed but I remember DEC prices. 

  • Like 1

Share this post


Link to post
Share on other sites

I got about 170k on a full roll.  Was for a CNC laser they refused to let me network or put a PC next to.

 

They did not understand how much more gcode was going to the machine than they typically sent to punching machines.

 

 

Edited by potatohead
  • Like 1

Share this post


Link to post
Share on other sites
On 10/4/2020 at 4:09 AM, mr_me said:

Ibm sold the model without a floppy until 1987.  It was probably cheaper to source your own floppy drive than get the floppy model from ibm.

Well I mean it would have been cheaper to buy an entire computer from Compaq or AST than an IBM by 1987.

Share this post


Link to post
Share on other sites
On 10/26/2020 at 2:52 PM, potatohead said:

I got about 170k on a full roll.  Was for a CNC laser they refused to let me network or put a PC next to.

 

They did not understand how much more gcode was going to the machine than they typically sent to punching machines.

 

 

 

A well designed macro library with calls (which you CAN do in gcode) would shrink the total gcode size tremendously.  One such use I have seen, is the inclusion of a macro to handle matrix transformations, so that more easy to understand motions can be programmed on a multiaxis mill.  (Motion relative to the tool tip, rather than relative to the table, as the actual gcode coordinate system is.)  Another I saw was for a simple 3 axis machine, to cut letters. Each letter had a macro function, and could be called with a relative start position, and a macro function ID for that letter.

 

The issue with those old CNC machines though, was that they might not have enough actual RAM to contain a lot of macro routines.

Share this post


Link to post
Share on other sites
11 hours ago, bluejay said:

Well I mean it would have been cheaper to buy an entire computer from Compaq or AST than an IBM by 1987.

We did that with Compaq and Ast for clients.  Get the cheapest base model and put in more ram, faster hard drives, and better graphics cards.  We were servicing the computers so it didn't matter where the parts came from.

Edited by mr_me
  • Like 2

Share this post


Link to post
Share on other sites
7 hours ago, wierd_w said:

 

A well designed macro library with calls (which you CAN do in gcode) would shrink the total gcode size tremendously.  One such use I have seen, is the inclusion of a macro to handle matrix transformations, so that more easy to understand motions can be programmed on a multiaxis mill.  (Motion relative to the tool tip, rather than relative to the table, as the actual gcode coordinate system is.)  Another I saw was for a simple 3 axis machine, to cut letters. Each letter had a macro function, and could be called with a relative start position, and a macro function ID for that letter.

 

The issue with those old CNC machines though, was that they might not have enough actual RAM to contain a lot of macro routines.

The CNC machine might not have enough RAM but the paper tape reader I listed above could have 512K which is more than any paper tape roll could store even with some of the compressed encodings. It certainly would be possible to have the tape reader expand macros and pass the results to CNC machine. 

  • Like 1

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...

  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...