[OT] Re: It's TGET not TPUT to get the data: Where do I start? [2 Attachments]
Mick P Graley <[email protected]>
| Newsgroups | gmane.comp.emulators.turnkey-mvs |
|---|---|
| Message-ID | <OFD80365BC.D078BC73-ON8025772F.0036A08B-8025772F.0037477B@csc.com> |
Crikey that brings back memories! I used to hand assemble 6502 machine code
for my Commodore VIC20 when I was a kid (~25 years ago). To this day I
cannot get out of my head that LDA# (load accummulator) is decimal 169 or
x'A9' - I used to code that a lot - can't remember the other op codes
though!
Cheers,
Mick.
From: Ron Hudson <[email protected]>
To: [email protected]
Date: 26/05/2010 01:19
Subject: Re: It's TGET not TPUT to get the data: [turnkey-mvs] Where do I start?
I started to throw together some code to
1) transfer 128 bytes from inbuf to display
2) '#' to bytes 0,1,2,3 to corrispond with Aidkey, ScreenLocation,
first'11', and it's screenlocation
3) search display for x'11''s and c'#' them and the next byte after them.
Bu I don't know enough about IBM 370 assembly language. My program (DSP2)
was kit-bashed from
Tommy's "Hello World" version 3 - basically I just put in a lot more stream
stuff. And I copied the loop
from the "Aid1" program
I am really no stranger to the concept of assembler,hand assembled 6502
code for an apple 1 I never
got around to getting. hand assembled Z80 code for the Polymorphic system
machine I got instead.
On Tue, May 25, 2010 at 4:33 PM, Rick Fochtman <[email protected]> wrote:
-------------------------------<snip>--------------------------------
I am looking at http://tommysprinkle.com/mvs/P3270/input.htm
Where Tommy says:
When we issue the TGET macro with the ASIS parameter specified,
TSO will issue a "Read Modified" command to the 3270 terminal.
The terminal will respond with (1) an AID or Action ID
character that identifies which key was the cause of input to
be accepted (Enter, PKxx, PAx, Clear), (2) the location of the
cursor when the input key was pressed and (3) fields with the
MDT bit set. The fields are returned starting with a x'11'
followed by a two byte encoded buffer address followed by the
data from the field. By scanning for the special code x'11' we
can find the start and end of each data field.
I think this looks like:
Aid/Action ID
Cursor Location
11 [Field Location] Field data
11 [Field Location] Field data
Followed by ??
<for each field with mdt set>
----------------------------------<unsnip>-------------------------------
That's pretty accurate. TGET will also tell you how many bytes were
read. You can scan the buffer for the X'11' byte with a TRT
instruction pretty handily. Just start it at the byte following the
previous X'11' byte, if any. Or you can zero out the buffer before
each TGET using a MVCL instruction.
Rick