?

Log in

No account? Create an account
Programming Uphill Both Ways - Riffs and Licks
steelbrassnwood
steelbrassnwood
Programming Uphill Both Ways
Those of us who believe that programming has gotten too easy with all these sissy icons and windows (yes, you know who you are) might be pleased at the release of Hercules, an emulator for IBM mainframes. For my first programming class in college, I programmed PL/I on punchcards on an IBM S/360, and who could ever forget buying the special orange cards you used for your JCL statements and using them over and over until the operator at the RJE* room got mad at you when the dog-eared cards jammed the card reader.

* Remote Job Entry, ie, the room where you waited 45 minutes for the greenbar printout informing you of a syntax error on the fourth line of your program.

Tags:

8 comments or Leave a comment
Comments
rednoodlealien From: rednoodlealien Date: November 28th, 2004 11:51 am (UTC) (Link)
Oh, this is mega-cool. Maybe it can help me finally re-learn assembler.

When you said it was an "emulator" (and it calls itself an emulator, it's not just you) I thought you meant a garden-variety 3270 dumb terminal emulator, which is nothing to write home about. I've never heard of an actual *3270* emulator. :==8)
steelbrassnwood From: steelbrassnwood Date: November 29th, 2004 09:39 am (UTC) (Link)
An emulator is software that mimics a hardware platform (and maybe also an older software platform). 3270 emulators were software programs that pretended to be IBM green-screen hardware terminals. There are emulators for the Atari 2600 videogame console I had as a kid, for the original Macintosh, and even for the TI 99/4a, my first computer. And remember those programs we used to use to dial into GENIE? They were "terminal emulators."
steelbrassnwood From: steelbrassnwood Date: November 29th, 2004 09:41 am (UTC) (Link)
Oh, and the 3270 was a dumb terminal, not a computer. It connected to S/360s and S/370s and 3090s and other mainframes, but it was not itself a computer.
rednoodlealien From: rednoodlealien Date: November 29th, 2004 02:58 pm (UTC) (Link)
Correct as usual.
steelbrassnwood From: steelbrassnwood Date: November 29th, 2004 04:20 pm (UTC) (Link)
And they were smarter than most other dumb terminals. In fact, they're smarter than most web forms. If you typed a letter in a numeric field on a 3270, the terminal would beep as soon as you hit the key. A web programmer either has to write client-side code for every form to check that, or send the data all the way to the server to find out it was wrong.
rednoodlealien From: rednoodlealien Date: November 29th, 2004 04:37 pm (UTC) (Link)
Well, someone would have to code that. Was it actually checked on the "client"? I know what you're talking about and it's true it does flag it immediately, apparently without going back to the "server", but how can a dumb CRT terminal do that...? I think it must have gone back to the host.
steelbrassnwood From: steelbrassnwood Date: November 29th, 2004 04:40 pm (UTC) (Link)
I don't know the specifics, but the reaction was absolutely instantaneous, like you were pressing a button that said "Beep." I don't see why that couldn't have been built into the terminal's firmware, so that all the form designer had to do was tag the field with what data types it would accept, and the terminal would do the rest. I guess I'm thinking that this was coded once, not repeatedly, and not differently every time. Also to do that on a web form is really inefficient since you've got to fire a Javascript event with every keypress. (I think so, anyway; shunn is better at this than I am.)
rednoodlealien From: rednoodlealien Date: November 29th, 2004 04:51 pm (UTC) (Link)
Now I'm curious and I'll ask some techy people how it was actually done hardware-wise. The software for it is done in something called MFS. The code looks like something like this for a numeric unprotected field FIELDNM on the first line starting in the second position:

FIELDNM DFLD POS=(1,2),ATTR=(NUM,NOPROT)

More than anyone needed to know, but hey, on the rare occasion I know how to do something...
8 comments or Leave a comment