|
Scott, I agree, the wording in the IBM manual is not clear, and certainly not correct English! But I think the intent is that, as a special case, SBA to (1,0) is allowed if the immediately following order is an SF (Start Field). This allows a field to start in row 1 column 1 without an attribute char taking up a position on the screen. Otherwise position (1,1) would be the attribute char (displays as blank), and the actual field would have to start in row 1 column 2. Seems to be a useful feature. But I guess not very many AS/400 programs use it. [In the 3270 world, the equivalent is an attribute char in (24,80), since 3270 allows fields to wrap back to the start of the screen. 5250 does not allow wrap.] In my case, I was able to program around it on the server side. But some tn5250 clients (e.g. Mochasoft, Hummingbird, and some IBM clients) seem to allow SBA to (1,0), or at least they ignore the SBA and the immediately following SF and use an implied attribute char of 0x20 (normal, green, non-input field) for text that starts in (1,1). So it would be nice if the open-source tn5250 did something similar. - Dave Edwards ----- Original Message ----- From: "Scott Klement" To: "Linux 5250 Development Project" <linux5250@xxxxxxxxxxxx> Sent: Monday, July 03, 2006 17:09 Subject: Re: [LINUX5250] tn5250 problem on Win32: SBA order to row 1 column 0 fails
Hi, Here's what I find in the IBM manual: "The row is equal to 1 and the column address is equal to 0,
followed
by an SF field starting in row 1, column 1. Any other use of 0
in row
or column address results in a parameter error." I've read that paragraph 5 or 6 times now, and I have no idea what
it
means. Is this saying that SBA always has the same parameters, 1
and 0?
And that it's always followed by an SF order? Or... what is that paragraph trying to tell me? Specifically, why
would a
server send an SBA with row 1, column 0? What does it do? ALSO, despite the subject line, this error has nothing to do with
Win32.
If the SBA handling is wrong, it's wrong in any client using lib5250
on
any platform. Here's the relevant code in lib5250 (session.c): .... We clearly don't allow X or Y to ever be 0. I hesistate to change
the
code without having any idea what the ramifications are. I need to understand why a host would try to set the buffer address to a
coordinate
that's not on the screen!
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.