Re: Questions about Invoking the Assembler Dynamically

2016-09-17 Thread Scott Ford
Yep

On Friday, September 16, 2016, Sharuff Morsa3 
wrote:

> Joe
> If you specify (or default to) NOADATA, the file is not opened
> and
> the book HLASM V1R6 Programmer's Guide - Table 24. Invoking the assembler
> dynamically) says:
> ddnamelist
> Specifies the address of a variable-length list containing alternative
> ddnames for the data sets
> used during assembler processing. If standard ddnames are used, this
> operand can be omitted
>
> regards
> Sharuff
>
> IBM Mainframe Assembler List  > wrote on
> 16/09/2016 00:12:13:
>
> > From: Joe Reichman >
> > To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
> > Date: 16/09/2016 00:12
> > Subject: Questions about Invoking the Assembler Dynamically
> > Sent by: IBM Mainframe Assembler List  >
> >
> > Hi
> >
> >
> >
> > I am invoking ASMA90 Dynamically two questions
> >
> >
> >
> > If I  am using the standard DDNAMES I don't have to specify a second
> param
> > only a options list correct ?
> >
> >
> >
> > Also If I don't specify a ADATA param do I have to allocate a SYSADATA ?
>
> >
> >
> >
>
> Unless stated otherwise above:
> IBM United Kingdom Limited - Registered in England and Wales with number
> 741598.
> Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6 3AU
>


Re: COBOL CALLing ALC ...

2016-07-11 Thread Scott Ford
Steve,

Also very the called Assembler subroutine isn't doing I/O below the line and
verify your LE parms are ALL31(ON) , which is one of many to be careful of
with LE.

Scott

On Monday, July 11, 2016, John McKown  wrote:

> On Mon, Jul 11, 2016 at 3:09 PM, Steve Thompson  > wrote:
>
> > I am trying to determine how I am supposed to know if a COBOL program is
> > AMODE=31/ANY when they call an ALC subroutine.
> >
> > The routine getting control has just been through an upgrade from 1979
> > style of NOREUS and data mixed in with instructions.
> >
> > Also, this routine is not LE conforming. It has never been.
> >
> > I'm used to doing a BSM to return as a subroutine to have addressing
> modes
> > match. I had assumed that the caller did BSSM not just BASR or BALR
> >
> > So when the program ends and returns to the caller via BSM R14, wow, you
> > would not believe all the ESTAEs that get driven (including this programs
> > ESTAEX). LE throws a fit and thankfully, having set up SYSMDUMP with
> > DISP=MOD, I get the dump I need and IPCS ignores the second dump. ;-)
> >
> > So, R14 does not have the hi-order bit on when I am called.
> >
> > COBOL being used is Enterprise COBOL 4.2 (which is currently supported).
> >
> > The environment, just so we are all on the same page is JES2, z/OS 2.2,
> > z13EC.
> >
> > Regards,
> > Steve Thompson
> >
> > PS. I have been scanning various manuals (including the LE one) and
> > nothing is said about this. And I don't have any MVS/XA or MVS/ESA
> manuals
> > around anymore.
> >
>
> ​I did this long ago for a COBOL program. Excerpts below.
>
> ... save ...
> MAINLINE DS0H
>  L R15,=A(DO31BIT+X'8000') JM0803
>  BASSM R14,R15FORCE 31 BIT MODEJM0803
> *  JM0803
> * THE PREVIOUS TWO INSTRUCTIONS FORCE THE CPU INTO 31 BIT MODE
> * WHILE BRANCHING TO THE LABEL 'DO31BIT'.
> *  JM0803
> DO31BIT  DS0H  JM0803
>  STR14,MODE   SAVE CURRENT MODEJM0803
>  NCMODE,=X'8000'  CLEAR BITS   JM0803
> *  JM0803
> * THE BASSM INSTRUCTION PLACED THE CURRENT PSW ADDRESS INTO R14.
> * THIS INCLUDES THE THEN-CURRENT ADDRESSING MODE. IF THE HIGH BIT
> * OF REG 14 IS 1, THEN THE CPU WAS ALREADY IN 31 BIT MODE. IF IT
> * WAS ZERO, THEN THE CPU WAS IN 24 BIT MODE. IN EITHER CASE, THE
> * CPU WILL BE IN 31-BIT MODE AFTER THE BASSM.
> * WE SAVE THE HIGH-BIT OF R14 SO THAT WE CAN RETURN TO THE
> * ORIGINAL CALLER IN HIS ORIGINAL ADDRESSING MODE.
> *  JM0803
> ...
> ... code
> ...
> ... return
> * LET'S GO BACK TO THE CALLER. SINCE WE MAY NEED TO CHANGE BACK
> * TO 24 BIT MODE, WE CAN'T USE THE RETURN MACRO. SO LET'S JUST
> * ISSUE THE INSTRUCTIONS OURSELVES. THE MAIN DIFFERENCE BELOW
> * IS THE USE OF THE BSM INSTRUCTION INSTEAD OF THE BR INSTRUCTION.
> * THE BSM INSTRUCTION WILL CHANGE THE MODE AS APPROPRIATE.
> *  JM0803
>  LRR1,R13 SAVE REGISTER 13 JM0803
>  L R13,4(,R13)GET CALLER'S R13 JM0803
>  L R14,12(,R13)   GET RETURN ADDRESS   JM0803
>  O R14,MODE   SET ORIGINAL JM0803
> *ADDRESSING MODE   JM0803
>  LMR0,R12,20(R13) RELOAD REGISTERS JM0803
>  SLR   R15,R15ZERO COND CODE   JM0803
>  OI15(R13),X'01'  SET FLAG JM0803
>  BSM   R0,R14 RETURN TO CALLER JM0803
> *WHILE SETTING THE JM0803
> *ADDRESS MODE  JM0803
> ​
>
>
> ​That is directly from my code.
>
>
>
> --
> "Pessimism is a admirable quality in an engineer. Pessimistic people check
> their work three times, because they're sure that something won't be right.
> Optimistic people check once, trust in Solis-de to keep the ship safe, then
> blow everyone up."
> "I think you're mistaking the word optimistic for inept."
> "They've got a similar ring to my ear."
>
> From "Star Nomad" by Lindsay Buroker:
>
> Maranatha! <><
> John McKown
>


Re: Storage Question

2016-04-18 Thread Scott Ford
Yes sir, we have routine that also does the IEANTRT first, typo on my part
for order.

The way Peter and Ed pointed out was my thinking. Thank you guys

Much appreciated..

Scott

On Monday, April 18, 2016, Ed Jaffe  wrote:

> On 4/18/2016 7:38 AM, Peter Relson wrote:
>
>> Loop
>>IEANTRT to retrieve the token
>>If RC indicates "token exists" then
>>  Leave loop
>>Else if bad-RC then
>>  error-exit
>>Obtain and fill in storage
>>Set up 16 byte token to locate that storage
>>IEANTCR to create the name/token
>>If RC indicates "name/token already exists" then
>>  Free the obtained storage
>>Else if bad-RC then
>>  error-exit
>> EndLoop
>>
>
> This is exactly what we do.
>
> It avoids the overhead and hassle of explicit serialization in exchange
> for a _very, very tiny chance_ of briefly acquiring 2X storage.
>
> --
> Edward E Jaffe
> Phoenix Software International, Inc
> 831 Parkview Drive North
> El Segundo, CA 90245
> http://www.phoenixsoftware.com/
>


Re: Storage Question

2016-04-17 Thread Scott Ford
Guys,

We use a version of RACF's command exit to capture data. My problem is
events are happening before a storage area is available, this is done later
with a STC , I am thinking of building a scratch area , messages are 100
bytes long, have the exit check for the scratch pad , if not there build it
, if there use it to save or store the messages until the STC comes up...

Am I think wrong ?

Scott

On Sunday, April 17, 2016, Sam Siegel <s...@pscsi.net> wrote:

> Yes.   If you needed the storage to outlive the TCB, you would need to use
> a subpool which allows the storage to outlive the TCB.
>
> On Sun, Apr 17, 2016 at 11:59 AM, Scott Ford <idfzos...@gmail.com
> <javascript:;>> wrote:
>
> > Hey Sam,
> >
> > In this case no, so I am safe with a storage obtain I would think ?
> >
> > A storage release when I am done and the tcb ends
> >
> > Scott
> >
> > On Sunday, April 17, 2016, Sam Siegel <s...@pscsi.net <javascript:;>>
> wrote:
> >
> > > Scott.   Does the storage need to out live the tcb which allocates it?
> > > On Apr 17, 2016 11:31 AM, "Scott Ford" <idfzos...@gmail.com
> <javascript:;>
> > <javascript:;>>
> > > wrote:
> > >
> > > > All:
> > > >
> > > > I have a question about storage and for purpose of this discussion
> > 31-bit
> > > > storage.
> > > > If a program key=0, wants to create an area of storage and later use
> > that
> > > > storage area what is the accepted method ?  I have been using a
> IEANTCR
> > > and
> > > > then a Storage Obtain..Is there a better way ? I realize I can use
> > > > Dataspaces but that would require a running STC if I read correctly
> ..
> > > >
> > > > Regards,
> > > > Scott
> > > >
> > >
> >
>


Re: Storage Question

2016-04-17 Thread Scott Ford
Hey Sam,

In this case no, so I am safe with a storage obtain I would think ?

A storage release when I am done and the tcb ends

Scott

On Sunday, April 17, 2016, Sam Siegel <s...@pscsi.net> wrote:

> Scott.   Does the storage need to out live the tcb which allocates it?
> On Apr 17, 2016 11:31 AM, "Scott Ford" <idfzos...@gmail.com <javascript:;>>
> wrote:
>
> > All:
> >
> > I have a question about storage and for purpose of this discussion 31-bit
> > storage.
> > If a program key=0, wants to create an area of storage and later use that
> > storage area what is the accepted method ?  I have been using a IEANTCR
> and
> > then a Storage Obtain..Is there a better way ? I realize I can use
> > Dataspaces but that would require a running STC if I read correctly ..
> >
> > Regards,
> > Scott
> >
>


Storage Question

2016-04-17 Thread Scott Ford
All:

I have a question about storage and for purpose of this discussion 31-bit
storage.
If a program key=0, wants to create an area of storage and later use that
storage area what is the accepted method ?  I have been using a IEANTCR and
then a Storage Obtain..Is there a better way ? I realize I can use
Dataspaces but that would require a running STC if I read correctly ..

Regards,
Scott


Re: Csect - Dsect Question

2016-04-02 Thread Scott Ford
Guys,

This is great for me.  Have don't any 64bit Assembler work and want to..so
I am a sponge here...


Scott

On Saturday, April 2, 2016, Ed Jaffe  wrote:

> On 4/2/2016 6:51 AM, Peter Relson wrote:
>
>> And of course none of the IBM-Main readers would ever rely on an
>> empirical test.
>>
>
> Haha! Of course not! ;-)
>
> (But, ASSEMBLER-LIST readers might ijs... :-) )
>
> The intent of the doc is to show that the 64-bit GR0 can be used as a
>> BASSM target in all cases. I'll get it updated to make it clear that bits
>> 0-31 are set to 0's for the AMODE 24 and AMODE 31 cases, and are not
>> necessarily 0 for the AMODE 64 case when LOAD with ADDR64 was used. And if
>> RMODE 64 is ever supported for normal LOAD, then the AMODE 64 case would
>> change too.
>>
>
> Thanks, Peter! That's a big help!
>
> Otherwise, people will be putting LLGTRs into their code and then removing
> them (or forgetting to) if/when RMODE(64) becomes reality...
>
> With all of this in mind, I suppose I should amend my example to read:
>
> LOAD  EPLOC==CL8'MSGTABLE' Load external message table
> TMLL  R0,X'0001'   RMODE(64) ?
> JO*+8   ---\   Branch if yes
> NIHL  R0,X'7FFF'   |   Turn of 31-bit indicator
> NILL  R0,X'FFFE'   STG   R0,MsgTable  Save clean table address
>
> --
> Edward E Jaffe
> Phoenix Software International, Inc
> 831 Parkview Drive North
> El Segundo, CA 90245
> http://www.phoenixsoftware.com/
>


Re: Csect - Dsect Question

2016-03-31 Thread Scott Ford
Wow, Ed how do I say thank you, and yep I am a following your code.


It's great...


Regards,
Scott

On Wednesday, March 30, 2016, Ed Jaffe <edja...@phoenixsoftware.com> wrote:

> On 3/30/2016 7:05 AM, Scott Ford wrote:
>
>> I have a need to create message table, with the following attributes:
>>
>> 1. MSGID = 9 chars
>> 2. Length of msg
>> 3. Message
>>
>> I would like this "tab;e" in loose terms to be external. I have never done
>> external dsects. Am in right i can do that , create a external message
>> table, bring it into
>> storage and index into it to find messages ?   If so where can I find a
>> example ..
>>
>
> For example:
>
> MsgEntry DSECT ,
> MsgIdDSCL9
> MsgSize  DSXL1
> MsgText  DSCL80
> MsgLenth EQU   *-MsgEntry
>
> Code LOCTR ,Switch to code
> ...
>  LOAD  EPNAME==CL8'MSGTABLE'Load external message table
>  NILH  R1,X'7FFF'   Turn off AMODE indicators
>  NILL  R1,X'FFFE'   (same)
>  STG   R1,MsgTable  Save clean table address
> ...
>  LLGH  R4,MsgNumGet message number
>  AGHI  R4,-1Make relative to zero
>  MGHI  R4,MsgLenth  Compute offset into table
>  AGR4,MsgTable  Point to message entry
>  USING MsgEntry,R4   LAY   R1,OutArea   Point to output area
>  MVC   0(L'MsgId,R1),MsgId  Copy message id
>  MVI   L'MsgId(R1),C' ' Set blank separator
>  LAR15,L'MsgID+1(,R1)   Point where MsgText goes
>  LLGC  R14,MsgSize  Get size of message
>  AGHI  R14,-1   Make relative to zero
>  EXR14,MoveTxt  Copy the message text
>
> Constant LOCTR  ,   Switch to constants
> MoveTxt  MVC   0(*-*,R15),MsgText   Dummy for execute
> Code LOCTR  ,   Switch back to code
>
>  LAR0,1(R14,R15)Compute total msg length
>  SGR   R0,R1 in R0 for WriteMsg service.
>  JAS   R14,WriteMsg R1 = TextPtr, R0 = TextgLen
>  DROP  R4   ...
>
> --
> Edward E Jaffe
> Phoenix Software International, Inc
> 831 Parkview Drive North
> El Segundo, CA 90245
> http://www.phoenixsoftware.com/
>


Csect - Dsect Question

2016-03-30 Thread Scott Ford
I have a need to create message table, with the following attributes:

1. MSGID = 9 chars
2. Length of msg
3. Message

I would like this "tab;e" in loose terms to be external. I have never done
external dsects. Am in right i can do that , create a external message
table, bring it into
storage and index into it to find messages ?   If so where can I find a
example ..

Regards,
Scott


Re: Dynamic datasets

2016-03-21 Thread Scott Ford
Tom,

The program would assign the DDNAME , I am thinking BPXWDYN or SVC99.

Scott


On Monday, March 21, 2016, Tom Marchant <
00a69b48f3bb-dmarc-requ...@listserv.uga.edu> wrote:

> On Fri, 18 Mar 2016 15:12:32 -0400, Scott Ford wrote:
>
> >I have a STC that uses datasets as temporary staging areas and would like
> to
> >make them more dynamic, i.e.; no ddname in the proc.
>
> Do you mean that you want dynamic allocation to assign a DDNAME?
> Or just that there is no DDNAME in the proc. You could generate a DDNAME
> of your
> choice when you issue SVC 99 (or BPXWDYN), and use it for a subsequent
> FREE.
>
> >I would also like to
> >create them as &
>
> Do you mean that you want to assign, e.g. DSN=&TEMP1?
> Or do you want the system to assign a temporary data set name?
>
> --
> Tom Marchant
>


Re: Dynamic datasets

2016-03-19 Thread Scott Ford
I'm believer  Monkeys

On Fri, Mar 18, 2016 at 3:15 PM, <rkueb...@tsys.com> wrote:

> SVC99
>
> Efforts and courage are not enough without purpose and direction. - John
> F. Kennedy
> Fasten your seat belts, it's going to be a bumpy ride. - Bette Davis (as
> character Margo Channing) _All About Eve_1950
> Furious activity is no substitute for understanding. - H. H. Williams
> Our greatest danger in life is in permitting the urgent things to crowd
> out the important. - Charles E. Hummel
> Quidquid latine dictum sit, altum videtur.
>
>
>
> From:   Scott Ford <idfzos...@gmail.com>
> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
> Date:   03/18/2016 03:14 PM
> Subject:Dynamic datasets
> Sent by:IBM Mainframe Assembler List
> <ASSEMBLER-LIST@LISTSERV.UGA.EDU>
>
>
>
> All,
>
> I have a STC that uses datasets as temporary staging areas and would like
> to
> make them more dynamic, i.e.; no ddname in the proc. I would also like to
> create them as && Where do i find information or can someone tell me
> how to accomplish this...?
>
> Regards,
> Scott
> IDMWORKS
>
>
>
>
>
> - The information contained in
> this communication (including any attachments hereto) is confidential and
> is intended solely for the personal and confidential use of the individual
> or entity to whom it is addressed. The information may also constitute a
> legally privileged confidential communication. If the reader of this
> message is not the intended recipient or an agent responsible for
> delivering it to the intended recipient, you are hereby notified that you
> have received this communication in error and that any review,
> dissemination, copying, or unauthorized use of this information, or the
> taking of any action in reliance on the contents of this information is
> strictly prohibited. If you have received this communication in error,
> please notify us immediately by e-mail, and delete the original message.
> Thank you
>


