User Tools

Site Tools


cdc:nos2.source:nam5871:xclost

XCLOST

Table Of Contents

Source Code

XCLOST.txt
  1. *DECK XCLOST
  2. IDENT XCLOST
  3. EXT XTRACE
  4. EXT OMSG
  5. *IF DEF,IMS
  6. *#
  7. *1DC XCLOST
  8. *
  9. * 1. PROC NAME AUTHOR DATE
  10. * XCLOST P.C.TAM 78/09/12
  11. *
  12. * 2. FUNCTIONAL DESCRIPTION.
  13. * FLUSH ZZZZZDN CIO BUFFER, AND CLOSE THE FILE
  14. *
  15. * 3. METHOD USED.
  16. * IF NO I/O ERROR ON FILE,
  17. * EXECUTE WRITER MACRO TO FLUSH CIO BUFFER AND WRITE EOR.
  18. * IF I/O ERROR ON FILE,
  19. * CALL OMSG TO ISSUE DAYFILE MESSAGE.
  20. *
  21. *
  22. * 4. ENTRY PARAMETERS.
  23. * (A1) ADDRESS OF THE ADDRESS OF FET
  24. *
  25. * 5. EXIT PARAMETERS.
  26. * NONE.
  27. *
  28. * 6. COMMON DECKS CALLED.
  29. * CYBERDEFS INPARU MACDEF BPIPBUF
  30. *
  31. * 7. ROUTINES CALLED.
  32. * OMSG ISSUE DAYFILE MESSAGE
  33. * XTRACE TRACE CALLER
  34. *
  35. * 8. DAYFILE MESSAGES.
  36. * " CIO ERROR NNB, LFN = ZZZZZDN."
  37. *
  38. * W A R N I N G - THIS ROUTINE IS LOADED WITH XENDNAM, XTERMST,
  39. * OR WITH XENDRPV, XTERMST. THE SUM OF XENDNAM
  40. * XTERMST, XCLOST, OR OF XENDRPV, XTERMST, XCLOST
  41. * CANNOT EXCEED THE SIZE OF PRIMARY OVERLAY
  42. *CALL OPSIZE
  43. *#
  44. *ENDIF
  45. *CALL MACDEF
  46. *CALL CYBERDEFS
  47. *CALL INPARU
  48.  
  49. XCL1 IFEQ ZZDN,1
  50.  
  51. ENTRY XCLOST
  52.  
  53. XCLOST SUBR = ENTRY/EXIT
  54.  
  55. SX6 A1 ADDRESS OF PARAMETER BLOCK
  56. SA6 TEMP SAVE ADDRESS OF PARAMETER BLOCK IN TEMP
  57.  
  58. IFEQ DEBUG,1,4
  59. SX1 XXCLOST
  60. RJ XTRACE
  61. SA1 TEMP
  62. SA1 X1
  63.  
  64. MX4 5 MASK FOR ABNORMAL TERMINATION FIELD IN FET
  65. SA2 X1 X2 = FIRST WORD OF FET
  66. LX4 9+5 SHIFT MASK TO POSITION OF ABNORMAL TERM FLD
  67. BX5 X4*X2 EXTRACT ABNORMAL TERMINATION FIELD FROM FET
  68. NZ X5,XCLOSTX IF I/O ERROR HAS OCCURRED ON FILE
  69.  
  70. WRITER X1,R
  71. SA1 TEMP X1 = ADDRESS OF PARAMETER BLOCK
  72. SA1 X1 X1 = ADDRESS OF FET
  73. MX4 5 MASK FOR ABNORMAL TERMINATION FIELD IN FET
  74. SA2 X1 X2 = FIRST WORD OF FET
  75. LX4 9+5 SHIFT MASK TO POSITION OF ABNORMAL TERM FLD
  76. BX5 X4*X2 EXTRACT ABNORMAL TERMINATION FIELD FROM FET
  77. ZR X5,XCLOSTX IF NO I/O ERROR OCCURRED ON FILE
  78.  
  79. MX0 3 MASK FOR ONE OCTAL DIGIT
  80. AX5 9 RIGHT JUSTIFY ABNORMAL TERM CODE
  81. LX0 3 RIGHT JUSTIFY OCTAL DIGIT MASK
  82. SA2 ERRMSGC X2 = WORD OF DAYFILE MSG TO CONTAIN CODE
  83. BX4 X0*X5 EXTRACT LEAST SIGNIFICANT DIGIT
  84. AX5 3 EXTRACT MOST SIGNIFICANT DIGIT
  85. SX4 X4+33B CONVERT OCTAL DIGIT TO OCTAL DISPLAY
  86. SX5 X5+33B CONVERT OCTAL DIGIT TO OCTAL DISPLAY
  87. LX5 6 SHIFT MOST SIG DIGIT TO 2ND DIGIT POS
  88. MX0 12D MASK FOR ABNORMAL TERM FIELD IN DAY MSG
  89. BX5 X5+X4 ABNORMAL TERM CODE IN OCTAL DISPLAY CODE
  90. LX0 42D+12D SHIFT MASK TO ABNORMAL TERM FIELD POSITION
  91. LX5 42D SHIFT DISPLAY CODE NO TO DAY MSG POSITION
  92. BX0 -X0*X2 CLEAR ABNORMAL TERM CODE FIELD IN DAY MSG
  93. BX6 X0+X5 ADD ABNORMAL TERM CODE TO DAY MSG
  94. SA6 A2
  95. SA1 LOCMSG A1 = ADDRESS OF PARAMETER BLOCK
  96. RJ OMSG ISSUE DAYFILE MESSAGE
  97.  
  98. EQ XCLOSTX RETURN
  99. SAVEA1 BSS 1
  100.  
  101. ERRMSG DIS ,* CIO ERROR NNB, LFN = ZZZZZDN.*
  102. ERRMSGC EQU ERRMSG+2 WORD TO CONTAIN ABNORMAL TERM CODE
  103.  
  104. LOCMSG VFD 60D/ERRMSG LOCATION OF DAYFILE MESSAGE
  105.  
  106. XCL1 ENDIF
  107.  
  108. XXCLOST DATA L*XCLOS*
  109. TEMP BSS 1
  110. END
cdc/nos2.source/nam5871/xclost.txt ยท Last modified: 2023/08/05 17:23 by Site Administrator