Do You Have a Working Paper Tape Reader?

A reader still has the first program he ever wrote in high school in 1976 preserved on paper tape. He would enjoy being able to read it again. Can you help?

Although I love the power and sophistication of today's computer systems, I still have nostalgic memories of the old machines, including their support systems like paper tape readers and writers. (See: How it was: Paper tapes and punched cards.)

In fact, one of my most prized possessions -- one that makes me smile every time I come into my office -- is the ASR-33 Teletype Terminal with integrated paper tape reader/writer, which I acquired last year. (See: Feast Your Eyes on My ASR-33 Teletype Terminal.)

This machine has attracted a lot of interest from readers. For example, I just received the following email from a guy we will call David Chesler (because that's his name):

Dear Mr. Maxfield, I still have the first program I ever wrote (a BASIC program to calculate factorials, written at the Bronx High School of Science for an HP 2000E in 1976) preserved on paper tape, and would enjoy being able to read it. (I got a lot of mileage out of that program, and the question "What if we throw it other than a positive integer?", leading to a Math Fair entry on the Gamma function that actually had very little to do with the question, and eventually an ongoing career as a software engineer.)

If I send you the tape, would you be able to read it for me? I would of course be more than happy to compensate you for your expenses, efforts, wear and tear on the ASR-33, and so forth. And if not, would you know where I might be able to get it read, either physically, or through optical recognition, or through hand-entering the thousand or so bytes that make up the program?

Of course I immediately replied that -- if my ASR-33 were fully functional -- I would be delighted to do this for David. Sad to relate, however, I'm still trying to find someone who can come and service the little rascal (my ASR-33, not David). Although the paper tape reader appears to work fine, the carriage-return / line-feed needs some attention.

I communicated this sad state of affairs to David. I also suggested that we could ask other EE Times readers if they could help, which leads us to this blog. Do you have the ability to read his ASCII-formatted tape and print out its contents? If so, please email me at max.maxfield@ubm.com and I'll connect you to David. Alternatively, do you know of someone who offers such a service? If so, please post this information as a comment below.

Thanks for posting the request, Max.The paper tape in question is about 56 cm long, and it seems to be 4 bytes per cm, so 224 characters.

Of course I could simply re-write it, and I don't know where I'd get a BASIC interpreter, but if there is too much human in the loop I'm not sure if it's "authentic". (Ideally I want my printout written with a type ball using a well-used ribbon. :-) ) OCR might feel authentic enough; I suppose I could type in each byte if the tedium doesn't induce errors, and write a quick translator. (Graphics is not my strength, so I can't write the program to read the image.)

IIRC, the ASR-33 paper tape reader and keyboard are independent from the printer and punch, unless you switch to off-line mode and turn on echo. So just reading the paper tape over the serial line (probably current loop rather than RS-232) should work fine, as long as you can set your serial input to 110 Baud.

Back when I was in high school and undergrad, like proper computer nerds I could read ASCII paper tape pretty well by eye. But that was a long time ago :-) But yes, it's pretty easy, especially with BASIC where each line starts with a line number and you know where the spaces are and you keep seeing the same keywords like GOTO over and over. ASM is even easier, where half the instructions are MOV. The hard part of doing it manually is that it's easy to screw up your program by mistranslating variable I for J and things like that.

[Pedantic note: Max has an ASR-33 (Automatic Send/Receive), which means it has paper tape reader and punch. The KSR-33 (Keyboard Send/Receive) does not have paper tape.]

Just as an aside, Air Zimbabwe in the old days used to have some paper tape punches connected to their reservation system. Most of the outstations were served by Telex (remember that) and messages were output to these punches by the Res system and the tapes were then sent to the relevant station on Telex using a machine like your KSR (in Zimbabwe we used to use Siemens machines. We only used to use 5-hole tape though - Baudot code, not Ascii.

@David: Actually, this would make a great project for your PICAXE -- you wouldn't need multiple LEDs -- just one light source underneath the tape and then a bunch of photo-diodes on top.

Re having to file down large photodiodes, you could always stagger them like:

0

1

2

3

4

5

6

7

Such that diodes 0,2,4,6 were reading one row of holes while diodes 1,3,5,7 were reading the adjacent row -- then when you progress the the next row you can assemble the data from the previous row... if you see what I mean.

You wouldn't need a motor -- you could just pull the tape through by hand.

@Max....even if your KSR33 does not carriage return and line feed, it should be able to read the tape and send the codes out on the RS-232 line to a PC which can then record them. However, depending on the state of your KSR, banging the print carriage against the end of the line might do some damage....I doubt it though, they were pretty rugged beasts.

Alternatively you could get 9 IR leds and 9 IR photodiodes and make your own reader, You will note that the feed holes are smaller than the data holes, this is so the position detecting photodiode will not sense the hole until it the data holes are well and truly aligned...like this

Data _______/""""""""""\_________

Feed __________/"""\___________

Sorry...tried to post a nice graphic but it would not do it.....

You'd have to get a small MCU to read the 8 data lines when the feed hole is detected, and then send it off in serial form to a PC. You'd also have to make up a guide to keep the paper tape straight as it passed your detector.

I could whip something like this up with a PICAXE but I don't have any paper tape. It also strikes me that you may have to find very small LEDs / diodes or file down some 3mm ones to fit......

BTW if the tape is only a few feet long you could read it manually. I have a graphic with the codes but no doubt that would not post here either....