Article 172158 of comp.os.vms: Tony Scandora 630-252-7541 wrote: > > In article <5nreft$ecs$2@mrnews.mro.dec.com>, everhart@arisia.gce.com (Glenn > C. Everhart) writes: > > > >I've heard that VEST doesn't really understand the TECO executable at > >all without a very large amount of custom pampering. If you want a > >native Alpha version of TECO, you're much more likely to succeed with > >Pete Siemsen's TECOC. The process by which TECO is VESTed to put > >into kits is truly Byzantine from the sound of it. > > It may be ugly, but it works. I've used it interactively and to run some > really complex VAX TECO macros, and it's flawless as far as I have seen, and > fast. Awright... since you raise the subject I might as well tell you the whole story... We had hired Larry Kilgallen to do testing for Alpha VMS. One of the things he was asked to test was VEST and the translated image environment. And Larry thought, "What better way to test VEST than to translate TECO?" And what a test it was! Whe he finally had it running, the score stood at VEST: 6, TECO: 1, in terms of bugs discovered. TECO's contorted macro code and utter lack of proper subroutine structure gave VEST a real wring-out. It had terrible problems staying on track; in many places it would get out of synch from the VAX instruction stream and start generating junk code. Ultimately, Larry had to create a huge .HIF (VEST entry point declarations) file that declared every single label in the TECO code. This worked. We shipped this version of TECO in Alpha VMS V1.5. After that, I was faced with the prospect of maintaining the sucker. Problem is, entry points in the .HIF are declared as absolute hex addresses, and here I wanted to fix a couple of bugs that would move the code. Clearly the process of generating the .HIF had to be automated. What I did was to insert marker comments into the VAX Macro source corresponding to all the .HIF declarations. In the build, we assemble TECO with VAX Macro, and the comments simply pass verbatim into the listings. After assembly and linking, an automated procedure scans the listings for the marker comments, relocates the listing addresses with the link map, and builds the .HIF file. This is then fed to VEST along with the VAX executable to produce the Alpha image. The automated procedure? Oh, yes... Clearly it's a TECO macro.