Dynamic datasets

2016-03-19 Thread Scott Ford
All,

I have a STC that uses datasets as temporary staging areas and would like to
make them more dynamic, i.e.; no ddname in the proc. I would also like to
create them as && Where do i find information or can someone tell me
how to accomplish this...?

Regards,
Scott
IDMWORKS


Re: Dynamic datasets

2016-03-18 Thread Scott Ford
Gil,

I am going to look...

Let you know..

Scott

On Friday, March 18, 2016, Paul Gilmartin <
0014e0e4a59b-dmarc-requ...@listserv.uga.edu> wrote:

> On 2016-03-18, at 14:07, Dougie Lawson wrote:
>
> > I'd suggest looking at BPXWDYN as it's easier to call that than set-up
> all
> > the gubbins needed to use SVC99.
> >
> Is RTDDN supported when BPXWDYN is called from Assembler?  I've
> used it only in Rexx.  BPXWDYN is described in the unlikely
> Rexx for UNIX manual.
>
> -- gil
>


Re: CSA Monitor

2016-03-03 Thread Scott Ford
Hey John,

Yeah both we have a assembler routine that reads the subpool entries (
all that are there ) into a large array/table.
But I have customers nervous that cant tell how much is in use or whats in
the subpool.

So thats my situation, I figure dataspace is better. Our exits feed the
RACF events to the subpool.

Scott

On Thu, Mar 3, 2016 at 4:37 PM, John McKown <john.archie.mck...@gmail.com>
wrote:

> On Thu, Mar 3, 2016 at 3:29 PM, Scott Ford <idfzos...@gmail.com> wrote:
>
> > All,
> >
> > We in our product build a cache area in Subpool 231.  It is build using a
> > standard
> > 'Storage Obtain' and use a token to anchor it. I need to monitor the
> usage.
> > I am not sure if I can without disturbing it. Am I correct in this
> > assumption ?
> >
> > Scott
> >
>
> B
> ​y monitor, I take it you mean somehow trace when it is read or written? Or
> do you mean that you want to know how entries in the cache are added &
> deleted to watch something like a "high water mark" of how much of the
> cache is used over time?
>
>
> --
> A fail-safe circuit will destroy others. -- Klipstein
>
> Maranatha! <><
> John McKown
>


CSA Monitor

2016-03-03 Thread Scott Ford
All,

We in our product build a cache area in Subpool 231.  It is build using a
standard
'Storage Obtain' and use a token to anchor it. I need to monitor the usage.
I am not sure if I can without disturbing it. Am I correct in this
assumption ?

Scott


Re: BPAM multiple members/one DCB and EODAD exit?

2016-01-09 Thread Scott Ford
Dave,

What are you trying to do ? I understand reading members no issue..why ? A
design issue ? Bug ?  It helps so we can aid you.

Regards,
Scott
IDMWORKS

On Saturday, January 9, 2016, Thomas David Rivers  wrote:

> Ah!
>
> Just wanted to let everyone know - it *was* a bug in my code
> (typo in my NOTE code.)
>
> Thanks for your indulgence!
>
> - Dave Rivers -
>
> --
> riv...@dignus.com Work: (919)
> 676-0847
> Get your mainframe programming tools at http://www.dignus.com
>


Re: Review My Program

2015-12-12 Thread Scott Ford
Fred,

Do you happened to have an example of the Assembler Code? I want to build
something similar , with the Assembler being a message table...


Regards,
Scott

On Saturday, December 12, 2015, Fred van der Windt <
03f9f1712aba-dmarc-requ...@listserv.uga.edu> wrote:

