Re: Rexx - calling assembler question

2012-05-24 Thread Shmuel Metz (Seymour J.)
In <3493325860710629.wa.paulgboulderaim@bama.ua.edu>, on
05/21/2012
   at 07:44 PM, Paul Gilmartin  said:

>Well, then, a CMS-Rexx flavor, with a pointer and a length. 

No, that's not what CMS uses. You don't want to know.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: Rexx - calling assembler question

2012-05-21 Thread Paul Gilmartin
On Mon, 21 May 2012 08:43:14 -0400, Shmuel Metz (Seymour J.) wrote:

> on 05/21/2012 at 12:15 AM, Paul Gilmartin said:
>
>>Those generate parameter lists with a distinct CMS flavor.
>
>Not even close; 8 character tokenization is mickey mouse. The PLIST
>has a distinct REXX flavor. ...
>
Well, then, a CMS-Rexx flavor, with a pointer and a length.  I remember
being surprised and dismayed when Rexx first appeared in TSO/E 2
that address LINK/ATTACH (the -PGM and -MVS forms appeared only
later) that there was no way to generate an OS-conventional R1
PLIST.

> If you want to pass back variables to the
>caller, this is the way to go. Of course, which form you should use is
>determined by how you code the routine.
>
Perhaps the best way.  But address LINKPGM can also be used for
the purpose, particularly when interfacing with programs expecting
Assembler CALL linkage.  IBM does it in 'SYS1.SAMPLIB(CSFTEST)'.

-- gil

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


Re: Rexx - calling assembler question

2012-05-21 Thread Shmuel Metz (Seymour J.)
In <6426001600524474.wa.paulgboulderaim@bama.ua.edu>, on
05/21/2012
   at 12:15 AM, Paul Gilmartin  said:

>Those generate parameter lists with a distinct CMS flavor.

Not even close; 8 character tokenization is mickey mouse. The PLIST
has a distinct REXX flavor. If you want to pass back variables to the
caller, this is the way to go. Of course, which form you should use is
determined by how you code the routine. 
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: Rexx - calling assembler question

2012-05-20 Thread Paul Gilmartin
On Sat, 19 May 2012 22:35:04 -0400, Shmuel Metz (Seymour J.) wrote:
>
>You probably should be using ADDRESS ATTACH or ADDRESS LINK for what
>you are doing. See 2.5.9 in SA22-7790, z/OS TSO/E REXX Reference for
>more details.
> 
Those generate parameter lists with a distinct CMS flavor.  I'll
recommend instead address ATTACHPGM, address ATTACHMVS,
address LINKPGM, and address LINKMVS.  The -PGM forms
generate parameter lists similar to assembler CALL; the -MVS
forms generate parameter lists similar to JCL EXEC PGM=...

-- gil

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


Re: Rexx - calling assembler question

2012-05-20 Thread Shmuel Metz (Seymour J.)
In <1337355369.63700.yahoomail...@web164504.mail.gq1.yahoo.com>, on
05/18/2012
   at 08:36 AM, Scott Ford  said:

>I assumed I misunderstand how parameters are passed in Rexx to
>Assembler

That depends on what environment you specify. However, in all cases
the save area chaining is the same, and that's where your dirst error
was.

ADDRESS TSO FOO BAR passes the address of a CPPL in R1. In your case
the command you specified was CALL, and it was CALL that invoked your
assembler routine rather than your REXX code. CALL passes the address
of a one word list in R1, and that list points to a halfword length
followed by the parameter text; in your case, CLASS(USER.

You probably should be using ADDRESS ATTACH or ADDRESS LINK for what
you are doing. See 2.5.9 in SA22-7790, z/OS TSO/E REXX Reference for
more details.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: Rexx - calling assembler question

2012-05-18 Thread Scott Ford
Tony,
 
Sort for the misname ...I am looking at the storage save area chain, John send 
me, ty, John..
And I will take a look at LINKPGM..
 
You guys are great as usual

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


 From: Tony Harminc 
To: IBM-MAIN@bama.ua.edu 
Sent: Friday, May 18, 2012 12:40 PM
Subject: Re: Rexx - calling assembler question
  
On 18 May 2012 12:25, Scott Ford  wrote:
> Tom:

Tom?

> Let me explain, sorry, I should have been more clear..
>
> The Rexx program or clist will call and Asembler module , the Assembler 
> module in this case will do calls to
> the R_Radmin to perform extracts..output will go to a ddname once i get their 
> with this code..
>
> My problem is passing for example a Class and Profile to the Assembler 
> routine doing the call to RACF

If you stick to the TSO CALL command, you have only one text argument
you can pass. So if you have two variable length items to pass, you
will need delimiters of some sort, or you can reserve a fixed space
for each. Keep in mind that yuo have only 100 bytes available in such
an argument.

There are other ways of calling an assembler program from REXX that
allow you to pass multiple arguments, and even update them. Have a
look at LINKMVS and LINKPGM in the REXX Reference book.

Tony H.

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

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


Re: Rexx - calling assembler question

2012-05-18 Thread Tony Harminc
On 18 May 2012 12:25, Scott Ford  wrote:
> Tom:

Tom?

> Let me explain, sorry, I should have been more clear..
>
> The Rexx program or clist will call and Asembler module , the Assembler 
> module in this case will do calls to
> the R_Radmin to perform extracts..output will go to a ddname once i get their 
> with this code..
>
> My problem is passing for example a Class and Profile to the Assembler 
> routine doing the call to RACF

If you stick to the TSO CALL command, you have only one text argument
you can pass. So if you have two variable length items to pass, you
will need delimiters of some sort, or you can reserve a fixed space
for each. Keep in mind that yuo have only 100 bytes available in such
an argument.

There are other ways of calling an assembler program from REXX that
allow you to pass multiple arguments, and even update them. Have a
look at LINKMVS and LINKPGM in the REXX Reference book.

Tony H.

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


Re: Rexx - calling assembler question

2012-05-18 Thread Scott Ford
Tom:
 
Let me explain, sorry, I should have been more clear..
 
The Rexx program or clist will call and Asembler module , the Assembler module 
in this case will do calls to
the R_Radmin to perform extracts..output will go to a ddname once i get their 
with this code..
 
My problem is passing for example a Class and Profile to the Assembler routine 
doing the call to RACF

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


 From: Tony Harminc 
To: IBM-MAIN@bama.ua.edu 
Sent: Friday, May 18, 2012 12:05 PM
Subject: Re: Rexx - calling assembler question
  
On 18 May 2012 11:36, Scott Ford  wrote:
> All:
>
> I am in the process of writing a Rexx program that will call an Assembler 
> program and pass parameters.
> The program is simple..
>
> -
> Rexx:
> /* TSTGFILE  */
> trace i
> say 'Address is: 'address()
> address TSO "CALL 'SFORD.LINKLIB(TESTCALL)' 'CLASS(USER' "
>
> 

What you've got is a TSO call command. It has really nothing to do with REXX.

> Assembler:
>
> TESTCALL CSECT
> TESTCALL AMODE 31
> TESTCALL RMODE ANY
>  YREGS
>  SPACE 3
>  SAVE (14,12),,'TESTCALL..&SYSDATE..&SYSTIME'
>  LR    R12,R15
>  USING TESTCALL,R12
>  L R4,0(R1)
>  ST    R4,8(R13)
>  ST    R13,4(R4)
>  LR    R13,R4
>  L R1,4(R1)
>  MVC   CLASSN(8),0(R4)
>  MVC   SUBMSGA+20(8),CLASSN
> SUBMSGA  WTO   'PARM1:    ',ROUTCDE=11
> BAILOUT  DS    0H
> L R13,SAVEAREA+4
>  RETURN (14,12),RC=0
> CLASSN   DS    CL8
> PROFN    DS    CL8
> SAVEAREA DS    18F
> 
> Execution JCL:
>
> //REXXGRP JOB ,SYSTEMS,CLASS=A,MSGCLASS=X,
> //  MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID
> //STEP1    EXEC PGM=IKJEFT01,DYNAMNBR=99
> //STEPLIB  DD DSN=SFORD.LINKLIB,DISP=SHR
> //SYSEXEC  DD DSN=SFORD.CLIST.LIBRARY,DISP=SHR
> //SYSOUT   DD SYSOUT=*
> //SYSPRINT DD SYSOUT=*
> //SYSTSPRT DD SYSOUT=*
> //SYSTSIN  DD *
>   %TSTGFILE
> /*
> -
> Output:
>
>    J E S 2  J O B  L O G  --  S Y S T E M  A D C D  --  N 
> O
>
> 09.17.26 JOB00225  FRIDAY,    18 MAY 2012 
> 09.17.26 JOB00225  IRR010I  USERID SFORD    IS ASSIGNED TO THIS JOB.
> 09.17.26 JOB00225  ICH70001I SFORD    LAST ACCESS AT 09:17:12 ON FRIDAY, MAY 
> 18,
> 09.17.26 JOB00225  $HASP373 REXXGRP  STARTED - INIT 1    - CLASS A - SYS ADCD
> 09.17.26 JOB00225  IEF403I REXXGRP - STARTED - TIME=09.17.26
> 09.17.27 JOB00225  +PARM1:    CL
> 09.17.27 JOB00225  IEF404I REXXGRP - ENDED - TIME=09.17.27
> 09.17.27 JOB00225  $HASP395 REXXGRP  ENDED
>
> I assumed I misunderstand how parameters are passed in Rexx to Assembler...I 
> thought that
> R1 pointed to the Adcon list...can someone be so kind as to point this old 
> fellow .the right way

It does. R1 points to a list of fullword addresses, and in this case
there will be only one. You load that first and only pointer into R4
with
>          L     R4,0(R1)
Now R4 points to a halfword length field(10), followed by the argument
text - in your case "CLASS(USER". So far, so good. (At this point, I
would just do a WTO with the TEXT= option. TEXT= takes a pointer to a
halfword length followed by text, so you are all set.)

Then there is some code that appears to confuse chaining save areas
with the argument you've been passed...
>          ST    R4,8(R13)
>          ST    R13,4(R4)
>          LR    R13,R4
>          L     R1,4(R1)

If you want to include some hardcoded text such as "PARM1: ", then you
might do better to reserve an area, e.g.
MSG   DS    Y(*-*),CL256
move in your local constant text and the argument you received, make
sure the length field covers both, and then issue the WTO TEXT=.

You could even easily achieve reenterability this way, should that
matter to you.

Tony H.

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

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


Re: Rexx - calling assembler question

2012-05-18 Thread Tony Harminc
On 18 May 2012 11:36, Scott Ford  wrote:
> All:
>
> I am in the process of writing a Rexx program that will call an Assembler 
> program and pass parameters.
> The program is simple..
>
> -
> Rexx:
> /* TSTGFILE  */
> trace i
> say 'Address is: 'address()
> address TSO "CALL 'SFORD.LINKLIB(TESTCALL)' 'CLASS(USER' "
>
> 

What you've got is a TSO call command. It has really nothing to do with REXX.

> Assembler:
>
> TESTCALL CSECT
> TESTCALL AMODE 31
> TESTCALL RMODE ANY
>  YREGS
>  SPACE 3
>  SAVE (14,12),,'TESTCALL..&SYSDATE..&SYSTIME'
>  LR    R12,R15
>  USING TESTCALL,R12
>  L R4,0(R1)
>  ST    R4,8(R13)
>  ST    R13,4(R4)
>  LR    R13,R4
>  L R1,4(R1)
>  MVC   CLASSN(8),0(R4)
>  MVC   SUBMSGA+20(8),CLASSN
> SUBMSGA  WTO   'PARM1:    ',ROUTCDE=11
> BAILOUT  DS    0H
> L R13,SAVEAREA+4
>  RETURN (14,12),RC=0
> CLASSN   DS    CL8
> PROFN    DS    CL8
> SAVEAREA DS    18F
> 
> Execution JCL:
>
> //REXXGRP JOB ,SYSTEMS,CLASS=A,MSGCLASS=X,
> //  MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID
> //STEP1    EXEC PGM=IKJEFT01,DYNAMNBR=99
> //STEPLIB  DD DSN=SFORD.LINKLIB,DISP=SHR
> //SYSEXEC  DD DSN=SFORD.CLIST.LIBRARY,DISP=SHR
> //SYSOUT   DD SYSOUT=*
> //SYSPRINT DD SYSOUT=*
> //SYSTSPRT DD SYSOUT=*
> //SYSTSIN  DD *
>   %TSTGFILE
> /*
> -
> Output:
>
>    J E S 2  J O B  L O G  --  S Y S T E M  A D C D  --  N 
> O
>
> 09.17.26 JOB00225  FRIDAY,    18 MAY 2012 
> 09.17.26 JOB00225  IRR010I  USERID SFORD    IS ASSIGNED TO THIS JOB.
> 09.17.26 JOB00225  ICH70001I SFORD    LAST ACCESS AT 09:17:12 ON FRIDAY, MAY 
> 18,
> 09.17.26 JOB00225  $HASP373 REXXGRP  STARTED - INIT 1    - CLASS A - SYS ADCD
> 09.17.26 JOB00225  IEF403I REXXGRP - STARTED - TIME=09.17.26
> 09.17.27 JOB00225  +PARM1:    CL
> 09.17.27 JOB00225  IEF404I REXXGRP - ENDED - TIME=09.17.27
> 09.17.27 JOB00225  $HASP395 REXXGRP  ENDED
>
> I assumed I misunderstand how parameters are passed in Rexx to Assembler...I 
> thought that
> R1 pointed to the Adcon list...can someone be so kind as to point this old 
> fellow .the right way

It does. R1 points to a list of fullword addresses, and in this case
there will be only one. You load that first and only pointer into R4
with
>  L R4,0(R1)
Now R4 points to a halfword length field(10), followed by the argument
text - in your case "CLASS(USER". So far, so good. (At this point, I
would just do a WTO with the TEXT= option. TEXT= takes a pointer to a
halfword length followed by text, so you are all set.)

Then there is some code that appears to confuse chaining save areas
with the argument you've been passed...
>  STR4,8(R13)
>  STR13,4(R4)
>  LRR13,R4
>  L R1,4(R1)

If you want to include some hardcoded text such as "PARM1: ", then you
might do better to reserve an area, e.g.
MSG   DSY(*-*),CL256
move in your local constant text and the argument you received, make
sure the length field covers both, and then issue the WTO TEXT=.

You could even easily achieve reenterability this way, should that
matter to you.

Tony H.

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


Re: Rexx - calling assembler question

2012-05-18 Thread Wayne Driscoll
R1 contains the address of the PLIST.  It will contain one entry (ie the 
first word of the PLIST will have the VL bit set).  this entry will point 
to a 2 byte length field, followed by a character string whose length is 
in the first 2 bytes.  IOW, a standard batch parameter list.
===
Wayne Driscoll
OMEGAMON DB2 L3 Support/Development
wdrisco(AT)us.ibm.com
===



From:   Scott Ford 
To: IBM-MAIN@bama.ua.edu, 
Date:   05/18/2012 10:37 AM
Subject:Rexx - calling assembler question
Sent by:IBM Mainframe Discussion List 



All:
 
I am in the process of writing a Rexx program that will call an Assembler 
program and pass parameters.
The program is simple..
 
-
Rexx:
/* TSTGFILE  */
trace i
say 'Address is: 'address()
address TSO "CALL 'SFORD.LINKLIB(TESTCALL)' 'CLASS(USER' "
 

 
Assembler:
 
TESTCALL CSECT
TESTCALL AMODE 31
TESTCALL RMODE ANY
 YREGS
 SPACE 3
 SAVE (14,12),,'TESTCALL..&SYSDATE..&SYSTIME'
 LRR12,R15
 USING TESTCALL,R12
 L R4,0(R1)
 STR4,8(R13)
 STR13,4(R4)
 LRR13,R4
 L R1,4(R1)
 MVC   CLASSN(8),0(R4)
 MVC   SUBMSGA+20(8),CLASSN
SUBMSGA  WTO   'PARM1:',ROUTCDE=11
BAILOUT  DS0H
L R13,SAVEAREA+4
 RETURN (14,12),RC=0
CLASSN   DSCL8
PROFNDSCL8
SAVEAREA DS18F

Execution JCL:
 
//REXXGRP JOB ,SYSTEMS,CLASS=A,MSGCLASS=X,
//  MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID
//STEP1EXEC PGM=IKJEFT01,DYNAMNBR=99
//STEPLIB  DD DSN=SFORD.LINKLIB,DISP=SHR
//SYSEXEC  DD DSN=SFORD.CLIST.LIBRARY,DISP=SHR
//SYSOUT   DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD *
  %TSTGFILE
/*
-
Output:
 
   J E S 2  J O B  L O G  --  S Y S T E M  A D C D  
--  N O
 
09.17.26 JOB00225  FRIDAY,18 MAY 2012 
09.17.26 JOB00225  IRR010I  USERID SFORDIS ASSIGNED TO THIS JOB.
09.17.26 JOB00225  ICH70001I SFORDLAST ACCESS AT 09:17:12 ON FRIDAY, 
MAY 18,
09.17.26 JOB00225  $HASP373 REXXGRP  STARTED - INIT 1- CLASS A - SYS 
ADCD
09.17.26 JOB00225  IEF403I REXXGRP - STARTED - TIME=09.17.26
09.17.27 JOB00225  +PARM1:CL
09.17.27 JOB00225  IEF404I REXXGRP - ENDED - TIME=09.17.27
09.17.27 JOB00225  $HASP395 REXXGRP  ENDED
 
I assumed I misunderstand how parameters are passed in Rexx to 
Assembler...I thought that
 
R1 pointed to the Adcon list...can someone be so kind as to point this old 
fellow .the right way
Regards,
 
Scott J Ford
Software Engineer
http://www.identityforge.com

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



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


Re: Rexx - calling assembler question

2012-05-18 Thread McKown, John
You're example uses the TSO CALL function to invoke your assembler. In this 
case, the calling convention is exactly like in a batch program. R1 points to a 
fullword address. That points to the parameter on the call where the first two 
bytes are the lenght of the parm, followed by that number of bytes, which is 
the parm value. I.e. if no parm is given, the halfword is H'0'


R1 -> A(PARM) -> LLparm

Or, 

...
L R4,0(,R1)
LH R5,0(,R4) LENGTH OF PARM STRING
LA R6,2(,R4) POINT TO FIRST BYTE OF PARM
...

R1 definitely does NOT point to an area you can use as a save area. Which is 
what your code does.  You need to do something like:

  SAVE (14,12)
  LR R12,R15
  STORAGE OBTAIN,
  LV=72
  ST R13,4(,R1)
  ST R1,8(,R13)
  LR R13,R1
  L  R1,4(,R13) PREVIOUS SAVE AREA
  L  R1,24(,R1) RESTORE ORIGINAL R1
  L  R4,0(,R1)  CALL PARAMETER
  LH R5,0(,R4)
  LA R5,2(,R4)
...

If this were a TSO command, the registers at entry are different and you'll 
need to look in the TSO manual to determine what is where. And don't get me 
started on if this were a z/OS UNIX command.

--
John McKown 
Systems Engineer IV
IT

Administrative Services Group

HealthMarkets®

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

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

> -Original Message-
> From: IBM Mainframe Discussion List 
> [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of Scott Ford
> Sent: Friday, May 18, 2012 10:36 AM
> To: IBM-MAIN@bama.ua.edu
> Subject: Rexx - calling assembler question
> 
> All:
>  
> I am in the process of writing a Rexx program that will call 
> an Assembler program and pass parameters.
> The program is simple..
>  
> --
> ---
> Rexx:
> /* TSTGFILE  */
> trace i
> say 'Address is: 'address()
> address TSO "CALL 'SFORD.LINKLIB(TESTCALL)' 'CLASS(USER' "
>  
> --
> --
>  
> Assembler:
>  
> TESTCALL CSECT
> TESTCALL AMODE 31
> TESTCALL RMODE ANY
>  YREGS
>  SPACE 3
>  SAVE (14,12),,'TESTCALL..&SYSDATE..&SYSTIME'
>  LR    R12,R15
>  USING TESTCALL,R12
>  L R4,0(R1)
>  ST    R4,8(R13)
>  ST    R13,4(R4)
>  LR    R13,R4
>  L R1,4(R1)
>  MVC   CLASSN(8),0(R4)
>  MVC   SUBMSGA+20(8),CLASSN
> SUBMSGA  WTO   'PARM1:    ',ROUTCDE=11
> BAILOUT  DS    0H
> L R13,SAVEAREA+4
>  RETURN (14,12),RC=0
> CLASSN   DS    CL8
> PROFN    DS    CL8
> SAVEAREA DS    18F
> --
> --
> 
> Execution JCL:
>  
> //REXXGRP JOB ,SYSTEMS,CLASS=A,MSGCLASS=X,
> //  MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID
> //STEP1    EXEC PGM=IKJEFT01,DYNAMNBR=99
> //STEPLIB  DD DSN=SFORD.LINKLIB,DISP=SHR
> //SYSEXEC  DD DSN=SFORD.CLIST.LIBRARY,DISP=SHR
> //SYSOUT   DD SYSOUT=*
> //SYSPRINT DD SYSOUT=*
> //SYSTSPRT DD SYSOUT=*
> //SYSTSIN  DD *
>   %TSTGFILE
> /*
> --
> --
> -
> Output:
>  
>    J E S 2  J O B  L O G  --  S Y S T E M 
>  A D C D  --  N O
>  
> 09.17.26 JOB00225  FRIDAY,    18 MAY 2012 
> 09.17.26 JOB00225  IRR010I  USERID SFORD    IS ASSIGNED TO THIS JOB.
> 09.17.26 JOB00225  ICH70001I SFORD    LAST ACCESS AT 09:17:12 
> ON FRIDAY, MAY 18,
> 09.17.26 JOB00225  $HASP373 REXXGRP  STARTED - INIT 1    - 
> CLASS A - SYS ADCD
> 09.17.26 JOB00225  IEF403I REXXGRP - STARTED - TIME=09.17.26
> 09.17.27 JOB00225  +PARM1:    CL
> 09.17.27 JOB00225  IEF404I REXXGRP - ENDED - TIME=09.17.27
> 09.17.27 JOB00225  $HASP395 REXXGRP  ENDED
>  
> I assumed I misunderstand how parameters are passed in Rexx 
> to Assembler...I thought that
>  
> R1 pointed to the Adcon list...can someone be so kind as to 
> point this old fellow .the right way
> Regards,
&

Rexx - calling assembler question

2012-05-18 Thread Scott Ford
All:
 
I am in the process of writing a Rexx program that will call an Assembler 
program and pass parameters.
The program is simple..
 
-
Rexx:
/* TSTGFILE  */
trace i
say 'Address is: 'address()
address TSO "CALL 'SFORD.LINKLIB(TESTCALL)' 'CLASS(USER' "
 

 
Assembler:
 
TESTCALL CSECT
TESTCALL AMODE 31
TESTCALL RMODE ANY
 YREGS
 SPACE 3
 SAVE (14,12),,'TESTCALL..&SYSDATE..&SYSTIME'
 LR    R12,R15
 USING TESTCALL,R12
 L R4,0(R1)
 ST    R4,8(R13)
 ST    R13,4(R4)
 LR    R13,R4
 L R1,4(R1)
 MVC   CLASSN(8),0(R4)
 MVC   SUBMSGA+20(8),CLASSN
SUBMSGA  WTO   'PARM1:    ',ROUTCDE=11
BAILOUT  DS    0H
L R13,SAVEAREA+4
 RETURN (14,12),RC=0
CLASSN   DS    CL8
PROFN    DS    CL8
SAVEAREA DS    18F

Execution JCL:
 
//REXXGRP JOB ,SYSTEMS,CLASS=A,MSGCLASS=X,
//  MSGLEVEL=(1,1),REGION=0M,NOTIFY=&SYSUID
//STEP1    EXEC PGM=IKJEFT01,DYNAMNBR=99
//STEPLIB  DD DSN=SFORD.LINKLIB,DISP=SHR
//SYSEXEC  DD DSN=SFORD.CLIST.LIBRARY,DISP=SHR
//SYSOUT   DD SYSOUT=*
//SYSPRINT DD SYSOUT=*
//SYSTSPRT DD SYSOUT=*
//SYSTSIN  DD *
  %TSTGFILE
/*
-
Output:
 
   J E S 2  J O B  L O G  --  S Y S T E M  A D C D  --  N O
 
09.17.26 JOB00225  FRIDAY,    18 MAY 2012 
09.17.26 JOB00225  IRR010I  USERID SFORD    IS ASSIGNED TO THIS JOB.
09.17.26 JOB00225  ICH70001I SFORD    LAST ACCESS AT 09:17:12 ON FRIDAY, MAY 18,
09.17.26 JOB00225  $HASP373 REXXGRP  STARTED - INIT 1    - CLASS A - SYS ADCD
09.17.26 JOB00225  IEF403I REXXGRP - STARTED - TIME=09.17.26
09.17.27 JOB00225  +PARM1:    CL
09.17.27 JOB00225  IEF404I REXXGRP - ENDED - TIME=09.17.27
09.17.27 JOB00225  $HASP395 REXXGRP  ENDED
 
I assumed I misunderstand how parameters are passed in Rexx to Assembler...I 
thought that
 
R1 pointed to the Adcon list...can someone be so kind as to point this old 
fellow .the right way
Regards,
 
Scott J Ford
Software Engineer
http://www.identityforge.com

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


Re: Macro Assembler Question

2012-04-01 Thread Shmuel Metz (Seymour J.)
In
<7939f2ef219f1e4c827f85c95001dab32163905...@uspho-mxvs02.amer.thermo.com>,
on 03/31/2012
   at 05:04 PM, "Hardee, Chuck"  said:

>So far, everything I have tried has met with resistance from the
>assembler.

Did you try &(P&I) where &I is from 1 to 24 for the regular case? If
that works then you should be able to do something similar for the
irregular cases.

Exactly what are you trying to do?
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

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


Re: Macro Assembler Question

2012-04-01 Thread Hardee, Chuck
Thanks Don, this idea has the most merit so far.


Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
chuck.har...@thermofisher.com


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
Don Higgins
Sent: Sunday, April 01, 2012 3:04 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Macro Assembler Question

Here short example of how to use conditional macro assembler to handle an 
arbitary number of macro parameters of the form X=Y where X is the variable 
name without & and Y is the character value.  The technique is to omit the 
variable names from the explicit keyword parameters for the macro and then 
process all the positional parms to find the ones of the form X=Y. The 
technigue also uses created macro variables support of of the form &(...) to 
create the macro variables from the positional parms.  Here is z390 source 
assembler TESTPN.MLC assembled with command ASM TESTPN:

 MACRO
 TESTPN 
 :&I SETA 1
 AWHILE (&I LE N'&SYSLIST)
 :&PNV SETC '&SYSLIST(&I)'
 :&J SETA ('&PNV' FIND '=')
 AIF (&J GT 0)
 :&PN SETC '&PNV'(1,&J-1)
 :&PV SETC '&PNV'(&J+1,*)
 :&(&PN) SETC '&PV'
 AEND
 :&I SETA &I+1
 AEND
 MNOTE 'P1=&P1'
 MNOTE 'P10=&P10'
 MNOTE 'P1000=&P1000'
 MEND
 TESTPN P1=V1,P10=V10,P1000=V1000
 END

Here is the z390 TESTPN.PRN output assembler listing for the avove source code:

 00(1/1)1  MACRO
00(1/2)2  TESTPN
00(1/3)3 &I SETA 1
00(1/4)4 .AWH_1_T ANOP
00(1/4)5  AIF (NOT(&I LE 
N'&SYSLIST)).AWH_1_E
00(1/5)6 &PNV SETC '&SYSLIST(&I)'
00(1/6)7 &J SETA ('&PNV' FIND '=')
00(1/7)8  AIF (NOT(&J GT 0)).AIF_1_1
00(1/8)9 &PN SETC '&PNV'(1,&J-1)
00   (1/9)10 &PV SETC '&PNV'(&J+1,*)
00  (1/10)11 &(&PN) SETC '&PV'
00  (1/11)12 .AIF_1_1 ANOP
00  (1/12)13 &I SETA &I+1
00  (1/13)14  AGO .AWH_1_T
00  (1/13)15 .AWH_1_E ANOP
00  (1/14)16  MNOTE 'P1=&P1'
00  (1/15)17  MNOTE 'P10=&P10'
00  (1/16)18  MNOTE 
'P1000=&P1000'
00  (1/17)19  MEND
00  (1/18)20  TESTPN 
P1=V1,P10=V10,P1000=V1000
00  (1/14)21+ MNOTE 'P1=V1'
00  (1/15)22+ MNOTE 'P10=V10'
00  (1/16)23+ MNOTE 
'P1000=V1000'
00  (1/19)25  END 

Note the z390 structured conditional macro assembler code used to make the 
example more readable is expanded into standard HLASM macro assembler which is 
listed as inline macro in the output.

Hope this helps.  This discussion probably does belong on the ASM390 list.

Don Higgins
d...@higgins.net 

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

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


Re: Macro Assembler Question

2012-04-01 Thread Don Higgins
Here short example of how to use conditional macro assembler to handle an 
arbitary number of macro parameters of the form X=Y where X is the variable 
name without & and Y is the character value.  The technique is to omit the 
variable names from the explicit keyword parameters for the macro and then 
process all the positional parms to find the ones of the form X=Y. The 
technigue also uses created macro variables support of of the form &(...) to 
create the macro variables from the positional parms.  Here is z390 source 
assembler TESTPN.MLC assembled with command ASM TESTPN:

 MACRO
 TESTPN 
 :&I SETA 1
 AWHILE (&I LE N'&SYSLIST)
 :&PNV SETC '&SYSLIST(&I)'
 :&J SETA ('&PNV' FIND '=')
 AIF (&J GT 0)
 :&PN SETC '&PNV'(1,&J-1)
 :&PV SETC '&PNV'(&J+1,*)
 :&(&PN) SETC '&PV'
 AEND
 :&I SETA &I+1
 AEND
 MNOTE 'P1=&P1'
 MNOTE 'P10=&P10'
 MNOTE 'P1000=&P1000'
 MEND
 TESTPN P1=V1,P10=V10,P1000=V1000
 END

Here is the z390 TESTPN.PRN output assembler listing for the avove source code:

 00(1/1)1  MACRO
00(1/2)2  TESTPN
00(1/3)3 &I SETA 1
00(1/4)4 .AWH_1_T ANOP
00(1/4)5  AIF (NOT(&I LE 
N'&SYSLIST)).AWH_1_E
00(1/5)6 &PNV SETC '&SYSLIST(&I)'
00(1/6)7 &J SETA ('&PNV' FIND '=')
00(1/7)8  AIF (NOT(&J GT 0)).AIF_1_1
00(1/8)9 &PN SETC '&PNV'(1,&J-1)
00   (1/9)10 &PV SETC '&PNV'(&J+1,*)
00  (1/10)11 &(&PN) SETC '&PV'
00  (1/11)12 .AIF_1_1 ANOP
00  (1/12)13 &I SETA &I+1
00  (1/13)14  AGO .AWH_1_T
00  (1/13)15 .AWH_1_E ANOP
00  (1/14)16  MNOTE 'P1=&P1'
00  (1/15)17  MNOTE 'P10=&P10'
00  (1/16)18  MNOTE 
'P1000=&P1000'
00  (1/17)19  MEND
00  (1/18)20  TESTPN 
P1=V1,P10=V10,P1000=V1000
00  (1/14)21+ MNOTE 'P1=V1'
00  (1/15)22+ MNOTE 'P10=V10'
00  (1/16)23+ MNOTE 
'P1000=V1000'
00  (1/19)25  END 

Note the z390 structured conditional macro assembler code used to make the 
example more readable is expanded into standard HLASM macro assembler which is 
listed as inline macro in the output.

Hope this helps.  This discussion probably does belong on the ASM390 list.

Don Higgins
d...@higgins.net 

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


Re: Macro Assembler Question

2012-04-01 Thread Justin R. Bendich
>Hello Listers,
>
>I am in the process of doing some work in a macro written years ago.
>
>The problem I am faced with is that the parameter list is something like the 
>following:
>
>LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out to p24.
>And, unfortunately, there are 4 sets of parameters of this nature, not to 
>mention a few
>"unique" parameters on the list (not suffixed with a number).
>
>My question is, does the macro assembly language allow for compound variable 
>names?
>So far, everything I have tried has met with resistance from the assembler.

This sounds like somebody didn't know what they were doing, going nuts with 
macros.
What do you mean by a "compound variable name"?
HL-ASM macro-language symbols can be, basically, arbitrarily long (up to 62 
characters).
The value of a symbol can (optionally) be a list of comma-separated values, 
surrounded
by parentheses.

If you look at the macros IBM provides to invoke MVS assembler services (in 
SYS1.MACLIB
and SYS1.MODGEN), they tend to not have huge numbers of parameters, and the 
names
of these parameters are reasonably descriptive. See, for example, IARV64, one 
of the
more-modern ones.

Unfortunately, you have to deal with someone else's overly-complicated code.
I feel sorry for you.

>Thanks,
>Chuck

>Charles (Chuck) Hardee
>Senior Systems Engineer
>Database Administration
>Information Technology Services
>Thermo Fisher Scientific
>Chuck.hardee.at.thermofisher.dot.com

Justin

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


Re: Macro Assembler Question

2012-04-01 Thread Hardee, Chuck
Thanks John, You answered my question by your example.

Unfortunately, it has opened a second problem with the use of compounds symbols.
However, I will not ask it here, but will attempt to get signed up with the 
assembler list and ask it there.

C-

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
John Gilmore
Sent: Sunday, April 01, 2012 9:38 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Macro Assembler Question

It would be helpful to know what you are trying to do.  Try explaining
what that it without prejudging the question whether "compound
variable names" are needed to do it.

They are available at almost any level of complexity you need, as the
identifiers of created set symbols and set-symbol arrays, as in the
trivial example

|&prefixsetc 'Etaoin'
|&infix0setc 'Alfred'
|&infix1setc 'Prufrock'
|&suffixsetc 'Shrdlu'
|&switchid setc '&prefix'.'&infix0'.'&infix1'.'&suffix'
|lclb  &(&switchid)  ---identifier is:
'EtaoinAlfredPrufrockShrdlu'
|&(&switchid) setb (t'&P2 ne 'O')   ---P2= value coded/present?

Again, tell us what you want to do.  Doing it is almost certainly possible.

Berndt's suggestion that this discussion be moved to the assembler
list is a very good one.  There is overlap among the readers of these
two lists, but HLASM language constructs of any complexity bore and
discourage people who don't use it regularly.

John Gilmore, Ashland, MA 01721 - USA

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

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


Re: Macro Assembler Question

2012-04-01 Thread Hardee, Chuck
Thanks Bernd, but rewriting the macro isn't an option for me at this time.

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
300 Industry Drive
Pittsburgh, PA 15275
724-517-2633 (Office)
chuck.har...@thermofisher.com


-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
Bernd Oppolzer
Sent: Sunday, April 01, 2012 5:07 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Macro Assembler Question

My experience with macro assembler is some ten years ago,
but: finding the number of parameters in the list and indexing across the
list is IMHO only possible for positional parameters, but here we have
keyword parameters.

positional:

LABEL MACNAME A,B,C

keyword:

LABEL MACNAME P1=A,P2=B,P3=C

with positional, the sequence of the parameters is important,
with keywords it isn't.

You could rewrite the macro like the following:

LABEL MACNAME P=(X,Y,Z,...),Q=(A,B,C,...)

having the sublists of P growing up to 24 elements, then counting and 
indexing
the sublists. But this would be a major rewrite of your existing macro.

Don't know if I understood your problem right.

Maybe it would also help to ask the ASSEMBLER mailing list.

Kind regards

Bernd




Am 01.04.2012 08:28, schrieb Ken Brick:
> Chuck,
>
> From the deep dark mists you can:
> a. find out the number of parameters in the list
> b: index across the list
>
> Refer to the fine manual,
>
> Help this helps.
>
> Ken
> On 1/04/2012 10:04 AM, Hardee, Chuck wrote:
>> Hello Listers,
>>
>> I am in the process of doing some work in a macro written years ago.
>>
>> The problem I am faced with is that the parameter list is something 
>> like the following:
>>
>> LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out 
>> to p24.
>> And, unfortunately, there are 4 sets of parameters of this nature, 
>> not to mention a few "unique" parameters on the list (not suffixed 
>> with a number).
>>
>> My question is, does the macro assembly language allow for compound 
>> variable names?
>> So far, everything I have tried has met with resistance from the 
>> assembler.
>>
>> Thanks,
>> Chuck
>>
>> Charles (Chuck) Hardee
>> Senior Systems Engineer
>> Database Administration
>> Information Technology Services
>> Thermo Fisher Scientific
>> Chuck.hardee.at.thermofisher.dot.com
>>
>> --
>> For IBM-MAIN subscribe / signoff / archive access instructions,
>> send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
>>
>

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

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


Re: Macro Assembler Question

2012-04-01 Thread Hardee, Chuck
Thanks Ken,

If you are referring to &SYSLIST, I've tried that.

It only works for positional parameters:

LABEL MACNAME (A,B,C)

You can find that there are 3 parameters in the list and you can access them 
each individually.
It doesn't, however, work for what I need.

C-

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
300 Industry Drive
Pittsburgh, PA 15275
724-517-2633 (Office)
chuck.har...@thermofisher.com

-Original Message-
From: IBM Mainframe Discussion List [mailto:IBM-MAIN@bama.ua.edu] On Behalf Of 
Ken Brick
Sent: Sunday, April 01, 2012 2:28 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Macro Assembler Question

Chuck,

 From the deep dark mists you can:
a. find out the number of parameters in the list
b: index across the list

Refer to the fine manual,

Help this helps.

Ken
On 1/04/2012 10:04 AM, Hardee, Chuck wrote:
> Hello Listers,
>
> I am in the process of doing some work in a macro written years ago.
>
> The problem I am faced with is that the parameter list is something like the 
> following:
>
> LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out to p24.
> And, unfortunately, there are 4 sets of parameters of this nature, not to 
> mention a few "unique" parameters on the list (not suffixed with a number).
>
> My question is, does the macro assembly language allow for compound variable 
> names?
> So far, everything I have tried has met with resistance from the assembler.
>
> Thanks,
> Chuck
>
> Charles (Chuck) Hardee
> Senior Systems Engineer
> Database Administration
> Information Technology Services
> Thermo Fisher Scientific
> Chuck.hardee.at.thermofisher.dot.com
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: INFO IBM-MAIN
>

-- 
Ken

Mob: 0409 009 764

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

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


Re: Macro Assembler Question

2012-04-01 Thread John Gilmore
It would be helpful to know what you are trying to do.  Try explaining
what that it without prejudging the question whether "compound
variable names" are needed to do it.

They are available at almost any level of complexity you need, as the
identifiers of created set symbols and set-symbol arrays, as in the
trivial example

|&prefixsetc 'Etaoin'
|&infix0setc 'Alfred'
|&infix1setc 'Prufrock'
|&suffixsetc 'Shrdlu'
|&switchid setc '&prefix'.'&infix0'.'&infix1'.'&suffix'
|lclb  &(&switchid)  ---identifier is:
'EtaoinAlfredPrufrockShrdlu'
|&(&switchid) setb (t'&P2 ne 'O')   ---P2= value coded/present?

Again, tell us what you want to do.  Doing it is almost certainly possible.

Berndt's suggestion that this discussion be moved to the assembler
list is a very good one.  There is overlap among the readers of these
two lists, but HLASM language constructs of any complexity bore and
discourage people who don't use it regularly.

John Gilmore, Ashland, MA 01721 - USA

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


Re: Macro Assembler Question

2012-04-01 Thread Bernd Oppolzer

My experience with macro assembler is some ten years ago,
but: finding the number of parameters in the list and indexing across the
list is IMHO only possible for positional parameters, but here we have
keyword parameters.

positional:

LABEL MACNAME A,B,C

keyword:

LABEL MACNAME P1=A,P2=B,P3=C

with positional, the sequence of the parameters is important,
with keywords it isn't.

You could rewrite the macro like the following:

LABEL MACNAME P=(X,Y,Z,...),Q=(A,B,C,...)

having the sublists of P growing up to 24 elements, then counting and 
indexing

the sublists. But this would be a major rewrite of your existing macro.

Don't know if I understood your problem right.

Maybe it would also help to ask the ASSEMBLER mailing list.

Kind regards

Bernd




Am 01.04.2012 08:28, schrieb Ken Brick:

Chuck,

From the deep dark mists you can:
a. find out the number of parameters in the list
b: index across the list

Refer to the fine manual,

Help this helps.

Ken
On 1/04/2012 10:04 AM, Hardee, Chuck wrote:

Hello Listers,

I am in the process of doing some work in a macro written years ago.

The problem I am faced with is that the parameter list is something 
like the following:


LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out 
to p24.
And, unfortunately, there are 4 sets of parameters of this nature, 
not to mention a few "unique" parameters on the list (not suffixed 
with a number).


My question is, does the macro assembly language allow for compound 
variable names?
So far, everything I have tried has met with resistance from the 
assembler.


Thanks,
Chuck

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
Chuck.hardee.at.thermofisher.dot.com

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





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


Re: Macro Assembler Question

2012-03-31 Thread Ken Brick

Chuck,

From the deep dark mists you can:
a. find out the number of parameters in the list
b: index across the list

Refer to the fine manual,

Help this helps.

Ken
On 1/04/2012 10:04 AM, Hardee, Chuck wrote:

Hello Listers,

I am in the process of doing some work in a macro written years ago.

The problem I am faced with is that the parameter list is something like the 
following:

LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out to p24.
And, unfortunately, there are 4 sets of parameters of this nature, not to mention a few 
"unique" parameters on the list (not suffixed with a number).

My question is, does the macro assembly language allow for compound variable 
names?
So far, everything I have tried has met with resistance from the assembler.

Thanks,
Chuck

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
Chuck.hardee.at.thermofisher.dot.com

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



--
Ken

Mob: 0409 009 764

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


Macro Assembler Question

2012-03-31 Thread Hardee, Chuck
Hello Listers,

I am in the process of doing some work in a macro written years ago.

The problem I am faced with is that the parameter list is something like the 
following:

LABEL   MACNAME  P1=X,P2=Y,P3=Z,...  Where the parameters can go out to p24.
And, unfortunately, there are 4 sets of parameters of this nature, not to 
mention a few "unique" parameters on the list (not suffixed with a number).

My question is, does the macro assembly language allow for compound variable 
names?
So far, everything I have tried has met with resistance from the assembler.

Thanks,
Chuck

Charles (Chuck) Hardee
Senior Systems Engineer
Database Administration
Information Technology Services
Thermo Fisher Scientific
Chuck.hardee.at.thermofisher.dot.com

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


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-20 Thread Kenneth E Tomiak
If you look at SAMPLES that IBM provides, it refers to more than exits. It is 
code that was considered to have worked (although it may have bugs) at the 
time it was written. It is not 'supported' in that as mentioned below, you can 
take it and change it to do what you want it to do. While not supported, if 
you find it fails (not that it does not do what you would like it to do), you 
might get lucky and find IBM will correct the bug. I did. They had some code 
with a loop of major items (SMP/E related) that called a routine to loop 
through minor items but failed to set a register when driving back through and 
therefore the 2nd through nth major item never showed all the minor items.

 The sample is going to be updated. They are not changing it to do something 
different, merely fixing a bug that was there from day one.


There is no obligation to update samples as products evolve. Wish there were.


>The key word here may be "exit".
>
>I have no experience with RACF exits but I do - or used to - with VTAM 
exits -

>Out of the abundant kindness of their hearts, VTAM developers have supplied
>*samples* 

>Nevertheless, it was always my understanding that the purpose of those
>*sample* exits was to inspire a customer systems programmer in 
implementing
>his or her 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-18 Thread Walt Farrell
On Tue, 17 Feb 2009 23:14:07 -0500, Robert A. Rosenberg 
wrote:

>There is also the issue of using a BALR (or BASR) in lieu of
>instructions that do not need Base Registers (ie: Not allowing the
>macro to be used in a BASELESS program).

That's true.  But BALR (as opposed to BAL) does not need a base register.

If we're still talking about RACROUTE, I believe it should work just fine in
a baseless program, assuming that 
(a) you write reentrant code and use L- and E-forms of the macro, and 
(b) you've included IEABRC to handle a few B and BNZ instructions that it
generates.

I can't comment on other system macros, though, as I haven't looked at them
in this regard.

-- 
  Walt Farrell, CISSP
  IBM STSM, z/OS Security Design

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-17 Thread Robert A. Rosenberg
At 20:58 -0600 on 02/17/2009, Walt Farrell wrote about Re: How 
"Official" are Supplied Sample Exits? (was Assemble:



On the other hand, with your RACROUTE example that one BALR is going to
invoke a set of routines that will usually execute at least several thousand
other instructions, possibly tens or hundreds of thousands, and you'll never
notice any difference that might exist.



There is also the issue of using a BALR (or BASR) in lieu of 
instructions that do not need Base Registers (ie: Not allowing the 
macro to be used in a BASELESS program).


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-17 Thread Walt Farrell
On Tue, 17 Feb 2009 17:52:49 -0500, Bill Planer  wrote:

>That is correct, Roy.  I was not complaining about a sample exit.  The exit
>is mine and mine alone.  I was complaining about supported macros to call
>z/OS system services.

You were also, I believe, presuming that you would be able to notice the
performance difference between a BALR and something else (BASR, or
whatever).  If you had a tight loop of just that instruction and a few
others perhaps you would be able to measure a difference.  Probably not a
meaningful one (as in that case you really should be reworking your
application and running the instructions in-line rather than calling them),
but you might be able to see it.

On the other hand, with your RACROUTE example that one BALR is going to
invoke a set of routines that will usually execute at least several thousand
other instructions, possibly tens or hundreds of thousands, and you'll never
notice any difference that might exist.

You may have a different opinion, of course, but I believe there are a lot
more things you could worry about than that one if you want to improve
application or system performance.

-- 
  Walt Farrell, CISSP
  IBM STSM, z/OS Security Design

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-17 Thread Bill Planer
That is correct, Roy.  I was not complaining about a sample exit.  The exit
is mine and mine alone.  I was complaining about supported macros to call
z/OS system services.
Bill

"Roy Hewitt"  wrote in message
news:<499a9905.6000...@frozen.eclipse.co.uk>...
> Chris Mason wrote:
> > Bill
> > 
> > The key word here may be "exit".
> 
> (much snippage..)
> 
> (more snippage)
> On Wed, 11 Feb 2009 19:28:56 -0500, Bill Planer
> wrote:
> 
>  > >Before IBM makes a hardware change that impacts the performance of 
> BAL/BALR,  > >perhaps they should scrape their macros clean of these 
> instructions.  I just  > >assembled an exit that uses the RACROUTE 
> macro, and it still uses BALR  > >(z/OS 1.9).
> 
> 
> Chris
> 
> perhaps you mean the keyword here was "macro".
> 
> Wasn't Bill referring to BALR within the RACROUTE macro, i.e. a 
> supported component of RACF.
> 
> Cheers
> 
> Roy
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send 
> email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO 
> Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-17 Thread Gerhard Postpischil

Shmuel Metz (Seymour J.) wrote:

You know better than that.


Actually I don't. I was working on a project that had a ForTran 
main program with some assembler subroutines, that needed 
porting from a 7094 to another machine. The only change I recall 
is having to test for -0, and for some reason I remember the CDC 
1604.



Gerhard Postpischil
Bradford, VT

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-17 Thread Roy Hewitt

Chris Mason wrote:

Bill

The key word here may be "exit".


(much snippage..)

>
> Thus, given the assumptions above, it is no surprise to me that RACF have
> not "revisited" the supplied assumed to be *sample* exit in order to ensure it
> conforms to the best coding practices probably several years on from when it
> was first offered to no doubt grateful system programmers needing a bit of
> help to get them started with their own efforts.

On Wed, 11 Feb 2009 19:28:56 -0500, Bill Planer
wrote:

> >Before IBM makes a hardware change that impacts the performance of BAL/BALR,
> >perhaps they should scrape their macros clean of these instructions.  I just
> >assembled an exit that uses the RACROUTE macro, and it still uses BALR
> >(z/OS 1.9).


Chris

perhaps you mean the keyword here was "macro".

Wasn't Bill referring to BALR within the RACROUTE macro, i.e. a supported 
component of RACF.

Cheers

Roy

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-17 Thread Elardus Engelbrecht
Chris Mason wrote:

>The key word here may be "exit".

I will avoid talking about VTAM exit, because I never have any experience with 
it...

>I have no experience with RACF exits but I do - or used to - with VTAM 
exits - and those of  some related products. My understanding of an "exit" is 
that it is a point in the supplied product code where a customer might want to
impose some logic which cannot be handled by supplying values to the
product customisation parameters.

Correct. It is also my own understanding. Some exits are meant to 
allow/disallow exceptions at a local place. Example: SMFUTL can be used to 
force 522 abends or allow to continue depending on your own whims. 

>Nevertheless, it was always my understanding that the purpose of those
*sample* exits was to inspire a customer systems programmer in implementing
his or her own exit according to any specific local requirements. In other 
words, the *sample* exit was *not* to be regarded as a part of the supplied
product having the same status with regard to support as the rest.

Or show the specific restriction wherein the exit is to be assembled and linked.

>Thus, given the assumptions above, it is no surprise to me that RACF have
not "revisited" the supplied assumed to be *sample* exit in order to ensure it
conforms to the best coding practices probably several years on from when it
was first offered to no doubt grateful system programmers needing a bit of
help to get them started with their own efforts.

RACF do have some exits, but usage of RACF exits is to be avoided generally 
from a security viewpoint. But, as observed in RACF-L, there is still a serious 
need to code RACF exits and many discussions about coding of exits do take 
place from time to time.

Other side note of exits: Due to lack of resourceful people, usage of exits are 
not that recommended because of maintenance issues...

PS: I don't have at the moment any documentations to reinforce what I said 
here, but if you can disprove anything I said, I would be glad to hear (or 
read) 
about it.

Groete / Greetings
Elardus Engelbrecht

PS: Chris, thanks for your interesting posts on IBM-MAIN!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: How "Official" are Supplied Sample Exits? (was Assembler Question)

2009-02-16 Thread Chris Mason
Bill

The key word here may be "exit".

I have no experience with RACF exits but I do - or used to - with VTAM exits -
 and those of  some related products. My understanding of an "exit" is that it 
is a point in the supplied product code where a customer might want to 
impose some logic which cannot be handled by supplying values to the 
product customisation parameters. This interpretation anyhow applies to the 
VTAM "exits".

Out of the abundant kindness of their hearts, VTAM developers have supplied 
*samples* for some - perhaps all by now - of the VTAM exits. In the case of 
the Configuration Services exit, ISTEXCCS, the *sample* exit was structured 
in such a way that the customer could supply a table in order to control what 
was anticipated to be a particular likely way that the exit would be used, the 
logic for which being reflected - obviously - in the coding of the supplied 
*sample* exit. Customers could certainly be excused thinking that the 
*sample* had a higher status than was originally intended by the extensive 
use of particularly this exit in SNA "how-to" redbooks.

Nevertheless, it was always my understanding that the purpose of those 
*sample* exits was to inspire a customer systems programmer in implementing 
his or her own exit according to any specific local requirements. In other 
words, the *sample* exit was *not* to be regarded as a part of the supplied 
product having the same status with regard to support as the rest.

Thus, given the assumptions above, it is no surprise to me that RACF have 
not "revisited" the supplied assumed to be *sample* exit in order to ensure it 
conforms to the best coding practices probably several years on from when it 
was first offered to no doubt grateful system programmers needing a bit of 
help to get them started with their own efforts.

Chris Mason

P.S. "Assembler Question" is a rather weak thread title[1] and, as may have 
been predicted, it has allowed enormous "drift". The main "branch" appears to 
have become yet another "memory lane" stroll with packed picnic hampers 
remembering the glorious summers of yesteryear ...

[1] About as weak as "USS Question" which - right on cue - appeared at 
about the same time as a thread where one poor confused soul was trying to 
reconcile "USS" meaning VTAM's "Unformatted System Services" with "UNIX 
System Services" - essentially how does the text string entered in the "USS 
screen" map to an assumed UNIX-style "executable"? - confusion worse 
confounded!

On Wed, 11 Feb 2009 19:28:56 -0500, Bill Planer  
wrote:

>Before IBM makes a hardware change that impacts the performance of 
BAL/BALR,
>perhaps they should scrape their macros clean of these instructions.  I just
>assembled an exit that uses the RACROUTE macro, and it still uses BALR 
(z/OS
>1.9).

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Clark Morris
On 16 Feb 2009 14:30:46 -0800, in bit.listserv.ibm-main you wrote:

>In , on 02/10/2009
>   at 11:52 PM, Clark Morris  said:
>
>>Thsey are able to run programs for which there is source in one of the
>>higher level languages (the B5000, B5500, B6500, etc. series machines
>>operating system was written in Algol).  Various upgrades have required
>>recompiles.
>
>The B1700, B2500 and B5000 architectures are dead. I'm not aware of any
>upgrade within the B6500 architecture that required a recompile.

As I understand it, some operating system upgrades have required
recompilations.  This is from reading postings on comp.lang.cobol.  I
THINK that the B5500/6500/etc. series is now the A series and that
this is a characteristic of how they do things. 
>
>And, yes, Ivan had the correct[1] companies for the BUNCH: Burroughs,
>UNIVAC, NCR, Control Data, Honeywell. I believe that the other two
>dwarves[2] were GE and RCA.
>
>[1] Other than capitalization.
>
>[2] IBM and the seven dwarves were not, however, the only companies
>making computers.
> 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Notice:

The information contained in this email message and any attached files may be 
confidential information, and may also be the subject of legal professional 
privilege. If you are not the intended recipient any use, disclosure or copying 
of this email is unauthorised. If you received this email in error, please 
notify the DEEWR Service Desk by calling 1300 305 520 and delete all copies of 
this transmission together with any attachments.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Paul Gilmartin
On Mon, 16 Feb 2009 17:52:02 -0500, Anne & Lynn Wheeler wrote:
>
>note that in that time-frame, (at least) both Wang and Bull contracted
>for rs/6000 to sell under their own label.
>
Aaah, that fits.  At one time we had a small herd of Bulls, running
BOS/X, which was represented to me as an AIX variant.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Notice:

The information contained in this email message and any attached files may be 
confidential information, and may also be the subject of legal professional 
privilege. If you are not the intended recipient any use, disclosure or copying 
of this email is unauthorised. If you received this email in error, please 
notify the DEEWR Service Desk by calling 1300 305 520 and delete all copies of 
this transmission together with any attachments.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In , on 02/16/2009
   at 09:27 PM, Clark Morris  said:

>As I understand it, some operating system upgrades have required
>recompilations.

Possibly, but that's a separate issue from recompilations due to changes
in the architecture.

>I THINK that the B5500/6500/etc. series is now the A series

B6500, yes, but the B5500 is part of a different family with a different
architecture, and it's been dead for decades.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Paul Gilmartin
On Mon, 16 Feb 2009 17:52:02 -0500, Anne & Lynn Wheeler wrote:
>
>note that in that time-frame, (at least) both Wang and Bull contracted
>for rs/6000 to sell under their own label.
>
Aaah, that fits.  At one time we had a small herd of Bulls, running
BOS/X, which was represented to me as an AIX variant.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Clark Morris
On 16 Feb 2009 14:30:46 -0800, in bit.listserv.ibm-main you wrote:

>In , on 02/10/2009
>   at 11:52 PM, Clark Morris  said:
>
>>Thsey are able to run programs for which there is source in one of the
>>higher level languages (the B5000, B5500, B6500, etc. series machines
>>operating system was written in Algol).  Various upgrades have required
>>recompiles.
>
>The B1700, B2500 and B5000 architectures are dead. I'm not aware of any
>upgrade within the B6500 architecture that required a recompile.

As I understand it, some operating system upgrades have required
recompilations.  This is from reading postings on comp.lang.cobol.  I
THINK that the B5500/6500/etc. series is now the A series and that
this is a characteristic of how they do things. 
>
>And, yes, Ivan had the correct[1] companies for the BUNCH: Burroughs,
>UNIVAC, NCR, Control Data, Honeywell. I believe that the other two
>dwarves[2] were GE and RCA.
>
>[1] Other than capitalization.
>
>[2] IBM and the seven dwarves were not, however, the only companies
>making computers.
> 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Anne & Lynn Wheeler
The following message is a courtesy copy of an article
that has been posted to bit.listserv.ibm-main,alt.folkore.computers as well.


bi...@mainstar.com (Bill Fairchild) writes:
> I should have checked Wiki_knows_all first.  
> http://en.wikipedia.org/wiki/BUNCH
>
> But there was a connection between BUNCH and the French Bull.  From
> that wiki article: "In 1991 Honeywell's computer division was sold to
> the French computer company Groupe Bull."

re:
http://www.garlic.com/~lynn/2009c.html#9 Assembler Question
http://www.garlic.com/~lynn/2009c.html#12 Assembler Question
http://www.garlic.com/~lynn/2009c.html#14 Assembler Question

note that in that time-frame, (at least) both Wang and Bull contracted
for rs/6000 to sell under their own label.

Also the Bull/Honeywell (world) services in Billerica was one of
the early HA/CMP installations ... misc. past posts mentioning ha/cmp
http://www.garlic.com/~lynn/subtopic.html#hacmp

current web site:
http://www.bull.us/bull_services/

-- 
40+yrs virtualization experience (since Jan68), online at home since Mar70

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In <1234388827.19101.65.ca...@chuck.duda.com>, on 02/11/2009
   at 04:47 PM, David Andrews  said:

>Was it KRONOS?

That came later. It would have to have been SIPROS or COS. CDC abandoned
SIPROS and COS eventually mutated into SCOPE and KRONOS (I'm not sure of
the spelling.)
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In <499329a7.4050...@valley.net>, on 02/11/2009
   at 02:40 PM, Gerhard Postpischil  said:

>It depends on your definition of mainframe and compatible. The  CDC 1604
>was an IBM 7094 look-alike,

You know better than that.

>differing primarily in
>using 1's complement arithmetic rather than 2's complement (sic)

Different instruction set, different number of index registers, different
word size, unable to combine index and indirect address, two instructions
per word, different interrupt and I/O system.

>using 1's complement arithmetic rather than 2's complement  (patent
>issues?)

Inheritance from UNIVAC. But the 7094 used sign-magnitude.

--
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see 
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In <94c476c03bff5e42ac3518fdac9643c4bdcdd49...@hqmail.rocketsoftware.com>,
on 02/11/2009
   at 10:36 AM, Bill Fairchild  said:

>But there was a connection between BUNCH and the French Bull.  From that
>wiki article:  "In 1991 Honeywell's computer division was sold to the
>French computer company Groupe Bull."

There was also a connection to the remaining two seven dwarves, sin
B.U.L.L. sold both GE[3] and RCA boxen under its own name.

[3] Via Honeywell.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In , on 02/11/2009
   at 10:05 AM, "(IBM Mainframe Discussion List)" 
said:

>I thought that the "C" in BUNCH was Compagnie des Machines  Bull. 

No; B.U.L.L. was a minor player at the time.

>CDC made mainframe-compatible disk drives, though, I think, but not
>central processors.

Sic transit gloria mundi. There was a time when CDC owned the high-end
market.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In , on 02/10/2009
   at 11:52 PM, Clark Morris  said:

>Thsey are able to run programs for which there is source in one of the
>higher level languages (the B5000, B5500, B6500, etc. series machines
>operating system was written in Algol).  Various upgrades have required
>recompiles.

The B1700, B2500 and B5000 architectures are dead. I'm not aware of any
upgrade within the B6500 architecture that required a recompile.

And, yes, Ivan had the correct[1] companies for the BUNCH: Burroughs,
UNIVAC, NCR, Control Data, Honeywell. I believe that the other two
dwarves[2] were GE and RCA.

[1] Other than capitalization.

[2] IBM and the seven dwarves were not, however, the only companies
making computers.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In <4990bad6.50...@vmfacility.fr>, on 02/10/2009
   at 12:23 AM, Ivan Warren  said:

>Please.. find *ONE* single architecture that's still capable of running
>programs written 45 years ago !

Would you settle for three? One from column BULL and two from column
Unisys.


In <4990c212.7040...@vmfacility.fr>, on 02/10/2009
   at 12:53 AM, Ivan Warren  said:

>And I still use 'BALR' because most of my work still involves 24
>AMODE/RMODE code ;)
 
That's a non sequitor; BAS and BASR work fine in 24-bit mode. Did you mean
that most of your work involves code that relies of the PM and ILC being
in the return register?

-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-16 Thread Shmuel Metz (Seymour J.)
In <45d79eacefba9b428e3d400e924d36b9019d0...@iwdubcormsg007.sci.local>, on
02/09/2009
   at 09:15 PM, "Thompson, Steve"  said:

>Is there any package - Besides Ada Lovelace's running on Babbage machine
>- that can run today on a +45 Year old machine :P

Yes.
 
-- 
 Shmuel (Seymour J.) Metz, SysProg and JOAT
 ISO position; see  
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Paul Gilmartin
On Wed, 11 Feb 2009 14:40:23 -0500, Gerhard Postpischil wrote:
>
>It depends on your definition of mainframe and compatible. The
>CDC 1604 was an IBM 7094 look-alike, differing primarily in
>using 1's complement arithmetic rather than 2's complement
>(patent issues?).
>
Just to clarify (you didn't say either way), the 7094 did not
use 2's complement arithmetic.

I assumed 1's complement was motivated by the desire to overload
boolean complement with arithmetic complement.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Bill Planer
Err, they were really very different.  The 709x had a 36-bit word, the 1604
a 48-bit word.  The instructions sets were totally different.  The 1604
packed two 24-bit instructions into each word.  I learned computing on a CDC
3600, which was an upwardly compatible successor to the 1604.

"Gerhard Postpischil"  wrote in message
news:<499329a7.4050...@valley.net>...
> Ted MacNEIL wrote:
> > Yes, they made processors; just not IBM-Compatable.
> 
> It depends on your definition of mainframe and compatible. The
> CDC 1604 was an IBM 7094 look-alike, differing primarily in 
> using 1's complement arithmetic rather than 2's complement 
> (patent issues?).
> 
> 
> Gerhard Postpischil
> Bradford, VT
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send 
> email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO 
> Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Bill Planer
Before IBM makes a hardware change that impacts the performance of BAL/BALR,
perhaps they should scrape their macros clean of these instructions.  I just
assembled an exit that uses the RACROUTE macro, and it still uses BALR (z/OS
1.9).

"Edward Jaffe"  wrote in message
news:<4990c116.5080...@phoenixsoftware.com>...
> Don Russell wrote:
> > I agree. I'm not advocating that BAL/BALR be dropped from the 
> > instruction set. I'm advocating that people stop using them in 
> > new/updated code.
> >   
> 
> IBM is scraping the bottom of the barrel looking for ways to improve
> performance. One way would be to offload processing for older, redundant 
> instructions or functions to millicode.
> 
> Indeed, there was even some talk a while ago about possibly converting
> BALR (specifically the parts of it that set the upper byte in 24-bit 
> mode) to millicode in order to save some System z chip "real estate".
> 
> I haven't coded a BALR for program linkage in decades. Up until a few
> years ago, I still used it on occasion to "sense" the current AMODE.
> 
> --
> Edward E Jaffe
> Phoenix Software International, Inc
> 5200 W Century Blvd, Suite 800
> Los Angeles, CA 90045
> 310-338-0400 x318
> edja...@phoenixsoftware.com
> http://www.phoenixsoftware.com/
> 
> --
> For IBM-MAIN subscribe / signoff / archive access instructions, send 
> email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO 
> Search the archives at http://bama.ua.edu/archives/ibm-main.html

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Patrick O'Keefe
On Wed, 11 Feb 2009 15:21:16 -0800, Scott Ford 
 wrote:

>...Control Data Corporation was CDC 
>...

>>I don't know what the "C" was for, but CDC ...

Uh, I meant the C in BUNCH, not the Cs in CDC, but I can see
how that might not have been completely clear.  I guess.

Pat O'Keefe

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Scott Ford
Control Data Corporation was CDC 
 
Scott J Ford

Pat,

Control Data Corporation was CDC 
 
Scott J Ford
 





From: Patrick O'Keefe 
To: IBM-MAIN@bama.ua.edu
Sent: Wednesday, February 11, 2009 4:32:36 PM
Subject: Re: Assembler Question

On Wed, 11 Feb 2009 10:05:27 EST, IBM Mainframe Discussion List 
 wrote:

>...
>I thought that the "C" in BUNCH was Compagnie des Machines  Bull.  
>CDC made mainframe-compatible disk drives, though, I think, but 
>not  central processors.
>...

I don't know what the "C" was for, but CDC definitely made 
computers in the 1960s.  There was a least a "6000 series".
The University of Washington had a CDC 6400 in the late '60s
as I recall.

Pat O'Keefe 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html





--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Anne & Lynn Wheeler
The following message is a courtesy copy of an article
that has been posted to bit.listserv.ibm-main,alt.foklore.computers as well.


patrick.oke...@wamu.net (Patrick O'Keefe) writes:
> I don't know what the "C" was for, but CDC definitely made 
> computers in the 1960s.  There was a least a "6000 series".
> The University of Washington had a CDC 6400 in the late '60s
> as I recall.

re:
http://www.garlic.com/~lynn/2009c.html#9 Assembler Question
http://www.garlic.com/~lynn/2009c.html#12 Assembler Question

control data corporation ...

there is folklore in the late 60s, about the cdc 6600 at berkeley having
a thermal problem a little after 10am tuesday mornings (???) and
shutting down.  After this happened some number of times ... they
basically isolated it to low water pressure to the datacenter cooling
system. Eventually identified: 1) tuesday(?) morning was when the grass
was being watered and 2) 10am(?) was class break ... with lots of
students heading to rest rooms & flushing. The combination was enough to
drop water pressue to datacenter cooling.

recent posts in related thread about liqued cooling:
http://www.garlic.com/~lynn/2009b.html#46 Z11 - Water cooling?
http://www.garlic.com/~lynn/2009b.html#77 Z11 - Water cooling?

note ... one of the litigation settlements was SBC (service bureau
corporation) going to CDC (there was also some number of employees that
filed legal actions about their change employments) ...  also mentioned
in CDC wiki page
http://en.wikipedia.org/wiki/Control_Data_Corporation

from above:

In the meantime, IBM announced a new version of the famed System/360, the
Model 92, which would be just as fast as CDC's 6600. This machine did
not exist, but its nonexistence did not stop sales of the 6600 from
drying up, while people waited for the release of the Model 92. Norris
did not take this tactic, dubbed as fear, uncertainty and doubt (FUD),
lying down, and in an antitrust suit against IBM a year later, he won
over 600 million dollars. He also picked up IBM's subsidiary Service
Bureau Corporation (SBC), which ran computer processing for other
corporations on its own computers. SBC fit nicely into CDC's existing
service bureau offerings.

... snip ...

during the morph from cp67 to vm370 ... there was first the transition
where the cp67 group split off from the science center ... and took
over the boston programming center on the 3rd flr of 545 tech sq
http://www.garlic.com/~lynn/subtopic.html#545tech

as the group outgrew the 3rd flr ... they moved out to the (vacant) SBC
bldg. in burlington mall.

They were there until a little after future system project being killed
http://www.garilc.com/~lynn/submain.html#futuresys

during the Future System phase ... lots of 370 product activity was
neglected (since FS was targeted as complelely replacing 370 ... in much
the same way that 360 had obsoleted previous computer generations). With
the death of FS ... there was a mad rush to get stuff back into the 370
product lines ... including a crash program for 370-xa. POK made the
business case that in order to make the mvs/xa product schedule ... they
needed all the people in the vm370 group ... shutdown burlington mall
location, move all the people to POK (and kill off the vm370 product).

Endicott eventually made the case to pick up the vm370 product mission
(but had to reconstitute a group from scratch).

for additional product drift ... the pre-occupation with Future System
... and neglecting 370 products ... contributed to clone processors in
getting market foothold ... slightly interesting, since Future System
was largely motivated as a countermeasure to clone controllers.

-- 
40+yrs virtualization experience (since Jan68), online at home since Mar70

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread David Andrews
On Wed, 2009-02-11 at 14:50 -0500, Gerhard Postpischil wrote:
> I remember it as CYPROS

Was it KRONOS?  Think PLATO used to run on that, too.  (But we digress!)

-- 
David Andrews
A. Duda and Sons, Inc.
david.andr...@duda.com

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Patrick O'Keefe
On Wed, 11 Feb 2009 10:05:27 EST, IBM Mainframe Discussion List 
 wrote:

>...
>I thought that the "C" in BUNCH was Compagnie des Machines  Bull.  
>CDC made mainframe-compatible disk drives, though, I think, but 
>not  central processors.
>...

I don't know what the "C" was for, but CDC definitely made 
computers in the 1960s.  There was a least a "6000 series".
The University of Washington had a CDC 6400 in the late '60s
as I recall.

Pat O'Keefe 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Anne & Lynn Wheeler
The following message is a courtesy copy of an article
that has been posted to bit.listserv.ibm-main,alt.folklore.computers as well.

peter.far...@broadridge.com (Farley, Peter x23353) writes:
> CDC certainly made processors.  DOD used CDC 6600's extensively for
> "defense" planning in the late 60's and 70's, as they were the fastest
> numerical/mathematical machines of their era.

re:
http://www.garlic.com/~lynn/2009c.html#9 Assembler Question

there are some old references about cray (and thornton) doing cdc 66000
... and then Cray left and formed Cray computer ... and Thornton left
and formed Network Systems Corporation. NSC was eventually bought
by STK ... which was subsequently acquired by SUN.

some past posts referencing my high-speed data transport (HSDT) project
where we used some number of NSC HYPERChannel boxes:
http://www.garlic.com/~lynn/subnetwork.html#hsdt

some part of 6600 past thread in a.f.c (with some references):
http://www.garlic.com/~lynn/2007t.html#73 Remembering the CDC 6600

6600 wiki page
http://en.wikipedia.org/wiki/CDC_6600

"Parallel operation in the Control Data 6600" (by Thornton)
http://research.microsoft.com/en-us/um/people/gbell/Computer_Structures__Readings_and_Examples/0509.htm

scan of Thornton's 6600 document on bitsave.org:
http://www.bitsavers.org/pdf/cdc/6x00/thornton_6600_paper.pdf

some specific posts mentioning Thornton:
http://www.garlic.com/~lynn/2002i.html#13 CDC6600 - just how powerful a machine 
was it?
http://www.garlic.com/~lynn/2005k.html#15 3705
http://www.garlic.com/~lynn/2005m.html#49 IBM's mini computers--lack thereof
http://www.garlic.com/~lynn/2005r.html#14 Intel strikes back with a parallel 
x86 design
http://www.garlic.com/~lynn/2005u.html#22 Channel Distances
http://www.garlic.com/~lynn/2008s.html#37 Is SUN going to become x86'ed ??
http://www.garlic.com/~lynn/2008s.html#38 Welcome to Rain Matrix: The Cloud 
Computing Network


-- 
40+yrs virtualization experience (since Jan68), online at home since Mar70

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Gerhard Postpischil

Farley, Peter x23353 wrote:

They had a really crappy OS (if you could even call it that), but they
excelled at what they were designed to do.


Which one did you think was crappy?  I ran on the CDC 6600 at 
ESSA, and about halfway through the contract they switched 
systems. (I remember it as CYPROS, but couldn't find any google 
or wikipedia references to it). I fondly remember the first 
version, that crashed whenever the printer ran out of paper.



Gerhard Postpischil
Bradford, VT

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Gerhard Postpischil

Ted MacNEIL wrote:

Yes, they made processors; just not IBM-Compatable.


It depends on your definition of mainframe and compatible. The 
CDC 1604 was an IBM 7094 look-alike, differing primarily in 
using 1's complement arithmetic rather than 2's complement 
(patent issues?).



Gerhard Postpischil
Bradford, VT

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Scott Ford
Wasn't Bull a service company ? I have been around computer 
Bill,

Wasn't Bull a service company ? I have been around computer service companies 
since I was a kid, Dad worked and retired from Unisys after 37 yrs, so a lot of 
these names are familiar.


Regards, 
Scott J Ford
www.identityforge.com
 





From: Bill Fairchild 
To: IBM-MAIN@bama.ua.edu
Sent: Wednesday, February 11, 2009 10:36:49 AM
Subject: Re: Assembler Question

From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Ed Finnell
Sent: Wednesday, February 11, 2009 10:24 AM
>>
_http://en.wikipedia.org/wiki/CDC_6000_series_ 
(http://en.wikipedia.org/wiki/CDC_6000_series) 

I should have checked Wiki_knows_all first.  http://en.wikipedia.org/wiki/BUNCH

But there was a connection between BUNCH and the French Bull.  From that wiki 
article:  "In 1991 Honeywell's computer division was sold to the French 
computer company Groupe Bull."

Ah, my synapses aren't what they use to be.

Bill Fairchild
Rocket Software

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html





--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Anne & Lynn Wheeler
The following message is a courtesy copy of an article
that has been posted to bit.listserv.ibm-main,alt.folklore.computers as well.


eamacn...@yahoo.ca (Ted MacNEIL) writes:
> I believe they stopped after 3350-compatible drives.  We were one of
> the last users in the Greater Toronto Area (Ontario Government) to
> migrate to 3380's.

> And, CDC didn't even participate in the RFP.
> It was just Amdahl, STK (as it was called back then), NAS & IBM.

there is the folklore about 200(?) or so disk engineers leaving San Jose
disk division over a period of time ... lots of going to Memorox to do
plug-compatible disk drives ... but some number of them going to other
places like CDC.

in the late 70s I was over in bldg. 28 ... working on various things
... like original relational/sql implementation ... some past posts
http://www.garlic.com/~lynn/submain.html#systemr

but they would also let me play disk engineer over in bldg. 14&15.
http://www.garlic.com/~lynn/submain.html#disk

I was getting ask to participat in some number of high level discussions
... including conferences with channel engineers in POK. I aksed why and
was told that those activities had previously been handled by various
senior engineers ... but so many had left over the previous ten yrs.

plug-compatible controllers & devices has been given as major motivation
for the Future System effort in the early 70s.
http://www.garlic.com/~lynn/submain.html#futuresys

couple old posts with various quotes/reference about FS
motivation/activity:
http://www.garlic.com/~lynn/2001f.html#33
http://www.garlic.com/~lynn/2008s.html#17

I was somewhat involved in clone controllers as undergraduate in the
60s. I tried to get the 2702 communications controller to do something
... which it could almost, only (i.e. NOT) do. This was some of the
motivation behind the university starting a clone controller project
using an Interdata/3; reverse engineering the 360 channel interface,
building channel interface board for the Interdata/3, and programming
the Interdata/3 to emulate 2702 (and do some additional stuff). This was
marketed by Interdata ... and then later when Perkin-Elmer bought
Interdata, marketed under the Perkin-Elmer name.

One of the big issues for 3370s & 3380s were new kind of (thin-film)
disk head (and possibly drop off in plug-compatible compitition
... although there was also pickup in disk market in other places
... like workstation and PCs).

Past posts mentioning "air-bearing" simulation as part of designing
thin-film/floating heads:
http://www.garlic.com/~lynn/2001n.html#39 195 was: Computer Typesetting Was: 
Movies with source code
http://www.garlic.com/~lynn/2005o.html#44 Intel engineer discusses their 
dual-core design
http://www.garlic.com/~lynn/2006c.html#6 IBM 610 workstation computer
http://www.garlic.com/~lynn/2006d.html#0 IBM 610 workstation computer
http://www.garlic.com/~lynn/2006d.html#14 IBM 610 workstation computer
http://www.garlic.com/~lynn/2006t.html#41 The Future of CPUs: What's After 
Multi-Core?
http://www.garlic.com/~lynn/2006u.html#18 Why so little parallelism?
http://www.garlic.com/~lynn/2006x.html#27 The Future of CPUs: What's After 
Multi-Core?
http://www.garlic.com/~lynn/2006x.html#31 The Future of CPUs: What's After 
Multi-Core?
http://www.garlic.com/~lynn/2007e.html#43 FBA rant
http://www.garlic.com/~lynn/2007f.html#46 The Perfect Computer - 36 bits?
http://www.garlic.com/~lynn/2007j.html#64 Disc Drives
http://www.garlic.com/~lynn/2007l.html#52 Drums: Memory or Peripheral?
http://www.garlic.com/~lynn/2008k.html#77 Disk drive improvements
http://www.garlic.com/~lynn/2008l.html#60 recent mentions of 40+ yr old 
technology

-- 
40+yrs virtualization experience (since Jan68), online at home since Mar70

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Ted MacNEIL
>But there was a connection between BUNCH and the French Bull.  From that wiki 
>article:  "In 1991 Honeywell's computer division was sold to the French 
>computer company Groupe Bull."

I seem to remember, it was a lot earlier than that (circa 1978).
Of course, I don't know which to trust the least -- my memory, or WIKI. (8-{]}

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Ted MacNEIL
>I thought that the "C" in BUNCH was Compagnie des Machines  Bull.

No, back then Honeywell was the H, until Bull bought them in the late 1970's.
I was still in University, then.
We had a Level 66, runing GCOS8.
The reps from Bull came in and changed all the labels on the machine, after the 
acquisition.

I used a Control Data Corporation (CDC), CYBER 6000, in high school taking a 
night school course run by McMaster University in 1972.

It ran FORTRAN in batch, and BASIC online.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Ted MacNEIL
>> CDC made mainframe-compatible disk drives, though, I think, but not
> central processors.

>Oh m'gosh, yes.  Look up Seymour Cray!

I think the key was 'mainframe-compatible'.
But, back then, everybody was calling their equipment 'mainframes'.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Ted MacNEIL
>> CDC made mainframe-compatible disk drives, though, I think, but not  
> central processors.

I believe they stopped after 3350-compatible drives.
We were one of the last users in the Greater Toronto Area (Ontario Government) 
to migrate to 3380's.
And, CDC didn't even participate in the RFP.
It was just Amdahl, STK (as it was called back then), NAS & IBM.

>I thought the C was CDC. They most certainly made processors.

Yes, they made processors; just not IBM-Compatable.

-
Too busy driving to stop for gas!

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Bill Fairchild
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On Behalf Of 
Ed Finnell
Sent: Wednesday, February 11, 2009 10:24 AM
>>
_http://en.wikipedia.org/wiki/CDC_6000_series_ 
(http://en.wikipedia.org/wiki/CDC_6000_series) 

I should have checked Wiki_knows_all first.  http://en.wikipedia.org/wiki/BUNCH

But there was a connection between BUNCH and the French Bull.  From that wiki 
article:  "In 1991 Honeywell's computer division was sold to the French 
computer company Groupe Bull."

Ah, my synapses aren't what they use to be.

Bill Fairchild
Rocket Software

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Farley, Peter x23353
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
> Behalf Of (IBM Mainframe Discussion List)
> Sent: Wednesday, February 11, 2009 10:05 AM
> To: IBM-MAIN@bama.ua.edu
> Subject: Re: Assembler Question
> 
> In a message dated 2/10/2009 11:25:27 P.M. Central Standard Time,
> cfmpub...@ns.sympatico.ca writes:
> 
> >(BUNCH - Burroughs Univac Ncr Cdc Honeywell -- if I remember
correctly).
> 
> I thought that the "C" in BUNCH was Compagnie des Machines  Bull.  CDC
> made mainframe-compatible disk drives, though, I think, but not
central
> processors.

CDC certainly made processors.  DOD used CDC 6600's extensively for
"defense" planning in the late 60's and 70's, as they were the fastest
numerical/mathematical machines of their era.

They had a really crappy OS (if you could even call it that), but they
excelled at what they were designed to do.

Peter
This message and any attachments are intended only for the use of the addressee 
and
may contain information that is privileged and confidential. If the reader of 
the 
message is not the intended recipient or an authorized representative of the
intended recipient, you are hereby notified that any dissemination of this
communication is strictly prohibited. If you have received this communication in
error, please notify us immediately by e-mail and delete the message and any
attachments from your system.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Ed Finnell
 
In a message dated 2/11/2009 9:06:17 A.M. Central Standard Time,  
dasdbi...@aol.com writes:

I thought that the "C" in BUNCH was Compagnie des Machines   Bull.  CDC made 
mainframe-compatible disk drives, though, I think,  but not  central 
processors.


>>
_http://en.wikipedia.org/wiki/CDC_6000_series_ 
(http://en.wikipedia.org/wiki/CDC_6000_series) 



Never laid hands on one, but did lots of Conversions(mostly  Fortran) for 
DOE.  



**The year's hottest artists on the red carpet at the Grammy 
Awards.  AOL Music takes you there. 
(http://music.aol.com/grammys?ncid=emlcntusmusi0002)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread David Andrews
On Wed, 2009-02-11 at 10:05 -0500, (IBM Mainframe Discussion List)
wrote:
> CDC made mainframe-compatible disk drives, though, I think, but not
> central processors.

Oh m'gosh, yes.  Look up Seymour Cray!

-- 
David Andrews
A. Duda and Sons, Inc.
david.andr...@duda.com

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread Bob Shannon
> CDC made mainframe-compatible disk drives, though, I think, but not  
> central processors.

I thought the C was CDC. They most certainly made processors.

Bob Shannon

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-11 Thread (IBM Mainframe Discussion List)
 
 
In a message dated 2/10/2009 11:25:27 P.M. Central Standard Time,  
cfmpub...@ns.sympatico.ca writes:

>(BUNCH - Burroughs Univac Ncr Cdc Honeywell -- if I remember  correctly).



I thought that the "C" in BUNCH was Compagnie des Machines  Bull.  CDC made 
mainframe-compatible disk drives, though, I think, but not  central processors.
 
Bill  Fairchild
Rocket Software
**The year's hottest artists on the red carpet at the Grammy 
Awards.  AOL Music takes you there. 
(http://music.aol.com/grammys?ncid=emlcntusmusi0002)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question - AMODE=24

2009-02-11 Thread Scott Ford
I am the started writing Assembler on a 360/20I have seen
Gil --

I am the started writing Assembler on a 360/20I have seen BASR and know how 
it is used but dont use it
much at all.
 
Scott J Ford
www.identityforge.com
 





From: Gilbert Saint-Flour 
To: IBM-MAIN@bama.ua.edu
Sent: Tuesday, February 10, 2009 10:24:21 AM
Subject: Re: Assembler Question - AMODE=24

On Tuesday 10 February 2009 15:50, Gilbert Saint-Flour wrote:

> And, almost always, I code BAL/BALR and rarely BAS/BASR.
> I started coding assembler on a 360/20 in 1972, so call that an old habit.

The 360/20 was a 16-bit machine which had BAS/BASR, which I used a lot at the 
time.  The 360/20 did not have BAL/BALR which I started to use on 370 systems 
in 1975.  IIRC, early 370 systems didn't have BAS/BASR, which were added to 
XA systems.  Sorry for the error. 

-- 
Gilbert Saint-Flour
GSF Software
http://gsf-soft.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html





--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Clark Morris
On 9 Feb 2009 15:33:19 -0800, in bit.listserv.ibm-main you wrote:

>-Original Message-
>From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
>Behalf Of Ivan Warren
>Sent: Monday, February 09, 2009 5:23 PM
>To: IBM-MAIN@bama.ua.edu
>Subject: Re: Assembler Question
>
>Hopefully..
>
>BAL/BALR will still be around.. It's been around since S/360 and it's
>here to stay.
>
>That's the power of the architecture..
>
>Please.. find *ONE* single architecture that's still capable of running
>programs written 45 years ago !
>
>
>
>Discussed this very thing with a person who used to work on Burroughs
>systems.
>
>Seems that UNISYS systems that are patterned after the Burroughs
>machines are able to run programs that old. Not sure about the UNIVAC
>side of the house. 
>
>Seems that the BUNCH had a common idea at some point of protecting the
>investment that their clients made in software.

Thsey are able to run programs for which there is source in one of the
higher level languages (the B5000, B5500, B6500, etc. series machines
operating system was written in Algol).  Various upgrades have
required recompiles.  On the other hand, COBOL 74 is still supported
for that series of machines which I believe is now the A series.
>
>(BUNCH - Burroughs Univac Ncr Cdc Honeywell -- if I remember correctly).
>
>Regards,
>Steve Thompson
>
>PS. BAS and BASR were implemented on the S/360-20. Because it only had
>16 bit registers, not the full 32 of its bigger siblings.
>
>-- Opinions posted by this poster may not be those of poster's employer.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Farley, Peter x23353
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
> Behalf Of Edward Jaffe
> Sent: Tuesday, February 10, 2009 11:22 AM
> To: IBM-MAIN@bama.ua.edu
> Subject: Re: Assembler Question
> 
> Edward Jaffe wrote:
> > ... My programs use base registers only for constants, literals and
> > working storage--not code.
> 
> For more information on this topic, see
> http://ew.share.org/proceedingmod/abstract.cfm?abstract_id=17758

Thanks Ed, that is a very helpful presentation.

Peter


This message and any attachments are intended only for the use of the addressee 
and
may contain information that is privileged and confidential. If the reader of 
the 
message is not the intended recipient or an authorized representative of the
intended recipient, you are hereby notified that any dissemination of this
communication is strictly prohibited. If you have received this communication in
error, please notify us immediately by e-mail and delete the message and any
attachments from your system.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question - AMODE=24

2009-02-10 Thread Thomas H Puddicombe
360/20 (vintage 1970) didn't have BAL/BALR instructions, it had BAS/BASR.

Tom Puddicombe
Mainframe Performance & Capacity Planning
CSC

71 Deerfield Rd, Meriden, CT 06450
ITIS | (860) 428-3252 | tpudd...@csc.com | www.csc.com

This is a PRIVATE message. If you are not the intended recipient, please 
delete without copying and kindly advise us by e-mail of the mistake in 
delivery. 
NOTE: Regardless of content, this e-mail shall not operate to bind CSC to 
any order or other contract unless pursuant to explicit written agreement 
or government initiative expressly permitting the use of e-mail for such 
purpose.



Gilbert Saint-Flour  
Sent by: IBM Mainframe Discussion List 
02/10/2009 09:49 AM
Please respond to
IBM Mainframe Discussion List 


To
IBM-MAIN@bama.ua.edu
cc

Subject
Re: Assembler Question - AMODE=24






LINKINST was added to the CALL macro in 1997 (OS/390 R2). 
Frankly, I don't remember ever noticing it, let alone using it.

What I remember is what I went through when I started to work in XA in 
1988/1989 and ESA in 1991.  I started to modify programs which were all 
AMODE=24 to switch to AMODE=31, like I saw the SDSF code do in ISFSRC. 
A few months later, I realised that it would be better to write AMODE=ANY 
code 
which CALLs AMODE=ANY sub-routines which switch to AMODE=24 when they have 
to 
(mostly GET/PUT, READ/WRITE), and made appropriate changes in sub-routines 

for them to work in MVS/370, MVS/XA and MVS/ESA.  So, for the last 20 
years, 
I used this type of approach in most of my assembler code and don't care 
about what's available to switch AMODE in MVS, VM and VSE. 

In 2003, I realised that it was unlikely that my programs would ever have 
to 
work in a system older than DFSMS/MVS, so I removed all the AMODE=24 code 
from GET/PUT, READ/WRITE sub-routines. 

I don't think I ever used SYSSTATE or made much difference between BASR 
and 
BALR and can't imagine why someone would worry about this in 2009. 
The only thing I remember is the problem about 24-bit address constants in 

various control-blocks (DCB, RB, SWA, ...) which many of my programs and 
sub-routines have to deal with. 

And, almost always, I code BAL/BALR and rarely BAS/BASR. 
I started coding assembler on a 360/20 in 1972, so call that an old habit.

-- 
 Gilbert Saint-Flour
 GSF Software
 http://gsf-soft.com/

On Tuesday 10 February 2009 14:53, Farley, Peter x23353 wrote:

>> -Original Message-
>> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
>> Behalf Of Edward Jaffe
>> Sent: Monday, February 09, 2009 6:50 PM
>> To: IBM-MAIN@bama.ua.edu
>> Subject: Re: Assembler Question
> 
>> I haven't coded a BALR for program linkage in decades. Up until a few
>> years ago, I still used it on occasion to "sense" the current AMODE.
> 
> Indeed, and do you then always use the LINKINST=BASR keyword on the CALL
> macro to force the macro not to use BALR?  What do you do about the WTO
> macro which always generates a BAL around the message text? Etc., etc.,
> pick your system macro and observe the BAL/R's and other ancient
> instructions all over the place.
> 
> 
> I am occasionally somewhat peeved at IBM for failing to provide 
different,
> non-24-bit macro expansions when the programmer goes to the trouble of
> coding SYSSTATE ARCHLVL=2 (or any other mechanism they might care 
> to invent). 
> 
> Even GET/PUT could use BASR, AFAIK, unless they too are using the BALR
> to detect AMODE.  Which ought to be documented, if true.
> 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Edward Jaffe

Edward Jaffe wrote:
... My programs use base registers only for constants, literals and 
working storage--not code.


For more information on this topic, see 
http://ew.share.org/proceedingmod/abstract.cfm?abstract_id=17758


--
Edward E Jaffe
Phoenix Software International, Inc
5200 W Century Blvd, Suite 800
Los Angeles, CA 90045
310-338-0400 x318
edja...@phoenixsoftware.com
http://www.phoenixsoftware.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Edward Jaffe

Farley, Peter x23353 wrote:

-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Edward Jaffe
Sent: Monday, February 09, 2009 6:50 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Assembler Question

 
  

I haven't coded a BALR for program linkage in decades. Up until a few
years ago, I still used it on occasion to "sense" the current AMODE.



Indeed, and do you then always use the LINKINST=BASR keyword on the CALL
macro to force the macro not to use BALR?


I don't count macro-generated BALRs among the BALRs I've coded. A macro 
interface is decided by its service provider. My macros use BASR or BASSM.



What do you do about the WTO
macro which always generates a BAL around the message text? Etc., etc.,
pick your system macro and observe the BAL/R's and other ancient
instructions all over the place.
  


I assemble with SYSSTATE ARCHLVL=1 or SYSSTATE ARCHLVL=2. I do not 
assemble with SYSSTATE ARCHLVL=0. My programs use base registers only 
for constants, literals and working storage--not code. I would know 
right away if a macro generated a B or BAL. FYI, on my system WTO 
generates this:


34384  WTO   'I am here'
34386+ CNOP  0,4
34387+ BRAS  1,IHB4648A   BRANCH AROUND MESSAGE
34388+ DCAL2(13)  TEXT LENGTH
34389+ DCB''  MCSFLAGS
34390+ DCC'I am here' MESSAGE TEXT
34391+IHB4648A DS0H
34392+ SVC   35   ISSUE SVC 35

For more ancient macros, I often use IEABRCX PUSH/POP to change B and 
BAL/BAS to J and JAS just for the "problem" macro. For example:


IEABRCX ENABLEEnable B-to-J conversion
PUSH  ACONTROLSave ACONTROL status
ACONTROL FLAG(NOSUBSTR)   Don't flag substring errors
CALLTSSR EP=IKJPARS,  Invoke TSO/E parse routine
  MF=(E,PPL)  (same)
POP   ACONTROLRestore ACONTROL status
IEABRCX DISABLE   Disable B-to-J conversion

--
Edward E Jaffe
Phoenix Software International, Inc
5200 W Century Blvd, Suite 800
Los Angeles, CA 90045
310-338-0400 x318
edja...@phoenixsoftware.com
http://www.phoenixsoftware.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question - AMODE=24

2009-02-10 Thread Gilbert Saint-Flour
On Tuesday 10 February 2009 15:50, Gilbert Saint-Flour wrote:

> And, almost always, I code BAL/BALR and rarely BAS/BASR.
> I started coding assembler on a 360/20 in 1972, so call that an old habit.

The 360/20 was a 16-bit machine which had BAS/BASR, which I used a lot at the 
time.  The 360/20 did not have BAL/BALR which I started to use on 370 systems 
in 1975.  IIRC, early 370 systems didn't have BAS/BASR, which were added to 
XA systems.  Sorry for the error. 

-- 
 Gilbert Saint-Flour
 GSF Software
 http://gsf-soft.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question - AMODE=24

2009-02-10 Thread Thompson, Steve
-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Gilbert Saint-Flour
Sent: Tuesday, February 10, 2009 8:49 AM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Assembler Question - AMODE=24



And, almost always, I code BAL/BALR and rarely BAS/BASR.  
I started coding assembler on a 360/20 in 1972, so call that an old
habit.



And BAL/BALR were macros that generated BAS/BASR, at least on the
CPS/TPS system I was using.

Regards,
Steve Thompson

-- Opinions expressed by poster may or may not be the opinions of
poster's employer. --

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question - AMODE=24

2009-02-10 Thread Gilbert Saint-Flour
LINKINST was added to the CALL macro in 1997 (OS/390 R2).  
Frankly, I don't remember ever noticing it, let alone using it.

What I remember is what I went through when I started to work in XA in 
1988/1989 and ESA in 1991.  I started to modify programs which were all 
AMODE=24 to switch to AMODE=31, like I saw the SDSF code do in ISFSRC.  
A few months later, I realised that it would be better to write AMODE=ANY code 
which CALLs AMODE=ANY sub-routines which switch to AMODE=24 when they have to 
(mostly GET/PUT, READ/WRITE), and made appropriate changes in sub-routines 
for them to work in MVS/370, MVS/XA and MVS/ESA.  So, for the last 20 years, 
I used this type of approach in most of my assembler code and don't care 
about what's available to switch AMODE in MVS, VM and VSE.  

In 2003, I realised that it was unlikely that my programs would ever have to 
work in a system older than DFSMS/MVS, so I removed all the AMODE=24 code 
from GET/PUT, READ/WRITE sub-routines.  

I don't think I ever used SYSSTATE or made much difference between BASR and 
BALR and can't imagine why someone would worry about this in 2009.   
The only thing I remember is the problem about 24-bit address constants in 
various control-blocks (DCB, RB, SWA, ...) which many of my programs and 
sub-routines have to deal with.   

And, almost always, I code BAL/BALR and rarely BAS/BASR.  
I started coding assembler on a 360/20 in 1972, so call that an old habit.

-- 
 Gilbert Saint-Flour
 GSF Software
 http://gsf-soft.com/

On Tuesday 10 February 2009 14:53, Farley, Peter x23353 wrote:

>> -Original Message-
>> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
>> Behalf Of Edward Jaffe
>> Sent: Monday, February 09, 2009 6:50 PM
>> To: IBM-MAIN@bama.ua.edu
>> Subject: Re: Assembler Question
> 
>> I haven't coded a BALR for program linkage in decades. Up until a few
>> years ago, I still used it on occasion to "sense" the current AMODE.
> 
> Indeed, and do you then always use the LINKINST=BASR keyword on the CALL
> macro to force the macro not to use BALR?  What do you do about the WTO
> macro which always generates a BAL around the message text? Etc., etc.,
> pick your system macro and observe the BAL/R's and other ancient
> instructions all over the place.
> 
> 
> I am occasionally somewhat peeved at IBM for failing to provide different,
> non-24-bit macro expansions when the programmer goes to the trouble of
> coding SYSSTATE ARCHLVL=2 (or any other mechanism they might care 
> to invent). 
> 
> Even GET/PUT could use BASR, AFAIK, unless they too are using the BALR
> to detect AMODE.  Which ought to be documented, if true.
> 

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Thomas H Puddicombe
BAS/BASR worked just fine on 360/20 (in 16-bit mode).  Who's living in the 
past?


Tom Puddicombe
Mainframe Performance & Capacity Planning
CSC

71 Deerfield Rd, Meriden, CT 06450
ITIS | (860) 428-3252 | tpudd...@csc.com | www.csc.com

This is a PRIVATE message. If you are not the intended recipient, please 
delete without copying and kindly advise us by e-mail of the mistake in 
delivery. 
NOTE: Regardless of content, this e-mail shall not operate to bind CSC to 
any order or other contract unless pursuant to explicit written agreement 
or government initiative expressly permitting the use of e-mail for such 
purpose.



Don Russell  
Sent by: IBM Mainframe Discussion List 
02/09/2009 07:02 PM
Please respond to
IBM Mainframe Discussion List 


To
IBM-MAIN@bama.ua.edu
cc

Subject
Re: Assembler Question






On Mon, Feb 9, 2009 at 3:53 PM, Ivan Warren  wrote:

>
>>  And I still use 'BALR' because most of my work still involves 24
> AMODE/RMODE code ;)
>

BAS/BASR work fine in 24 bit mode too. Stop living in the past. ;-) (Just
teasing)

Do you use the linkage information in the high byte?

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-10 Thread Farley, Peter x23353
> -Original Message-
> From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
> Behalf Of Edward Jaffe
> Sent: Monday, February 09, 2009 6:50 PM
> To: IBM-MAIN@bama.ua.edu
> Subject: Re: Assembler Question
 
> I haven't coded a BALR for program linkage in decades. Up until a few
> years ago, I still used it on occasion to "sense" the current AMODE.

Indeed, and do you then always use the LINKINST=BASR keyword on the CALL
macro to force the macro not to use BALR?  What do you do about the WTO
macro which always generates a BAL around the message text? Etc., etc.,
pick your system macro and observe the BAL/R's and other ancient
instructions all over the place.


I am occasionally somewhat peeved at IBM for failing to provide
different, non-24-bit macro expansions when the programmer goes to the
trouble of coding SYSSTATE ARCHLVL=2 (or any other mechanism they might
care to invent).

Even GET/PUT could use BASR, AFAIK, unless they too are using the BALR
to detect AMODE.  Which ought to be documented, if true.


Peter
This message and any attachments are intended only for the use of the addressee 
and
may contain information that is privileged and confidential. If the reader of 
the 
message is not the intended recipient or an authorized representative of the
intended recipient, you are hereby notified that any dissemination of this
communication is strictly prohibited. If you have received this communication in
error, please notify us immediately by e-mail and delete the message and any
attachments from your system.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Thompson, Steve
-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Ivan Warren
Sent: Monday, February 09, 2009 6:30 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Assembler Question

Gerhard Postpischil wrote:
>
> Babbage's Analytical Engine? 
>

ok.. lemme rephrase this !

Is there any package - Besides Ada Lovelace's running on Babbage machine
- that can run today on a +45 Year old machine :P


That would possibly be MVS 3.8J. I'm not sure if DOS/360 is still
available. The Hercules crowd would know about that.

I think someone still has a S/370 Basic copy of WYLBUR, but I'm not sure
about that either.

The IESRPG for OS/MVT is still available (RPG not RPGII).

Or did I miss what you are getting at still?

Regards,
Steve Thompson

-- Opinions expressed by poster may not reflect poster's employer's
opinions. --

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Steve Comstock

Ivan Warren wrote:

Don Russell wrote:

BAS/BASR work fine in 24 bit mode too. Stop living in the past. ;-) (Just
teasing)

Do you use the linkage information in the high byte?

  

I *HAVE* to live in the past.. S/370 to us is the only option. The
powers that be leave us no choice !

--Ivan

(If you're wondering about the cryptic message above, do not hesitate to
ask me)


Well, I'm curious. Tell me. Off-list if you prefer.



Kind regards,

-Steve Comstock
The Trainer's Friend, Inc.

303-393-8716
http://www.trainersfriend.com

  z/OS Application development made easier
* Our classes include
   + How things work
   + Programming examples with realistic applications
   + Starter / skeleton code
   + Complete working programs
   + Useful utilities and subroutines
   + Tips and techniques

==> Check out the Trainer's Friend Store to purchase z/OS  <==
==> application developer toolkits. Sample code in four<==
==> programming languages, JCL to Assemble or compile, <==
==> bind and test. <==
==>   http://www.trainersfriend.com/TTFStore/index.html<==

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Paul Gilmartin
On Mon, 9 Feb 2009 14:24:12 -0800, Don Russell wrote:
>
>That sounds like the subroutine was trying to be bi-modal, and probably used
>BSM to return. If it were called via BAL, the "addressing mode" bit in the
>return register is not reliable for determining address mode when the caller
>is in 24 bit mode. BAL sets the two high order bits of the regsiter to
>B'10', an ILC of 2. However, if the  caller were in 24 bit mode,  a BSM Rx
>would then incorrectly set the amode to 31 because the high-order bit is on.
>
>i.e. BSM may be used to return from calls via BAS, BASR, BASSM and BALR when
>the caller is in either 24 or 31 bit mode, but from BAL only if the caller
>is in 31 bit mode.
>
I did something like that in the Bad Old Days when access methods needed
to be called in 24-bit mode.  IIRC (vaguely):

Entry Code:

 STM
 BALR  0,0
 LTR   0,0
* if entered in 31-bit mode, BSM to enter 24-bit mode.
* if entered in 24-bit mode, clear the top bit of R14
* in the RSA.

Exit code:

 LM
 LTR   R14,R14
 BNMR  R14
 BSMR  R14

... runs in 24 bit mode on either architecture; never issues a
BSM to cause an instruction exception on 370.

-- gil

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Gerhard Postpischil wrote:


Babbage's Analytical Engine? 



ok.. lemme rephrase this !

Is there any package - Besides Ada Lovelace's running on Babbage machine
- that can run today on a +45 Year old machine :P

--Ivan

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Edward Jaffe

Ivan Warren wrote:

Edward Jaffe wrote:


I haven't coded a BALR for program linkage in decades. Up until a few 
years ago, I still used it on occasion to "sense" the current AMODE.



And I still use 'BALR' because most of my work still involves 24
AMODE/RMODE code ;)


Why not BASR? You mean you actually *want* to worry about the ILC, 
condition code and program mask in the upper byte?


--
Edward E Jaffe
Phoenix Software International, Inc
5200 W Century Blvd, Suite 800
Los Angeles, CA 90045
310-338-0400 x318
edja...@phoenixsoftware.com
http://www.phoenixsoftware.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Gerhard Postpischil

Ivan Warren wrote:

Please.. find *ONE* single architecture that's still capable of running
programs written 45 years ago !


Babbage's Analytical Engine? 


Gerhard Postpischil
Bradford, VT

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Don Russell wrote:

BAS/BASR work fine in 24 bit mode too. Stop living in the past. ;-) (Just
teasing)

Do you use the linkage information in the high byte?

  

I *HAVE* to live in the past.. S/370 to us is the only option. The
powers that be leave us no choice !

--Ivan

(If you're wondering about the cryptic message above, do not hesitate to
ask me)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Don Russell
On Mon, Feb 9, 2009 at 3:53 PM, Ivan Warren  wrote:

>
>>  And I still use 'BALR' because most of my work still involves 24
> AMODE/RMODE code ;)
>

BAS/BASR work fine in 24 bit mode too. Stop living in the past. ;-) (Just
teasing)

Do you use the linkage information in the high byte?

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Don Russell wrote:

Well, good luck with your SIO instructions there. ;-)

  
I said BC mode.. Never said Pre-XA ! (all I said is that a z/Arch PSW is 
no longer an EC mode PSW since the E bit in the PSW is 0 in z/Arch (lest 
you want an early Specification Exception to occur))


(However, some virtualization solutions with 370ACCOM will allow SIOs !)

--Ivan

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Don Russell
On Mon, Feb 9, 2009 at 3:40 PM, Ivan Warren  wrote:

> Don Russell wrote:
>
>> BC mode PSWs are no longer supported, so if you are still running ACP 9 or
>> TPF 1.0 you have some old hardware indeed. ;-)
>>
>>
>>
> The fact is..
>
> A z/Arch PSW is a BC mode PSW ;) (E bit is 0 !)


Well, good luck with your SIO instructions there. ;-)

I think your argument is what might be called a "straw man". Pre-ESA the
BC/EC mode was used to change between 360 and 370 mode. 360 mode is gone
now, though I suppose some 360 applications would continue to run. But not
programs that depend on the architecture. SIO vs SSCH for example.

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Edward Jaffe wrote:


I haven't coded a BALR for program linkage in decades. Up until a few 
years ago, I still used it on occasion to "sense" the current AMODE.



And I still use 'BALR' because most of my work still involves 24
AMODE/RMODE code ;)

--Ivan

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Edward Jaffe

Don Russell wrote:

I agree. I'm not advocating that BAL/BALR be dropped from the instruction
set. I'm advocating that people stop using them in new/updated code.
  


IBM is scraping the bottom of the barrel looking for ways to improve 
performance. One way would be to offload processing for older, redundant 
instructions or functions to millicode.


Indeed, there was even some talk a while ago about possibly converting 
BALR (specifically the parts of it that set the upper byte in 24-bit 
mode) to millicode in order to save some System z chip "real estate".


I haven't coded a BALR for program linkage in decades. Up until a few 
years ago, I still used it on occasion to "sense" the current AMODE.


--
Edward E Jaffe
Phoenix Software International, Inc
5200 W Century Blvd, Suite 800
Los Angeles, CA 90045
310-338-0400 x318
edja...@phoenixsoftware.com
http://www.phoenixsoftware.com/

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Don Russell wrote:

BC mode PSWs are no longer supported, so if you are still running ACP 9 or
TPF 1.0 you have some old hardware indeed. ;-)

  

The fact is..

A z/Arch PSW is a BC mode PSW ;) (E bit is 0 !)

--Ivan

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Don Russell
On Mon, Feb 9, 2009 at 3:23 PM, Ivan Warren  wrote:

> Hopefully..
>
> BAL/BALR will still be around.. It's been around since S/360 and it's
> here to stay.
>
> That's the power of the architecture..
>
> Please.. find *ONE* single architecture that's still capable of running
> programs written 45 years ago !
>


I agree. I'm not advocating that BAL/BALR be dropped from the instruction
set. I'm advocating that people stop using them in new/updated code.

BC mode PSWs are no longer supported, so if you are still running ACP 9 or
TPF 1.0 you have some old hardware indeed. ;-)

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Thompson, Steve
-Original Message-
From: IBM Mainframe Discussion List [mailto:ibm-m...@bama.ua.edu] On
Behalf Of Ivan Warren
Sent: Monday, February 09, 2009 5:23 PM
To: IBM-MAIN@bama.ua.edu
Subject: Re: Assembler Question

Hopefully..

BAL/BALR will still be around.. It's been around since S/360 and it's
here to stay.

That's the power of the architecture..

Please.. find *ONE* single architecture that's still capable of running
programs written 45 years ago !



Discussed this very thing with a person who used to work on Burroughs
systems.

Seems that UNISYS systems that are patterned after the Burroughs
machines are able to run programs that old. Not sure about the UNIVAC
side of the house. 

Seems that the BUNCH had a common idea at some point of protecting the
investment that their clients made in software.

(BUNCH - Burroughs Univac Ncr Cdc Honeywell -- if I remember correctly).

Regards,
Steve Thompson

PS. BAS and BASR were implemented on the S/360-20. Because it only had
16 bit registers, not the full 32 of its bigger siblings.

-- Opinions posted by this poster may not be those of poster's employer.
--

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Ivan Warren

Hopefully..

BAL/BALR will still be around.. It's been around since S/360 and it's
here to stay.

That's the power of the architecture..

Please.. find *ONE* single architecture that's still capable of running
programs written 45 years ago !

--Ivan

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Don Russell
On Mon, Feb 9, 2009 at 12:38 PM, John McKown  wrote:

> On Mon, 9 Feb 2009 12:19:53 -0800, Don Russell 
> wrote:
>
> >BAL was  pretty much obsolete when IPM came into existance. Unless of
> course
> >your code had to run on an old box. I have not come across an instance yet
> >when I needed BAL, and often use OPSYN to map BAL/R to BAS/R.
> >If I REALLY need BAL/R, I'll code a  DC X'45' or DC X'05' and add a
> comment
> >saying I really, really need BAL/R here...
> >
>
> I have a very vague memory of one subroutine which was written to be
> sensitive to whether it was invoked via a BAL or a BALR instruction. It
> looked at the ILC in the "link register" and set a flag depending on
> whether
> the ILC was 1 (BALR) or 2 (BAL). Of course, it only worked in AMODE(24), so
> it not really very useful anymore.
>

That sounds like the subroutine was trying to be bi-modal, and probably used
BSM to return. If it were called via BAL, the "addressing mode" bit in the
return register is not reliable for determining address mode when the caller
is in 24 bit mode. BAL sets the two high order bits of the regsiter to
B'10', an ILC of 2. However, if the  caller were in 24 bit mode,  a BSM Rx
would then incorrectly set the amode to 31 because the high-order bit is on.

i.e. BSM may be used to return from calls via BAS, BASR, BASSM and BALR when
the caller is in either 24 or 31 bit mode, but from BAL only if the caller
is in 31 bit mode.


BAL and BALR still work in 31 bit mode, they just behave differently than in
24 bit mode. (which is one of the reasons to stop using it). If all you care
about is the address following BAL/BALR, AMODE doesn't matter. If you care
about the linkage information BAL sets in 24 bit mode, then yes, you need to
update your code to use IPM if you want it to work in 31 (or 64) bit mode.



Don

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread Don Russell
BAL was  pretty much obsolete when IPM came into existance. Unless of course
your code had to run on an old box. I have not come across an instance yet
when I needed BAL, and often use OPSYN to map BAL/R to BAS/R.
If I REALLY need BAL/R, I'll code a  DC X'45' or DC X'05' and add a comment
saying I really, really need BAL/R here...

I would also opt for the immiediate-type instructions instead of referencing
separate storage locations...

i.e. LHI R5,L'BUFFER
or LHI R6,-2

They're faster because they don't require additional memory fetches...  and
they're "nicer" because if you look at a dump or object code, you can see
the operand right in the instruction. In many cases their use eliminates
literals.

I favor the branch-relative instructions (Jxxx mnemonics) where possible to
reduce base register needs (sometimes) and, I suppose they're faster because
they simply add the displacement to the currect PSW without all that adding,
checking if index or base reg are zero etc.


Don



On Fri, Feb 6, 2009 at 9:43 AM, Ward, Mike S  wrote:

> Hello, all I have a question. I was just looking through the principle
> of ops guide on an instruction I had a question on and noticed a BAS
> instruction. I started reading about it and noticed that it said we
> should use the BAS, BASR type of instructions instead of the BAL and
> BALR types. I won't bore you with the details. My question is: Is there
> a list of recommended instructions that we should be using instead of
> the old instructions we had been using?
>
> ==
> This email and any files transmitted with it are confidential and intended
> solely for the use of the individual or entity
> to which they are addressed. If you have received this email in error
> please notify the system manager. This message
> contains confidential information and is intended only for the individual
> named. If you are not the named addressee you
> should not disseminate, distribute or copy this e-mail. Please notify the
> sender immediately by e-mail if you
> have received this e-mail by mistake and delete this e-mail from your
> system. If you are not the intended recipient
> you are notified that disclosing, copying, distributing or taking any
> action in reliance on the contents of this
> information is strictly prohibited.
>
>
> --
> For IBM-MAIN subscribe / signoff / archive access instructions,
> send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
> Search the archives at http://bama.ua.edu/archives/ibm-main.html
>

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: Assembler Question

2009-02-09 Thread John McKown
On Mon, 9 Feb 2009 12:19:53 -0800, Don Russell  wrote:

>BAL was  pretty much obsolete when IPM came into existance. Unless of course
>your code had to run on an old box. I have not come across an instance yet
>when I needed BAL, and often use OPSYN to map BAL/R to BAS/R.
>If I REALLY need BAL/R, I'll code a  DC X'45' or DC X'05' and add a comment
>saying I really, really need BAL/R here...
>

I have a very vague memory of one subroutine which was written to be
sensitive to whether it was invoked via a BAL or a BALR instruction. It
looked at the ILC in the "link register" and set a flag depending on whether
the ILC was 1 (BALR) or 2 (BAL). Of course, it only worked in AMODE(24), so
it not really very useful anymore.

--
John

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Assembler Question

2009-02-06 Thread Ward, Mike S
Hello, all I have a question. I was just looking through the principle
of ops guide on an instruction I had a question on and noticed a BAS
instruction. I started reading about it and noticed that it said we
should use the BAS, BASR type of instructions instead of the BAL and
BALR types. I won't bore you with the details. My question is: Is there
a list of recommended instructions that we should be using instead of
the old instructions we had been using? 

==
This email and any files transmitted with it are confidential and intended 
solely for the use of the individual or entity
to which they are addressed. If you have received this email in error please 
notify the system manager. This message
contains confidential information and is intended only for the individual 
named. If you are not the named addressee you
should not disseminate, distribute or copy this e-mail. Please notify the 
sender immediately by e-mail if you
have received this e-mail by mistake and delete this e-mail from your system. 
If you are not the intended recipient
you are notified that disclosing, copying, distributing or taking any action in 
reliance on the contents of this
information is strictly prohibited.


--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@bama.ua.edu with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


Re: assembler question (strong typing)

2006-12-21 Thread Paul Gilmartin
In a recent note, "Shmuel Metz (Seymour J.)" said:

> Date: Tue, 19 Dec 2006 19:36:40 -0500
> 
> I've written programs where the lower bound was negative. Yes, the
> code was clearer that way than it would have otherwise been.
> 
Heck, I've written programs in Rexx and awk (others might use perl)
where the subscripts aren't even numeric.  And the code was much
clearer that way than it would have otherwise been.  (Except to
programmers who have never before encountered the construct.)

-- gil
-- 
StorageTek
INFORMATION made POWERFUL

--
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html


  1   2   3   >