Re: code comments

2012-02-13 Thread Bernd Oppolzer

Sorry,
should have been "... less than or equal to 256 ..."
Kind regards
Bernd


Am 13.02.2012 00:08, schrieb Steve Smith:

There seems to be a common misconception that MVC can't move 256 bytes.
It certainly can.  It cannot move zero bytes, but that's not much of a
limitation.

On 2/12/2012 17:45, Bernd Oppolzer wrote:


which I would normally use to handle the situation
(if the VARCHAR is known to be of length less than 256)
does not seem enough complicated or error-prone to me,
that the use of a macro would be justified.






SV: VarIabLe DD names in VSAM

2012-02-13 Thread Thomas Berg
Why not code: DC X'00'  ?

(Just a curious amateur in asm)



Regards,
Thomas Berg
_
Thomas Berg   Specialist   A M   SWEDBANK




> -Ursprungligt meddelande-
> Från: IBM Mainframe Assembler List [mailto:ASSEMBLER-
> l...@listserv.uga.edu] För McKown, John
> Skickat: den 10 februari 2012 14:10
> Till: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Ämne: Re: VarIabLe DD names in VSAM
>
> I used to do EX *,0 to get an S0C3. I now do " j *+2 " to get a S0C1.
>
> --
> John McKown
> Systems Engineer IV
> IT
>
> Administrative Services Group
>
> HealthMarkets(r)
>
> 9151 Boulevard 26 * N. Richland Hills * TX 76010
> (817) 255-3225 phone *
> john.mck...@healthmarkets.com * www.HealthMarkets.com
>
> Confidentiality Notice: This e-mail message may contain confidential or
> proprietary information. If you are not the intended recipient, please
> contact the sender by reply e-mail and destroy all copies of the original
> message. HealthMarkets(r) is the brand name for products underwritten and
> issued by the insurance subsidiaries of HealthMarkets, Inc. -The
> Chesapeake Life Insurance Company(r), Mid-West National Life Insurance
> Company of TennesseeSM and The MEGA Life and Health Insurance Company.SM
>
>
>
> > -Original Message-
> > From: IBM Mainframe Assembler List
> > [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Binyamin Dissen
> > Sent: Friday, February 10, 2012 6:31 AM
> > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> > Subject: Re: VarIabLe DD names in VSAM
> >
> > On Fri, 10 Feb 2012 22:06:12 +1100 Shane G
> >  wrote:
> >
> > :>On Fri, Feb 10th, 2012 at 9:37 PM, Sharuff Morsa3 wrote:
> >
> > :>> Would anyone want to share good/bad comments they've seen ?
> >
> > :>"This code is never entered"
> > :>Usually in recovery/error processing code.
> >
> > What I do is force an 0C6 in such cases. Leaves everything intact for
> > debugging.
> >
> > --
> > Binyamin Dissen 
> > http://www.dissensoftware.com
> >
> > Director, Dissen Software, Bar & Grill - Israel
> >
> >
> > Should you use the mailblocks package and expect a response from me,
> > you should preauthorize the dissensoftware.com domain.
> >
> > I very rarely bother responding to challenge/response systems,
> > especially those from irresponsible companies.
> >
> >


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Martin Truebner
Thomas (or should I say "amateur in asm" ;-)

The idea is to produce something that is easy recognisable as "done on
purpose" and not to muddy the water more for this "unexpected"
situation.

I for example always have a EX *,* (or an equivalent if there is no
base covering it) after a EXEC CICS RETURN.

It must work- but hey, I have seen horses dying in front of drugstores (German 
saying)

--
Martin

Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE
more at http://www.picapcpu.de


SV: VarIabLe DD names in VSAM

2012-02-13 Thread Thomas Berg
But a "DC X'00'" must obviously be "done on purpose" when at a place when 
constants/data is not expected ?
At least as much as a "EX *,*" ?  (That could be a finger slip.)



Regards,
Thomas Berg
_
Thomas Berg   Specialist   A M   SWEDBANK




> -Ursprungligt meddelande-
> Från: IBM Mainframe Assembler List [mailto:ASSEMBLER-
> l...@listserv.uga.edu] För Martin Truebner
> Skickat: den 13 februari 2012 12:21
> Till: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Ämne: Re: VarIabLe DD names in VSAM
>
> Thomas (or should I say "amateur in asm" ;-)
>
> The idea is to produce something that is easy recognisable as "done on
> purpose" and not to muddy the water more for this "unexpected"
> situation.
>
> I for example always have a EX *,* (or an equivalent if there is no
> base covering it) after a EXEC CICS RETURN.
>
> It must work- but hey, I have seen horses dying in front of drugstores
> (German saying)
>
> --
> Martin
>
> Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE
> more at http://www.picapcpu.de


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Rob Scott
I have always liked Dave Cole's approach in z/XDC here - he supplies a "#DIE" 
macro that places X'00DEAD' in the code followed by identification bytes that 
indicate where in the code the #DIE was and optional comments



Rob Scott
Lead Developer
Rocket Software
275 Grove Street * Newton, MA 02466-2272 * USA
Tel: +1.781.684.2305
Email: rsc...@rs.com
Web: www.rocketsoftware.com

-Original Message-
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On 
Behalf Of Martin Truebner
Sent: 13 February 2012 11:21
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: VarIabLe DD names in VSAM

Thomas (or should I say "amateur in asm" ;-)

The idea is to produce something that is easy recognisable as "done on purpose" 
and not to muddy the water more for this "unexpected"
situation.

I for example always have a EX *,* (or an equivalent if there is no base 
covering it) after a EXEC CICS RETURN.

It must work- but hey, I have seen horses dying in front of drugstores (German 
saying)

--
Martin

Pi_cap_CPU - all you ever need around MWLC/SCRT/CMT in z/VSE more at 
http://www.picapcpu.de


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Binyamin Dissen
On Mon, 13 Feb 2012 12:20:58 +0100 Martin Truebner 
wrote:

:>Thomas (or should I say "amateur in asm" ;-)

:>The idea is to produce something that is easy recognisable as "done on
:>purpose" and not to muddy the water more for this "unexpected"
:>situation.

:>I for example always have a EX *,* (or an equivalent if there is no
:>base covering it) after a EXEC CICS RETURN.

:>It must work- but hey, I have seen horses dying in front of drugstores 
(German saying)

I prefer the branch to odd address since that does not require branching
around the EX. And with the BEAR I can now even do it baseless to low core.

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

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.


Re: VarIabLe DD names in VSAM

2012-02-13 Thread McKown, John
Well, it's an extention of my general case:

..DO SOME TEST
..BRC ??,*+2 **ABEND IF THIS OCCURS!

So if I want an "unconditional" S0C1, I do a BRC 15,*+2 aka J *+2. I plan, 
someday perhaps, to use this as my "debug entry". I'll have an ESTAEX active. 
If I get an S0C1, check for x'0001' at the PSW interrupt address. If so, back 
up 2 bytes and see if I have an X'A7' (BRC opcode). __do something__. Just a 
vague plan at present.

--
John McKown
Systems Engineer IV
IT

Administrative Services Group

HealthMarkets®

9151 Boulevard 26 . N. Richland Hills . TX 76010
(817) 255-3225 phone .
john.mck...@healthmarkets.com . www.HealthMarkets.com

Confidentiality Notice: This e-mail message may contain confidential or 
proprietary information. If you are not the intended recipient, please contact 
the sender by reply e-mail and destroy all copies of the original message. 
HealthMarkets® is the brand name for products underwritten and issued by the 
insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake Life Insurance 
Company®, Mid-West National Life Insurance Company of TennesseeSM and The MEGA 
Life and Health Insurance Company.SM



> -Original Message-
> From: IBM Mainframe Assembler List
> [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Thomas Berg
> Sent: Monday, February 13, 2012 4:49 AM
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Subject: SV: VarIabLe DD names in VSAM
>
> Why not code: DC X'00'  ?
>
> (Just a curious amateur in asm)
>
>
>
> Regards,
> Thomas Berg
> _
> Thomas Berg   Specialist   A M   SWEDBANK
>
>
>
>
> > -Ursprungligt meddelande-
> > Från: IBM Mainframe Assembler List [mailto:ASSEMBLER-
> > l...@listserv.uga.edu] För McKown, John
> > Skickat: den 10 februari 2012 14:10
> > Till: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> > Ämne: Re: VarIabLe DD names in VSAM
> >
> > I used to do EX *,0 to get an S0C3. I now do " j *+2 " to
> get a S0C1.
> >
> > --
> > John McKown
> > Systems Engineer IV
> > IT
> >
> > Administrative Services Group
> >
> > HealthMarkets(r)
> >
> > 9151 Boulevard 26 * N. Richland Hills * TX 76010
> > (817) 255-3225 phone *
> > john.mck...@healthmarkets.com * www.HealthMarkets.com
> >
> > Confidentiality Notice: This e-mail message may contain
> confidential or
> > proprietary information. If you are not the intended
> recipient, please
> > contact the sender by reply e-mail and destroy all copies
> of the original
> > message. HealthMarkets(r) is the brand name for products
> underwritten and
> > issued by the insurance subsidiaries of HealthMarkets, Inc. -The
> > Chesapeake Life Insurance Company(r), Mid-West National
> Life Insurance
> > Company of TennesseeSM and The MEGA Life and Health
> Insurance Company.SM
> >
> >
> >
> > > -Original Message-
> > > From: IBM Mainframe Assembler List
> > > [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of
> Binyamin Dissen
> > > Sent: Friday, February 10, 2012 6:31 AM
> > > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> > > Subject: Re: VarIabLe DD names in VSAM
> > >
> > > On Fri, 10 Feb 2012 22:06:12 +1100 Shane G
> > >  wrote:
> > >
> > > :>On Fri, Feb 10th, 2012 at 9:37 PM, Sharuff Morsa3 wrote:
> > >
> > > :>> Would anyone want to share good/bad comments they've seen ?
> > >
> > > :>"This code is never entered"
> > > :>Usually in recovery/error processing code.
> > >
> > > What I do is force an 0C6 in such cases. Leaves
> everything intact for
> > > debugging.
> > >
> > > --
> > > Binyamin Dissen 
> > > http://www.dissensoftware.com
> > >
> > > Director, Dissen Software, Bar & Grill - Israel
> > >
> > >
> > > Should you use the mailblocks package and expect a
> response from me,
> > > you should preauthorize the dissensoftware.com domain.
> > >
> > > I very rarely bother responding to challenge/response systems,
> > > especially those from irresponsible companies.
> > >
> > >
>
>


Re: SV: VarIabLe DD names in VSAM

2012-02-13 Thread Steve Comstock

On 2/13/2012 3:49 AM, Thomas Berg wrote:

Why not code: DC X'00'  ?

(Just a curious amateur in asm)


Well, the following instruction will be on an
odd boundary, for one. More common, I think:

  DC H'0'








Regards,
Thomas Berg
_
Thomas Berg   Specialist   A M   SWEDBANK





-Ursprungligt meddelande-
Från: IBM Mainframe Assembler List [mailto:ASSEMBLER-
l...@listserv.uga.edu] För McKown, John
Skickat: den 10 februari 2012 14:10
Till: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Ämne: Re: VarIabLe DD names in VSAM

I used to do EX *,0 to get an S0C3. I now do " j *+2 " to get a S0C1.

--
John McKown
Systems Engineer IV
IT

Administrative Services Group

HealthMarkets(r)

9151 Boulevard 26 * N. Richland Hills * TX 76010
(817) 255-3225 phone *
john.mck...@healthmarkets.com * www.HealthMarkets.com

Confidentiality Notice: This e-mail message may contain confidential or
proprietary information. If you are not the intended recipient, please
contact the sender by reply e-mail and destroy all copies of the original
message. HealthMarkets(r) is the brand name for products underwritten and
issued by the insurance subsidiaries of HealthMarkets, Inc. -The
Chesapeake Life Insurance Company(r), Mid-West National Life Insurance
Company of TennesseeSM and The MEGA Life and Health Insurance Company.SM




-Original Message-
From: IBM Mainframe Assembler List
[mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of Binyamin Dissen
Sent: Friday, February 10, 2012 6:31 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: VarIabLe DD names in VSAM

On Fri, 10 Feb 2012 22:06:12 +1100 Shane G
  wrote:

:>On Fri, Feb 10th, 2012 at 9:37 PM, Sharuff Morsa3 wrote:

:>>  Would anyone want to share good/bad comments they've seen ?

:>"This code is never entered"
:>Usually in recovery/error processing code.

What I do is force an 0C6 in such cases. Leaves everything intact for
debugging.

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

Director, Dissen Software, Bar&  Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.







--

Kind regards,

-Steve Comstock
The Trainer's Friend, Inc.

303-355-2752
http://www.trainersfriend.com

* To get a good Return on your Investment, first make an investment!
  + Training your people is an excellent investment

* Try our tool for calculating your Return On Investment
for training dollars at
  http://www.trainersfriend.com/ROI/roi.html


Re: VarIabLe DD names in VSAM

2012-02-13 Thread John Gilmore
We have of course been here before.

The idea that a desired USER ABEND is best achieved by triggering a
SYSTEM ABEND that will be minimally confusing, highly unlikely to be
confused with the corresponding real SYSTEM ABEND, does not seem to
want to die.

Why try to trick the system into issuing an ABEND when you can do it yourself?

USER ABENDS are immediately available by coding an ABEND macro
instruction.  They specify a [USER] completion code; and they may,
optionally but desirably, specify a fullword user code too.

This whole discussion of the relative merits of these triggering
mechanisms is thus otiose at best.  The only gotcha that can arise in
connection with such an ABEND macro instruction is that one issued in
AR mode must be preceded by a

|  SYSTATE   ASCENV=AR

macro instruction, but surely those of you who are writing AR-mode
code can cope with this difficulty; and those of you who cannot should
not be doing it.

--
John Gilmore, Ashland, MA 01721 - USA


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Binyamin Dissen
On Mon, 13 Feb 2012 06:52:23 -0700 Steve Comstock 
wrote:

:>On 2/13/2012 3:49 AM, Thomas Berg wrote:
:>> Why not code: DC X'00'  ?

:>> (Just a curious amateur in asm)

:>Well, the following instruction will be on an
:>odd boundary, for one.

Not unless there is some weird assembler option that allows that. I do not
think NOALIGN will do that.

On the other hand, following it with

LABELEQU   *

will cause LABEL to be on an odd boundary. But branch instructions referring
to it should get assembly errors as well.

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

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.


Re: SV: VarIabLe DD names in VSAM

2012-02-13 Thread Paul Gilmartin
On Feb 13, 2012, at 06:52, Steve Comstock wrote:

> On 2/13/2012 3:49 AM, Thomas Berg wrote:
>> Why not code: DC X'00'  ?
>>
>> (Just a curious amateur in asm)
>
> Well, the following instruction will be on an
> odd boundary, ...
>
Is this even true if the programmer uses PARM=NOALIGN?

But this is sophistry; see John G.'s wise followup.

-- gil


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Binyamin Dissen
On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore 
wrote:

:>We have of course been here before.

:>The idea that a desired USER ABEND is best achieved by triggering a
:>SYSTEM ABEND that will be minimally confusing, highly unlikely to be
:>confused with the corresponding real SYSTEM ABEND, does not seem to
:>want to die.

Because it is quite useful.

:>Why try to trick the system into issuing an ABEND when you can do it yourself?

:>USER ABENDS are immediately available by coding an ABEND macro
:>instruction.  They specify a [USER] completion code; and they may,
:>optionally but desirably, specify a fullword user code too.

All of which alter the CC, and R15-R1.

User abends are quite useful for known issues - missing DD statement, missing
module, insufficient authority, etc.. But if the code gets a completely
unexpected result there is a need to figure out how to save the environment
before issuing the abend so that the problem can be diagnosed. But where and
how should this be saved?

:>This whole discussion of the relative merits of these triggering
:>mechanisms is thus otiose at best.  The only gotcha that can arise in
:>connection with such an ABEND macro instruction is that one issued in
:>AR mode must be preceded by a

:>|  SYSTATE   ASCENV=AR

:>macro instruction, but surely those of you who are writing AR-mode
:>code can cope with this difficulty; and those of you who cannot should
:>not be doing it.

Not all issues can be placed into one box. The programmer should have a big
enough imagination to consider other options.

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

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.


Re: VarIabLe DD names in VSAM

2012-02-13 Thread John Gilmore
Binyamin is talking nonsense.

A USER ABEND has the same DUMP options available to it that are
available to any other ABEND.

The notion that the default options supplied for, say, a judiciously
chosen SYSTEM OCx ABEND can somehow be better than those chosen in a
considered way for a USER ABEND is not just untenable; it is not even
intellectually respectable.

The search for a SYSTEM ABEND facility the misuse of which will be
minimally deceptive is misconceived.

The set of facilities available via ABEND is globally invariant.
Nothing can be done by faking an OC1 ABEND that cannot be done by
writing one's own ABEND macro instruction.  In the first case one is
constrained by the system's, i.e., someone else's, defaults; in the
second one can make one's own choices.

Analogous facilities usable to produce user ABENDs without trickery
are also available in COBOL, C/C++, and PL/I.


On 2/13/12, Binyamin Dissen  wrote:
> On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore 
> wrote:
>
> :>We have of course been here before.
>
> :>The idea that a desired USER ABEND is best achieved by triggering a
> :>SYSTEM ABEND that will be minimally confusing, highly unlikely to be
> :>confused with the corresponding real SYSTEM ABEND, does not seem to
> :>want to die.
>
> Because it is quite useful.
>
> :>Why try to trick the system into issuing an ABEND when you can do it
> yourself?
>
> :>USER ABENDS are immediately available by coding an ABEND macro
> :>instruction.  They specify a [USER] completion code; and they may,
> :>optionally but desirably, specify a fullword user code too.
>
> All of which alter the CC, and R15-R1.
>
> User abends are quite useful for known issues - missing DD statement,
> missing
> module, insufficient authority, etc.. But if the code gets a completely
> unexpected result there is a need to figure out how to save the environment
> before issuing the abend so that the problem can be diagnosed. But where and
> how should this be saved?
>
> :>This whole discussion of the relative merits of these triggering
> :>mechanisms is thus otiose at best.  The only gotcha that can arise in
> :>connection with such an ABEND macro instruction is that one issued in
> :>AR mode must be preceded by a
>
> :>|  SYSTATE   ASCENV=AR
>
> :>macro instruction, but surely those of you who are writing AR-mode
> :>code can cope with this difficulty; and those of you who cannot should
> :>not be doing it.
>
> Not all issues can be placed into one box. The programmer should have a big
> enough imagination to consider other options.
>
> --
> Binyamin Dissen 
> http://www.dissensoftware.com
>
> Director, Dissen Software, Bar & Grill - Israel
>
>
> Should you use the mailblocks package and expect a response from me,
> you should preauthorize the dissensoftware.com domain.
>
> I very rarely bother responding to challenge/response systems,
> especially those from irresponsible companies.
>


--
John Gilmore, Ashland, MA 01721 - USA


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Binyamin Dissen
On Mon, 13 Feb 2012 10:00:42 -0500 John Gilmore 
wrote:

:>Binyamin is talking nonsense.

A good way to start a discussion.

:>A USER ABEND has the same DUMP options available to it that are
:>available to any other ABEND.

True, and irrelevant.

:>The notion that the default options supplied for, say, a judiciously
:>chosen SYSTEM OCx ABEND can somehow be better than those chosen in a
:>considered way for a USER ABEND is not just untenable; it is not even
:>intellectually respectable.

Completely irrelevant.

:>The search for a SYSTEM ABEND facility the misuse of which will be
:>minimally deceptive is misconceived.

Not a clue as to what you are trying to state.

:>The set of facilities available via ABEND is globally invariant.
:>Nothing can be done by faking an OC1 ABEND that cannot be done by
:>writing one's own ABEND macro instruction.  In the first case one is
:>constrained by the system's, i.e., someone else's, defaults; in the
:>second one can make one's own choices.

Except, as I posted - these alter the CC, and R15-R1. If the routine has the
ability to save all this and provide a meaningful abend code - great - do it.

But what if this is not an application program but a system routine which may
be in unusual state and key gets some kind of illogical result or detects some
kind of overlay. It would need special logic to gets this area to record the
information which may fail or get incorrect results due to the previous
problem and make things even worse.

What is better - a generic abend code which states that something wrong
happened requiring searching the dump to find the data, or a simple abend
where the system provides control in a known state and the registers/PSW at
the time are easily available?

:>Analogous facilities usable to produce user ABENDs without trickery
:>are also available in COBOL, C/C++, and PL/I.

True, and irrelevant.

:>On 2/13/12, Binyamin Dissen  wrote:
:>> On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore 
:>> wrote:
:>>
:>> :>We have of course been here before.
:>>
:>> :>The idea that a desired USER ABEND is best achieved by triggering a
:>> :>SYSTEM ABEND that will be minimally confusing, highly unlikely to be
:>> :>confused with the corresponding real SYSTEM ABEND, does not seem to
:>> :>want to die.
:>>
:>> Because it is quite useful.
:>>
:>> :>Why try to trick the system into issuing an ABEND when you can do it
:>> yourself?
:>>
:>> :>USER ABENDS are immediately available by coding an ABEND macro
:>> :>instruction.  They specify a [USER] completion code; and they may,
:>> :>optionally but desirably, specify a fullword user code too.
:>>
:>> All of which alter the CC, and R15-R1.
:>>
:>> User abends are quite useful for known issues - missing DD statement,
:>> missing
:>> module, insufficient authority, etc.. But if the code gets a completely
:>> unexpected result there is a need to figure out how to save the environment
:>> before issuing the abend so that the problem can be diagnosed. But where and
:>> how should this be saved?
:>>
:>> :>This whole discussion of the relative merits of these triggering
:>> :>mechanisms is thus otiose at best.  The only gotcha that can arise in
:>> :>connection with such an ABEND macro instruction is that one issued in
:>> :>AR mode must be preceded by a
:>>
:>> :>|  SYSTATE   ASCENV=AR
:>>
:>> :>macro instruction, but surely those of you who are writing AR-mode
:>> :>code can cope with this difficulty; and those of you who cannot should
:>> :>not be doing it.
:>>
:>> Not all issues can be placed into one box. The programmer should have a big
:>> enough imagination to consider other options.
:>>
:>> --
:>> Binyamin Dissen 
:>> http://www.dissensoftware.com
:>>
:>> Director, Dissen Software, Bar & Grill - Israel
:>>
:>>
:>> Should you use the mailblocks package and expect a response from me,
:>> you should preauthorize the dissensoftware.com domain.
:>>
:>> I very rarely bother responding to challenge/response systems,
:>> especially those from irresponsible companies.
:>>

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

Director, Dissen Software, Bar & Grill - Israel


Should you use the mailblocks package and expect a response from me,
you should preauthorize the dissensoftware.com domain.

I very rarely bother responding to challenge/response systems,
especially those from irresponsible companies.


Re: VarIabLe DD names in VSAM

2012-02-13 Thread McKown, John
Personally, I do the S0C1 for one reason alone: for "debugging" purposes. It is 
just simpler to do than coding up a good ABEND macro instruction. I'm not say 
this is for production use of reporting an error to an end user. I do use the 
ABEND and/or DUMP macros for that. But for a "what the bleeping is going on 
when I get to this point in my code, I want a dump", then a nice S0C1 works 
well for me. I don't have z/XDC or some other high quality debugging tool.

--
John McKown
Systems Engineer IV
IT

Administrative Services Group

HealthMarkets(r)

9151 Boulevard 26 * N. Richland Hills * TX 76010
(817) 255-3225 phone *
john.mck...@healthmarkets.com * www.HealthMarkets.com

Confidentiality Notice: This e-mail message may contain confidential or 
proprietary information. If you are not the intended recipient, please contact 
the sender by reply e-mail and destroy all copies of the original message. 
HealthMarkets(r) is the brand name for products underwritten and issued by the 
insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake Life Insurance 
Company(r), Mid-West National Life Insurance Company of TennesseeSM and The 
MEGA Life and Health Insurance Company.SM



> -Original Message-
> From: IBM Mainframe Assembler List
> [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of John Gilmore
> Sent: Monday, February 13, 2012 9:01 AM
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Subject: Re: VarIabLe DD names in VSAM
>
> Binyamin is talking nonsense.
>
> A USER ABEND has the same DUMP options available to it that are
> available to any other ABEND.
>
> The notion that the default options supplied for, say, a judiciously
> chosen SYSTEM OCx ABEND can somehow be better than those chosen in a
> considered way for a USER ABEND is not just untenable; it is not even
> intellectually respectable.
>
> The search for a SYSTEM ABEND facility the misuse of which will be
> minimally deceptive is misconceived.
>
> The set of facilities available via ABEND is globally invariant.
> Nothing can be done by faking an OC1 ABEND that cannot be done by
> writing one's own ABEND macro instruction.  In the first case one is
> constrained by the system's, i.e., someone else's, defaults; in the
> second one can make one's own choices.
>
> Analogous facilities usable to produce user ABENDs without trickery
> are also available in COBOL, C/C++, and PL/I.
>
>
> On 2/13/12, Binyamin Dissen  wrote:
> > On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore
> 
> > wrote:
> >
> > :>We have of course been here before.
> >
> > :>The idea that a desired USER ABEND is best achieved by
> triggering a
> > :>SYSTEM ABEND that will be minimally confusing, highly
> unlikely to be
> > :>confused with the corresponding real SYSTEM ABEND, does
> not seem to
> > :>want to die.
> >
> > Because it is quite useful.
> >
> > :>Why try to trick the system into issuing an ABEND when
> you can do it
> > yourself?
> >
> > :>USER ABENDS are immediately available by coding an ABEND macro
> > :>instruction.  They specify a [USER] completion code; and they may,
> > :>optionally but desirably, specify a fullword user code too.
> >
> > All of which alter the CC, and R15-R1.
> >
> > User abends are quite useful for known issues - missing DD
> statement,
> > missing
> > module, insufficient authority, etc.. But if the code gets
> a completely
> > unexpected result there is a need to figure out how to save
> the environment
> > before issuing the abend so that the problem can be
> diagnosed. But where and
> > how should this be saved?
> >
> > :>This whole discussion of the relative merits of these triggering
> > :>mechanisms is thus otiose at best.  The only gotcha that
> can arise in
> > :>connection with such an ABEND macro instruction is that
> one issued in
> > :>AR mode must be preceded by a
> >
> > :>|  SYSTATE   ASCENV=AR
> >
> > :>macro instruction, but surely those of you who are writing AR-mode
> > :>code can cope with this difficulty; and those of you who
> cannot should
> > :>not be doing it.
> >
> > Not all issues can be placed into one box. The programmer
> should have a big
> > enough imagination to consider other options.
> >
> > --
> > Binyamin Dissen 
> > http://www.dissensoftware.com
> >
> > Director, Dissen Software, Bar & Grill - Israel
> >
> >
> > Should you use the mailblocks package and expect a response from me,
> > you should preauthorize the dissensoftware.com domain.
> >
> > I very rarely bother responding to challenge/response systems,
> > especially those from irresponsible companies.
> >
>
>
> --
> John Gilmore, Ashland, MA 01721 - USA
>
>


Re: VarIabLe DD names in VSAM

2012-02-13 Thread John Gilmore
Binyamin and I see the world differently.  I judge that he is talking
nonsense, and he judges that my arguments are irelevant.  So be it.

On 2/13/12, McKown, John  wrote:
> Personally, I do the S0C1 for one reason alone: for "debugging" purposes. It
> is just simpler to do than coding up a good ABEND macro instruction. I'm not
> say this is for production use of reporting an error to an end user. I do
> use the ABEND and/or DUMP macros for that. But for a "what the bleeping is
> going on when I get to this point in my code, I want a dump", then a nice
> S0C1 works well for me. I don't have z/XDC or some other high quality
> debugging tool.
>
> --
> John McKown
> Systems Engineer IV
> IT
>
> Administrative Services Group
>
> HealthMarkets(r)
>
> 9151 Boulevard 26 * N. Richland Hills * TX 76010
> (817) 255-3225 phone *
> john.mck...@healthmarkets.com * www.HealthMarkets.com
>
> Confidentiality Notice: This e-mail message may contain confidential or
> proprietary information. If you are not the intended recipient, please
> contact the sender by reply e-mail and destroy all copies of the original
> message. HealthMarkets(r) is the brand name for products underwritten and
> issued by the insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake
> Life Insurance Company(r), Mid-West National Life Insurance Company of
> TennesseeSM and The MEGA Life and Health Insurance Company.SM
>
>
>
>> -Original Message-
>> From: IBM Mainframe Assembler List
>> [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of John Gilmore
>> Sent: Monday, February 13, 2012 9:01 AM
>> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
>> Subject: Re: VarIabLe DD names in VSAM
>>
>> Binyamin is talking nonsense.
>>
>> A USER ABEND has the same DUMP options available to it that are
>> available to any other ABEND.
>>
>> The notion that the default options supplied for, say, a judiciously
>> chosen SYSTEM OCx ABEND can somehow be better than those chosen in a
>> considered way for a USER ABEND is not just untenable; it is not even
>> intellectually respectable.
>>
>> The search for a SYSTEM ABEND facility the misuse of which will be
>> minimally deceptive is misconceived.
>>
>> The set of facilities available via ABEND is globally invariant.
>> Nothing can be done by faking an OC1 ABEND that cannot be done by
>> writing one's own ABEND macro instruction.  In the first case one is
>> constrained by the system's, i.e., someone else's, defaults; in the
>> second one can make one's own choices.
>>
>> Analogous facilities usable to produce user ABENDs without trickery
>> are also available in COBOL, C/C++, and PL/I.
>>
>>
>> On 2/13/12, Binyamin Dissen  wrote:
>> > On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore
>> 
>> > wrote:
>> >
>> > :>We have of course been here before.
>> >
>> > :>The idea that a desired USER ABEND is best achieved by
>> triggering a
>> > :>SYSTEM ABEND that will be minimally confusing, highly
>> unlikely to be
>> > :>confused with the corresponding real SYSTEM ABEND, does
>> not seem to
>> > :>want to die.
>> >
>> > Because it is quite useful.
>> >
>> > :>Why try to trick the system into issuing an ABEND when
>> you can do it
>> > yourself?
>> >
>> > :>USER ABENDS are immediately available by coding an ABEND macro
>> > :>instruction.  They specify a [USER] completion code; and they may,
>> > :>optionally but desirably, specify a fullword user code too.
>> >
>> > All of which alter the CC, and R15-R1.
>> >
>> > User abends are quite useful for known issues - missing DD
>> statement,
>> > missing
>> > module, insufficient authority, etc.. But if the code gets
>> a completely
>> > unexpected result there is a need to figure out how to save
>> the environment
>> > before issuing the abend so that the problem can be
>> diagnosed. But where and
>> > how should this be saved?
>> >
>> > :>This whole discussion of the relative merits of these triggering
>> > :>mechanisms is thus otiose at best.  The only gotcha that
>> can arise in
>> > :>connection with such an ABEND macro instruction is that
>> one issued in
>> > :>AR mode must be preceded by a
>> >
>> > :>|  SYSTATE   ASCENV=AR
>> >
>> > :>macro instruction, but surely those of you who are writing AR-mode
>> > :>code can cope with this difficulty; and those of you who
>> cannot should
>> > :>not be doing it.
>> >
>> > Not all issues can be placed into one box. The programmer
>> should have a big
>> > enough imagination to consider other options.
>> >
>> > --
>> > Binyamin Dissen 
>> > http://www.dissensoftware.com
>> >
>> > Director, Dissen Software, Bar & Grill - Israel
>> >
>> >
>> > Should you use the mailblocks package and expect a response from me,
>> > you should preauthorize the dissensoftware.com domain.
>> >
>> > I very rarely bother responding to challenge/response systems,
>> > especially those from irresponsible companies.
>> >
>>
>>
>> --
>> John Gilmore, Ashland, MA 01721 - USA
>>
>>
>


--
John Gilmore, Ashland, MA 01721 - USA


Re: code comments

2012-02-13 Thread Peter Relson
Some of this discussion revolves around what the "base knowledge" is that
you expect/require that the code's readers have.

If "everyone" understands that "SR regx,regx"  and "XR regx,regx" zero
regx then there is little to no benefit to having a macro that is "ZERO
regx".
Drawing the line in the right place is perhaps the tricky part. Especially
with all the "new" instructions that might be less well understood.

Consider
 L regx,PSATOLDfetch the address of the current TCB
Even that comment is inadequate if your reader will not know what a TCB
is. I suspect that most would choose to assume that a reader of this could
would know what a TCB is and not spell out the acronym, let alone describe
it..

Peter Relson
z/OS Core Technology Design


Re: VarIabLe DD names in VSAM

2012-02-13 Thread Binyamin Dissen
More real world vs. Ivory Tower, but whatever.

On Mon, 13 Feb 2012 11:11:04 -0500 John Gilmore 
wrote:

:>Binyamin and I see the world differently.  I judge that he is talking
:>nonsense, and he judges that my arguments are irelevant.  So be it.
:>
:>On 2/13/12, McKown, John  wrote:
:>> Personally, I do the S0C1 for one reason alone: for "debugging" purposes. It
:>> is just simpler to do than coding up a good ABEND macro instruction. I'm not
:>> say this is for production use of reporting an error to an end user. I do
:>> use the ABEND and/or DUMP macros for that. But for a "what the bleeping is
:>> going on when I get to this point in my code, I want a dump", then a nice
:>> S0C1 works well for me. I don't have z/XDC or some other high quality
:>> debugging tool.
:>>
:>> --
:>> John McKown
:>> Systems Engineer IV
:>> IT
:>>
:>> Administrative Services Group
:>>
:>> HealthMarkets(r)
:>>
:>> 9151 Boulevard 26 * N. Richland Hills * TX 76010
:>> (817) 255-3225 phone *
:>> john.mck...@healthmarkets.com * www.HealthMarkets.com
:>>
:>> Confidentiality Notice: This e-mail message may contain confidential or
:>> proprietary information. If you are not the intended recipient, please
:>> contact the sender by reply e-mail and destroy all copies of the original
:>> message. HealthMarkets(r) is the brand name for products underwritten and
:>> issued by the insurance subsidiaries of HealthMarkets, Inc. -The Chesapeake
:>> Life Insurance Company(r), Mid-West National Life Insurance Company of
:>> TennesseeSM and The MEGA Life and Health Insurance Company.SM
:>>
:>>
:>>
:>>> -Original Message-
:>>> From: IBM Mainframe Assembler List
:>>> [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On Behalf Of John Gilmore
:>>> Sent: Monday, February 13, 2012 9:01 AM
:>>> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
:>>> Subject: Re: VarIabLe DD names in VSAM
:>>>
:>>> Binyamin is talking nonsense.
:>>>
:>>> A USER ABEND has the same DUMP options available to it that are
:>>> available to any other ABEND.
:>>>
:>>> The notion that the default options supplied for, say, a judiciously
:>>> chosen SYSTEM OCx ABEND can somehow be better than those chosen in a
:>>> considered way for a USER ABEND is not just untenable; it is not even
:>>> intellectually respectable.
:>>>
:>>> The search for a SYSTEM ABEND facility the misuse of which will be
:>>> minimally deceptive is misconceived.
:>>>
:>>> The set of facilities available via ABEND is globally invariant.
:>>> Nothing can be done by faking an OC1 ABEND that cannot be done by
:>>> writing one's own ABEND macro instruction.  In the first case one is
:>>> constrained by the system's, i.e., someone else's, defaults; in the
:>>> second one can make one's own choices.
:>>>
:>>> Analogous facilities usable to produce user ABENDs without trickery
:>>> are also available in COBOL, C/C++, and PL/I.
:>>>
:>>>
:>>> On 2/13/12, Binyamin Dissen  wrote:
:>>> > On Mon, 13 Feb 2012 09:05:03 -0500 John Gilmore
:>>> 
:>>> > wrote:
:>>> >
:>>> > :>We have of course been here before.
:>>> >
:>>> > :>The idea that a desired USER ABEND is best achieved by
:>>> triggering a
:>>> > :>SYSTEM ABEND that will be minimally confusing, highly
:>>> unlikely to be
:>>> > :>confused with the corresponding real SYSTEM ABEND, does
:>>> not seem to
:>>> > :>want to die.
:>>> >
:>>> > Because it is quite useful.
:>>> >
:>>> > :>Why try to trick the system into issuing an ABEND when
:>>> you can do it
:>>> > yourself?
:>>> >
:>>> > :>USER ABENDS are immediately available by coding an ABEND macro
:>>> > :>instruction.  They specify a [USER] completion code; and they may,
:>>> > :>optionally but desirably, specify a fullword user code too.
:>>> >
:>>> > All of which alter the CC, and R15-R1.
:>>> >
:>>> > User abends are quite useful for known issues - missing DD
:>>> statement,
:>>> > missing
:>>> > module, insufficient authority, etc.. But if the code gets
:>>> a completely
:>>> > unexpected result there is a need to figure out how to save
:>>> the environment
:>>> > before issuing the abend so that the problem can be
:>>> diagnosed. But where and
:>>> > how should this be saved?
:>>> >
:>>> > :>This whole discussion of the relative merits of these triggering
:>>> > :>mechanisms is thus otiose at best.  The only gotcha that
:>>> can arise in
:>>> > :>connection with such an ABEND macro instruction is that
:>>> one issued in
:>>> > :>AR mode must be preceded by a
:>>> >
:>>> > :>|  SYSTATE   ASCENV=AR
:>>> >
:>>> > :>macro instruction, but surely those of you who are writing AR-mode
:>>> > :>code can cope with this difficulty; and those of you who
:>>> cannot should
:>>> > :>not be doing it.
:>>> >
:>>> > Not all issues can be placed into one box. The programmer
:>>> should have a big
:>>> > enough imagination to consider other options.
:>>> >
:>>> > --
:>>> > Binyamin Dissen 
:>>> > http://www.dissensoftware.com
:>>> >
:>>> > Director, Dissen Software, Bar & Grill - Israel
:>>> >
:>>> >
:>>> > Should you use the mailblocks p

Re: VarIabLe DD names in VSAM

2012-02-13 Thread Gerhard Postpischil

On 2/13/2012 10:53 AM, McKown, John wrote:

Personally, I do the S0C1 for one reason alone: for
"debugging" purposes. It is just simpler to do than coding up
a good ABEND macro instruction. I'm not say this is for
production use of reporting an error to an end user. I do use
the ABEND and/or DUMP macros for that. But for a "what the
bleeping is going on when I get to this point in my code, I
want a dump", then a nice S0C1 works well for me. I don't
have z/XDC or some other high quality debugging tool.


When I'm debugging a new or heavily revised program, I have a
#TRAP subroutine to display PSW, registers, and variables. But
for a quick and dirty approach, EX 0,* or B 2, B 4, B 6, are
preferable in that I do not need to save R0 and R1 in storage
that I then need to locate in a dump, as is the case for an
ABEND macro or SVC.

For production programs, I prefer to save the registers, if
useful, issue one or more explanatory messages, and then issue a
user abend.

Gerhard Postpischil
Bradford, VT


Re: VarIabLe DD names in VSAM

2012-02-13 Thread John Gilmore
After describing his own debugging practices, Gerhard Postpischil writes:


For production programs, I prefer to save the registers, if useful,
issue one or more explanatory messages, and then issue a user abend.


and this is enough.

Debugging--as opposed to prior and subsequent systematic testing,
which are not--is a highly personal matter.  Debuggers are and should
be free to use any technique they find effective; they should indeed
be free, as I said here long ago, to consult a haruspex (plural
haruspices) if they judge it helpful to do so (privately, of course,
lest the animal-rights people target their colleagues too).

--
John Gilmore, Ashland, MA 01721 - USA


Re: code comments

2012-02-13 Thread robin
From: Steve Smith 
Date: Monday, 13 February 2012 10:13

>There seems to be a common misconception that MVC can't move 256 bytes.
>It certainly can.  It cannot move zero bytes, but that's not much of a
>limitation.

Not from me.  I explicitly mentioned 256.

Length field 0 corresponds  to a move of 1 byte;
Length field 255 corresponds to a move of 256 bytes.

Hence, given N, an integer representing the length to be moved,
it becomes necessary to subtract 1 from N before using that value
in an EX in conjunction with MVC, CLC, etc.

When N is initially zero, as in the case of an empty string,
it becomes necessary to avoid the EX.


Re: MNEMONICS

2012-02-13 Thread robin
IHMO, the mnemonic for BCT was not well-chosen.
Better might have been DBZ
for Decrement and Branch on Zero.

As for the below case of BALR, clearly, there needed to be yet another 
instruction :-
DWIM
(Do What I Mean)

-Original Message-
From: Bernd Oppolzer 
Date: Saturday, 11 February 2012 3:36
Subject: Re: code comments

>My favourite one is:
>
> BALR  R3,0 SUBTRACT 1 FROM R3
>
>Obviously, the opcode is wrong, should be BCTR.


Re: code comments

2012-02-13 Thread robin
From: Peter Relson 
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Date: Tuesday, 14 February 2012 4:26


>Some of this discussion revolves around what the "base knowledge" is that
>you expect/require that the code's readers have.
>
>If "everyone" understands that "SR regx,regx"  and "XR regx,regx" zero
>regx then there is little to no benefit to having a macro that is "ZERO
>regx".

If so, there's be little need for comments such as the example

>>  XR R5,R5zeroise R5

Something sensible like
ZERO 5
makes it absolutely clear, and soes not need a "clarifying" remark.


Re: VarIabLe DD names in VSAM

2012-02-13 Thread David P de Jongh
Ha!  I have frequently asked customers to send me a dump, so that I could examine the entrails of the beast (and hopefully track its spoor).David de Jongh On 02/13/12, John Gilmore wrote: After describing his own debugging practices, Gerhard Postpischil writes:For production programs, I prefer to save the registers, if useful,issue one or more explanatory messages, and then issue a user abend.and this is enough.Debugging--as opposed to prior and subsequent systematic testing,which are not--is a highly personal matter. Debuggers are and shouldbe free to use any technique they find effective; they should indeedbe free, as I said here long ago, to consult a haruspex (pluralharuspices) if they judge it helpful to do so (privately, of course,lest the animal-rights people target their colleagues too).--John Gilmore, Ashland, MA 01721 - USA


Re: MNEMONICS

2012-02-13 Thread glen herrmannsfeldt
(someone wrote)

> IHMO, the mnemonic for BCT was not well-chosen.
> Better might have been DBZ
> for Decrement and Branch on Zero.

That would be Decrement and Branch on Not Zero, DBNZ,
and also DBNZR. Sounds too much like DEC to me.(*)

I believe none of the S/360 instructions are more than four
letters long, though.

>As for the below case of BALR, clearly, there needed to
>be yet another instruction :-

(*) I was doing S/370 assembly programming for a few years
before I first programmed a DEC system, a PDP-10 running TOPS-10.

The DEC mnemonics are a little different, but the decrement
and skip/jump are usual.

Note that on the PDP-10, the JUMP instruction doesn't jump,
the JUMPA instruction actually does, but usually JRST is used
instead.

-- glen


Re: code comments

2012-02-13 Thread Paul Gilmartin

On 2/14/2012 3:41 PM, robin wrote:


If "everyone" understands that "SR regx,regx"  and "XR regx,regx" zero
regx then there is little to no benefit to having a macro that is "ZERO
regx".

If so, there's be little need for comments such as the example


  XR R5,R5zeroise R5


Something sensible like
 ZERO 5
makes it absolutely clear, and soes not need a "clarifying" remark.


Even this may depend on your trust in the author of
the macro; possibly yourself; possibly not.

A novice may have coded as the macro body:

  L  regx,=F'0'

which requires addressability to the literal pool.  The results
are worst if the caller has changed the content of the base
register and neglected to code a DROP.

Or:

  LA  regx,0

where the effect on the top half of regx depends on whether
64-bit mode is in effect.  This may actually be reason to
prefer this form.

-- gil


Re: MNEMONICS

2012-02-13 Thread Valeriy Mironenko
Bad Idea. Плохая идея-изменение мнемоники команд. Команды существуют с 1964
года, если что-то не нравится - напиши свои макро и не забудь написать -
PRINT GEN, когда будешь передавать третьим лицам свои исходники.

С уважением,
*Валерий Мироненко*
--
Direct: +7 916 688 33 95 | SKYPE: ValMironenko
Email: vmirone...@gmail.com | © 2012 Avronet LLC

--
Это сообщение электронной почты, включая вложения, только для использования
лицом, которому оно было отправлено, и может содержать информацию, которая
является конфиденциальной или охраняемой законом. Если вы не предполагаемый
получатель или получили это сообщение по ошибке, вы не имеете права
копировать, распространять или иным образом использовать это сообщение или
его вложенные файлы. Пожалуйста, сообщите отправителю немедленно об ошибке
по обратному адресу электронной почты и удалите это сообщение и любые
вложения. Отправитель не дает никаких официальных гарантий, что это письмо
свободно от вирусов.




2012/2/15 robin 

> IHMO, the mnemonic for BCT was not well-chosen.
>Better might have been DBZ
> for Decrement and Branch on Zero.
>
>As for the below case of BALR, clearly, there needed to be yet another
> instruction :-
> DWIM
> (Do What I Mean)
>
> -Original Message-
> From: Bernd Oppolzer 
> Date: Saturday, 11 February 2012 3:36
> Subject: Re: code comments
>
> >My favourite one is:
> >
> > BALR  R3,0 SUBTRACT 1 FROM R3
> >
> >Obviously, the opcode is wrong, should be BCTR.
>


Re: MNEMONICS

2012-02-13 Thread Paul Gilmartin

On 2/13/2012 5:24 PM, Valeriy Mironenko wrote:

Bad Idea. Плохая идея-изменение мнемоники команд. Команды существуют с 1964
года, если что-то не нравится - напиши свои макро и не забудь написать -
PRINT GEN, когда будешь передавать третьим лицам свои исходники.


Я согласен.

--Гиль


Re: code comments

2012-02-13 Thread Tony Harminc
On 14 February 2012 17:41, robin  wrote:
> From: Peter Relson 
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
> Date: Tuesday, 14 February 2012 4:26
>
>
>>Some of this discussion revolves around what the "base knowledge" is that
>>you expect/require that the code's readers have.
>>
>>If "everyone" understands that "SR regx,regx"  and "XR regx,regx" zero
>>regx then there is little to no benefit to having a macro that is "ZERO
>>regx".
>
> If so, there's be little need for comments such as the example
>
>>>  XR R5,R5zeroise R5
>
> Something sensible like
>ZERO 5
> makes it absolutely clear, and soes not need a "clarifying" remark.

It depends greatly on the context. If, in looking at code I wasn't
familiar with, I encountered such a macro call, I would have to spend
some time making sure that I understood both its intent and
implementation well. Such a macro could well be badly designed, or
could mean something quite different from its "obvious" meaning. What
if instead of zeroing R5, it instead asserts that R5 contains 0, and
abends if it doesn't? The author might well argue that having a macro
to simply clear a register is silly, burdens the name space, and so
on, but that having one to do an assert is useful.

Tony H.


Re: MNEMONICS

2012-02-13 Thread Steve Smith

Maybe John Gilmore will provide a witty retort, but you surely must know
that the number of Russian-literate people here is probably pretty low.
Babelfish did nothing but convert this text into HTML entities.

On 2/13/2012 19:24, Valeriy Mironenko wrote:

Bad Idea. Плохая идея-изменение мнемоники команд. Команды существуют с 1964
года, если что-то не нравится - напиши свои макро и не забудь написать -
PRINT GEN, когда будешь передавать третьим лицам свои исходники.

С уважением,
*Валерий Мироненко*
--
Direct: +7 916 688 33 95 | SKYPE: ValMironenko
Email: vmirone...@gmail.com | © 2012 Avronet LLC

--
Это сообщение электронной почты, включая вложения, только для использования
лицом, которому оно было отправлено, и может содержать информацию, которая
является конфиденциальной или охраняемой законом. Если вы не предполагаемый
получатель или получили это сообщение по ошибке, вы не имеете права
копировать, распространять или иным образом использовать это сообщение или
его вложенные файлы. Пожалуйста, сообщите отправителю немедленно об ошибке
по обратному адресу электронной почты и удалите это сообщение и любые
вложения. Отправитель не дает никаких официальных гарантий, что это письмо
свободно от вирусов.




2012/2/15 robin


IHMO, the mnemonic for BCT was not well-chosen.
Better might have been DBZ
for Decrement and Branch on Zero.

As for the below case of BALR, clearly, there needed to be yet another
instruction :-
DWIM
(Do What I Mean)

-Original Message-
From: Bernd Oppolzer
Date: Saturday, 11 February 2012 3:36
Subject: Re: code comments


My favourite one is:

 BALR  R3,0 SUBTRACT 1 FROM R3

Obviously, the opcode is wrong, should be BCTR.


Re: MNEMONICS

2012-02-13 Thread Paul Gilmartin

On 2/13/2012 6:59 PM, Steve Smith wrote:

Maybe John Gilmore will provide a witty retort, but you surely must know
that the number of Russian-literate people here is probably pretty low.
Babelfish did nothing but convert this text into HTML entities.


My Russian is rudimentary, so I fell back on Google Translation which
automatically recognized Russian then did a surprisingly good job on
both the body and the legal disclaimer.  A couple exceptions:

o It got "command" correct in the singular (though I would have said
  "instruction".  However, in the plural it translated it as "teams".

o It omitted "is" (which is implicit in Russian) in one instance.  However
  elsewhere it correctly supplied "are"

Overall, it did better than I'd expect of a Russophone novice ESL student.

I also relied on Google for my two word followup, but made a visual
check for sanity.

-- gil


Re: MNEMONICS

2012-02-13 Thread John Gilmore
I do in fact read and, haltingly, speak Russian; and I will be happy
to translate posts to and from Russian in modest volumes, say 8-10 a
day, when I am tuned in.

What I cannot do is provide any guaranty that I will be immediately
available on some particular day to perform this service.

--jg

On 2/13/12, Steve Smith  wrote:
> Maybe John Gilmore will provide a witty retort, but you surely must know
> that the number of Russian-literate people here is probably pretty low.
> Babelfish did nothing but convert this text into HTML entities.
>
> On 2/13/2012 19:24, Valeriy Mironenko wrote:
>> Bad Idea. Плохая идея-изменение мнемоники команд. Команды существуют с
>> 1964
>> года, если что-то не нравится - напиши свои макро и не забудь написать -
>> PRINT GEN, когда будешь передавать третьим лицам свои исходники.
>>
>> С уважением,
>> *Валерий Мироненко*
>> --
>> Direct: +7 916 688 33 95 | SKYPE: ValMironenko
>> Email: vmirone...@gmail.com | © 2012 Avronet LLC
>>
>> --
>> Это сообщение электронной почты, включая вложения, только для
>> использования
>> лицом, которому оно было отправлено, и может содержать информацию, которая
>> является конфиденциальной или охраняемой законом. Если вы не
>> предполагаемый
>> получатель или получили это сообщение по ошибке, вы не имеете права
>> копировать, распространять или иным образом использовать это сообщение или
>> его вложенные файлы. Пожалуйста, сообщите отправителю немедленно об ошибке
>> по обратному адресу электронной почты и удалите это сообщение и любые
>> вложения. Отправитель не дает никаких официальных гарантий, что это письмо
>> свободно от вирусов.
>>
>>
>>
>>
>> 2012/2/15 robin
>>
>>> IHMO, the mnemonic for BCT was not well-chosen.
>>> Better might have been DBZ
>>> for Decrement and Branch on Zero.
>>>
>>> As for the below case of BALR, clearly, there needed to be yet
>>> another
>>> instruction :-
>>> DWIM
>>> (Do What I Mean)
>>>
>>> -Original Message-
>>> From: Bernd Oppolzer
>>> Date: Saturday, 11 February 2012 3:36
>>> Subject: Re: code comments
>>>
 My favourite one is:

  BALR  R3,0 SUBTRACT 1 FROM R3

 Obviously, the opcode is wrong, should be BCTR.
>


--
John Gilmore, Ashland, MA 01721 - USA


Re: MNEMONICS

2012-02-13 Thread Valeriy Mironenko
JG,  Thanks for cooperation!

С уважением,
*Валерий Мироненко*
--
Direct: +7 916 688 33 95 | SKYPE: ValMironenko
Email: vmirone...@gmail.com | © 2012 Avronet LLC

--
Это сообщение электронной почты, включая вложения, только для использования
лицом, которому оно было отправлено, и может содержать информацию, которая
является конфиденциальной или охраняемой законом. Если вы не предполагаемый
получатель или получили это сообщение по ошибке, вы не имеете права
копировать, распространять или иным образом использовать это сообщение или
его вложенные файлы. Пожалуйста, сообщите отправителю немедленно об ошибке
по обратному адресу электронной почты и удалите это сообщение и любые
вложения. Отправитель не дает никаких официальных гарантий, что это письмо
свободно от вирусов.




14 февраля 2012 г. 7:05 пользователь John Gilmore <
johnwgilmore0...@gmail.com> написал:

> I do in fact read and, haltingly, speak Russian; and I will be happy
> to translate posts to and from Russian in modest volumes, say 8-10 a
> day, when I am tuned in.
>
> What I cannot do is provide any guaranty that I will be immediately
> available on some particular day to perform this service.
>