> You don't really need any code in the loadmodule at all, it only needs to
> contain the table (preceded a header that contains things like the table
> length, row length or whatever you need. Than you can do:
>
> WORKING-STORAGE SECTION.
> 01 FNC-PTR FUNCTION-POINTER.
> 01 PTR REDEFINES FNC-PTR POINTER.
>
> LINKAGE SECTION.
> 01 TBL.
>   03 TBL-HDR.
>:
>03 TBL-DAT.
>   :
>
> PROCEDURE DIVISION.
> SET FNC-PTR TO ENTRY 'tablename'
> SET ADDRESS OF TBL TO PTR
>
> You can also use the SET TO ENTRY statement to dynamically load a table
> that is in a separate load module.
>
> Fred!
>


DSPSERV Question

2015-10-15 Thread Scott Ford
I want to be able to pass an Assembler Subroutine a space allocation for
DSPSERV.
The macro below ( from IBM Manual ):

 DSPSERV CREATE,NAME=CCACHE,STOKEN=VOYTOKEN,   C
   BLOCKS=DSPCSIZE,ORIGIN=DSPCORG
..
 DSPCSIZE EQU 100  * 1 Million Bytes *
DSPBLCKS DC  A((DSPCSIZE+4095)/4096

The question is do I have to do the 'DSPBLCKS' calcuation as shown before I
do the call from the other program , this way DSPSERV only has to ask for
the number of blocks ?  Or am I misunderstanding ?

Thanks in Advance,

Scott


Re: ASSEMBLER-LIST Digest - 7 Oct 2015 to 8 Oct 2015 (#2015-111)

2015-10-10 Thread Scott Ford
I always use "YREGS", haven't had the need for AR type regs.

Scott

On Saturday, October 10, 2015, Brent Longborough 
wrote:

> > Date: Thu, 8 Oct 2015 14:19:10 -0400 From: Tom Marchant
> > > Subject: Re: BXLE considered
> harmful On Thu,
> > 8 Oct 2015 10:29:47 -0600, Paul Gilmartin wrote:
> >> >So, should every implied register reference be documented in situ,
> perhaps
> >> >by a line comment?
> > I say "no". ...
>
> Agreed
>
> >
> > Apparently it was a point that Brent completely missed. The value of the
> > cross-reference is not in understanding a particular line of code, but
> for
> > finding where a register is used, and where it is changed. If I have a
> > section of code where I want to use an additional register, I can look at
> > every instruction in that section to see which registers are used, or I
> can
> > use the cross-reference.
> >
>
> I didn't miss the point at all. I was talking exclusively about
> readability, so the reader can understand the code as quickly as
> possible, and empathise with it.
>
> Of course the register cross-reference is useful (didn't have that in
> 1968!), both for writing and reading, but for quick reading it's as
> intrusive as an endnote reference in a book. And when you say "where I
> want to use an additional register", that's fine, but you're talking
> about writing code, whereas I was talking about reading.
>
> Brent Longborough
> Sent from my typewriter -- draw your own conclusions
>


Branch table

2015-10-02 Thread Scott Ford
All:

I am building a branch table like this:

FUNC DSCL10

FUNCTBL   DS   0H
DC  'INIT  'A(INIT_DSP)
..etc
TBLENT  DS   F'5'

--

LAR4,FUNCTBL
L  R5,TBLENT
LOOPTBL   DS   0H
   CLC FUNC,0(R4)
   BE   FOUND_IT

FOUND_IT DS   0H
   LAR4,10(R4)
   L  R14,R4
   BALR  R14,R15


Is my logic correct ? or did i miss something ?

Regards,
Scott


Re: Branch table

2015-10-02 Thread Scott Ford
All,

Really appreciate it, I am prototyping some dataspace code, that can be
called.. So i want to make sure my thinking is right or close..Tony I like
the above code. Very nice and flexible which I like.

On Fri, Oct 2, 2015 at 2:49 PM, Tony Harminc <t...@harminc.com> wrote:

> On 2 October 2015 at 13:57, Scott Ford <idfzos...@gmail.com> wrote:
> > I am building a branch table like this:
> >
> > FUNC DSCL10
> >
> > FUNCTBL   DS   0H
> > DC  'INIT  'A(INIT_DSP)
> > ..etc
> > TBLENT  DS   F'5'
> >
> >
> --
> >
> > LAR4,FUNCTBL
> > L  R5,TBLENT
> > LOOPTBL   DS   0H
> >CLC FUNC,0(R4)
> >BE   FOUND_IT
> >
> > FOUND_IT DS   0H
> >LAR4,10(R4)
> >L  R14,R4
> >BALR  R14,R15
> >
> >
> > Is my logic correct ? or did i miss something ?
>
> It's on the right track, but is a little confused...
>
> Your CLC is using the implict length of FUNC, which is 10, so you need
> to be sure all your table entries like DC  'INIT  ' are also (at
> least) 10 bytes long. This is a lot easier to see in a fixed-pitch
> font; yours is correct, but best to specify them as CL10'INIT' to get
> trailing blank padding. Even better would be to define a symbol,
> either an ordinary symbol with an EQU or a variable symbol via SETA,
> to use in all places. Then you can easily change the length of your
> function keywords globally. Something like:
>
>  SETA 10
> FUNC  DSCL
> ...
>   CL'INIT  '
> ...
>   LAR4,(,R4)
>
> I appreciate that it's just a snippet, but your code falls into the
> "found" case. You show no code for the case where the CLC fails. You
> need to increment the table pointer over both the text and the adcon.
>
> But... FUNCTBL starts on a halfword boundary. The assembler will force
> the adcon following the 10 bytes of text to a fullword boundary, which
> may or may not be correct for the first table entry, but will
> certainly be incorrect for each subsequent entry. So when you
> increment by 10 as you search, you will not be pointing at the text in
> the next entry. Either make your text field () a multiple of 4
> (perhaps 8 or 12), or change your adcon to not boundary-align, i.e.
> AL4 rather than just A. Or put the adcon before the text; there are
> several approaches.
>
> TBLENT is a DS rather than a DC. It won't be set to any predictable
> value at run time.
>
> >L  R14,R4
> This sets R14 to the address of the adcon in the entry you just found
> in the table (or it would if the above-mentioned boundary alignment
> problem wasn't there). You need
>   L Rn,0(,R4)
> But in any case you don't want R14 since the immediately following
> BALR sets R14 and branches to the unset R15.
>
> Tony H.
>


Re: Branch table

2015-10-02 Thread Scott Ford
Tony,

Thank you so much

Scott ford
www.idmworks
from my IPAD




> On Oct 2, 2015, at 2:11 PM, Tony Thigpen <t...@vse2pdf.com> wrote:
> 
> You forgot to BCTR after the compare fails.
> 
> Tony Thigpen
> 
> Randy Schafer wrote on 10/02/2015 02:02 PM:
>> You probably meant  'L  R14,6(R4)' before the BALR.
>> 
>> -Original Message-
>> From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] 
>> On Behalf Of Scott Ford
>> Sent: Friday, October 02, 2015 12:58 PM
>> To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
>> Subject: Branch table
>> 
>> All:
>> 
>> I am building a branch table like this:
>> 
>> FUNC DSCL10
>> 
>> FUNCTBL   DS   0H
>> DC  'INIT  'A(INIT_DSP)
>> ..etc
>> TBLENT  DS   F'5'
>> 
>> --
>> 
>> LAR4,FUNCTBL
>> L  R5,TBLENT
>> LOOPTBL   DS   0H
>>CLC FUNC,0(R4)
>>BE   FOUND_IT
>> 
>> FOUND_IT DS   0H
>>LAR4,10(R4)
>>L  R14,R4
>>BALR  R14,R15
>> 
>> 
>> Is my logic correct ? or did i miss something ?
>> 
>> Regards,
>> Scott
>> 
>> 


Re: Branch table

2015-10-02 Thread Scott Ford
Tony,

I don't feel so bad now, my age...

Scott ford
www.idmworks
from my IPAD




> On Oct 2, 2015, at 7:28 PM, Tony Harminc <t...@harminc.com> wrote:
> 
> On 2 October 2015 at 15:53, glen herrmannsfeldt <g...@ugcs.caltech.edu> wrote:
>>> "Tony Harminc" <t...@harminc.com> wrote:
>> (snip)
>> 
>>>   L  R14,R4
>> 
>> (snip)
>> 
>>> This sets R14 to the address of the adcon in the entry you just found
>>> in the table (or it would if the above-mentioned boundary alignment
>>> problem wasn't there). You need
>> 
>> No, this loads R14 from an address near the beginning of memory.
>> 
>> Pretty sneaky calling it R4, but the value is 4, so the result is actually
>> 
>>L  R14,4
> 
> Yup - I missed that one, and not fir the first time. But the High
> Level Assembler surely will not miss it if the PAGE0 option is
> specified.
> 
> Interesting how several of us commented on different aspects of the
> code snippet, and each caught something and missed something else.
> More to come, I'm sure.
> 
> Tony H.


Re: John Ehrman Assembler Book

2015-02-08 Thread Scott Ford
Mike,
I just downloaded it also I feel the same as you. I have gaps in my Assembler 
knowledge, with John's fine book that should me and I hope others. 

Scott ford
www.identityforge.com
from my IPAD




 On Feb 8, 2015, at 5:02 PM, Mike Shaw quick...@gmail.com wrote:
 
 It looks very good. Comprehensive and well organized; a formidable work. I
 wish I'd had it 35 years ago.
 
 Mike Shaw
 MVS/QuickRef Support Group
 Chicago-Soft, Ltd.
 
 On Sun, Feb 8, 2015 at 3:44 PM, Richard A. Lawrence 
 r.a.lawrence...@ralawrence.us wrote:
 
The long awaited John Ehrman Assembler book as available at the
 Marist College web site:
 
 http://idcp.marist.edu/enterprisesystemseducation/Assembler%20Language%
 20Programming%20for%20IBM%20z%20System%20Servers.pdf
 


Re: Another Article On Lagging Mainframe Skills

2014-03-26 Thread Scott Ford
Tony,


I understand what your saying but that's not my experience. Many times its 
text, or decimal.

Its what your used to experience wise like many things.  I think the point 
unless I missed it in my old age,

is that there has to be a market, aka need for such a product. I don't know ..


Regards,

Scott

www.identityforge.com

www.idmworks.com





From: Tony Thigpen
Sent: ‎Wednesday‎, ‎March‎ ‎26‎, ‎2014 ‎8‎:‎24‎ ‎AM
To: IBM Mainframe Assembler List





Just to be clear, I really do understand, and respect, your feelings.
It's a tool you would like to continue using because you are familiar
with it.
My opinion is just that, my opinion. And, in my shops I can enforce my
opinion. :-)
I was not criticizing the port, just tying to explain why it might not
be of interest to many mainframe programmers. And why nobody bothered to
download it. By saying why I was not interested in it.

Now, as to COBOL, we normally deal with non-text based numbers.
Everything in the file is stored packed or binary, not as text. Once it
is passed the input program, the only need is to convert it back to
text for reports. And we have simple PIC clauses to hand that conversion.
As to the input program, these have traditionally worked with input
fields that do not have all the dashes, commas, and such. We started
with keypunches (where the special characters were removed by the
keypunch operator). We then moved to BMS screens (for CICS) where CICS
had a built-in de-edit function. (Of course many shops wrote their own.)
But, even then, we normally expected the return value to be just digits.
Even as we move from CICS to Web, it's still under CICS with the
existing tools already in place.
We have been working this way for 30+ years. Regular expressions is
relatively young.

Do we need regular expressions in COBOL? I don't think so. Can you, and
others, continue to try to evangelize about regular expressions? Yes you
can. Maybe, some day, I will change my mind. I just doubt it. :-)

Maybe you should start a thread: Why COBOL needs Regular Expressions.

Tony Thigpen

-Original Message -
  From: zatl...@yahoo.com
  Sent: 03/26/2014 07:54 AM
 I share your sentiment about vi which I consider to be a bug, not a feature.  
 I agree that there could have been a better way to do pattern matching.  The 
 reality is that there are alternatives for vi, ranging from ISPF all the way 
 to Notepad++ and many options in between,  but in the same reality, if you 
 need to do serious pattern matching, and I need to do it all the time, there 
 is no viable alternative.  The regex methodology is the one that took an hold 
 on the world and became the Lingua Franca, the de-facto language of the trade.
 I came to the world of pattern matching when this was already a fact of life 
 with  I real chance to change it.
 Now, the reality is also that the only major programming languages that do 
 not have access to regex functionality are COBOL  and PL/1.  All other major 
 languages have this capability.  And it is that deficiency that I intended to 
 resolve .  I am encouraged by those who expressed more positive feelings and 
 will continue to push it.
 ZA

 Sent from Yahoo Mail on Android





Re: CamelCase

2014-03-01 Thread Scott Ford
Is that like Shoe polish

Scott ford
www.identityforge.com
from my IPAD




 On Mar 1, 2014, at 5:45 PM, robin robi...@dodo.com.au wrote:

 - Original Message -
 From: Tony Harminc t...@harminc.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Sunday, March 02, 2014 5:52 AM
 Subject: Re: CamelCase (was: ASSEMBLER-LIST Digest ...)


 On 1 March 2014 00:12, Robert A. Rosenberg a...@rarpsl.com wrote:
 Making STUFF stuff Stuff sTuff ... have different meanings is not as
 fault-tolerant as it could be.


 OTOH: Polish and polish ARE not the same. Telling someone in the army
 to You should Polish your shoes so you will pass inspection or
 claiming I am a polish citizen are both bad uses of the string
 p-o-l-i-s-h since the wrong case of the letter P/p makes the
 meaning of that string in the statements incorrect.

 This oft used example is barely relevant in our context.

 If anyone encounters

 YOU SHOULD POLISH YOUR SHOES SO YOU WILL PASS INSPECTION
 or
 i am a polish citizen

 they will understand without the slightest hint of ambiguity.

 Might cause some trouble with conmputer translation.


Re: CamelCase Field Names (Was: Re: HLASM continuation...)

2014-02-23 Thread Scott Ford
And if the ISV were to rewrite, what would the cost be in man hours and the 
actual PL/X product to install/run/license






Regards,

Scott Ford





From: Ed Jaffe
Sent: ‎Sunday‎, ‎February‎ ‎23‎, ‎2014 ‎12‎:‎16‎ ‎PM
To: IBM Mainframe Assembler List





On 2/22/2014 12:09 PM, Paul Gilmartin wrote:
 Do you appreciate how much happier the customer base would be if
 the PL/x compiler were to be made a product?  Customer and IBM
 developers could be reading from the same page, and IBM could be
 spared the dual maintenance of source.

Maintenance of bilingual macros will persist until long after we are all
dead.

Even if PL/X became public domain tomorrow, it's unlikely that many (if
any?) ISVs could ever justify wholesale rewrite of tens of millions of
lines of working HLASM product code into a language their developers
don't even really know. New modules? Possibly. But, not existing ones.

If such rewrite were viable, one could argue that all existing ISV
product code would have already been rewritten in METAL or Dignus C,
which it has not. New modules? Possibly. But, not existing ones.

--
Edward E Jaffe
Phoenix Software International, Inc
831 Parkview Drive North
El Segundo, CA 90245
http://www.phoenixsoftware.com/

test message

2014-02-20 Thread Scott Ford
guys is this message better and not base-64-encoded ???

Please let me know,,,


Regards,

Scott

Re: test message

2014-02-20 Thread Scott Ford
Thanks , David






Sent from Windows Mail





From: David de Jongh
Sent: ‎Thursday‎, ‎February‎ ‎20‎, ‎2014 ‎7‎:‎22‎ ‎AM
To: IBM Mainframe Assembler List





I've had no problem with any of your messages.  Outlook 2010, Win7 Pro
64-bit.  Verizon.net.

-Original Message-
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
On Behalf Of Scott Ford
Sent: Thursday, February 20, 2014 11:05 AM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: test message

guys is this message better and not base-64-encoded ???

Please let me know,,,


Regards,

Scott

Re: test message

2014-02-20 Thread Scott Ford
Michael:


I have used Eudora in awhile, wow ..thank you


Regards,

Scott











From: Michael Stack
Sent: ‎Thursday‎, ‎February‎ ‎20‎, ‎2014 ‎7‎:‎46‎ ‎AM
To: IBM Mainframe Assembler List





Scott, here is how it looks from Eudora (which hasn't had maintenance for many 
years, and has no idea how to handle some code pages):

At 05:05 PM 2/20/2014 +, you wrote:
Content-Transfer-Encoding: base64guys is this message better and not 
base-64-encoded ?€
Please let me know,,,


Regards,

Scott

Re: test message

2014-02-20 Thread Scott Ford
Windows 8.1 x64 , Windows Mail and I don't cant change anything I am aware of. 





From: Walt Farrell
Sent: ‎Thursday‎, ‎February‎ ‎20‎, ‎2014 ‎4‎:‎02‎ ‎PM
To: IBM Mainframe Assembler List





On Thu, 20 Feb 2014 17:05:12 +, Scott Ford scott_j_f...@yahoo.com wrote:

Z3V5cyBpcyB0aGlzIG1lc3NhZ2UgYmV0dGVyIGFuZCBub3QgYmFzZS02NC1lbmNvZGVkID8/Pw0K
DQpQbGVhc2UgbGV0IG1lIGtub3csLCwNCg0KDQpSZWdhcmRzLA0KDQpTY290dA==

Sorry, Scott, still BASE-64 via the web interface (and, presumably, in the
archive). The one over on IBM-MAIN was better (visible via the web
interface, at least, but garbage if quoted in a reply).

--
Walt

Re: Control block question

2014-02-19 Thread Scott Ford
Walt,


yep I understand the ramifications. Its a current working in many installations.

Without going to deep ( NDA required ), we collect RACF data from the IRREVX01 
and

build a message that is built in Subpool 231. We check where the command 
originates, i.e.; 

SSI, Operator, Parmlib ..in our experience very few from Operator and parmlib. 
That does mean it wont happen.

We check the SSI , Operator and Parmlib origin also.


My question was what was the best way to determine  where the command 
originated, if it was from

batch or TSO/ISPF…I was in the code looking at a REMOVE/CONNECT issue we had 
and had fixed it ..so in my review I started to 

think about a new technique for above.


Now we are doing:


CVT-ASCB-TSB   this is working fine …


But like I mentioned I am open to a better solution , I don't know all the 
answers, I understand how it works , the issue is basically technique which I 
am always improving.


Regards,

Scott Ford

www.identityforge.com





From: Walt Farrell
Sent: ‎Tuesday‎, ‎February‎ ‎18‎, ‎2014 ‎1‎:‎24‎ ‎PM
To: IBM Mainframe Assembler List





On Tue, 18 Feb 2014 16:53:11 +, Sokolsky, Hayim Z. hsokol...@dtcc.com
wrote:

In answering Scott's question ... it greatly depends which exit you are in.
You may not be local to the originating address space.


That's a good point, Hayim.

Actually, I think that applies to all the exits that might be associated
with commands. Unless Scott is using that exit on a system he owns, and on
which he knows that the RACF subsystem address space is not running, it's
always possible that the command might be running in the RACF subsystem
address space.

And by the way, Scott, batch and TSO are not the only two choices for where
a RACF command may be issued. They can come from STCs, of course, and they
can also come in from MVS consoles (or via MGCRE in general), from the RACF
parameter library, and over the network via RRSF.

So it would be interesting to know why you care where it came from and what
use you plan to make of the information. It's likely that you've asked the
wrong question, or asked it in slightly the wrong way.

(And, by the way, it's a much more appropriate question (imho) for the
RACF-L list than a list about using assembler language.)

--
Walt

Re: Control block question

2014-02-19 Thread Scott Ford
Tony,


Thanks for the input, I appreciate it. But Unix isn't within the scope of what 
we are currently doing.

As far as IKJEFT01 we work fine, been that was since it was written in 2002. 
This is a legacy exit that I support and have been changing.

Most of our changes are coming from either TSO command line , Option #6, ISPF 
panels, or Batch via IKJEFT01. Most of our customers wont touch Unix, don't ask 
me why, because I don't know. I work all the platforms , I have too.. 


I just wanted to make sure I was trying to cover all my bases, obviously Unix 
is one that's a wildcard and will go on the list.






Regards,

Scott Ford

www.identityforge.com





From: Tony Harminc
Sent: ‎Wednesday‎, ‎February‎ ‎19‎, ‎2014 ‎9‎:‎53‎ ‎AM
To: IBM Mainframe Assembler List





On 19 February 2014 13:58, Scott Ford scott_j_f...@yahoo.com wrote:

 My question was what was the best way to determine  where the command 
 originated, if it was from
 batch or TSO/ISPF...I was in the code looking at a REMOVE/CONNECT issue we 
 had and had fixed it ..so in my review I started to think about a new 
 technique for above.

 Now we are doing:

 CVT-ASCB-TSB   this is working fine ...

But this is giving you an answer to a question that isn't quite what
you asked at first. You asked I have a need to determine inside an
exit where a RACF command was batch issued or TSO issued, but your
answer is to: is this a classic TSO session with a terminal
connected? There are several other scenarios, and you need to
formulate the right question to get a useful answer. For example,
there are batch TSO sessions (i.e.EXEC PGM=IKJEFT01), there are TSO
commands run using the IKJTSOEV service (which could be in a batch
job, an STC, or a UNIX session - in fact anywhere *except* a classic
TSO session), and there are TSO commands issued from the UNIX/REXX
Address TSO environment. And probably more that I haven't thought
about.

Tony H.

Re: Control block question

2014-02-18 Thread Scott Ford
Pieter,

Thank you very much, this information is much appreciated

Scott ford
www.identityforge.com
from my IPAD




 On Feb 18, 2014, at 11:42 AM, Pieter Wiid pw...@mweb.co.za wrote:

 ASCBJBNI will point to the name of a batch job. If it is zero, then ASCBJBNS
 points to the name of the STC/TSU

 Pieter

 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
 On Behalf Of Scott Ford
 Sent: 18 February 2014 18:35
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject: Control block question

 All,

 I have a need to determine inside an exit where a RACF command was batch
 issued or TSO issued. Is there a way via the TCB I can look or do I have to
 run a control block chain to find out?

 Scott ford
 www.identityforge.com
 from my IPAD


Re: Carmine Cannatello's book

2014-01-17 Thread Scott Ford
Bill,

Who makes FORMAC ? Haven't heard of that one.

Scott ford
www.identityforge.com
from my IPAD




 On Jan 17, 2014, at 9:49 AM, DASDBILL2 dasdbi...@comcast.net wrote:

 I had two months with ALGOL 60, two months with FORTRAN, then 48 years with 
 Assembler punctuated by one day with FORMAC and one day with RPG.  FORMAC was 
 a cool superset of PL/1 that supported variables with thousands of decimal 
 places of accuracy.
 Bill Fairchild

 - Original Message -

 From: Tim Lost tarra...@gmail.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Wednesday, January 15, 2014 6:15:05 PM
 Subject: Re: Carmine Cannatello's book

 Same here, Computer Ops, Production control and then into System Admin. I
 say admin because I don't actually code anything. Just JCL, SMP/e and some
 rexx. Maybe one day I can count myself among the few and chosen true
 Sysprogs :-p


 On Wed, Jan 15, 2014 at 5:46 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Operations into systems programming

 Scott ford
 www.identityforge.com
 from my IPAD




 On Jan 15, 2014, at 5:53 PM, Gord Tomlin 
 gt.ibm.li...@actionsoftware.com wrote:

 On 2014-01-15 17:17, Tony Thigpen wrote:
 (Most Mainframe assembler programmers did time as a COBOL programmer.)

 Interesting assertion. The majority of systems programmers I know did
 not come from an applications programming background. Personally, I've
 only written one COBOL program since university, which means it's the
 only one I wrote without using a keypunch.

 --

 Regards, Gord Tomlin
 Action Software International
 (a division of Mazda Computer Corporation)
 Tel: (905) 470-7113, Fax: (905) 470-6507



Re: Carmine Cannatello's book

2014-01-17 Thread Scott Ford
My personal IT journey probably like others was a bit of a struggle. No college 
degree or let's say about 3 yrs in college and IT technical school. Had to claw 
my way into Systems Programming from operations, first with VSE and VM. My 
first love is VM. Then MVS, mostly on the SNA comm side then IP .so please 
excuse the dumb questions

Scott ford
www.identityforge.com
from my IPAD




 On Jan 17, 2014, at 9:49 AM, DASDBILL2 dasdbi...@comcast.net wrote:

 I had two months with ALGOL 60, two months with FORTRAN, then 48 years with 
 Assembler punctuated by one day with FORMAC and one day with RPG.  FORMAC was 
 a cool superset of PL/1 that supported variables with thousands of decimal 
 places of accuracy.
 Bill Fairchild

 - Original Message -

 From: Tim Lost tarra...@gmail.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Wednesday, January 15, 2014 6:15:05 PM
 Subject: Re: Carmine Cannatello's book

 Same here, Computer Ops, Production control and then into System Admin. I
 say admin because I don't actually code anything. Just JCL, SMP/e and some
 rexx. Maybe one day I can count myself among the few and chosen true
 Sysprogs :-p


 On Wed, Jan 15, 2014 at 5:46 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Operations into systems programming

 Scott ford
 www.identityforge.com
 from my IPAD




 On Jan 15, 2014, at 5:53 PM, Gord Tomlin 
 gt.ibm.li...@actionsoftware.com wrote:

 On 2014-01-15 17:17, Tony Thigpen wrote:
 (Most Mainframe assembler programmers did time as a COBOL programmer.)

 Interesting assertion. The majority of systems programmers I know did
 not come from an applications programming background. Personally, I've
 only written one COBOL program since university, which means it's the
 only one I wrote without using a keypunch.

 --

 Regards, Gord Tomlin
 Action Software International
 (a division of Mazda Computer Corporation)
 Tel: (905) 470-7113, Fax: (905) 470-6507



Re: FORMAC (was: Carmine Cannatello's book)

2014-01-17 Thread Scott Ford
John,

Thank you very much. Hadn't been exposed to it...so I was curious to what it 
was and who developed it

Scott ford
www.identityforge.com
from my IPAD




 On Jan 17, 2014, at 12:18 PM, John Ehrman ehr...@us.ibm.com wrote:

 FORMAC was a symbolic computation, algebraic manipulation system writtten
 (I believe) in PL/I.  All symbolic algebra systems I know of require
 variable-precision arithmetic. (I wrote a couple of System/360 assembler
 subroutines for George Collins' SAC-1 system in the early 1970s.)


Re: Carmine Cannatello's book

2014-01-15 Thread Scott Ford
Tim:

How much you asking for it or trade for ?

Scott ford
www.identityforge.com
from my IPAD




 On Jan 15, 2014, at 7:13 AM, Tim Lost tarra...@gmail.com wrote:

 I am selling my copy or maybe for a trade. It is in great shape.
 I have changed the direction I am going with my skill set and passing on
 the material to someone who can use it.

 James
 On Jan 15, 2014 5:22 AM, Gray Gregory gregory.g...@irs.gov wrote:

 Mr. Gilmore,

 If you have any copies left, please send me one, thanks







 GREGORY GRAY
 IRS, Information Technology Specialist
 OS:CTO:AD:IM:CA:C
 NCFB, A9-331, TOD 0630-1500
 Office - Mon, Tues, Wed - 240-613-1660
 Telework - Thur, Fri - 240-482-7349
 Email - gregory.g...@irs.gov

 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@listserv.uga.edu]
 On Behalf Of McNeill,Cliff
 Sent: Friday, January 03, 2014 10:29 AM
 To: ASSEMBLER-LIST@listserv.uga.edu
 Subject: Re: Carmine Cannatello's book

 As the contest winner, I am certainly thankful for Mr. Gilmore's
 generosity.  I will always cherish this book!
Cliff McNeill

 From:   John Gilmore jwgli...@gmail.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Date:   01/02/2014 02:36 PM
 Subject:Carmine Cannatello's book
 Sent by:IBM Mainframe Assembler List
 ASSEMBLER-LIST@LISTSERV.UGA.EDU



 I going through my technical books I found that I have an extra,
 excellent-condition copy of

 Advanced assembler language and MVS interfaces, Wiley 1991.

 The fifth person who sends me his|her mailing address gets it postage free.

 John Gilmore, Ashland, MA 01721 - USA



Re: Carmine Cannatello's book

2014-01-15 Thread Scott Ford
Operations into systems programming

Scott ford
www.identityforge.com
from my IPAD




 On Jan 15, 2014, at 5:53 PM, Gord Tomlin gt.ibm.li...@actionsoftware.com 
 wrote:

 On 2014-01-15 17:17, Tony Thigpen wrote:
 (Most Mainframe assembler programmers did time as a COBOL programmer.)

 Interesting assertion. The majority of systems programmers I know did
 not come from an applications programming background. Personally, I've
 only written one COBOL program since university, which means it's the
 only one I wrote without using a keypunch.

 --

 Regards, Gord Tomlin
 Action Software International
 (a division of Mazda Computer Corporation)
 Tel: (905) 470-7113, Fax: (905) 470-6507


Re: Carmine Cannatello's book

2014-01-15 Thread Scott Ford
Kirk,

You road to systems sounds like mine

Scott ford
www.identityforge.com
from my IPAD




 On Jan 15, 2014, at 6:43 PM, Kirk Talman rkueb...@tsys.com wrote:

 I started as an EAM operator in 61, the scientific user/programmer in
 Fortran and then taught self ASM-F.  then taught self Cobol followed by
 PL/I RPG  Was about to go to MVT internals to be trained to be sysprog
 when I went into full time ASM.  Along the way did VTAM and wrote a
 testing app for session manager.  I am back to Appl Prog using ASM Cobol
 VSAM IMS DB2 

 My experience is that there is at least one person who knows and uses ASM
 who came from almost all imaginable backgrounds.  If you still do ASM you
 are lucky and have 4110,0001 in your blood.

 The only real difference between programming languages are how procedural
 they are, how flexible they are, how efficient they are and how obnoxious
 their syntax.  Otherwise they are all the same.  Just like the humans who
 invented and use them.

 IBM Mainframe Assembler List ASSEMBLER-LIST@LISTSERV.UGA.EDU wrote on
 01/15/2014 06:27:08 PM:

 From: Ed Jaffe edja...@phoenixsoftware.com

 I came through applications programming ... not systems programming.


 -
 The information contained in this communication (including any
 attachments hereto) is confidential and is intended solely for the
 personal and confidential use of the individual or entity to whom
 it is addressed. If the reader of this message is not the intended
 recipient or an agent responsible for delivering it to the intended
 recipient, you are hereby notified that you have received this
 communication in error and that any review, dissemination, copying,
 or unauthorized use of this information, or the taking of any
 action in reliance on the contents of this information is strictly
 prohibited. If you have received this communication in error,
 please notify us immediately by e-mail, and delete the original
 message. Thank you


Re: Base-less programming

2013-12-06 Thread Scott Ford
Bernd,

I have a rather large exit that I want to convert. It's the RACF command exit, 
so I am trying to decide to convert it to baseless or write an assembler stub 
and redo the exit in C.

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 6, 2013, at 10:47 AM, Bernd Oppolzer bernd.oppol...@t-online.de 
 wrote:

 Just to give some more explanations:

 we have at our site some macros, which allow the structuring of large
 ASSEMBLER programs in subroutines. There is a mainline, which is
 started by a startup macro (let's call it PSTART), which does all the
 linkage
 conventions and establishes some base registers for the code and
 data area. The number of base registers for the code area is not limited,
 but normally should not exceed 3, that makes a code area of 12 k.
 The registers may be specified on the PSTART macro call.

 Then there are subroutine macros, let's say PPROC and PEND.
 PPROC establishes two registers for the code area, which limits
 each PROC to 8k. Again, the registers may be specified on the
 the PPROC macro call.

 Of course, the registers may be reused for every new PROC. So already
 in the past, programs of virtually umlimited size were possible.

 Each PROC can have local variables that are located behind the
 PEND macro and are accessible only from this PROC.

 Now:

 By converting the PPROC and PEND macros (and all other macros)
 to baseless, I was able to remove the 8k restriction for the PPROC / PEND
 blocks, and I only needed one base register, because I didn't need to
 cover the code area any more; I only covered the static data area
 behind the PEND macro (and limited it to 4k in the normal case).
 The code area may grow without limit, as long as the relativ branches
 reach their targets.

 I hope this gives you an idea what I did when I converted our environment
 to baseless.

 Kind regards

 Bernd




 Am 06.12.2013 15:45, schrieb Scott Ford:
 Bernd,

 Ty for your thread. Some of us unfortunately work in multiple languages are 
 of course are getting older, so we may have to ask about a design or concept 
 more than once..yes I am older and I have a condition which makes focusing 
 sometimes difficult...

 That being said, my reason for baseless code is eliminating multiple base 
 register usage and maintain ability..am I wrong here ?

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Dec 6, 2013, at 9:20 AM, Bernd Oppolzer bernd.oppol...@t-online.de 
 wrote:

 Cross-Posted to IBM-Main and IBM-ASSEMBLER-List

 I believe it has been discussed before:

 the term baseless programming is an over-simplification.
 It should be an ASSEMBLER programming technique, where the
 code area is not covered by base registers - which requires
 separation of code area and data area and relative branch instructions;
 take care of your literals.

 If you have large code areas, this may save you some registers,
 or you may save some time otherwise needed to save and reload
 the registers which cover the code area.

 I managed to convert most of our inhouse macros in the last few months
 to baseless, including the site-specific SP macros, so now I don't have
 restrictions regarding the size of the code areas any more. Of course,
 it is not good to have large code areas (small functional blocks are 
 better),
 but if you want to add trace output macros or other test facilities to a
 functional block, you don't like it if code area size restrictions prevent 
 you
 from doing it. This was the main reason for my baseless effort - I had
 to do some maintenance to some very large and very old programs, and
 the only way to do it was to add some trace output.

 Thanks to Ed Jaffe for the link to the SHARE presentation, BTW.

 Kind regards

 Bernd



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



Re: Base-less programming

2013-12-06 Thread Scott Ford
Ed,

That would be superb news, I will have to dig through the Metal C doc. I gave 
written some C all ready so learning curve time.

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 6, 2013, at 1:00 PM, Ed Jaffe edja...@phoenixsoftware.com wrote:

 On 12/6/2013 9:53 AM, Scott Ford wrote:
 I have a rather large exit that I want to convert. It's the RACF command 
 exit, so I am trying to decide to convert it to baseless or write an 
 assembler stub and redo the exit in C.

 If you use SPC or METAL C you should not need an assembler stub.

 --
 Edward E Jaffe
 Phoenix Software International, Inc
 831 Parkview Drive North
 El Segundo, CA 90245
 http://www.phoenixsoftware.com/


Re: Base-less programming

2013-12-06 Thread Scott Ford
Gil,

Yeah thanks, I have time so I am not in a time crunch thank goodness. Plus I 
have looked at some of the older Xephon pubs there are a few C samples etc 
including mixed languages. So research, then prototype, rinse , lather, repeat 
..lol

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 6, 2013, at 1:26 PM, Paul Gilmartin paulgboul...@aim.com wrote:

 On 2013-12-06, at 11:16, Scott Ford wrote:

 That would be superb news, I will have to dig through the Metal C doc. I 
 gave written some C all ready so learning curve time.
 I understand that not all of the ANSI Standard Library functions
 are available in Metal C.  But it sounds as if your background is
 such that you won't terribly miss them.

 -- gil


Re: Base-less programming

2013-12-05 Thread Scott Ford
Who are we to judge whose technique is best...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 5, 2013, at 8:27 AM, Bob Woodside ibm...@woodsway.com wrote:

 On 12/4/2013 5:27 PM, Jon Perryman wrote:
 I'm not saying you shouldn't use relative instructions in macro's. I'm 
 saying that you'll get value from modifying programs that have multiple base 
 regs. If you don't regain any registers, then what value are you getting 
 from relative instructions.

 The relative branch instructions are faster: they don't suffer the
 Address Generation Interlock delay that their register-based
 counterparts do. So, yes, any program should benefit from converting.

 That said, the COPY IEABRC technique is probably best for modifying
 older programs.

 
 Bob Woodside
 Woodsway Consulting


Re: FLOWASM (Was: Base-less programming)

2013-12-05 Thread Scott Ford
You just don't know what the other person went through or what pressure they 
were under to create the code you are looking at or changing

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 5, 2013, at 9:43 AM, Kirk Talman rkueb...@tsys.com wrote:

 IBM Mainframe Assembler List ASSEMBLER-LIST@LISTSERV.UGA.EDU wrote on
 12/04/2013 10:28:43 PM:

 From: Tony Thigpen t...@vse2pdf.com

 Instructions 329E thought 32A1 are hidden. I can handle hidden
 instructions in system macros, but not in, what I would consider, open
 code where I may have fat-fingered something. I guess I rely too much on
 looking at the generated code when debugging.

 I'll AMEN that, especially when the macros are old and someone else's.  I
 support a lot of old ASM with many finger, hoof, nose, ... prints.  My
 first act after checking a program out of Endevor is to remove all PRINT
 NOGEN.

 If you can't stand the entrails of mammals, don't be a veterinarian.

 -
 The information contained in this communication (including any
 attachments hereto) is confidential and is intended solely for the
 personal and confidential use of the individual or entity to whom
 it is addressed. If the reader of this message is not the intended
 recipient or an agent responsible for delivering it to the intended
 recipient, you are hereby notified that you have received this
 communication in error and that any review, dissemination, copying,
 or unauthorized use of this information, or the taking of any
 action in reliance on the contents of this information is strictly
 prohibited. If you have received this communication in error,
 please notify us immediately by e-mail, and delete the original
 message. Thank you


Re: FLOWASM (Was: Base-less programming)

2013-12-05 Thread Scott Ford
John,

Ty another great tidbit ...I will use this one also

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Dec 5, 2013, at 1:22 PM, John Ehrman ehr...@us.ibm.com wrote:

 Kirk Talman noted:
 ...My first act after checking a program out of Endevor is to remove all
 PRINT NOGEN.

 No need to change the source; just assemble the program with the PC(GEN)
 option; that overrides all PRINT NOGEN statements, including those embedded
 in macros that you might not find in a source scan.

 John Ehrman


MultiTasking question

2013-11-25 Thread Scott Ford
Guys and gals,

I have a mainline that attaches a subtask via an ATTACH macro, the subtask will 
do Some TCPIP work, all self contained, my question is the structure, i.e.;

Mainline -- attach ...do work and post
Check post ..detach?

Is my thinking correct ?


Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


Re: MultiTasking question

2013-11-25 Thread Scott Ford
Sam,

We are thinking about modifying our original design...we need one additional 
subtask to handle racf commands and password requests so, I am trying to figure 
out how to retrofit our cobol code with assembler changes so I can multitask 
...I am looking over your example you sent me sometime ago ...between crazy 
customer requests .

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 4:35 PM, Sam Siegel s...@pscsi.net wrote:

 Scott - Yes ... at the high-level this seems correct.

 I'm assuming that the mainline will be doing other work while the sub-task
 is running.

 If the task which attaches the sub-task abends, the sub-task will also be
 abended by z/OS.  So you will probably need to consider how the sub-task
 handles unexpected abend conditions in addition to handling
 abends/return-codes related to the tcp processing.


 On Mon, Nov 25, 2013 at 12:29 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Guys and gals,

 I have a mainline that attaches a subtask via an ATTACH macro, the subtask
 will do Some TCPIP work, all self contained, my question is the structure,
 i.e.;

 Mainline -- attach ...do work and post
 Check post ..detach?

 Is my thinking correct ?


 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'



Re: MultiTasking question

2013-11-25 Thread Scott Ford
Sam,

More or less ...it will be passed a socket-description..it will do the rest, so 
essentially we will listen on two ports ..one will direct inbound requests to 
RACF via RACF API. Second port will do the other functions ...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 5:13 PM, Sam Siegel s...@pscsi.net wrote:

 Scott.   That sample code might be overly complex for what you need.

 Is the new sub-task attached from your true mainline?   Or from another
 sub-task?

 Does the sub-task need to handle some type of shutdown signal from the
 attachor?  Or can it be forcibly detached without consequences?

 Sam
 On Nov 25, 2013 2:06 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Sam,

 We are thinking about modifying our original design...we need one
 additional subtask to handle racf commands and password requests so, I am
 trying to figure out how to retrofit our cobol code with assembler changes
 so I can multitask ...I am looking over your example you sent me sometime
 ago ...between crazy customer requests .

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 4:35 PM, Sam Siegel s...@pscsi.net wrote:

 Scott - Yes ... at the high-level this seems correct.

 I'm assuming that the mainline will be doing other work while the
 sub-task
 is running.

 If the task which attaches the sub-task abends, the sub-task will also be
 abended by z/OS.  So you will probably need to consider how the sub-task
 handles unexpected abend conditions in addition to handling
 abends/return-codes related to the tcp processing.


 On Mon, Nov 25, 2013 at 12:29 PM, Scott Ford scott_j_f...@yahoo.com
 wrote:

 Guys and gals,

 I have a mainline that attaches a subtask via an ATTACH macro, the
 subtask
 will do Some TCPIP work, all self contained, my question is the
 structure,
 i.e.;

 Mainline -- attach ...do work and post
 Check post ..detach?

 Is my thinking correct ?


 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'




Re: MultiTasking question

2013-11-25 Thread Scott Ford
Yes sir exactly ...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 5:37 PM, Sam Siegel s...@pscsi.net wrote:

 Then it will probably also need to be passed a flag which can be tested to
 see if it is time to shutdown or continue processing.

 The main task can post the shutdown flag at the appropriate time.   Once
 shutdown its posted, the subtask winds up its processing, posts the
 completion ECB and exits.

 Sam
 On Nov 25, 2013 2:26 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Sam,

 More or less ...it will be passed a socket-description..it will do the
 rest, so essentially we will listen on two ports ..one will direct inbound
 requests to RACF via RACF API. Second port will do the other functions ...

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 5:13 PM, Sam Siegel s...@pscsi.net wrote:

 Scott.   That sample code might be overly complex for what you need.

 Is the new sub-task attached from your true mainline?   Or from another
 sub-task?

 Does the sub-task need to handle some type of shutdown signal from the
 attachor?  Or can it be forcibly detached without consequences?

 Sam
 On Nov 25, 2013 2:06 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 Sam,

 We are thinking about modifying our original design...we need one
 additional subtask to handle racf commands and password requests so, I
 am
 trying to figure out how to retrofit our cobol code with assembler
 changes
 so I can multitask ...I am looking over your example you sent me
 sometime
 ago ...between crazy customer requests .

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Nov 25, 2013, at 4:35 PM, Sam Siegel s...@pscsi.net wrote:

 Scott - Yes ... at the high-level this seems correct.

 I'm assuming that the mainline will be doing other work while the
 sub-task
 is running.

 If the task which attaches the sub-task abends, the sub-task will also
 be
 abended by z/OS.  So you will probably need to consider how the
 sub-task
 handles unexpected abend conditions in addition to handling
 abends/return-codes related to the tcp processing.


 On Mon, Nov 25, 2013 at 12:29 PM, Scott Ford scott_j_f...@yahoo.com
 wrote:

 Guys and gals,

 I have a mainline that attaches a subtask via an ATTACH macro, the
 subtask
 will do Some TCPIP work, all self contained, my question is the
 structure,
 i.e.;

 Mainline -- attach ...do work and post
 Check post ..detach?

 Is my thinking correct ?


 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'





Re: Interesting, basic, IBM presentation from 2012 on Millicode.

2013-11-21 Thread Scott Ford
John,

Ty my friend loved it ..knew what it was but not how it really worked...much 
appreciated

Regards,
Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Nov 21, 2013, at 10:26 AM, John McKown john.archie.mck...@gmail.com 
 wrote:

 I haven't seen this referenced here. It is a rather basic overview of
 millicode, but I hope it will be of interest to others too. Perhaps someone
 who is just getting into assembler.

 ftp://public.dhe.ibm.com/s390/zos/racf/pdf/ny_metro_naspa_2012_10_what_and_why_of_system_z_millicode.pdf
 .


 --
 This is clearly another case of too many mad scientists, and not enough
 hunchbacks.

 Maranatha! 
 John McKown


Unicode

2013-11-21 Thread Scott Ford
All,

Is there a way I can query what ccsids a system is running  using a API of some 
sort or even in native assembler ?

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


Re: Unicode

2013-11-21 Thread Scott Ford
John

Ty kind sir I saw it ..looks like what I want

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


 On Nov 21, 2013, at 1:07 PM, John McKown john.archie.mck...@gmail.com wrote:

 Ref:
 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2UNA1/CCONTENTS
 Unicode System Services

 z/OS UNIX iconv command:
 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/BPXZA5C0/ICONV


 C language iconv support:
 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/EDCLB1C0/2.52
 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/EDCLB1C0/3.440



 On Thu, Nov 21, 2013 at 10:20 AM, Scott Ford scott_j_f...@yahoo.com wrote:

 All,

 Is there a way I can query what ccsids a system is running  using a API of
 some sort or even in native assembler ?

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'



 --
 This is clearly another case of too many mad scientists, and not enough
 hunchbacks.

 Maranatha! 
 John McKown


c threads and assembler

2013-11-04 Thread Scott Ford
Guys:
I am in the process of rewriting a STC from single thread Cobol into threaded C.
I have some Assembler routines that perform disk I/O , so I assume they are 
doing I/O below 'the line'.  Can someone point me the direction how I can 
modify the Assembler routines to perform I/O above the line ? 

Scott J Ford
Software Engineer
http://www.identityforge.com/


C calling 24bit assembler

2013-11-04 Thread Scott Ford
Guys:
I am in the process of rewriting a STC from single thread Cobol into threaded C.
I have some Assembler routines that perform disk I/O , so I assume they are 
doing I/O below 'the line'.  Can someone point me the direction how I can 
modify the Assembler routines to perform I/O above the line ? 


Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: C calling assembler

2013-09-11 Thread Scott Ford
I found the problem, it was in my procs to compile and link C ...my stupid 
mistake sorry guys and gals man

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Jon Perryman jperr...@pacbell.net
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Wednesday, September 11, 2013 2:54 PM
Subject: Re: C calling assembler
  

What is the abending instruction and the instruction just before it? What is 
the failing offset into the assembler program? Is the module linked correctly?

My guess is that you are abending in the C program or the C program is not 
defined as the entry point.

If you got the +5A from the abend messages, then you need to use the linkage 
editor output or AMBLIST LISTLOAD for the failing load module in the abend 
messages. From either listing, you can determine where your C and assembler 
programs start. Adjust the offset accordingly to get the module offset.

Jon Perryman.



- Original Message -
 From: Scott Ford scott_j_f...@yahoo.com

 I need another pair of eyes ..I am seeing a S0C4 at +5A which looks like its
 inside the called assembler code..


C calling assembler

2013-09-11 Thread Scott Ford
All:
 
I need another pair of eyes ..I am seeing a S0C4 at +5A which looks like its 
inside the called assembler code..
Below is the C caller and the Assembler called
 
/**/
#include stdio.h
#include string.h
#pragma linkage(IDFAUTH,OS)
int rc;
main()
{
 printf(calling IDFAUTH\n);
 rc = IDFAUTH();
 printf(returning IDFAUTH\n);
 printf(rc %i\n,rc);
 }
 
IDFAUTH  CSECT
IDFAUTH  AMODE 31
IDFAUTH  RMODE ANY
 EDCPRLG BASEREG=R11,DSALEN=WORKLEN
**
*  test program authorization    *
*  if r15 is  0 then not authorized *
*  if r15 is = 0 then authorized *
**
 WTO   'CALLING TESTAUTH',ROUTCDE=(11)
 TESTAUTH FCTN=1
 LTR   R15,R15
 BNZ   NOTAUTH
 MVC   RETCODE(4),=F'0'
 B BAILOUT
NOTAUTH  DS    0H
 MVC   RETCODE(4),=F'1'
   BAILOUT  DS    0H
 L R15,RETCODE
 EDCEPIL
 LTORG
RETCODE  DS    F
LGINWORK EDCDSAD
WORKLEN  EQU   *-LGINWORK
 YREGS
 END   IDFAUTH
 
I missed something and I cant see it can someone wave the magic wand and point 
me where I should focus..?
According to the C and Assembler doc, R15 should pass back the integer value..

Scott J Ford
Software Engineer
http://www.identityforge.com/


Task to subtask communications

2013-08-27 Thread Scott Ford
All:
 
I have a main task that does an Attach to another program. 
I do not want the Attached program to end but be able to communicate with the 
main task.
I am not clear on how to do this ...Can someone point the way a tad for me ?
Is this in the realm of SRBS ?

Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: 64 bit question

2013-06-17 Thread Scott Ford
JR,

I appreciate your input ..and of course error handling is second nature..the 
question was really concerning how it worked . Peter and Lizette were kind 
enough to explain how it worked ...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 17, 2013, at 8:34 AM, J R jayare...@hotmail.com wrote:

 While Peter Relson's posts are always appreciated, was this not somewhat 
 stating the obvious?

 I don't know what the percentage may be but a substantial amount of (esp. 
 commercial) software development is devoted to exception handling, error 
 recovery, etc.

 Also, we keep seeing comments like, I don't like to assume ...  There is 
 nothing wrong with making assumptions as long as you assume *and* verify.  In 
 this case,

   GET64 STORAGE   /* ASSUME 64-BIT */
   LTR R15,R15   /* DID IT WORK? */
   BZ .../* YES, CONTINUE */
   GET31 STORAGE   /* FALL BACK TO 31-BIT */

 I would expect this to be second nature to just about everybody on this list.

 =



 Date: Mon, 17 Jun 2013 00:29:13 -0400
 From: scott_j_f...@yahoo.com
 Subject: Re: 64 bit question
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU

 Thanks Peter and Lizette ...the clarification is excellent much appreciated

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Jun 16, 2013, at 8:17 PM, Lizette Koehler stars...@mindspring.com wrote:

 Thanks for the clarification

 Lizette

 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
 On Behalf Of Peter Relson
 Sent: Sunday, June 16, 2013 3:39 PM
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject:

 System will always be able to answer a request for 64 bit - If you make
 it
 conditional it will tell you that it resolved from below the bar (if
 the area above the bar is exhausted). Scott, what would stop you using
 z-arch-instructions to handle it?

 That is not the way 64-bit storage works in z/OS. You can request. If you
 request conditionally, you get a return code back if not available (such as
 by 'too small MEMLIMIT').
 It is then up to you to request below-2G storage by the normal means. If you
 request unconditionally, you abend if not available.

 My issue is more trying to allocate a 64 bit storage and it failing
 Just about any request for storage can fail. It is up to you to decide
 what to do when it does, such as 'try something else'.

 Peter Relson
 z/OS Core Technology Design


Re: 64 bit question

2013-06-17 Thread Scott Ford
God, I remember half word instructions because I only had 16k to work in 
..probably the 1401 guys had less

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 17, 2013, at 11:04 AM, Martin Truebner mar...@pi-sysprog.de wrote:

 ZMan

 it took me some time to find an answer without when I 

 here is one:

 I remember when we only had two bits.

 Still is- the condition-code in z-Series

 --
 Martin

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


Re: 64 bit question

2013-06-17 Thread Scott Ford
Robin,

Man..that pretty small...probably when they came out it it was huge

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 17, 2013, at 7:39 PM, robin robi...@dodo.com.au wrote:

 From: Scott Ford scott_j_f...@yahoo.com
 Sent: Tuesday, June 18, 2013 2:47 AM


 God, I remember half word instructions because I only had 16k to work in 
 ..probably the 1401 guys
 had less

 Many early machines had less.

 Pilot ACE and DEUCE had 384 words --
 and of those, only 256 words could be used for instructions.


Re: 64 bit question

2013-06-14 Thread Scott Ford
Peter,

This is my first adventure into the 64bit world. So I am sure you can 
understand my caution with customers z/os systems. I wasn't aware that the 
feature couldn't be turned off. My issue is more trying to allocate a 64 bit 
storage and it failing ...I appreciate everyone's help.

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 14, 2013, at 7:24 AM, Peter Relson rel...@us.ibm.com wrote:

 As Tom Marchant pointed out, all supported z/OS releases (and those from
 z/OS 1.6 onward) require z/Architecture and support 64-bit virtual.
 Customers do not enable 64-bit functionality on such releases; it cannot
 be (fully) disabled

 Peter Relson
 z/OS Core Technology Design


Re: 64 bit question

2013-06-13 Thread Scott Ford
Guys,

Your great I will dig through the data areas ...much much appreciated

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 13, 2013, at 1:14 PM, Randy Schafer randy.schafer.a...@statefarm.com 
wrote:

 You could also try

 STFLE FUNCTION

 Then check the first word:

 - Bits (0-7)

 0 - N3 INSTRUCTIONS AVAILABLE
 1 - Z/ARCH MODE INSTALLED
 2 - Z/ARCH MODE ACTIVE
 3 - DAT ENHANCEMENT INSTALLED
 4 - IDTE DOES CLEARING (ASCE)
 6 - ASN AND LX REUSE INSTALLED
 7 - STFLE AVAILABLE


 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] 
 On Behalf Of John McKown
 Sent: Thursday, June 13, 2013 12:08 PM
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject: Re: 64 bit question

 Why not just try to get memory above the line, using IARST64 REQUEST=GET, and 
 check the return code?

 http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2A9B0/4.1

 Or, you might check the CVTV64 bit in the CVTOSLV2 flag field of the CVT (CVT 
 macro), after checking that FLCARCH is non-zero in the PSA (IHAPSA macro).

  USING PSA,0
  CLI FLCARCH,0
  BZ   NO64BIT
  L 1,FLCCVT
  DROP 0
  USING CVT,1
  TM   CVTOSLV2,CVTV64
  BZ   NO64BIT
 ...
  IHAPSA DSECT=YES,LIST=YES
  CVT  DSECT=YES,LIST=YES


 On Thu, Jun 13, 2013 at 11:45 AM, Scott Ford scott_j_f...@yahoo.com wrote:

 All,

 After reading through the Extended Addressability Guide/ref I have a
 question..
 How do I tell if a machine will support 64 bit storage above the bar
 ? I mean like a Assembler macro query ..I want to use 64bit storage
 but I don't know to tell programmatically what the allocation is for the 
 system.

 Regards,

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'



 --
 This is a test of the Emergency Broadcast System. If this had been an actual 
 emergency, do you really think we'd stick around to tell you?

 Maranatha! 
 John McKown


Re: 64 bit question

2013-06-13 Thread Scott Ford
John,

As a vendor I won't assume ..I have customers who still think we should write 
our code in 24 bit mode. So don't get me started. I know your right from my 
experience , but I would rather be safe than sorry

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 13, 2013, at 1:46 PM, John Gilmore jwgli...@gmail.com wrote:

 Are we not talking about a rather small, even exiguous, population of
 mainframes under z/OS that do not make AMODE(64) virtual storage
 available?

 Its unmediated, direct use by applications may still be exiguous too,
 but its mediated use by DB2 and the like is now substantial.

 John Gilmore, Ashland, MA 01721 - USA


Re: 64 bit question

2013-06-13 Thread Scott Ford
Yeah, I don't want to be using something I assume someone has enabled. Most 
customers do probably..but Murphy's law is always there

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 13, 2013, at 12:53 PM, Larry lawler l...@drcics.com wrote:

 CVTV64   EQU   X'10' 64-bit virtual services are present.
 *You should ensure FLCARCH (in IHAPSA) is
 *non-zero before using





 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On
 Behalf Of Scott Ford
 Sent: Thursday, June 13, 2013 9:46 AM
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject: 64 bit question

 All,

 After reading through the Extended Addressability Guide/ref I have a 
 question..
 How do I tell if a machine will support 64 bit storage above the bar ? I 
 mean
 like a Assembler macro query ..I want to use 64bit storage but I don't know to
 tell programmatically what the allocation is for the system.

 Regards,

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


Amode

2013-06-11 Thread Scott Ford
Guys and Gals :
 
I need to query the addressing mode I am in ...i.e.; 24 bit or 31 bit , etc.
 
Whats the correct way to do this from Assembler of course..
 
 
Much appreciated,

Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: Amode

2013-06-11 Thread Scott Ford
Guys and gals,

I wrote a simple called Assembler routine using TAM ...great works like a 
champ..Ty much appreciated

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Jun 11, 2013, at 4:24 PM, John McKown john.archie.mck...@gmail.com wrote:

 OK, but I could argument that a specification exception definitely causes a
 nasty branch to occur. grin/

 On Tue, Jun 11, 2013 at 1:39 PM, Tom Marchant m42tom-ibmm...@yahoo.comwrote:

 On Tue, 11 Jun 2013 10:51:07 -0500, John McKown wrote:

 Also, there is the SAM instruction to change AMODE as needed without
 branching (well except for the horrible case where you are RMODE(31) and
 switch to AMODE(24) causing a really nasty branch to occur).

 Nope.  That causes a specification exception.

 quote from the POO
 The instruction is completed only if the new
 addressing mode and the unupdated instruction
 address in the PSW are a valid combination. When
 the new addressing mode is to be the 24-bit mode,
 bits 64-103 of the unupdated PSW must be all
 zeros, or, when the new addressing mode is to be
 the 31-bit mode, bits 64-96 of the unupdated PSW
 must be all zeros; otherwise, a specification
 exception is recognized.
 /quote

 --
 Tom Marchant



 --
 This is a test of the Emergency Broadcast System. If this had been an
 actual emergency, do you really think we'd stick around to tell you?

 Maranatha! 
 John McKown


Re: IXCARM

2013-05-04 Thread Scott Ford
Phil,

Thank you very much appreciated ...it will make my life easier for customers 
requesting ARM ..

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On May 4, 2013, at 12:05 PM, Phil Sidler phil_sid...@hotmail.com wrote:

 On Mon, 15 Apr 2013 09:44:50 -0700, Scott Ford scott_j_f...@yahoo.com wrote:

 I have to look at the probability of using ARM. Currently, we run LE COBOL 
 STCs with� lot of
 Assembler subroutines.
 Is it possible to use IXCARM as a called Assembler routine to register for 
 ARM and detect if it was a
 restart ?

 ---

 Scott, there used to be a sample/supplied program to do this that you can add 
 as a job step near the
 front of the the STC, ARMWRAP.  Check out
 http://www.redbooks.ibm.com/redpapers/pdfs/redp0173.pdf

 -Phil


Fwd: RACF service calls

2013-04-25 Thread Scott Ford
FYI

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


Begin forwarded message:

 From: Scott Ford scott_j_f...@yahoo.com
 Date: April 25, 2013, 11:17:03 AM EDT
 To: rac...@listserv.uga.edu
 Subject: Re: RACF service calls
 Reply-To: Scott Ford scott_j_f...@yahoo.com
 
 Russell:
  
 I agree with you 100% . This is the way I have also always worked.
 We have a set of circumstances that are odd, to say the least. The comment 
 was wrongly made by another
 vendor who shall we say remain nameless. I dont want to blame or point 
 fingers, I dont do that either.
  
 Most of this unfortunately isnt a technical issue , as much as a 
 misunderstanding of how the product (ours) works.
 We pass RACF commands via the RACF API , service call Radmin,we pass the 
 Command as a image.
  
  So i knew how it worked i just wasnt sure if there 
 was something undocumented that this 'vendor' has seen or heard Thats why 
 I posted it here on the Listserv. I know
 you guys from IBM are knowledgable and obivously know RACF. 
  Best Regard,
 Scott J Ford
 Software Engineer
 http://www.identityforge.com/
  
 
 
 
 From: Russell D Hardgrove hardg...@us.ibm.com
 To: rac...@listserv.uga.edu 
 Sent: Thursday, April 25, 2013 9:30 AM
 Subject: Re: RACF service calls
 
 
 Scott,I am unaware that this is possible.I believe it is ONE
 command...
 
 Re:  smoke   When someone says things like this, try to NAIL down
 specifics of WHY they think this.   What supporting doc might they have?
 Other than hearsay, of course.  Just as in the legal system, hearsay is
 just usually inadmissible (as any sort of proof in -our- world).
 
 
 When I hear things like this I also am CURIOUS as to WHO said this.   Not
 so much on the forum (nor in this case) but in my DAY job when a customer
 says 'so and so said'  especially if that 'so and so' is from IBM,  I try
 to STOP false (or sometimes less than optimum info).
 
 Example:Years ago, I heard a (more than one actually) customer say: We
 keep our backup RACF db a few cylinders smaller so IT will run out of
 space first and so as to warn us..Not a great idea.  Why?   Not having
 them the exact SAME size removes the ability to SYNC them from each other,
 using IRRUT200.   Better idea.  Run a periodic (daily is best) IRRUT200
 and use it's output (from MAP function I believe) to monitor DB percentage
 used. I've seen customers who scrape (read via a pgm) the UT200 output
 and after a threshold is met (DB is above a certain %) send out emails.
 
 I tracked DOWN this person (who had GIVEN them this idea) and asked them
 to STOP making this recommendation.   Unless, of course, they were willing
 to carry MY beeper.:-bb
 
 
 .
 --
 Russ Hardgrove / RACF Lvl2
 IBM - z/OS  Software Service
 Dept. EC8A   Remote
 Poughkeepsie, NY  12601
 hardg...@us.ibm.com  845-505-7204
 --
 RACF: Guilty, until proven innocent !!RdH 2004
 RACF, praesumitur malus donec probetur bonusRdH MMX
  Continually proving this (innocence) is not just a JOB, it's an
 -ADVENTURE-   :-b  .. 
 ...
 
 
 
 From:   Scott Ford scott_j_f...@yahoo.com
 To:rac...@listserv.uga.edu,
 Date:   04/24/2013 10:55 AM
 Subject:RACF service calls
 Sent by:RACF Discussion List rac...@listserv.uga.edu
 
 
 
 Guys:
 
 We currently use Radmin call to pass command images to RACF. Someone is
 saying to use we can pass multiple RACF command to RACF for
 execution in one call ?  I didnt see this documented ..is this possible or
 is someone blowing smoke
 
 Regards,
 Scott J Ford
 Software Engineer
 http://www.identityforge.com/


Re: Calling SUPERC from an assembler program

2013-04-23 Thread Scott Ford
Guys,

Don't you have to pass NEWDD and OLDDD in the call ?

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 23, 2013, at 7:36 PM, Ed Jaffe edja...@phoenixsoftware.com wrote:

 On 4/23/2013 4:22 PM, Jon Perryman wrote:
 Batch calls need 2 byte length followed by parm.

  LA R1,=A(PARM)
  LINK EP=ISRSUPC

 Just for completeness, I usually turn on the 'VL' bit e.g., LA
 R1,=A(PARM+X'8000'). Not sure if others do the same...

 --
 Edward E Jaffe
 Phoenix Software International, Inc
 831 Parkview Drive North
 El Segundo, CA 90245
 http://www.phoenixsoftware.com/


Re: Happy Gilmore (was Length question)

2013-04-19 Thread Scott Ford
Robert,

I used to eat at a good Korean deli on 42nd and 1st over by the UN..
Several others up near Mt Sinai and 33nd and 1st ...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 19, 2013, at 12:00 AM, Robert A. Rosenberg a...@rarpsl.com wrote:

 At 05:05 -0700 on 04/18/2013, Scott Ford wrote about Re: Happy
 Gilmore (was Length question):

 Robert, I know where that is , I dont remember if the Deli is still
 there. I worked all over the 'City'. A lot of seriously good Delis..
 Scott J Ford Software Engineer http://www.identityforge.com/

 I agree that there are lots of good Delis in NYC. I was just
 mentioning Burnsteins since not only was it a standard Deli but it
 also had a Kosher Chinese Menu (with some of the items that would be
 Non-Kosher [ie: The Pork dishes] made using a Kosher substitute). I
 do not think it exists there anymore since I can not find a listing
 for it although I did find an Original Burnsteins in Brooklyn. The
 date when I patronized it was in the 70s or 80s.

  From: Robert A. Rosenberg
 a...@rarpsl.com To: ASSEMBLER-LIST@LISTSERV.UGA.EDU Sent: Thursday,
 April 18, 2013 12:26 AM Subject: Re: Happy Gilmore (was Length
 question)   At 02:15 -0400 on 04/16/2013, Scott Ford wrote about Re:
 Happy Gilmore (was Length question): Robert,  I worked in NYC
 also,oh yes the great deli ... The one I am thinking of (I do
 not know if it exists any more) was Burnstein's on Essex street. The
 Kosher Chinese was Mosha Peking which was on 35th or 36th off
 Broadway (near MSG).  Scott ford www.identityforge.com from my
 IPAD  'Infinite wisdom through infinite means'   On Apr 16,
 2013, at 12:54 AM, Robert A. Rosenberg a...@rarpsl.com
 wrote:At 10:28 -0400 on 04/15/2013, Gerhard Postpischil wrote
 about Re:   Happy Gilmore (was Length question):When I
 worked in Northern Virginia, there was a Chinese-Jewish deli and 
 restaurant.I live in NYC and used to patronize such a
 establishment when I was   doing a Saturday Evening/Sunday Morning
 Testing Shot (My boss was an   orthodox Rabbi and we went there
 for a food break at 10PM or so).   There was also a few Kosher
 Chinese restaurants in the Midtown area.


Re: Happy Gilmore (was Length question)

2013-04-18 Thread Scott Ford
Robert,
I know where that is , I dont remember if the Deli is still there.
I worked all over the 'City'. A lot of seriously good Delis..

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Robert A. Rosenberg a...@rarpsl.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Thursday, April 18, 2013 12:26 AM
Subject: Re: Happy Gilmore (was Length question)
  

At 02:15 -0400 on 04/16/2013, Scott Ford wrote about Re: Happy
Gilmore (was Length question):

Robert,

I worked in NYC also,oh yes the great deli ...

The one I am thinking of (I do not know if it exists any more) was
Burnstein's on Essex street. The Kosher Chinese was Mosha Peking
which was on 35th or 36th off Broadway (near MSG).


Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 16, 2013, at 12:54 AM, Robert A. Rosenberg a...@rarpsl.com wrote:

  At 10:28 -0400 on 04/15/2013, Gerhard Postpischil wrote about Re:
  Happy Gilmore (was Length question):

  When I worked in Northern Virginia, there was a Chinese-Jewish deli and
  restaurant.

  I live in NYC and used to patronize such a establishment when I was
  doing a Saturday Evening/Sunday Morning Testing Shot (My boss was an
  orthodox Rabbi and we went there for a food break at 10PM or so).
  There was also a few Kosher Chinese restaurants in the Midtown area.


Re: Happy Gilmore (was Length question)

2013-04-18 Thread Scott Ford
Bill,

I worked in NYC and missed that one dude ..I must be getting old

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 18, 2013, at 1:49 PM, DASDBILL2 dasdbi...@comcast.net wrote:

 I understood immediately the Moshe part of the pun.  B ut i t took me a while 
 to reverse-engineer the MSG pun. Not having spent significant time in NYC, my 
 brain's first interpretation of MSG is monosodium glutamate, which is the 
 controversial component of soy sauce and which many  Chinese food lovers try 
 to avoid .  Finally I realized it also means Madison Square Garden, whose 
 location I now assume must be somewhere near 35th or 36th off Broadway.  The 
 punditry never ends.


 Bill Fairchild
 Franklin, TN

 “Political language is designed to make lies sound truthful and murder 
 acceptable, and to give the appearance of solidity to pure wind.” [George 
 Orwell]

 - Original Message -
 From: Tony Harminc t...@harminc.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Thursday, April 18, 2013 11:15:41 AM
 Subject: Re: Happy Gilmore (was Length question)

 On 18 April 2013 00:26, Robert A. Rosenberg a...@rarpsl.com wrote:

 The Kosher Chinese was Mosha Peking which was on 35th or 36th off Broadway 
 (near MSG).

 Doubtless with no pun or food stereotype intended...

 Tony H.


Re: Good Performing Code (Was: Millicode Instructions)

2013-04-17 Thread Scott Ford
Hey Gil,

I assume that type of math with bits is super fast ...I has a friend show my 
similar techniques using SRL or SLL, but my old age ...I forgot . Will have to 
revisit

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 17, 2013, at 1:03 PM, Paul Gilmartin paulgboul...@aim.com wrote:

 On 2013-04-17, at 09:31, DASDBILL2 wrote:

 I tried your algorithm with 13 multiplied by 81 and produced the correct 
 answer.  This algorithm is undoubtedly how the microcode for the M (multiply 
 fullword) instruction does its math.
 It has a lot to do with where the 1-bits are in the binary representation
 of the multiplier, yes.

 GIYF.  Wallace tree

 PDP-6 et al. inspected two bits of the multiplier at each iteration
 and mixed adds and subtracts to get a 2s complement product without
 a restoring step.

 - Original Message -
 From: Gerhard Postpischil
 Sent: Wednesday, April 17, 2013 10:19:22 AM

 Simple - you write the two numbers with the larger on the left. In the
 next row, double the number on the left, and halve the number on the
 right, discarding any fraction. Upon reaching 1 on the right, cross out
 any row where the right number is even. Add the remaining rows on the left.

 -- gil


Re: Translate Table

2013-04-17 Thread Scott Ford
Jon,

Thank you, I went and looked at it ...
Much appreciated

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 16, 2013, at 11:00 PM, Jon Perryman jperr...@pacbell.net wrote:

 Assembler codeset translation calls are documented in Unicode Services.

 Since Scott has mentioned his product is calling assembler routines from an LE
 environment, I'm guessing it's written in C. If that is the case, ICONV will 
 do
 the conversions.

 Jon Perryman.


 - Original Message 
 From: Steve Comstock st...@trainersfriend.com
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Tue, April 16, 2013 2:28:42 PM
 Subject: Re: Translate Table

 From the Tachyon site:
 Turkish EBCDIC:

  http://www.tachyonsoft.com/cp01026.htm
 or
  http://www.tachyonsoft.com/cp01155.htm

 Turkish  ASCII:
  http://www.tachyonsoft.com/iso88599.htm

 Go  forth and translate



Re: Good Performing Code (Was: Millicode Instructions)

2013-04-17 Thread Scott Ford
John,

For example, what are Assembler no nos in performance ...I am trying to put you 
'on the spot' ,
I am curious and responsible person, so I would like to know

Best Regards,

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 17, 2013, at 2:08 PM, John Ehrman ehr...@us.ibm.com wrote:

 Performance concerns about individual instructions aren't worth much
 effort. Things like operand alignment, data and instruction cache
 retention, locality of reference, branch frequency etc. can have really
 significant effects.

 Remember that CPU speeds have increased much faster than memory speeds --
 getting an operand from cache can take a cycle or two, but from memory can
 take hundreds or thousands (try causing a page fault!).


Re: Good Performing Code (Was: Millicode Instructions)

2013-04-17 Thread Scott Ford
Trying not to put you on the spot sorry...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 17, 2013, at 3:35 PM, Scott Ford scott_j_f...@yahoo.com wrote:

 John,

 For example, what are Assembler no nos in performance ...I am trying to put 
 you 'on the spot' ,
 I am curious and responsible person, so I would like to know

 Best Regards,

 Scott ford
 www.identityforge.com
 from my IPAD

 'Infinite wisdom through infinite means'


 On Apr 17, 2013, at 2:08 PM, John Ehrman ehr...@us.ibm.com wrote:

 Performance concerns about individual instructions aren't worth much
 effort. Things like operand alignment, data and instruction cache
 retention, locality of reference, branch frequency etc. can have really
 significant effects.

 Remember that CPU speeds have increased much faster than memory speeds --
 getting an operand from cache can take a cycle or two, but from memory can
 take hundreds or thousands (try causing a page fault!).


Re: Happy Gilmore (was Length question)

2013-04-16 Thread Scott Ford
Robert,

I worked in NYC also,oh yes the great deli ...

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 16, 2013, at 12:54 AM, Robert A. Rosenberg a...@rarpsl.com wrote:

 At 10:28 -0400 on 04/15/2013, Gerhard Postpischil wrote about Re:
 Happy Gilmore (was Length question):

 When I worked in Northern Virginia, there was a Chinese-Jewish deli and
 restaurant.

 I live in NYC and used to patronize such a establishment when I was
 doing a Saturday Evening/Sunday Morning Testing Shot (My boss was an
 orthodox Rabbi and we went there for a food break at 10PM or so).
 There was also a few Kosher Chinese restaurants in the Midtown area.


Re: IXCARM

2013-04-16 Thread Scott Ford
Guys,

Thank you, I didn't see any restrictions on being able to issue ARM macros.
I have a customer inquiring and I did not want to assume I could..

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 16, 2013, at 7:19 AM, Peter Relson rel...@us.ibm.com wrote:

 I cannot imagine anything in the system z world that would require pure
 assembler.
 You just have to meet the interface requirements (including environmental
 and authorization), whatever they may be.

 There are some programs that cannot be run except as started tasks, That
 would not apply to an assembler programming interface.

 Peter Relson
 z/OS Core Technology Design


Translate Table

2013-04-16 Thread Scott Ford
Guys,
 
Has anyone seen a table similar to EZACICTR to translate ASCII to EBCDIC ...I 
am looking for one that does
would you believe Turkish Ascii to EBCDIC ...
 
I would appreciate any pointers or help

Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: Translate Table

2013-04-16 Thread Scott Ford
Thats because it went to :
 
 
ASSEMBLER-LIST@LISTSERV.UGA.EDU 

I think its Yahoo , a lot of my replies and questions show up real late

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Steve Comstock st...@trainersfriend.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Tuesday, April 16, 2013 4:05 PM
Subject: Re: Translate Table
  

On 4/16/2013 12:27 PM, Scott Ford wrote:
 Guys,

 Has anyone seen a table similar to EZACICTR to translate ASCII to EBCDIC ...I 
 am looking for one that does
 would you believe Turkish Ascii to EBCDIC ...

 I would appreciate any pointers or help

 Scott J Ford
 Software Engineer
 http://www.identityforge.com/


Scott,

Ya' _gotta'_ set the Reply-to address to the group, or
none of us sees the replies.

Anyway, I would start here:

   http://www.tachyonsoft.com/cpindex.htm

They have many code pages; find the two you are working
with and build your own table.



--

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: Translate Table

2013-04-16 Thread Scott Ford
Yep, amen , Steve I just a few minutes ago...thanks a bunch

Much appreciated.

Regards, 
Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Steve Comstock st...@trainersfriend.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Tuesday, April 16, 2013 5:26 PM
Subject: Re: Translate Table
  

From the Tachyon site:


Turkish EBCDIC:

   http://www.tachyonsoft.com/cp01026.htm
or
   http://www.tachyonsoft.com/cp01155.htm


Turkish ASCII:

   http://www.tachyonsoft.com/iso88599.htm




Go forth and translate


On 4/16/2013 2:55 PM, Duffy Nightingale, SSPI wrote:
 Here is my reply - which I thought ended up going to your personal email.

 Oddly enough, I could easily believe that.  We didn't do Turkish ASCII and
 we were going EBCDIC to ASCII but it was a foreign language issue.  It was
 very difficult. If you can't find a table, what we ended up doing is using
 two charts.  You would want one in Turkish ASCII that will shows the ASCII
 value and pic of the character.  Then same for EBCDIC.  Then you just go
 thru and match them up by char picture and build your table.  By the way, we
 found the EBCDIC chart by searching in IBM.  I think we started at ibm.com.
 We had to go from EBCDIC to a compact version of Unicode.  Boy that was fun.
 Bit positions in different positions meant different len bytes to represent
 a character.  Standard assembler bit twiddling!

 Duffy

 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU]
 On Behalf Of Steve Comstock
 Sent: Tuesday, April 16, 2013 1:06 PM
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject: Re: Translate Table

 On 4/16/2013 12:27 PM, Scott Ford wrote:
 Guys,

 Has anyone seen a table similar to EZACICTR to translate ASCII to
 EBCDIC ...I am looking for one that does would you believe Turkish Ascii
 to EBCDIC ...

 I would appreciate any pointers or help

 Scott J Ford
 Software Engineer
 http://www.identityforge.com/


 Scott,

 Ya' _gotta'_ set the Reply-to address to the group, or none of us sees the
 replies.

 Anyway, I would start here:

     http://www.tachyonsoft.com/cpindex.htm

 They have many code pages; find the two you are working with and build your
 own table.



 --

 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



