HOW WE GOT THE HIGH-LEVEL ASSEMBLER by Sam Golob We have to be very grateful for many things that have come to us without our having to exert an effort to get them. If we work as a programmer on an IBM mainframe, well of course, we have the Assembler program available to us. But the fact is, that our current Assembler program, called the "High-Level Assembler" or ASMA90, came to us through the great effort of a very few individuals, and we owe them a lot. I'm writing this, sadly, on the occasion of the passing of one of these individuals, my dear friend David B. Andrews, who worked at the very benevolent firm of A. Duda and Sons, in Oviedo, Florida, near Orlando. Dave, and his former manager, Bill Winters, who has also passed on, exerted a huge, huge effort to influence IBM to ACCEPT (not CREATE) the many modifications to the former assembler, "Assembler H", written by Greg Mushial of the Stanford Linear Accelerator Center (SLAC) around 1981. Since I'm mentioning some of the individuals involved in our being able to have the High-Level Assembler, of course I have to mention the main individual within IBM, John Ehrman. Before coming to IBM, John had worked at SLAC, and therefore was familiar with the many enhancements to Assembler H (known as IEV90) that were made by Greg Mushial, who was a former colleague of John's. The "SLAC Assembler", as Greg's enhancements to IBM's Assembler H were known, was the shop standard at SLAC. Both the people at SLAC, and John Ehrman, now with IBM, had a very fervent wish that IBM would "pick up" Greg's large scale modifications. As an aside, just a few of the SLAC modifications to the assembler were: Labeled USINGs, USING report at the top of each page, Macro and Copy cross-reference, and about 60 others, that most Assembler programmers take completely for granted these days. Believe me (I was there)! IT WASN'T EASY FOR US TO GET THESE FEATURES. THE OBSTACLES Problem number one. SLAC was a VM shop, not an MVS shop. As such, SLAC was not entitled to get microfiche from IBM with the PTF updates to Assembler H. SLAC had to stay at base level. Since Greg's changes to the Assembler were the shop standard at SLAC, SLAC couldn't upgrade their copy of the Assembler. This was also everybody else's problem as well, if they wanted to use the SLAC Assembler. Copies of the SLAC Assembler were (at that time) being informally distributed around the country to IBM licensees (in my area, at the CUNY Data Center in New York). Enter Bill Winters. Bill worked at A. Duda and Sons, and he wanted the SLAC Assembler to be the shop standard there, as well. But the difference was that Duda was an MVS shop, and they were entitled to microfiche updates of the Assembler H source code, with each ensuing PTF upgrade. What did Bill do? He did something AMAZING..... I still can't get over it. Bill typed in all of the Assembler H updates to the source code, directly from the fiche, helped by his secretary, who still works at Duda. Then, with each PTF, Bill assembled the source code for the Assembler until it exactly matched the object decks for each PTF. Now he had machine-readable source code at each PTF level for the Assembler. To this source code, Bill then fitted the IEBUPDTE-format updates for the SLAC modifications, so they worked correctly AT THAT PTF LEVEL. So because of Bill's efforts, the SLAC Assembler could remain the shop standard at Duda, but at the current PTF level. BILL KEPT THIS UP FOR EIGHT YEARS, UNTIL PUT 8908.!!!! When word got out about Bill's efforts, Duda was able to get working copies of the SLAC Assembler to other shops which were MVS licensees. It was then, that the effort to get IBM involved, picked up steam. At SHARE, someone submitted a requirement for IBM to adopt the SLAC mods to Assembler H. IBM rejected the requirement as being "technically impossible". We answered IBM that: "We've got it running". Amazing. Bill Winters, over the years, had typed in over 6000 lines of additional source code to the Assembler, including all of the DBCS code updates. Everything worked, including the SLAC mods themselves. WE ACTUALLY HAD IT RUNNING! But IBM, being IBM, was stubborn. It took over three more years of campaigning by us, to get the job done. THE SHARE ASSEMBLER COMMITTEE This is when I became really good friends with Dave Andrews. John Ehrman, Dave Andrews, Bill Winters, and I were involved in organizing the "Share Assembler Committee" for the purpose of getting IBM to support the SLAC mods to the Assembler. I became chairman of the committee first. Before coming to SHARE in Orlando (in 1990 or so) I bound up a thick JES2 assembler listing, done with the SLAC mods at PTF level 8908. I carried the listing around at SCIDS, showing it to everybody. (They remember.) As chairman to the Share Assembler Committee, I was the only one outside of IBM who was allowed to call the Assembler Level 2 support person at IBM. Nine-tenths of his time was being used to support PL/I. The other tenth was for the Assembler. And he was the only one working on it. Obviously, IBM had to "open up development" and assign more people, if the Assembler was to be improved. In January of 1991 I lost my job, and could not go to SHARE. Dave Andrews became the head of the Share Assembler Committee. I heard nothing until around March 1992, when IBM announced the "High Level Assembler" to the public for the first time. I called Dave up, and asked him why I hadn't heard anything. He answered that: "I was under non-disclosure." (That's Dave.) We did it. Thank God. So there you have it! I apologize profusely to anyone involved, whose name I did not mention. During the time Dave was involved in my place, I don't know what happened, or who was involved then. Sorry about that, but thanks tons, anyway. We are grateful to all of you...... You know who you are! Unfortuately, I can't ask Dave about that stuff. (It's tempting.) Also, unfortunately, John Ehrman passed away, as well, several years ago. But of course, many thanks to Greg Mushial, for getting it all started.