Re: Fw: BXLE instruction

2024-06-09 Thread Gabe Goldberg

Thank you, Bill Collier, for your note reminding me of the fun we had in those 
days (Summer 1968) when you taught and I attended 
hardware/software/architecture/programming classes.

From: William Collier
Sent: Wednesday, November 2, 2022 11:27 AM
To: Seymour J Metz
Subject: BXLE instruction

To:  Seymour J Metz mailto:sme...@gmu.edu>>

Hi,

  Last night I enjoyed reading your comment on the IBM-MAIN
listserv:

The slickest thing that I saw in OS/360 was code testing
successive bits using BXH and BXLE.

  I would like to respond with the note below.  I have followed
(I believe) all the directions for creating a password in order
to be allowed to post a note responding to your note.  It hasn't
worked (yet).  Would you, in the interest of timeliness, be
willing to post the note below on my behalf?  If not, that's OK.
I will figure it out.

Bill Collier

==

Re: End of several eras

  Back in 1965 IBM Poughkeepsie our job was to write an operating
system for System/360 which would fit into 1K bytes (sic) of an
8k byte machine.  I figured out how to use a BXLE instruction to
both test and advance a bit string in a register.  It saved us
maybe 30-some bytes.  I described this in IBM TR 00.1412-1, June
22, 1966.  Thank you, Seymour Metz, for your note reminding us of
the fun we had in those days.

  Bill Collier
  coll...@acm.org

--
Gabriel Goldberg, Computers and Publishing, Inc.   g...@gabegold.com
3401 Silver Maple Place, Falls Church, VA 22042   (703) 204-0433
LinkedIn: http://www.linkedin.com/in/gabegoldTwitter: GabeG0

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: BXLE instruction

2024-06-09 Thread Seymour J Metz
No, SELECT does something very different; it stops after the first successful 
test. The code as shown performs every test, in sequence. Each test depends on 
the previous test to shift the register left one bit.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר


From: IBM Mainframe Discussion List  on behalf of Jim 
Thomas 
Sent: Sunday, June 9, 2024 3:51 PM
To: IBM-MAIN@LISTSERV.UA.EDU
Subject: Re: BXLE instruction

My Apologies  Clicked send before I was done ...

SELECT BRXH R15,R15,NZ
WHEN (16)
   something ..
 WHEN (8)
something ..
  ENDSEL ,

If so desired, you could have IF statements with your WHEN ... e.g. let's say 
you want to check for a reason code of 200 in R0 ..

   WHEN (4)
IF (CHI,R0,EQ,200)
 something
ENDIF , (or, ELSEIF for another IF)

From: IBM Mainframe Discussion List  on behalf of Jim 
Thomas 
Sent: Sunday, June 9, 2024 2:33 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: BXLE instruction

Seymour,

I'd use a SELECT rather than an IF (since you're looking for more than one 
possibility) but ... none the less (and using branch relative) ...

BRXH R15,R15,non_zero 
Continue for R15 = zero ..

Kind Regards
Jim Thomas

From: IBM Mainframe Discussion List  on behalf of 
Seymour J Metz 
Sent: Sunday, June 9, 2024 1:25 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Fw: BXLE instruction

I meant to repost this last year but it slipped through the cracks. If anyone 
can help Bill with his registration issue I'd appreciate it. Also, if anybody 
has a machine-readable copy of the TR I'd love to see it.

The trick in question relies on the use of the same odd register as the R1 and 
R3 in BXH,  BXHG, BXLE, BXLEG, JXH, JXHG, JXLE and JXLEG. You can only test 30 
consecutive bits with the 32-bit version and 62 with the 64-bit version; the 
high and low bits should be zero. The code, arbitrarily picking GR 1 as the odd 
register, looks something like:

 L R1,STATUS
 IF(BXH,R15,r15)
 action 1
 ENDIF
 ...
 IF(BXH,R15,r15)
 action 30
 ENDIF
...
STATUS   DCA.1(0,flag1,...,flag31,0)