--

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: Millicode Instructions

2013-04-16 Thread Scott Ford
Ed,
 
I want to ask a question, in this day/age and processing power is it really 
worth
being concerned about Assembler instructions speed ? Unless there is some 
application that is very time sensitive, that I understand
 
 
Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Ed Jaffe edja...@phoenixsoftware.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Tuesday, April 16, 2013 6:13 PM
Subject: Re: Millicode Instructions
  

On 4/16/2013 12:43 PM, Gibney, Dave wrote:
 I don't get to work at this level often, but I am always interested.
 How can Millicode be faster than the equivalent using the hardware
 instructions? As I understand Millicode, that is really all it is
 (using the hardware instructions) plus any overhead in context
 switching to the Millicode environment. For the MVC/MVCL option, I
 can imagine a macro which generates an MVC loop, or unroll the loop
 into a sequence of MVC, or generate the MVCL depending on several
 criteria. I currently don't have the knowledge to determine the
 criteria and I would expect the criteria to change over time

Some millicode instructions will outperform their PoOp-code counterparts
because millicode has access to hardware features not available to
ordinary code. For example, MVCL(E) has the ability to move data under
certain conditions without loading it into cache. (You can't do that
with looping MVC.) Millicode routines also have access to the MVCX
instruction which performs a variable-length MVC -- something ordinary
programs cannot do without using the EXecute instruction.

