Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!tut.cis.ohio-state.edu!ucbvax!amdahl.UUCP!terry From: terry@amdahl.UUCP ("Lewis T. Flynn") Newsgroups: comp.lang.asm370 Subject: Re: (none) Message-ID: <9003132139.AA25364@lilac.berkeley.edu> Date: 13 Mar 90 19:43:47 GMT Sender: daemon@ucbvax.BERKELEY.EDU Reply-To: IBM 370 Assembly Programming Discussion List Distribution: inet Organization: The Internet Lines: 27 In article <9003122231.AA00613@lilac.berkeley.edu> IBM 370 Assembly Programming Discussion List writes: >On Wed, 7 Mar 90 12:37:19 GLT Bill Vlachoudis said: >>Hi, does anyone knows any smart|small algorithm, how to get >>the 3270 buffer address codes from Row and Column? > > Sure, you have to know the width of the screen in characters. >Typically it's 80, but on a "model 5" it'll be 132. > [other stuff omitted] An alternative is to ask CP what's the shape of the screen. It's been a while and I have no manuals handy so I'll probably get the details wrong, but as of VM/SP4, CP does a "write structured field-query" to all tubes genned as 3278s (or later devices) when the tube is enabled. The results of this information is available from a diagnose and includes the geometry of the screen. As this query can sometimes fail, you may want to do the query yourself (like XEDIT does). If this fails, there is another diagnose which will tell you the genned device model (like 2, 3, or 4). This is necessary as there are now more shapes than there used to be: 48x80 for 3193s, 62x160 for 3290s, etc. Given the shape as a parameter, it's not too hard to derive a subroutine (or macro) which will convert row/column values to buffer address. The 3x74 manuals give tables in gory detail, but also explain the format well enough so that they are understandable (with a little effort 8-). Terry