Where the test is a BXH or BXLE depending on which way you want to test.

If you have to work it out with pencil and paper in order to understand what's 
going on, welcome to the club. I thought that it was slick the first time I saw 
it, and I still  think so. I think it would be a good example in PoOps.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר

From: William Collier 
Sent: Wednesday, November 2, 2022 11:27 AM
To: Seymour J Metz
Subject: BXLE instruction


To:  Seymour J Metz mailto:sme...@gmu.edu>>

Hi,

  Last night I enjoyed reading your comment on the IBM-MAIN
listserv:

The slickest thing that I saw in OS/360 was code testing
successive bits using BXH and BXLE.

  I would like to respond with the note below.  I have followed
(I believe) all the directions for creating a password in order
to be allowed to post a note responding to your note.  It hasn't
worked (yet).  Would you, in the interest of timeliness, be
willing to post the note below on my behalf?  If not, that's OK.
I will figure it out.

Bill Collier

==

Re: End of several eras

  Back in 1965 IBM Poughkeepsie our job was to write an operating
system for System/360 which would fit into 1K bytes (sic) of an
8k byte machine.  I figured out how to use a BXLE instruction to
both test and advance a bit string in a register.  It saved us
maybe 30-some bytes.  I described this in IBM TR 00.1412-1, June
22, 1966.  Thank you, Seymour Metz, for your note reminding us of
the fun we had in those days.

  Bill Collier
  coll...@acm.org


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Doc Feedback lock

2024-06-09 Thread Paul Gilmartin
When I click a Feedback link ("Was this topic helpful?") on a doc
web page such as
,
all feedback links are locked (“🚫”) for a while.  OK; they're limiting 
bandwidth.
o But they should document that they're doing this.
o And they should document the length of the lockout.
 And the lockout occurs even if I Cancel rather than Submit.
  I consider that a bug, but there's no way to report it.

I Miss the RCF process.

-- 
gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: BXLE instruction

2024-06-09 Thread Jim Thomas
My Apologies  Clicked send before I was done ...

SELECT BRXH R15,R15,NZ
WHEN (16)
   something ..
 WHEN (8)
something ..
  ENDSEL ,

If so desired, you could have IF statements with your WHEN ... e.g. let's say 
you want to check for a reason code of 200 in R0 ..

   WHEN (4)
IF (CHI,R0,EQ,200)
 something
ENDIF , (or, ELSEIF for another IF)

From: IBM Mainframe Discussion List  on behalf of Jim 
Thomas 
Sent: Sunday, June 9, 2024 2:33 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Re: BXLE instruction

Seymour,

I'd use a SELECT rather than an IF (since you're looking for more than one 
possibility) but ... none the less (and using branch relative) ...

BRXH R15,R15,non_zero 
Continue for R15 = zero ..

Kind Regards
Jim Thomas

From: IBM Mainframe Discussion List  on behalf of 
Seymour J Metz 
Sent: Sunday, June 9, 2024 1:25 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Fw: BXLE instruction

I meant to repost this last year but it slipped through the cracks. If anyone 
can help Bill with his registration issue I'd appreciate it. Also, if anybody 
has a machine-readable copy of the TR I'd love to see it.

The trick in question relies on the use of the same odd register as the R1 and 
R3 in BXH,  BXHG, BXLE, BXLEG, JXH, JXHG, JXLE and JXLEG. You can only test 30 
consecutive bits with the 32-bit version and 62 with the 64-bit version; the 
high and low bits should be zero. The code, arbitrarily picking GR 1 as the odd 
register, looks something like:

 L R1,STATUS
 IF(BXH,R15,r15)
 action 1
 ENDIF
 ...
 IF(BXH,R15,r15)
 action 30
 ENDIF
...
STATUS   DCA.1(0,flag1,...,flag31,0)

Where the test is a BXH or BXLE depending on which way you want to test.

If you have to work it out with pencil and paper in order to understand what's 
going on, welcome to the club. I thought that it was slick the first time I saw 
it, and I still  think so. I think it would be a good example in PoOps.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר

From: William Collier 
Sent: Wednesday, November 2, 2022 11:27 AM
To: Seymour J Metz
Subject: BXLE instruction


To:  Seymour J Metz mailto:sme...@gmu.edu>>

Hi,

  Last night I enjoyed reading your comment on the IBM-MAIN
listserv:

The slickest thing that I saw in OS/360 was code testing
successive bits using BXH and BXLE.

  I would like to respond with the note below.  I have followed
(I believe) all the directions for creating a password in order
to be allowed to post a note responding to your note.  It hasn't
worked (yet).  Would you, in the interest of timeliness, be
willing to post the note below on my behalf?  If not, that's OK.
I will figure it out.

Bill Collier

==

Re: End of several eras

  Back in 1965 IBM Poughkeepsie our job was to write an operating
system for System/360 which would fit into 1K bytes (sic) of an
8k byte machine.  I figured out how to use a BXLE instruction to
both test and advance a bit string in a register.  It saved us
maybe 30-some bytes.  I described this in IBM TR 00.1412-1, June
22, 1966.  Thank you, Seymour Metz, for your note reminding us of
the fun we had in those days.

  Bill Collier
  coll...@acm.org


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: BXLE instruction

2024-06-09 Thread Jim Thomas
Seymour,

I'd use a SELECT rather than an IF (since you're looking for more than one 
possibility) but ... none the less (and using branch relative) ...

BRXH R15,R15,non_zero 
Continue for R15 = zero ..

Kind Regards
Jim Thomas

From: IBM Mainframe Discussion List  on behalf of 
Seymour J Metz 
Sent: Sunday, June 9, 2024 1:25 PM
To: IBM-MAIN@LISTSERV.UA.EDU 
Subject: Fw: BXLE instruction

I meant to repost this last year but it slipped through the cracks. If anyone 
can help Bill with his registration issue I'd appreciate it. Also, if anybody 
has a machine-readable copy of the TR I'd love to see it.

The trick in question relies on the use of the same odd register as the R1 and 
R3 in BXH,  BXHG, BXLE, BXLEG, JXH, JXHG, JXLE and JXLEG. You can only test 30 
consecutive bits with the 32-bit version and 62 with the 64-bit version; the 
high and low bits should be zero. The code, arbitrarily picking GR 1 as the odd 
register, looks something like:

 L R1,STATUS
 IF(BXH,R15,r15)
 action 1
 ENDIF
 ...
 IF(BXH,R15,r15)
 action 30
 ENDIF
...
STATUS   DCA.1(0,flag1,...,flag31,0)

Where the test is a BXH or BXLE depending on which way you want to test.

If you have to work it out with pencil and paper in order to understand what's 
going on, welcome to the club. I thought that it was slick the first time I saw 
it, and I still  think so. I think it would be a good example in PoOps.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר

From: William Collier 
Sent: Wednesday, November 2, 2022 11:27 AM
To: Seymour J Metz
Subject: BXLE instruction


To:  Seymour J Metz mailto:sme...@gmu.edu>>

Hi,

  Last night I enjoyed reading your comment on the IBM-MAIN
listserv:

The slickest thing that I saw in OS/360 was code testing
successive bits using BXH and BXLE.

  I would like to respond with the note below.  I have followed
(I believe) all the directions for creating a password in order
to be allowed to post a note responding to your note.  It hasn't
worked (yet).  Would you, in the interest of timeliness, be
willing to post the note below on my behalf?  If not, that's OK.
I will figure it out.

Bill Collier

==

Re: End of several eras

  Back in 1965 IBM Poughkeepsie our job was to write an operating
system for System/360 which would fit into 1K bytes (sic) of an
8k byte machine.  I figured out how to use a BXLE instruction to
both test and advance a bit string in a register.  It saved us
maybe 30-some bytes.  I described this in IBM TR 00.1412-1, June
22, 1966.  Thank you, Seymour Metz, for your note reminding us of
the fun we had in those days.

  Bill Collier
  coll...@acm.org


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Fw: BXLE instruction