Furthermore, a millicode instruction is perceived by the architecture as
a single instruction. This allows millicode to do things that cannot be
simulated in ordinary code. For example, it would be impossible to write
a simulation of the PLO instruction.

--
Edward E Jaffe
Phoenix Software International, Inc
831 Parkview Drive North
El Segundo, CA 90245
http://www.phoenixsoftware.com/


IXCARM

2013-04-15 Thread Scott Ford
All:
 
I have to look at the probability of using ARM. Currently, we run LE COBOL STCs 
with  lot of Assembler subroutines.
Is it possible to use IXCARM as a called Assembler routine to register for ARM 
and detect if it was a restart ?
 
Or do i have to have a pure Assembler STC ?
 
 
Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: Happy Gilmore (was Length question)

2013-04-15 Thread Scott Ford
AmenGregg .

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 15, 2013, at 5:47 PM, Tuben, Gregg gregg_tu...@bmc.com wrote:

 just give it up you guys

 -Original Message-
 From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] 
 On Behalf Of John Gilmore
 Sent: Monday, April 15, 2013 4:27 PM
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Subject: Re: Happy Gilmore (was Length question)

 Jon Perryman does not appear to be quits of this thread.

 He wrote (of me):

 begin extract
 I agree totally except with his posts. He is articulate and always chooses 
 his wording carefully. He has many years of experience and knows why I don't 
 use TRTE but he chose not to say that and use his specific wording. Clearly 
 he has intent but he tries to keep it subtle. He needed to be called on it.
 /end extract

 When and if I have 'intent' to discredit someone, I will choose a worthier, 
 more formidable opponent.  Shooting fish in a barrel is not my idea of good 
 sport.  His imputations reflect his own anxieties, not my intent.

 I was in fact uncharacteristically charitable about the snippet of code that 
 he posted.

 There are always two questions in any of these situations.  One first asks 
 oneself, Is it done the way I would do it?  The answer to this preliminary 
 question is, of course, almost always no.  The next, much more important 
 question is, In its own terms is it done well?  The answer to this question 
 for the case of Mr.  Perryman's snippet was again no.  The appropriate, 
 classical iterative scheme, used almost reflexively by coloro che sanno, 
 cleans up with an executed TRT.  One of the merits of TRTE is that it offers 
 less scope for misuse by mandolinisti.

 Until he escalated this dispute, I was unaware of him; and I have now added 
 his email address to my kill list, ensuring that I will have no occasion to 
 see or comment further on his posts.

 John Gilmore, Ashland, MA 01721 - USA


