SHARE
TWEET

Untitled

a guest Nov 19th, 2014 329 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.                         REG
  2. TABLE           DSECT
  3. TITLE           DS              CL5
  4. ORDERNUM        DS              CL8
  5. COST            DS              CL4
  6. TABLENTR        DS              0H
  7. TITLENTR        DS              CL15
  8. ORDERNUMNT      DS              CL6
  9. COSTNTR         DS              CL6
  10. LTBLENTRY       EQU             *-TABLENTR
  11.                         DS              (4*LTBLENTRY)CL1
  12. LTABLE          EQU             *-TABLE
  13. CNTELTBL        EQU             LTABLE/LTBLENTRY
  14. MAIN            CSECT
  15.                         STM             R14,R12,R12(R13)
  16.                         LR              R12,R15
  17.                         USING   MAIN,R12
  18.                         ST              R13,SAVE+4
  19.                         LA              R11,SAVE
  20.                         L               R11,8(R13)
  21.                         OPEN    (IN,(INPUT))
  22.                         OPEN    (OUT,(OUTPUT))
  23.                         LA              R7,WTABLE
  24.                         USING   TABLE,R7
  25.                         LA              R2,CNTELTBL
  26.                         MVC             TITLE,=C'TITLE'
  27.                         MVC             ORDERNUM,=C'ORDERNUM'
  28.                         MVC             COST,=C'COST'
  29. LOOP            EQU             *
  30.                         MVI             LINE,C' '
  31.                         MVC             LINE+1(L'LINE-1),LINE
  32.                         GET             IN,INLINE
  33.                         MVC     TITLENTR,LINE
  34.                         MVI             LINE,C' ' '
  35.                         MVC             LINE+1(L'LINE-1),LINE
  36.                         GET             IN,INLINE
  37.                         TRT     LINE(6),TESTNUM
  38.                         BZ              ORDER_OR
  39.                         MVC     ORDERNUMNT(5),=C'ERROR'
  40.                         B               READCOST
  41. ORDER_OK        EQU             *
  42.                         MVC     ORDERNUMNT,LINE
  43. READCOST        EQU             *
  44.                         MVI     LINE,C' '
  45.                         MVC             LINE+1(L'LINE-1),LINE
  46.                         GET             IN,INLINE
  47.                         TRT     LINE(3),TESTNUM
  48.                         BZ              COST_OK
  49.                         MVC     COSTNTR(5),=C'ERROR'
  50.                         B               NEXTNTR
  51. COST_OK         EQU     *
  52.                         LA              R7,LTBLENTRY(,R7)
  53.                         BCT     R2,LOOP
  54. EOF             EQU     *
  55.                         LA              R7,WTABLE
  56.                         USING   TABLE,R7
  57.                         LA              R2,CNTELTBL
  58.                         MVC     LINETITLE(L'TITLE),TITLE
  59.                         MVC     LINEORDER(L'ORDERNUM),ORDERNUM
  60.                         MVC     LINECOST(L'COST),COST
  61.                         PUT     OUT,OUTLINE
  62. WHILEOUT        EQU             *
  63.                         MVI     LINETITLE,C' '
  64.                         MVC     LINETITLE+1(L'LINETITLE-1),LINETITLE
  65.                         MVI     LINEORDER,C' '
  66.                         MVC     LINEORDER+1(L'LINEORDER-1),LINEORDER
  67.                         MVI     LINECOST,C' '
  68.                         MVC     LINECOST+1(L'LINECOST-1),LINECOST
  69.                         MVC     LINETITLE(L'TITLENTR),TITLENTR
  70.                         MVC     LINEORDER(L'ORDERNUMNT),ORDERNUMNT
  71.                         MVC     LINECOST(L'COSTNTR),COSTNTR
  72.                         PUT             OUT,OUTLINE
  73.                         LA              R7,LTBLENTRY(,R7)
  74.                         BCT     R2,WHILEOUT
  75.                         CLOSE   OUT
  76.                         CLOSE   IN
  77.                         L               R13,SAVE+4
  78.                         LM              R14,R12,R12(R13)
  79.                         LA              R15,0
  80.                         BR              R14
  81. TESTNUM         DC              256X'FF'
  82.                         ORG     TESTNUM+X'F0'
  83.                         DC              10X'00'
  84.                         ORG
  85. WTABLE          DS              (LTABLE)CL1
  86. INLINE          DS              0CL80
  87. LINE            DS              CL20
  88.                         DS      CL60' '
  89. SAVE            DS              18F
  90. OUTLINE         DS              0CL80
  91. LINETITLE       DS              CL20
  92.                         DC              CL6' '
  93. LINEORDER       DS              CL20
  94.                         DS              CL6' '
  95. LINECOST        DS              CL20
  96.                         DC              CL8' '
  97. OUT             DCB     DDNAME=FOUT,DSORG=PS,MACRF=PM,LRECL=80
  98. IN                      DCB             DDNAME=FIN,DSORG=PS,MACRF=GM,LRECL=80,EODAD=EOF
  99.                         LTORG
  100.                         END             MAIN
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
Top