@mjkirk12: Forget the paper tape reader - who gets a private office with a door these days!
They don't let me out very often :-)
Remember that I'm theoretically working from a home office -- it's my choice to actually rent a real office (it makes what I do seem lime a real job LOL) -- I have one room in a really large (and not hugely populated) building owned by a company I know -- they are kind enough to give me a really good deal (and they threw in the office door)
The CR and LF were simply following the practice of manual typewriters. They usually had a big paddle connected to the carriage. At the end of a line you reached up and yanked the paddle left which by default would both return the carriage and rotate the platten to the next line position.
However, the paddle was actually a two-stage mechanism. If you pulled it gently you released the carriage to slide without advancing the platten and this was something you would do for example when correcting or sometimes filling out a form. There was not always a backspace key, since that was mechanically more complicated than using the paddle to free the carriage.
You could also rotate the platten independently by just gripping a wheel-shaped knob at the end of the carriage and turning it, which was typically set to click in half-line steps (and you could also adjust the return paddle to cause advance by 1, 1.5, or 2 steps).
So, the ASCII system was inspired by a litteral match to the typewriter mechanism which it was originally designed to drive. That is also where the BEL came from: manual typewriters had a bell you could set to warn you when you neared the right margin so you would think about how to choose the last word on the line or whether to break a word. The teletype repurposed this to alert operators to ends of messages.
Depending on the system and the software, sometimes you could specify how many NUL characters to send with a CR, to "time-pad" the output and allow the carriage to return fully to the left side. That is why sometimes, in movies or videos and such, or if you remember, the teletype would make a duh-duh-duh-duh type sound when it was "typing" and the carriage was at the left side. This was the "wait timing with NUL characters" that was common. How it actually sounded and looked depended on how far across the carriage it had typed the line it was on, which was directly proportional to the amount of time to return the carriage to the left. Shorter lines made the wait NULs sound and look different.
As a student at Roxbury Latin School, I also stored my first computer programs on paper tapes. They ran on the Harvard University SDS timeshare computer through a dial-up line. It seems that reading old paper tapes would be a great opportunity for a SmartPhone APP. The holes are very large so it ought to be possible to pull the paper tape across a black background and make an iPhone movie of the passing tape. The iPhone could be fixed about three inches above the tape and oriented along the long axis for a high resolution read. The camera has sufficient resolution to read at a much greater distance. Guides could keep the tape aligned in the center of the image. The motion could easily be tracked (no need for accurate speed control, just pull the tape) and each row of dots could be decoded. As I recall, the symbology was simple ASCII so the results could be directly reported in familiar text. After the decode, if the data were garbled, an option could be included to flip the orientation and / or direction of the data since the old tapes might not necessarily get fed rightside up [mirror image read reversing the bit sequence] or in start to end sequence [they might be reading end to start reversing the character sequence].
Ah I remember Star Trek. We played it back in 1978? Using ASR33's connected to a PDP10 mainframe. It was the main university computer, but if you joined the "computer club" you could buy CPU time by the second, I think a couple of bucks bought you enough to play star trek an hour a day for a month or equivalent "real work".
@stargazer: The asr33 was usually operated half duplex so it was usually one CR typed by you and a CR and LF sent by the computer. I do recall needing to use null padding though, So you would send <CR> <LF> <NUL> from your program to avoid the typing_something_on_return problem.
And you could ring the bell by entering <ctrl G> so you would put these on the paper tape for amusement.
In 1980 I had an ASR33 at home (in the shed) , it was hooked up to a card cage scavenged from a 6502 based space invaders video game, the circuitry for the coin mechanism switch and coil were modified minimally to make a 20mA serial circuit for the ASR33. I copied an EEPROM from an AIM65 development board with minor changes. The video memory and program memory were the same, so you could see your program and data as little dots on the screen. All of the program and data were entered using the ASR33, and programs were "saved" on paper tape. I recall I wrote a version of Conway's Life on it , and you needed to be careful not to overwrite program data. I did some of my preliminary research work for my Masters on it, even with severe restrictions (like all variable were two characters, beginning with a letter) , you could easily do monte-carlo studies on a dozen or so complex equations, you would just start it off, and come back an hour later.
I found the ASR33's were pretty reliable, but needed to be well oiled.
A Book For All Reasons Bernard Cole1 Comment Robert Oshana's recent book "Software Engineering for Embedded Systems (Newnes/Elsevier)," written and edited with Mark Kraeling, is a 'book for all reasons.' At almost 1,200 pages, it ...