Re: Length question

2013-04-14 Thread Scott Ford
Binyamin,

I agree ...there's 'talking the talk ' and 'walking the walk'

Scott ford
www.identityforge.com
from my IPAD

'Infinite wisdom through infinite means'


On Apr 13, 2013, at 7:24 PM, Binyamin Dissen bdis...@dissensoftware.com wrote:

 The classic difference between those who preach their gospel from the high
 ivory towers and those that actually need to get the job done. Different
 strokes for different folk.

 On Sat, 13 Apr 2013 19:02:20 -0400 Gord Tomlin
 gt.ibm.li...@actionsoftware.com wrote:

 :Many companies do not see the depreciation interval for a purchased
 :mainframe to be an automatic trigger for the purchase of a new
 :replacement mainframe. Instead, some of them quite enjoy the lack of
 :hardware expenditures.
 :
 :We often encounter old machines at customer sites, and must make sure
 :that our code runs successfully on *all* machines that are supported by
 :the base level of z/Architecture. I am certain that you will receive a
 :similar answer from many of the others on this list who develop code for
 :a broader audience than their own companies.

 --
 Binyamin Dissen bdis...@dissensoftware.com
 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: Happy Gilmore (was Length question)

2013-04-14 Thread Scott Ford
One commentlets keep our discussions, professional and technical.

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Gerhard Postpischil gerh...@valley.net
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Sunday, April 14, 2013 2:22 PM
Subject: Re: Happy Gilmore (was Length question)
  

