Page 1 of 3

Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 5:17 am
by RISCCISCInstSet
PAYROLL  SETUP 
         OPEN  (INPUT,(INPUT),PRINTER,(OUTPUT)) 
READLOOP DS    0H 
         GET   INPUT,INREC 
    Â     MVC   PRNTLINE,=CL133' '
      Â Â Â MVC   OUTNUM,INNUM 
         MVC   PAY,=X'5C202020206B2021204B2020'
         PACK  GROSS,INCOME 
    Â     PACK  DEDUCT,DED 
      Â Â Â SP    GROSS,DEDUCT 
         BM    NEGATIVE 
         ED    PAY, GROSS 
    Â     


         ZAP   MUL,DEDUCT
         MP    MUL,DEDUCT

         ZAP   MUL,GROSS 
         MP    MUL,D
   
         ZAP   MUL,GROSS 
         MP    MUL,INREC
   
         ZAP   SUB,DEDUCT
         MP    SUB,INREC
         B     *+10
         
READLOOP DS    0H 
         GET    INPUT,INREC 
         MVC   PRNTLINE,=CL133' '
         MVC   OUTNUM,INNUM 
         MVC   PAY,=X'5C202020206B2021204B2020'
         PACK  GROSS,INCOME 
         PACK  DEDUCT,DED 
         SP    GROSS,DEDUCT 
         BC    4,NEGATIVE 
         ED    PAY, GROSS 
         B     PRINT
 
NEGATIVE DS    0H 
         MVC   PAY,=CL12'NEGATIVE'
PRINT    DS    0H 
         PUT   PRINTER,PRNTLINE 
         B     READLOOP
   
NEGATIVE DS    0H 
      Â Â Â MVC   PAY,=CL12'NEGATIVE'
         PUT   PRINTER,PRNTLINE 
         B     READLOOP 
         payroll program 
ENDDATA  DS    0H 
         CLOSE  (INPUT,,PRINTER) 
         ENDIT 

* 
GROSS    DS    PL5 
DEDUCT   DS    PL5 
INREC    DS    CL26
D        DC    P'4'
INNUM    EQU   INREC,8 
INCOME   EQU   INREC+9,8 
DED      EQU   INREC+18,8 
PRNTLINE DS    CL133 
OUTNUM   EQU   PRNTLINE+1,8 
PAY      EQU   PRNTLINE+10,12 

INPUT    DCB   DDNAME=PAYIN,                                                 X 
               DSORG=PS,                                                     X 
               EODAD=ENDDATA,                                                X 
               LRECL=26,                                                     X 
               MACRF=(GM),                                                   X 
               RECFM=FB 
PRINTER  DCB   BLKSIZE=1330,                                                 X 
             Â  DDNAME=REPORT,                                                X 

               DSORG=PS,                                                     X
               LRECL=133,                                                    X 
               MACRF=(PM),                                                   X 
               RECFM=FBA 
         END   PAYROLL


I'm trying to straighten out the above code to make it work. can you give some explanations of the errors such that I can correct my program?

