User Tools

Site Tools


ibm:vm370-lib:macro:dmsert.macro_src

DMSERT Source

References

Source Listing

DMSERT.MACRO.txt
  1. MACRO 00001000
  2. DMSERT &CSECT 00002000
  3. PUSH PRINT 00002200
  4. AIF ('&SYSPARM' NE 'SUP').ACC01 00002400
  5. PRINT OFF,NOGEN 00002600
  6. .ACC01 ANOP 00002800
  7. AIF (NOT('&CSECT' EQ 'CSECT' OR '&CSECT' EQ 'TEST')).D 00003000
  8. ENTRY DMSERT 00004000
  9. DMSERT DS 0D 00005000
  10. AIF ('&CSECT' EQ 'CSECT').C 00006000
  11. ERDSECT EQU * 00007000
  12. AGO .C 00008000
  13. .D ANOP 00009000
  14. ERDSECT DSECT 00010000
  15. .C ANOP 00011000
  16. SPACE 00012000
  17. * WORK AREA FOR DMSERR ERROR HANDLING ROUTINE. 00013000
  18. SPACE 00014000
  19. ERT1 DS D DOUBLE-WORD WORKSPACE 00015000
  20. ERT2 DS 2D TWO DOUBLE-WORDS WORKSPACE 00016000
  21. SPACE 00017000
  22. * SAVE AREA 00018000
  23. ERSAVE DS 16F 00019000
  24. ERPAS13 DS 18F PASS THIS SAVE AREA IN REG 13 *00020000
  25. TO BALR'ED-TO ROUTINES 00021000
  26. SPACE 00022000
  27. * RECONSTRUCTED PLIST AREA 00023000
  28. ERPF1 DS B FIRST FLAG BYTE 00024000
  29. ERF1TX EQU X'80' TEXT ADDRESS IN PLIST 00025000
  30. ERF1HD EQU X'40' HEADER IN PLIST 00026000
  31. ERF1BF EQU X'20' BUFFER ADDRESS IN PLIST 00027000
  32. ERF1SB1 EQU X'10' ONE SUBSTITUTION 00028000
  33. ERF1SBN EQU X'08' MULTIPLE SUBSTITUTIONS (> 1) 00029000
  34. SPACE 00030000
  35. ERPF2 DS B SECOND FLAG BYTE 00031000
  36. ERF2CM EQU X'80' BLANK COMPRESSION WANTED 00032000
  37. ERF2DT EQU X'40' DOT AT END OF LINE WANTED 00033000
  38. ERF2DI EQU X'20' 'DIE = YES' WANTED 00034000
  39. * LAST THREE BITS INDICATE 'DISP' FIELD 00035000
  40. ERF2ER EQU 0 ERRMSG 00036000
  41. ERF2TY EQU 1 TYPE 00037000
  42. ERF2SI EQU 2 SIO 00038000
  43. ERF2NO EQU 3 NONE 00039000
  44. ERF2PR EQU 4 PRINT 00040000
  45. ERF2CP EQU 5 CPCOMM 00041000
  46. SPACE 00042000
  47. ERPTXA DS A TEXT ADDRESS 00043000
  48. ERPHDR DS 0CL6 ERROR MESSAGE HEADER 00044000
  49. ERPNUM DS H MESSAGE NUMBER 00045000
  50. ERPLET DS C MESSAGE LETTER 00046000
  51. ERPCS DS CL3 CSECT NAME 00047000
  52. ERPBFA DS A BUFFER ADDRESS (FOR 'BUFFA') 00048000
  53. SPACE 2 00049000
  54. * FIELDS FOR SUBSTITUTIONS 00050000
  55. ERPSBA DS A POINTER TO FIRST (NEXT) GROUP OF*00051000
  56. SUB PARAMS IN ORIGINAL PLIST 00052000
  57. ERSBD DS A DATA ADDR/VALUE OR CURRENT SUB 00053000
  58. SPACE 00054000
  59. ERSBF DS B SUB FLAG BYTE FOR CURRENT SUB 00055000
  60. ERSFLST EQU X'80' THE LAST SUBSTITUTION PARAM 00056000
  61. ERSFA EQU X'40' 'A'-TYPE OPTION 00057000
  62. ERSFL EQU X'20' LENGTH SPECIFIED 00058000
  63. * LAST THREE BITS GIVE OPTION TYPE 00059000
  64. ERSFH EQU 0 HEX OR HEXA 00060000
  65. ERSFD EQU 1 DEC OR DECA 00061000
  66. ERSFC EQU 2 CHARA 00062000
  67. ERSFH4 EQU 3 HEX4A 00063000
  68. ERSFC8 EQU 4 CHAR8A 00064000
  69. ERSBL DS X SUB LENGTH BYTE FOR CURRENT SUB 00065000
  70. SPACE 00066000
  71. ERSSZ DS A SIZE OF SUB FIELD (# DOTS - 1) 00067000
  72. SPACE 2 00068000
  73. * MESSAGE CONSTRUCTION AREA 00069000
  74. DS D NEED DOUBLE WORD BEFORE TEXT 00070000
  75. ERMESS DC C'DMS' FIRST LETTERS OF HEADER 00071000
  76. ERSECT DC C'MMM' DSECT NAME 00072000
  77. ERNUM DC C'NNN' MESSAGE NUMBER 00073000
  78. ERLET DC C'L' MESSAGE LEVEL LETTER 00074000
  79. ERBL DC C' ' BLANK 00075000
  80. ERTSIZE EQU 130 MAX TEXT SIZE 00076000
  81. ERTEXT DS (ERTSIZE+1)C MESSAGE TEXT AREA 00077000
  82. SPACE 2 00078000
  83. * 'TYPLIN'/'PRINTR' PLIST CONSTRUCTION AREA 00079000
  84. DS 0F 00080000
  85. ERTPL DC CL8'TYPLIN' 00081000
  86. ERTPLA DS AL1(1),AL3 (ERMESS) MESSAGE TEXT ADDR 00082000
  87. ERTPLL DS C'R',AL3 MESSAGE LENGTH 00083000
  88. EJECT 00084000
  89. POP PRINT 00084100
  90. MEND 00085000
ibm/vm370-lib/macro/dmsert.macro_src.txt ยท Last modified: 2023/08/06 13:38 by Site Administrator