RALPH@UHHEPG.BITNET (07/23/87)
Date: 22-JUL-1987 15:46:15.70 From: Ralph Becker-Szendy RALPH AT UHHEPG To: GATEWAY::"info-vax@kl.sri.com",RALPH Subj: Discussion of SMG routines I've been hearing a lot about the SMG routines here lately. They are definitely difficult to use; but doing complicated applications with several windows on the screen without them would be much worse. The nicest feature is its hardware-independence: you don't have to care whether the screen is a VT1xx or VT2xx. Unfortunately it can't be tailored for non-DEC VT220 compatibles (it would be nice and efficient if i could teach it to use all the possible escape-sequences of my Falco 5220). The real bad thing: they are NOT BUG FREE ! My little contribution to the recently mentioned bugs: when you have a large window (window being shorthand for virtual display), paste a smaller window over it, and move the small window around a lot (not unpaste and repaste it, but move it). Sometimes the small window should also extend over the pasteboard and get clipped. After moving it for 30 or 40 times, SMG gets confused, and does not repaint the large window the right way. Continuing to cruise around with the small window will eventually lead to complete confusion all over the screen. I haven't wasted any time on stuidying the cause in detail (my big window was in reverse, and the small one had a borderline), i just started working on other things, and put the windowing stuff on hold. I'll just wait for VMS 4.6 to be installed here (we are still at 4.2). If my program doesn't run then, i'll submit a SPR. Ralph Becker-Szendy University of Hawaii / High Energy Physics Group Disclaimer: The views expressed here are probably not endorsed by my employer. I hardly ever actually speak to my employer. Even our system manager stops smiling when i come by.
m1b@rayssd.RAY.COM (M. Joseph Barone) (08/18/87)
In article <8707230859.AA20058@ucbvax.Berkeley.EDU> RALPH@UHHEPG.BITNET writes: > The nicest feature is its hardware-independence: you don't have to care > whether the screen is a VT1xx or VT2xx. Unfortunately it can't be tailored > for non-DEC VT220 compatibles (it would be nice and efficient if i could > teach it to use all the possible escape-sequences of my Falco 5220). SMG routines support any Non-Digital terminal in the world, provided that it has an entry in TERMTABLE.EXE. DEC supplies you with a source file SMGTERMS.TXT which has entries for many (if not all) of their terminals. We have an additional file, called NONDECTERMS.TXT, which includes entries for the more prevalent terminal devices at our site. TERMTABLE.TXT is processed by the SMGBLDTRM.EXE program to create an image file called TERMTABLE.EXE. Our TERMTABLE.TXT looks like this: REQUIRE 'SYS$SYSTEM:SMGTERMS' ! contains definitions for DEC terminals REQUIRE 'NONDECTERMS' ! contains definitions for Non DEC terminals This is all documented in Vol 8B, System Routines, starting on page 3-27. (This is true for VMS V4.X documentation set.) In order to write your own terminal definitions, all you need is the terminal manual, the above reference manual, and some time. Another nice feature of TERMTABLE is that there is the capability to define 10 private strings to use as you wish using the SMG routine, SMG$GET_TERM_DATA. If anyone is interested, I have terminal entries for Zenith Z19s, Z29s, and Z39s in both ZDS and ANSI modes and entries for HDS (Human Design Systems) in 80 and 132 column modes. With these entries, any program using SMG routines works fine. As a side note, I found it quite humorous that the SWING source uses SMG routines and then checks to see if the terminal is in ANSI mode! My first modification to SWING was to remove this check. PS: Sorry for the late followup! Joe Barone ---------------------------> m1b@rayssd.RAY.COM {cbosgd, gatech, ihnp4, linus, mirror, uiucdcs}!rayssd!m1b Heroes have an infinite capacity for stupidity. Thus are legends born!