17:45:27 Payroll   MZ390 START USING z390 V1.5.05 ON J2SE 1.6.0_29 11/06/11
17:45:27 Payroll   MZ390 MZ390E abort 223 file=1 line=83 batch assemblies not supported
17:45:27 Payroll   AZ390 AZ390E error  29         (1/1)1   PAYROLL  SETUP 
17:45:27 Payroll   AZ390 AZ390I ERRSUM missing macro =  SETUP 
17:45:27 Payroll   AZ390 AZ390E error 196         (1/2)2   Â         OPEN  (INPUT,(INPUT),PRINTER,(OUTPUT)) 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  51         (1/3)3   READLOOP DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid dc type -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/4)4     Â       GET   INPUT,INREC 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/5)5   Â    Â     MVC   PRNTLINE,=CL133' '
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/6)6   Â      Â Â Â MVC   OUTNUM,INNUM 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/7)7   Â         MVC   PAY,=X'5C202020206B2021204B2020'
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/8)8     Â       PACK  GROSS,INCOME 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196         (1/9)9   Â    Â     PACK  DEDUCT,DED 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/10)10   Â      Â Â Â SP    GROSS,DEDUCT 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/11)11   Â         BM    NEGATIVE 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/12)12     Â       ED    PAY, GROSS 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/13)13   Â    Â     
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 198       (1/16)14            ZAP   MUL,DEDUCT
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/17)15            MP    MUL,DEDUCT
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/19)16            ZAP   MUL,GROSS 
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/20)17            MP    MUL,D
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/22)18            ZAP   MUL,GROSS 
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/23)19            MP    MUL,INREC
17:45:27 Payroll   AZ390 AZ390I symbol not defined MUL
17:45:27 Payroll   AZ390 AZ390E error 198       (1/25)20            ZAP   SUB,DEDUCT
17:45:27 Payroll   AZ390 AZ390I symbol not defined SUB
17:45:27 Payroll   AZ390 AZ390E error 198       (1/26)21            MP    SUB,INREC
17:45:27 Payroll   AZ390 AZ390I symbol not defined SUB
17:45:27 Payroll   AZ390 AZ390E error  35       (1/27)22            B     *+10
17:45:27 Payroll   AZ390 AZ390I expression parsing error
17:45:27 Payroll   AZ390 AZ390E error 196       (1/29)23   READLOOP DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/30)24   Â         GET    INPUT,INREC 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/31)25   Â         MVC   PRNTLINE,=CL133' '
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/32)26   Â         MVC   OUTNUM,INNUM 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/33)27   Â         MVC   PAY,=X'5C202020206B2021204B2020'
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/34)28   Â         PACK  GROSS,INCOME 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/35)29   Â         PACK  DEDUCT,DED 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/36)30   Â         SP    GROSS,DEDUCT 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/37)31   Â         BC    4,NEGATIVE 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/38)32   Â         ED    PAY, GROSS 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/39)33   Â         B     PRINT
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  71       (1/40)34   Â    
17:45:27 Payroll   AZ390 AZ390I missing opcode -     
17:45:27 Payroll   AZ390 AZ390E error  51       (1/41)35   NEGATIVE DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid dc type -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/42)36   Â         MVC   PAY,=CL12'NEGATIVE'
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/43)37   PRINT    DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/44)38   Â         PUT   PRINTER,PRNTLINE 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/45)39     Â       B     READLOOP
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/46)40     Â 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  51       (1/47)41   NEGATIVE DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid dc type -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/48)42   Â      Â Â Â MVC   PAY,=CL12'NEGATIVE'
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/49)43   Â         PUT   PRINTER,PRNTLINE 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/50)44     Â       B     READLOOP 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/51)45   Â         payroll program 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  51       (1/52)46   ENDDATA  DS    0H 
17:45:27 Payroll   AZ390 AZ390I invalid dc type -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/53)47   Â         CLOSE  (INPUT,,PRINTER) 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/54)48   Â         ENDIT 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/57)50   GROSS    DS    PL5 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  29       (1/58)51   DEDUCT   DS    PL5 
17:45:27 Payroll   AZ390 AZ390I ERRSUM missing macro =   DS
17:45:27 Payroll   AZ390 AZ390E error 196       (1/59)52   INREC    DS    CL26
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error 196       (1/61)54   INNUM    EQU   INREC,8 
17:45:27 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:27 Payroll   AZ390 AZ390E error  29       (1/62)55   INCOME   EQU   INREC+9,8 
17:45:27 Payroll   AZ390 AZ390I ERRSUM missing macro =   EQU 
17:45:28 Payroll   AZ390 AZ390E error 196       (1/63)56   DED      EQU   INREC+18,8 
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -    
17:45:28 Payroll   AZ390 AZ390E error 196       (1/64)57   PRNTLINE DS    CL133 
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error  29       (1/65)58   OUTNUM   EQU   PRNTLINE+1,8 
17:45:28 Payroll   AZ390 AZ390I ERRSUM missing macro =  EQU 
17:45:28 Payroll   AZ390 AZ390E error 196       (1/66)59   PAY      EQU   PRNTLINE+10,12 
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/68)60   INPUT    DCB   DDNAME=PAYIN,                
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/69)61   Â               DSORG=PS,           
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/70)62   Â               EODAD=ENDDATA,          
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/71)63   Â               LRECL=26,           
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/72)64   Â               MACRF=(GM),          
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/73)65   Â               RECFM=FB 
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error  29       (1/74)66   PRINTER  DCB   BLKSIZE=1330,                
17:45:28 Payroll   AZ390 AZ390I ERRSUM missing macro =  DCB
17:45:28 Payroll   AZ390 AZ390E error 196       (1/75)67   Â             Â  DDNAME=REPORT,          
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/77)68         Â         DSORG=PS,           
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/78)69   Â               LRECL=133,           
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/79)70         Â         MACRF=(PM),           
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E error 196       (1/80)71   Â               RECFM=FBA 
17:45:28 Payroll   AZ390 AZ390I invalid character in opcode -  
17:45:28 Payroll   AZ390 AZ390E ERRSUM Critical Error Summary Option
17:45:28 Payroll   AZ390 AZ390E ERRSUM Fix and repeat until all nested errors resolved
17:45:28 Payroll   AZ390 AZ390E ERRSUM missing macro = SETUP 
17:45:28 Payroll   AZ390 AZ390E ERRSUM missing macro =  DS
17:45:28 Payroll   AZ390 AZ390E ERRSUM missing macro =  EQU 
17:45:28 Payroll   AZ390 AZ390E ERRSUM missing macro = EQU 
17:45:28 Payroll   AZ390 AZ390E ERRSUM missing macro = DCB
17:45:28 Payroll   AZ390 AZ390E ERRSUM total missing   copy   files =0
17:45:28 Payroll   AZ390 AZ390E ERRSUM total missing   macro  files =5
17:45:28 Payroll   AZ390 AZ390E ERRSUM total undefined symbols      =2
17:45:28 Payroll   AZ390 AZ390E ERRSUM total mz390 errors    = 1
17:45:28 Payroll   AZ390 AZ390E ERRSUM total az390 errors    = 69
17:45:28 Payroll   AZ390 AZ390I FID=  1 ERR=  70 c:\Program Files\Automated Software Tools\z390\CS4321\Payroll.MLC
17:45:28 Payroll   MZ390 ENDED   RC=16 SEC= 0 MEM(MB)= 43 IO=410

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 7:56 am
by RISCCISCInstSet
Update: The first error was resolved.

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 9:59 am
by RISCCISCInstSet
Update: I'm using an online z/OS system; I'm dealing with the error: "specify or update the user macro in the HLAsm parser" with regards to "HELLOWLD SETUP" or "XNAME SETUP." I'd like to understand how to work with this? :?:

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 2:08 pm
by enrico-sorichetti
Update: I'm using an online z/OS system; I'm dealing with the error: "specify or update the user macro in the HLAsm parser" with regards to "HELLOWLD SETUP" or "XNAME SETUP." I'd like to understand how to work with this?