2024-06-09 Thread Seymour J Metz
I meant to repost this last year but it slipped through the cracks. If anyone 
can help Bill with his registration issue I'd appreciate it. Also, if anybody 
has a machine-readable copy of the TR I'd love to see it.

The trick in question relies on the use of the same odd register as the R1 and 
R3 in BXH,  BXHG, BXLE, BXLEG, JXH, JXHG, JXLE and JXLEG. You can only test 30 
consecutive bits with the 32-bit version and 62 with the 64-bit version; the 
high and low bits should be zero. The code, arbitrarily picking GR 1 as the odd 
register, looks something like:

 L R1,STATUS
 IF(BXH,R15,r15)
 action 1
 ENDIF
 ...
 IF(BXH,R15,r15)
 action 30
 ENDIF
...
STATUS   DCA.1(0,flag1,...,flag31,0) 

Where the test is a BXH or BXLE depending on which way you want to test.

If you have to work it out with pencil and paper in order to understand what's 
going on, welcome to the club. I thought that it was slick the first time I saw 
it, and I still  think so. I think it would be a good example in PoOps.

--
Shmuel (Seymour J.) Metz
http://mason.gmu.edu/~smetz3
עַם יִשְׂרָאֵל חַי
נֵ֣צַח יִשְׂרָאֵ֔ל לֹ֥א יְשַׁקֵּ֖ר

From: William Collier 
Sent: Wednesday, November 2, 2022 11:27 AM
To: Seymour J Metz
Subject: BXLE instruction


To:  Seymour J Metz mailto:sme...@gmu.edu>>

Hi,

  Last night I enjoyed reading your comment on the IBM-MAIN
listserv:

The slickest thing that I saw in OS/360 was code testing
successive bits using BXH and BXLE.

  I would like to respond with the note below.  I have followed
(I believe) all the directions for creating a password in order
to be allowed to post a note responding to your note.  It hasn't
worked (yet).  Would you, in the interest of timeliness, be
willing to post the note below on my behalf?  If not, that's OK.
I will figure it out.

Bill Collier

==

Re: End of several eras

  Back in 1965 IBM Poughkeepsie our job was to write an operating
system for System/360 which would fit into 1K bytes (sic) of an
8k byte machine.  I figured out how to use a BXLE instruction to
both test and advance a bit string in a register.  It saved us
maybe 30-some bytes.  I described this in IBM TR 00.1412-1, June
22, 1966.  Thank you, Seymour Metz, for your note reminding us of
the fun we had in those days.

  Bill Collier
  coll...@acm.org


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN


Re: DSNTEP2 problem

2024-06-09 Thread Binyamin Dissen
Peter, 

The clue is 

READY 
 DSN SYSTEM(DB2V) 
READY  ==  RUN
PROGRAM(DSNTEP2) PLAN(DSNTEP1) LIB('DB2.DBV.SDSNSAMP')  

For some reason the DSN command just ended. I do not recall that happening
without an indication of an error.

The following RUN command was not the DSN RUN subcommand, but the TSO RUN
command - which has a completely different syntax.


On Thu, 6 Jun 2024 11:57:41 + Peter Relson  wrote:

:>
:>RUN  PROGRAM(DSNTEP2) PLAN(DSNTEP1) LIB('DB2.DBV.SDSNSAMP')
:>IKJ56712I INVALID KEYWORD, PLAN(DSNTEP1)
:>

:>I'm surprised that TSO parsing (and given that we see an IKJ message, it 
seems that TSO parsing is being used, not necessarily by TSO itself) would 
consider a "bad value" (especially when the possible values are not knowable to 
a parser) to be an "INVALID KEYWORD" (as opposed to if the user had coded 
PLANN(DSNTEP1) it might have complained that PLANN was an invalid keyword.

:>Peter Relson
:>z/OS Core Technology Design

--
Binyamin Dissen 
http://www.dissensoftware.com

Director, Dissen Software, Bar & Grill - Israel

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN