Posted on 08/17/2016 10:29:43 AM PDT by zeugma
I was poking around some old data today from some old backups, and I ran across something the old time computer folks will recognize and thought I'd share.
Many, many moons ago, before the internet was much more than a few government systems set up to 'talk' to each other, we still had PCs and stuff, believe it or not. Granted, compared to the system you can buy for a few hundred dollars today from just about anywhere on the internet, they weren't much, but they were what we had.
There were also things called "magazines" printed on thinly sliced dead trees. These covered just about any topic you could imagine, so of course, there were some dedicated to computers.
In some of these periodicals, you'd sometimes have little programs printed that you could, if you were careful and didn't make any mistakes, enter into an editor on your computer, save, compile and execute. Some were so tiny that if you were using a computer that used the DOS operating system, you could enter into a program called "debug", and almost immediately execute them. Debug was a really powerful and dangerous program, because it would give those who invoked it direct access to just about any scrap of memory or disk on your computer. Used injudiciously, you could easily trash your hard disk, or worse.
Because DOS didn't really have much intelligence to it, it was difficult to write interactive scripts. So, over time I put together a collection of tiny utilities to make my batch files smarter. One such program would read what key you entered, and output the scan code of the key as an error code. So, you could have your batch file prompt for input, then take different actions depending upon what the user entered.
here's the code for "key.com".
N KEY.COM E 0100 B4 00 CD 16 EB 0E 77 06 3C 60 76 02 E 010C 24 DF 3C 00 75 02 88 E0 B4 4C CD 21 RCX 0018 W Q
If you entered the above into a plain text file, and saved it as KEY.SCR, then enter the following from a DOS prompt:
DEBUG < KEY.SCR
you would end up with a program called KEY.COM that would interpret and echo keystrokes to help your batch files a little smarter than they otherwise would be.
The program, KEY.COM is tiny, weighing in at a whopping 24 bytes. However, it's diminutive size did not adversely affect it's utility. An even smaller pair of programs were something I called "WARM.COM" and "COLD.COM". They would reboot your PC immediately. 'Warm.com' was the equivalent of pressing the [ctrl]-[alt]-[delete] key, which would reboot without performing a full POST (Power On Self-Test). 'Cold.com', on the other hand, was like powering your computer off and back on.
If you were to run the following through DEBUG as shown above, you'd create both programs.
N WARM.COM E 0100 B8 40 00 8E C0 26 C7 06 E 0108 72 00 34 12 EA 00 00 FF E 0110 FF RCX 0011 W N COLD.COM E 0100 B8 40 00 8E C0 26 C7 06 E 0108 72 00 00 00 EA 00 00 FF E 0110 FF RCX 0011 W Q
It is easy to spot the difference between the two programs. The bottom line, was that the program told your computer to jump to a certain memory location. The different locations controlled the different boot types.
One final debug script I'd like to mention is 'BEEP.COM'. It wasn't the most powerful program in the world, as it had one simple job to do. It would make your computer speaker beep once. That's it. What is cool about it (to me any way) was that the entire executable was a whopping 6 bytes! To this day, I've never seen a smaller functional program. Here it is, in all it's awesome and tiny glory:
N BEEP.COM E 0100 B8 07 0E CD 10 C3 RCX 0006 W Q
The dates associated with the files indicates how long ago I was talking about...
-rw-r--r-- 1 zeugma zeugma 6 Jan 28 1994 BEEP.COM -rw-r--r-- 1 zeugma zeugma 56 Mar 11 1995 BEEP.SCR -rw-r--r-- 1 zeugma zeugma 17 Dec 22 1991 COLD.COM -rw-r--r-- 1 zeugma zeugma 94 Feb 13 1996 COLD.SCR -rw-r--r-- 1 zeugma zeugma 24 Dec 6 1992 KEY.COM -rw-r--r-- 1 zeugma zeugma 17 Dec 22 1991 WARM.COM -rw-r--r-- 1 zeugma zeugma 94 Feb 13 1996 WARM.SCR
And does anyone remember 1dir+? I loved that program. Used it for years.
Remember CP/M well. Started with 1.4 in 1976, graduated to 2.2. Wrote a “Game of Life” program in Assembler that moved the characters on the monitor, which was a DMA device, so it moved pretty quickly. Even got the screen to act as a flat representation of a globe, so if you moved off one edge of the screen, it rolled to the opposite edge and continued.
IIRC, we had 16K of memory in the initial configuration, which took up 4 slots on the S-100 bus!
1982
Unix PDP 1130
Installed the RS Board and sent data to a sister location in Salt Lake City over the phone system.
Hey, Al Gore invented it, right?
I have been hooked ever-since.
I’m probably a newbie to talk MacPlus circa 86, IIRC. My son was a good artist in HS. He started on MacPaint. I nought Aldus (?) PageMaker and he did many things for the school. Then adobe Illustrator. He’ll be 47 this year and manages a supermarket chain marketing department. He still uses Illustrator 100.2 or some such version. All from drawing spiderman on MacPaint.
Back in those DOS days the single most useful program I had was called HyperDisk and it was a set of utilities that also included HyperKey and HyperMemory (i think)
The speed disk did disk caching, so any programs that swapped or wrote to disk worked hundreds of times faster. You would execute a ‘write’ command and it would immediately return, but you would hear beeps every second while the caching program actually wrote it.
Hyperkey sped up your keystrokes and repeats- a big deal back then.
Those were two of the best software programs I ever used, and they never ever crashed (also a big deal back then)
The company owner refused to buy ad space in PC MAG and so the next time D-BASE came out with a new version that was fastest ever, OC MAG found out they were actually using HyperDisk to cache writes. So PC MAG bad-mouthed HyperDisk, when it was D-BASE that had issues.
So I stopped subscribing, and shortly around that time discovered Rush Limbaugh, and then FreeRepublic (around the time Bill was disgracing himself with interns)
OMG! I’m so old. I even once figured out how a dial tone at 90 Hz ever made it through the hard wires to your ear in that handset. Turns out the lines (~300-3KHz) couldn’t transmit the 90 90 Hz we normally hear but the human ear has a mixer effect that tends to emphasize the lowest intermodulation product of two tones. The actual tones were a combination of TWO tones: 350Hz and 260 Hz ( during my time) and later 350 and 440 Hz later. The difference (an intermod product) being 90 Hz.
Just a useless fact now.
pfftt. I was writing code in the late 70s. Much like you, I also used programs printed in magazines.
Dude! I was so proud of myself when I found out how to open the “Star-Trek” game inside fortran. The Klingons didn’t have a chance!
I assumed that they mounted my tapes (sounded icky then, too) when my job came up in the queue. Somebody did ... I was never around to watch. Program all day, hang tapes, submit job, go home. Look for output in the morning.
Lather, rinse, repeat.
VAX was much more fun. So were PCs and Workstations when I got to them.
The Star Trek game was awesome.
I remember Himem.
There was also a company called Quarterdeck that made a memory manager called QEMM.SYS
It would not load under Microsoft DOS. Until I found that if you renamed it to MEMM.sys (replacing th first letter with anything) it would run perfectly. Then I discovered through a binary file search that the string QEMM.SYS was in the COMMAND.COM file- and it would refuse to load it.
Quarterdeck should have OWNED microsoft for that...
I started my Engineering degree in 1985 and we were still using punch cards for CAD/CAM. I remember my Commodore 128 spreadsheet. I would enter my data and hit “calculate” and go eat dinner as the spreadsheet made the calculations.
I never thought this interweb thingy would ever catch on.
Plus, we used paper tape with holes punched in it to run through readers. Sometimes, we used a little hand tool to punch holes manually. The tool was called a ‘chicken plucker.’
yah in the air force i worked on a system that used iron ferrite core memory...wires with a little pieced of ferrite to store the state. Hard to convey that to anyone today.
During a tour of an engineering school, 1960 or so, I looked behind the metal case of a computer. The device was a matrix (similar to a 3D chess board) of stiff wires that had a bead of metal at each junction. That was the brains of the computer.
My favorite was Lotus 1.2.3. on VAX/VMS. I themed the range names so that reading a block of them told a story. It was a massive program that I later had to write again from scratch with Virtual Basic for Applications.
They were called transmitter distributors, formally. The holes were round, the paper tapes durable enough to reuse, and the holes numbered 5. 2^5 power equals 32 separate codes. Enough for the alphabet and shift uppercase to catch numbers, etc.
My very first “online” program was one I copied off of a magazine (can’t remember the name). It was several pages of machine-level hexadecimal codes that I saved to a file and ran through debug to produce a .com file. I remember using a ruler to make damned sure I got every line right!
When I fired up the application, my screen came up with a prompt to enter the phone number of the bulletin board to which I wanted to connect. I typed it in, hit ENTER, and heard my modem go! I listened and heard the handshake, then boom! The bulletin board came up! This was in the late 80’s as I recall.
See post #56
Disclaimer: Opinions posted on Free Republic are those of the individual posters and do not necessarily represent the opinion of Free Republic or its management. All materials posted herein are protected by copyright law and the exemption for fair use of copyrighted works.