17:45:27 Payroll   MZ390 START USING z390 V1.5.05 ON J2SE 1.6.0_29 11/06/11

1) NO you are not using an online z/OS system, You are messing around with the z390 assembler by Don Higgins on Your PC

17:45:27 Payroll   AZ390 AZ390I ERRSUM missing macro =  SETUP

2) the message tells that the SETUP macro is missing and that should be enough to hint on how to proceed
easy to understand if You had cared to read and tried to understand what z390 was telling You
naturally it easier to sit and wait lazily for somebody to spoon fedd You the solution
-- unfortunately nobody around will make the f***ing setup macro available

the issue here is not the z390 behavior, but Your complete lack of reasonable/basic skills and You wishy-washy thinking
-- even reading and understanding...
-- You were not even able to post correctly about Your <working> environment
-- what happened to make change Your deductions from the other posts ( z390 vs. online zOS ) ?

You were given already the answers to Your problems, but it seems that You are unable
to reason and deduct proper actions out of them

meditate a career/hobby shift to a less intellectual demanding activity :evil:

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 2:46 pm
by enrico-sorichetti
follow on
as already explained in the replies to Your previous whinings on almost the same issues
Your program is badly formatted
and also the ENDIT macro is missing

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 9:39 pm
by RISCCISCInstSet
Treat others positively and with respect. Flaming other members or other forums will lead to a warning, possibly even a ban. Be patient and help others if you can.


You seem to be really pushing it. There is a rule against flaming, (which includes repeated flaming). Maybe you have a justification for breaking the rules? Something about how much I suck?

Re: Problem Code (Assembly)

PostPosted: Mon Nov 07, 2011 10:12 pm
by enrico-sorichetti
There is a rule against flaming, (which includes repeated flaming). Maybe you have a justification for breaking the rules?


if You honestly review and meditate on ...
Your whole sequence of questions,
the answers You received,
the time for the testing and experimenting done on Your behalf,
the time spent explaining things that You refuse to understand and build on...
You will see that the flaming is more than justified

Something about how much I suck?

Your behavior and Your lack of effort suck :evil:

for example any reason to start a new topic to find out about the SETUP macro ?
there are also (unwritten) rule about trying to use Your brain to follow on the answers You receive
and repeatedly posting questions on the same overall issues
( all Your posts were delaing with missing macros and badly formatted input sources )

all Your questions furthermore have nothing to do with assembler itself, but are simply related to the environment You are messing with

Re: Problem Code (Assembly)

PostPosted: Tue Nov 08, 2011 3:17 am
by RISCCISCInstSet
Back on topic:

If I used the rules at http://publib.boulder.ibm.com/infocenter/wdzinfo/v7r0/index.jsp?topic=/com.ibm.ent.asm.zos.doc/topics/fn1lrmst45.htm, why does the assembler give me the corresponding error anyway? :|

Re: Problem Code (Assembly)

PostPosted: Tue Nov 08, 2011 4:14 am
by enrico-sorichetti
Do You realize that ...
You are not using the IBM HLASM ? but the z390 Portable Mainframe Assembler and Emulator on a PC :evil:

what do we have to do to make You understand that Your program is badly formatted!
( does not respect the HLASM rules )

on a PC what You see is not always what is written on disk...
if Your editor is using tabs You will see things properly aligned, but the z390 assembler will read garbage
just disable all the tabs conversion i Your editor

furthermore a cut and paste of the program You posted appears to have the continuation indicator in column 78 instead of column 72
at line 52 there is the spurious string payroll program

Re: Problem Code (Assembly)

PostPosted: Tue Nov 08, 2011 4:15 am
by Robert Sample
If I used the rules at http://publib.boulder.ibm.com/infocente ... rmst45.htm, why does the assembler give me the corresponding error anyway?
Because you are not using the IBM mainframe Assembler. You are using an emulation of the IBM mainframe Assembler. Perhaps you should read the z390 documentation to find the appropriate format and how to get rid of the error message?