On 4/14/2013 8:26 AM, John Gilmore wrote:
 Mr Perryman saw fit to convert a technical disagreement into a
 personal one.  I have no wish contribute to this second discussion
 except to note that ad hominem arguments are the usual resort of those
 who have no substantive ones to make.

Unfortunately your technical disagreements tend to be worded in such a
snide and supercilious fashion that the majority of readers here take
them as ad hominem attacks.

Gerhard Postpischil
Bradford, Vermont


Re: Happy Gilmore (was Length question)

2013-04-14 Thread Scott Ford
I would like to point out a few items that 62 yrs on this earth has taught me..
 
1.  I cant control other people or what they say.
2.  I can only control my behavior and try not to be judgemental .
3.  Personal attacks in business are a real big no no 
4.  Try to help where you can .
5.  Not everyone has the same level of experience or experiences . So new 
techniques to me are good  and not negative or positive.
 
Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Jon Perryman jperr...@pacbell.net
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Sunday, April 14, 2013 4:50 PM
Subject: Re: Happy Gilmore (was Length question)
  

I took his comments as a personal attack because he is naming me specifically as
doing something out of ignorance. Then his next Email says that he knew it was a
lie when he sent it. See the 3 Emails snippets below. Is this being uppity or
self righteous? Is this wording what a normal person would use? Why wouldn't he
simply say the TRTE instruction should have been used. He always chooses his
wording carefully and hides the malice. Everyone interpreted my Email as a
personal attack but did it actually contain anything more direct than in his
response?

Thanks Jon Perryman.

 From: John Gilmore jwgli...@gmail.com
 Sent: Fri, April 12, 2013 6:50:40 PM
 John Perryman's post seems to have been written in ignorance of the TRTE,

 From: Jon Perryman jperr...@pacbell.net
 Sent: Sat, April 13, 2013 10:17:36 AM
 It's not ignorance. TRTE is a newer instruction that might not exist on all
 supported hardware. I don't try to remember instructions I can't use anyways.
 It's not in the POP's I use so I can't consider it.

 From: John Gilmore jwgli...@gmail.com
 Sent: Sat, April 13, 2013 11:44:32 AM
 I of course expected this response.


- Original Message 
 From: Gerhard Postpischil gerh...@valley.net
 To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
 Sent: Sun, April 14, 2013 11:25:08 AM
 Subject: Re: Happy Gilmore (was Length question)

 On 4/14/2013 8:26 AM, John Gilmore wrote:
  Mr Perryman saw fit to convert  a technical disagreement into a
  personal one.  I have no wish  contribute to this second discussion
  except to note that ad hominem  arguments are the usual resort of those
  who have no substantive ones to  make.

 Unfortunately your technical disagreements tend to be worded in  such a
 snide and supercilious fashion that the majority of readers here  take
 them as ad hominem attacks.

 Gerhard Postpischil
 Bradford,  Vermont



Re: Length question

2013-04-13 Thread Scott Ford
I  was puzzled by the length of CMDBUFL ...after your explanation Walt, it's 
very clear.
Thank you. I wasn't aware that a TSO parser could be called in IRREVX01 that's 
a great idea..

I saw the length using an Abend macro, being on a test system I can perform 
controlled tests.
We don't want our customers to have issues with the exit..

Scott ford
www.identityforge.com

Tell me and I'll forget; show me and I may remember; involve me and I'll 
understand. - Chinese Proverb


On Apr 12, 2013, at 9:03 PM, Walt Farrell walt.farr...@gmail.com wrote:

 On Fri, 12 Apr 2013 09:12:45 -0700, Scott Ford scott_j_f...@yahoo.com wrote:

 I have a field in a RACF parameter list ...CMDBUFL ..this is the length
 of the command buffer.
 It looks like it is x'F8' which is 248 ..bytes. I need to calculate the
 total length of CMDBUFD which is the incoming buffer. I have a issue with
 a large amount of userids being passed to our exit..like this

 CONNECT (id id id id id id id) GROUP(grpid)
 or
 CONNECT id GROUP(grpid)

 I want be able to logically inside me code to decide do i have one id or
 many..

 If I were doing it, I would consider parsing the command using TSO/E Parsing
 services.

 But if you're going to do it by yourself, you see if there's an opening ( or
 not. And, actually, it's possible that the command format you get will
 always have the parentheses, even if there's only 1 ID in the list.

 But if there's a ( then you find the first non-blank after it, and then look
 for the next blank or ), and that's your first ID. You keep going until
 you've accumulated all of them, and you're done when you get the ) that ends
 that operand.

 I don't understand what you mean (in the part I didn't quote) by the length
 is bugging you. You know the length of the buffer. (And it won't always be
 248, it could be much longer (probably up to 32768 or so).) You keep going
 until you hit the ) or until you hit the maximum number of user IDs you've
 programmed your code to handle. If you hit your maximum limit, you either
 lose data, or if that's not acceptable to you and your customers you abort
 the command.

 --
 Walt


Re: Storage and Tokens

2013-04-12 Thread Scott Ford
Chris,

I like that , 2 pts very funny ...

Scott ford
www.identityforge.com

Tell me and I'll forget; show me and I may remember; involve me and I'll 
understand. - Chinese Proverb


On Apr 12, 2013, at 4:38 AM, Chris Craddock crash...@hotmail.com wrote:

 :The next most efficient technique after using a sanctioned slot in the 
 area referenced by ECVTCTBL is Name/Token services.  A System-level 
 Name/Token in would be needed in this case.

 I wonder if IBM has reserved some for the installation.

 Nope. It's for vendors - mainly to keep them out of the BCP's pants. Ooh, did 
 I say that out loud? My bad.

 Of course, there is the ancient technique of anchoring the SITECVT address in
 CVTUSER. Faster than ECVTCTBL.

 The CVTUSER and TCBUSER fields have always been worthless precisely because 
 you can't count on them. There's no documented interface, so nobody actually 
 uses them - or at least not without taking their hero pills and pulling on 
 the kevlar undies first.
 CC


Re: Baseless problem

2013-04-12 Thread Scott Ford
Thomas,

There are a lot of well versed , heavily experienced , aka heavy hitters, here 
on this listserv.

Scott ford
www.identityforge.com

Tell me and I'll forget; show me and I may remember; involve me and I'll 
understand. - Chinese Proverb


On Apr 12, 2013, at 4:48 AM, Thomas Berg thomas.b...@swedbank.se wrote:

 Sometimes when I'm reading this list or IBM-MAIN I got a feeling like as I 
 was listening to a historic science discussion where now and then Titus 
 Livius and Thucydides pop in with anecdotes...  :)

 (No offence please!  I'm very impressed  by all.)



 Regards
 Thomas Berg
 
 Thomas Berg   Specialist   z/OS\RQM\IT Delivery   SWEDBANK AB (Publ)


Re: Baseless problem

2013-04-12 Thread Scott Ford
This is a matter of style to me and experience level.  I learned the data areas 
and liberals at the tail end of your code ...always worked for me. Doesn't mean 
that's the only way to to do II

Scott ford
www.identityforge.com

Tell me and I'll forget; show me and I may remember; involve me and I'll 
understand. - Chinese Proverb


On Apr 12, 2013, at 8:24 AM, Tom Marchant m42tom-ibmm...@yahoo.com wrote:

 On Thu, 11 Apr 2013 23:22:15 +0200, Bernd Oppolzer wrote:

 I just expanded our local startup macro to support
 baseless code areas. The standard startup macro especially for
 main programs generates lots of instructions, that count for some
 600 bytes (for example: error handling, buildung a LE environment etc.).
 So I cannot have a base register for data at the beginning
 of the program, because there resides this large startup macro.

 Sure you can.  How much of what is generated by that startup macro has to be
 before the data area location counter is defined?

 And: the LTORG at the end of the program needs addressibility;

 Of course.  LOCTR takes care of that

 It's not my dog.

 --
 Tom Marchant


Re: Baseless problem

2013-04-12 Thread Scott Ford
I totally agree..Tom I think one has to be open to different techniques and 
try them

Scott ford
www.identityforge.com

Tell me and I'll forget; show me and I may remember; involve me and I'll 
understand. - Chinese Proverb


On Apr 12, 2013, at 9:37 AM, Tom Marchant m42tom-ibmm...@yahoo.com wrote:

 On Fri, 12 Apr 2013 09:27:37 -0400, Scott Ford wrote:

 This is a matter of style to me and experience level.  I learned the data
 areas and liberals at the tail end of your code

 Right.  If you *want* to put your constants and literals at the end, that's
 your business.  But when someone says that they *can't* put them at the
 beginning, that's when I suggest an option.

 --
 Tom Marchant


Re: Baseless problem

2013-04-12 Thread Scott Ford
Steve,
 
A big absolutely I am a big learner...taught myself just a ton of 
programming languages.
Its a nack 

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Steve Comstock st...@trainersfriend.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Friday, April 12, 2013 9:53 AM
Subject: Re: Baseless problem
  

On 4/12/2013 7:43 AM, Scott Ford wrote:
 I totally agree..Tom I think one has to be open to different techniques 
 and try them

It's a constant balance thing. When you have a
technique that works for you, then there's one
less set of decisions you need to make, allowing
you to focus on the current task. However, you
could be missing an alternative technique that
has major benefits, so you have to consider the
alternatives. But you can't afford to become
paralyzed by looking at an infinite number of
options.

That's one of the benefits of this list: you can
learn from people who have walked down a path
and decide if it's worth your while to explore
that path based on what is reported here.



 Scott ford
 http://www.identityforge.com/

 Tell me and I'll forget; show me and I may remember; involve me and I'll 
 understand. - Chinese Proverb


 On Apr 12, 2013, at 9:37 AM, Tom Marchant m42tom-ibmm...@yahoo.com wrote:

 On Fri, 12 Apr 2013 09:27:37 -0400, Scott Ford wrote:

 This is a matter of style to me and experience level.  I learned the data
 areas and liberals at the tail end of your code

 Right.  If you *want* to put your constants and literals at the end, that's
 your business.  But when someone says that they *can't* put them at the
 beginning, that's when I suggest an option.

 --
 Tom Marchant



--

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: Baseless problem

2013-04-12 Thread Scott Ford
Jon,
 
I understand what Tom said no problemo

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Jon Perryman jperr...@pacbell.net
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Friday, April 12, 2013 10:23 AM
Subject: Re: Baseless problem
  

Tom is not saying you should change your coding style. You leave the data areas
and literals at the end of your source code. You add LOCTR statements into your
program to change generated machine code sequence.

Jon Perryman


- Original Message 
 From: Scott Ford scott_j_f...@yahoo.com

 This is a matter of style to me and experience level.  I learned the data
areas and liberals at the tail end of your code ...always worked for me. 
Doesn't
mean that's the only way to to do II

 Scott  ford
 
  Sure you can.  How much of what is generated by that  startup macro has to
be
  before the data area location counter is  defined?
 
  And: the LTORG at the end of the program needs  addressibility;
 
  Of course.  LOCTR takes care of  that
  --
  Tom  Marchant



Length question

2013-04-12 Thread Scott Ford
Guys:
 
I have a field in a RACF parameter list ...CMDBUFL ..this is the length of the 
command buffer.
It looks like it is x'F8'  which is 248 ..bytes. I need to calculate the total 
length of CMDBUFD which is
the incoming buffer. I have a issue with a large amount of userids being passed 
to our exit..like this
 
CONNECT (id id id id id id id) GROUP(grpid)
   or
CONNECT id GROUP(grpid)
 
I want be able to logically inside me code to decide do i have one id or many..
 
I assume ( i know bad word ):
 
      LA  R8,CMDBUFD+7
  LA  R7,TEMPUSR
 
LOOP   DS  0H
     CLI 0(r8),C' ' 
 BNE    CHKPAR
     LA   R8,1(R8)
     B  LOOP
CHKPAR DS   0H
 CLI  0(R8),C'('
 BE   BUMP8
MOVEIT  DS  0H
 CLI 0(R8),C')'
 BE  STORID
 MVC  0(1,R7),0(R8)
 LA  R7,1(R7)
 LA  R8,1(R8)
 B MOVEIT
STORID  DS   0H
    MVC    USERID,TEMPUSR
 
 
 
USERID   DS CL8
TEMPUSR   DS CL8
 
This is fine for this:
 
CONNECT id  GROUP(xxx)
 
But with more than one i know I have an issue so i want to address it by 
capturing all the ids..
I have figured that out ...the length is bugging me. I know i missed something 
and need another
pair of good , younger eyes..
 
Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/


Re: Storage and Tokens

2013-04-12 Thread Scott Ford
Hey John:
 
To have some one get you, i.e.; overlay your storage if you are in Key 0, they
have to be in Key 0 and right PSW correct ?

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: John McKown john.archie.mck...@gmail.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Friday, April 12, 2013 3:23 PM
Subject: Re: Storage and Tokens
  

Technically, not write protected storage per se, but key 0 storage.
Which does make them write protected from most users.

On Fri, Apr 12, 2013 at 1:42 PM, Gerhard Postpischil gerh...@valley.net wrote:
 On 4/12/2013 11:55 AM, John Gilmore wrote:

 Richard Peurifoy has been lucky, and perhaps others have been too, but
 the basic difficulty remains.  The use of these fields is
 undocumented, in fact unpoliced, and thus also unwise.


 As a long-time user of both CVTUSER and TCBUSER,
 I have to disagree. These fields are in write-protected storage, giving
 the installation absolute control over their use.

 Some years ago, prior to IBM's adoption of the vendor table, I went to a
 conference. During my absence the local CA salesman, who happened to be
 golfing with the company president, talked him into doing performance
 measurement on our MVS system. One of my systems people installed their
 software; nobody noticed that we were no longer collecting accounting
 data, or printing billing information on the jobs. Since then I place
 eye-catchers in control blocks, and check for their presence. Some
 diligence after installing new software suffices to keep things safe.

 We had no problems with vendor software after the vendor table was
 introduced, and the only conflicts remaining tend to come from some CBT
 and similar software, most of which offers source, so can be checked.

 I'm not sure where luck comes into this.

 Gerhard Postpischil
 Bradford, Vermont



--
This is a test of the Emergency Broadcast System. If this had been an
actual emergency, do you really think we'd stick around to tell you?

Maranatha! 
John McKown


Re: Baseless problem

2013-04-11 Thread Scott Ford
Guys:
 
I wanted to say a BIG THX...I got my code to assemble still working thru design 
and coding issues..but hey what's
life without a challenge or two or three...
 
Heres my new code..I had to changes things for obivious reasons.
 
SAMPLE01 AMODE 31
SAMPLE01 RMODE ANY
 YREGS
 PRINT OFF
 SYSSTATE ARCHLVL=2
 IEABRCX DEFINE
 PRINT ON
 J BEGIN
PROLOG   LOCTR
 DC    C'SAMPLE01 - xxx V4.7.0.2'
 DC    C'Assembled Date  Time: SYSDATE SYSTIME'
 DC    C'Copyright (C), Identityforge,LLC'
 DC    C'All rights reserved'
CODEBG1  LOCTR
BEGIN    DS    0H
 SAVE  (14,12)  save regs coming in
 LR    R12,R15
 AHI   R12,CONST-BEGIN
 USING CONST,R12
 LR    R10,R1
 USING WRKDSECT,R11 base parameter map
 USING EVXPL,R10    base parameter map
 L R4,EVXFLAGS  exit flag address
.
..
.
CONST    DC    0D
.(literal constants)
    LTORG
DATALOC1 LOCTR
DYNAMIC  DSECT
SAVEAREA DS    18F register save area
...
...
DYNSIZE  EQU   *-DYNAMIC   length of DSECT
DATALOC2 LOCTR
WRKDSECT DSECT
WRKSIZE  EQU   *-WRKDSECT  length of DSECT
 IHAPSA
 IHAASCB
 IHAASXB
 IRREVXP
 IEANTASM
 IHAACEE
 IKJTSB LIST=YES,EXT=YES
 
Something I would also like to comment on and share. I saw Jon Perryman's 
comments. I thank him for the suggestion but
still as a vendor we are the ones responsible for our code. Can it be done 
better, of course, but there is a way to suggest that.
 
Over the last couple of days a customer , tried to tell us that every vendor 
had to have their modules identify the vendor by its first 
three characters of a name. There were a few other ill-educated suggestions. I 
understand everyone has to learn but again there is a respectful way of 
suggesting this to a company, i.e.;  vendor. I would never try to tell a 
vendor, i.e.; IBM, how to code or
what to do, they have suggestion forms and forums for that. Maybe I am too old 
school..
 
 Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/

aka ...somewhere lost in NJ
 
 


 From: John McKown john.archie.mck...@gmail.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Thursday, April 11, 2013 12:54 PM
Subject: Re: Baseless problem
  

He said that he did, IIRC.

On Thu, Apr 11, 2013 at 10:56 AM, Steve Comstock
st...@trainersfriend.com wrote:
 On 4/11/2013 9:33 AM, Ed Jaffe wrote:

snip
 I wonder if the OP got his problem solved.

 --

 Kind regards,

 -Steve Comstock
 The Trainer's Friend, Inc.

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


Re: Baseless problem

2013-04-11 Thread Scott Ford
Andreas:
 
Amen to that. I am working with LE now ..a lot of serious differences, 
especially
when ppl dont run the right run options.. like STACK() ...

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Andreas F. Geissbuehler afg0...@videotron.ca
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Thursday, April 11, 2013 8:40 PM
Subject: Re: Baseless problem
  

Bernd Oppolzer schrieb:
 ... the OS linkage conventions, no other IBM language processor like
 the PL/1 compiler or LE ever used it - I never understood this.

LE  was a game changer. Prior to LE almost all programs and modules
adhered to __one and the same set__ of rules, including IBM access
methods and supervisor services.

Andreas F. Geissbuehler


Re: Baseless problem

2013-04-11 Thread Scott Ford
Chris:
 
thanks for the suggestion much appreciated...I am writing more code 
tonight...so i will let you all now how it comes out

Scott J Ford
Software Engineer
http://www.identityforge.com/
 
 


 From: Webster, Chris chris_webs...@bmc.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU 
Sent: Thursday, April 11, 2013 2:11 PM
Subject: Re: Baseless problem
  

Scott,

A couple more suggestions.
1. add 'ieabrcx enable' (or maybe it was snipped)
2. use larl 12,const instead of lr/ahi - it will make amode 64 conversion easier
3. limit the using range to avoid base register bleed beyond the intended range 
'using (const,constend),12'
4. both dataloc1/2 loctr's have no purpose when they are just followed by dsects
5. use the noprint option on the print statements to keep the listing cleaner

...chris.
-Original Message-
From: IBM Mainframe Assembler List [mailto:ASSEMBLER-LIST@LISTSERV.UGA.EDU] On 
Behalf Of Scott Ford
Sent: Thursday, April 11, 2013 12:13 PM
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Subject: Re: Baseless problem

Guys:

I wanted to say a BIG THX...I got my code to assemble still working thru design 
and coding issues..but hey what's life without a challenge or two or three...

Heres my new code..I had to changes things for obivious reasons.

SAMPLE01 AMODE 31
SAMPLE01 RMODE ANY
         YREGS
         PRINT OFF
         SYSSTATE ARCHLVL=2
         IEABRCX DEFINE
         PRINT ON
         J     BEGIN
PROLOG   LOCTR
         DC    C'SAMPLE01 - xxx V4.7.0.2'
         DC    C'Assembled Date  Time: SYSDATE SYSTIME'
         DC    C'Copyright (C), Identityforge,LLC'
         DC    C'All rights reserved'
CODEBG1  LOCTR
BEGIN    DS    0H
         SAVE  (14,12)                      save regs coming in
         LR    R12,R15
         AHI   R12,CONST-BEGIN
         USING CONST,R12
         LR    R10,R1
         USING WRKDSECT,R11                 base parameter map
         USING EVXPL,R10                    base parameter map
         L     R4,EVXFLAGS                  exit flag address .
..
.
CONST    DC    0D
.(literal constants)
        LTORG
DATALOC1 LOCTR
DYNAMIC  DSECT
SAVEAREA DS    18F                 register save area ...
...
DYNSIZE  EQU   *-DYNAMIC           length of DSECT
DATALOC2 LOCTR
WRKDSECT DSECT
WRKSIZE  EQU   *-WRKDSECT          length of DSECT
         IHAPSA
         IHAASCB
         IHAASXB
         IRREVXP
         IEANTASM
         IHAACEE
         IKJTSB LIST=YES,EXT=YES

Something I would also like to comment on and share. I saw Jon Perryman's 
comments. I thank him for the suggestion but still as a vendor we are the ones 
responsible for our code. Can it be done better, of course, but there is a way 
to suggest that.

Over the last couple of days a customer , tried to tell us that every vendor 
had to have their modules identify the vendor by its first three characters of 
a name. There were a few other ill-educated suggestions. I understand everyone 
has to learn but again there is a respectful way of suggesting this to a 
company, i.e.;  vendor. I would never try to tell a vendor, i.e.; IBM, how to 
code or what to do, they have suggestion forms and forums for that. Maybe I am 
too old school..

Regards,

Scott J Ford
Software Engineer
http://www.identityforge.com/

aka ...somewhere lost in NJ




From: John McKown john.archie.mck...@gmail.com
To: ASSEMBLER-LIST@LISTSERV.UGA.EDU
Sent: Thursday, April 11, 2013 12:54 PM
Subject: Re: Baseless problem


He said that he did, IIRC.

On Thu, Apr 11, 2013 at 10:56 AM, Steve Comstock
st...@trainersfriend.com wrote:
 On 4/11/2013 9:33 AM, Ed Jaffe wrote:

snip
 I wonder if the OP got his problem solved.

 --

 Kind regards,

 -Steve Comstock
 The Trainer's Friend, Inc.

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


  1   2   >