User Tools

Site Tools


cdc:nos2.source:opl871:ihfu

Table of Contents

IHFU

Table Of Contents

  • [00006] IHFU - INJECT HARDWARE FAULT UTILITY.
  • [00010] INJECT HARDWARE FAULT UTILITY.
  • [00014] INJECT HARDWARE FAULT UTILITY.
  • [00052] MACRO DEFINITIONS.
  • [00055] RT - DEFINE THE RT INSTRUCTION.
  • [00060] COMMON DECKS.
  • [00065] MAIN PROGRAM.
  • [00069] MAIN PROGRAM.
  • [00129] PARAMETER TABLES.
  • [00156] SUBROUTINES.
  • [00158] CDB - CONVERT DISPLAY CODE TO BINARY.
  • [00193] VIP - VERIFY INPUT PARAMETER.

Source Code

IHFU.txt
  1. IDENT IHFU,FWA
  2. ABS
  3. ENTRY IHFU
  4. BASE D
  5. SYSCOM B1
  6. TITLE IHFU - INJECT HARDWARE FAULT UTILITY.
  7. *COMMENT IHFU - INJECT HARDWARE FAULT UTILITY.
  8. COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
  9. IHFU SPACE 4,10
  10. *** IHFU - INJECT HARDWARE FAULT UTILITY.
  11. * D. A. HENSELER. 79/04/25.
  12. * P. C. SMITH. 88/06/16.
  13. IHFU SPACE 4,30
  14. *** IHFU - INJECT HARDWARE FAULT UTILITY.
  15. *
  16. * THIS UTILITY IS PROVIDED TO FORCE HARDWARE ERRORS FOR
  17. * *DFT* CHECKOUT.
  18. *
  19. * IHFU,FAULT,MODE,TRAPS,RMA.
  20. *
  21. * FAULT - FAULT KIND. ALLOWABLE VALUES ARE *RETRY*,
  22. * *EXCHANG*, *TRAP*, *HALT*, *PDMHALT*
  23. * OR *SOFTERR*.
  24. * MODE - ALLOWABLE VALUES ARE *JOB* OR *MONITOR*.
  25. * TRAPS - TRAPS ENABLED. ALLOWABLE VALUES ARE *TRUE*
  26. * OR *FALSE*.
  27. * RMA - REAL MEMORY ADDRESS PARITY ERROR. MUST BE
  28. * AN OCTAL NUMBER DIVIDED BY 1000(8).
  29. *
  30. * EXAMPLE -
  31. *
  32. * IHFU(RETRY,JOB,FALSE,60000)
  33. *
  34. * NOTE - THIS UTILITY REQUIRES SPECIAL PRIVILEGES IN ORDER TO
  35. * ISSUE THE 017 INSTRUCTIONS THAT REQUEST *EI* TO INJECT
  36. * THE HARDWARE FAULT.
  37. *
  38. * THESE PRIVILEGES MAY BE OBTAINED EITHER BY RUNNING
  39. * THIS UTILITY AS THE *NVE* SUBSYSTEM, OR BY USING THE
  40. * *IPRDECK* ENTRY *ENABLE, HARDWARE FAULT INJECTION*.
  41. *
  42. * THERE IS A FAULT INJECTION UTILITY THAT IS ACTIVATED
  43. * FROM THE SYSTEM CORE DEBUGGER FOR INJECTING FAULTS ON
  44. * THE 180 SIDE. ANY CHANGES MADE TO INJECT ERRORS HERE
  45. * SHOULD ALSO BE ADDED THERE IF IT IS APPLICABLE. THE
  46. * 180 FAULT INJECTION IS IN DECK
  47. * *SYM$INJECT_HARDWARE_FAULTS*.
  48. *
  49. * SPECIAL MICROCODE IS ALSO REQUIRED TO INJECT HARDWARE
  50. * FAULTS.
  51. *
  52. TITLE MACRO DEFINITIONS.
  53. * MACRO DEFINITIONS.
  54. RT SPACE 4,10
  55. ** RT - DEFINE THE RT INSTRUCTION.
  56. *
  57. RTX,X,Q OPDEF P1,P2,K
  58. + VFD 9/017B,3/P1,3/P2,15/K,30/0
  59. ENDM
  60. TITLE COMMON DECKS.
  61. *CALL COMCMAC
  62. LIST X
  63. *CALL COMSCVS
  64. LIST *
  65. TITLE MAIN PROGRAM.
  66. ORG 110B
  67. FWA BSS 0
  68. IHFU SPACE 4,10
  69. ** IHFU - MAIN PROGRAM.
  70.  
  71.  
  72. IHFU BSS 0 ENTRY
  73. SB1 1
  74. SA1 B1+B1 FAULT KIND PARAMETER
  75. SB2 HFK VERIFY HARDWARE FAULT KIND PARAMETER
  76. SB3 HFKL
  77. RJ VIP
  78. NG X6,IHFU3 IF ERROR IN HARDWARE FAULT KIND
  79. BX7 X6 FAULT KIND
  80. SA1 A1+B1 MODE PARAMETER
  81. SB2 MODE VERIFY MODE PARAMETER
  82. SB3 MODEL
  83. RJ VIP
  84. NG X6,IHFU3 IF ERROR IN MODE FLAG
  85. LX6 8+8
  86. SA1 A1+B1 TRAPS ENABLED PARAMETER
  87. BX7 X7+X6 COMBINE FAULT KIND AND MODE
  88. SB2 TE VERIFY TRAPS ENABLED PARAMETER
  89. SB3 TEL
  90. RJ VIP
  91. NG X6,IHFU3 IF ERROR IN TRAPS ENABLED FLAG
  92. LX6 8
  93. SA1 A1+B1 RMA/1000(8) OF PARITY ERROR PARAMETER
  94. BX7 X7+X6 COMBINE TRAPS ENABLED, MODE AND FAULT KIND
  95. RJ CDB CONVERT DISPLAY CODE TO BINARY
  96. ZR X6,IHFU3 IF ERROR IN RMA OF PARITY ERROR
  97. BX2 X6 (RMA OF PARITY ERROR)/1000(8)
  98. BX1 X7
  99. LX2 9
  100.  
  101. * ISSUE *017* INSTRUCTION TO INJECT SPECIFIED FAULT.
  102. * (X1) = 36/0
  103. * 8/MODE
  104. * 8/TRAPS ENABLED
  105. * 8/FAULT KIND
  106. * (X2) = RMA OF PARITY ERROR.
  107.  
  108. RT X1,X2,CVSIHF INJECT ERROR
  109. MX6 30
  110. BX1 -X6*X1 ERROR CODE
  111. BX2 X6*X0 NOS/VE DOWN FLAG
  112. ZR X1,IHFU1 IF NO ERROR
  113. MESSAGE IHFUB,5,R *EI DID NOT RECOGNIZE FAULT KIND.*
  114. EQ IHFU4 ABORT THE JOB
  115.  
  116. IHFU1 NZ X2,IHFU2 IF NOS/VE DOWN
  117. MESSAGE IHFUC,5,R *NOS/VE UP, NEED EI.*
  118. EQ IHFU4 ABORT THE JOB
  119.  
  120. IHFU2 ENDRUN
  121.  
  122. IHFU3 MESSAGE IHFUA,5,R *ERROR IN PARAMETER.*
  123. IHFU4 ABORT
  124.  
  125.  
  126. IHFUA DATA C*ERROR IN PARAMETER.*
  127. IHFUB DATA C*EI DID NOT RECOGNIZE FAULT KIND.*
  128. IHFUC DATA C*NOS/VE UP, NEED EI.*
  129. TITLE PARAMETER TABLES.
  130. HFK SPACE 4,10
  131. * HFK - TABLE OF HARDWARE FAULT KIND VALUES. THE VALUES
  132. * MUST MATCH VALUES DEFINED FOR THE 180 SIDE AND THE EI CODE.
  133.  
  134. HFK BSS 0
  135. VFD 42/5LRETRY,18/0
  136. VFD 42/7LEXCHANG,18/1
  137. VFD 42/4LTRAP,18/2
  138. VFD 42/4LHALT,18/3
  139. VFD 42/7LPDMHALT,18/4
  140. VFD 42/7LSOFTERR,18/5
  141. HFKL EQU *-HFK LENGTH OF TABLE
  142. MODE SPACE 4,10
  143. * MODE - TABLE OF MODE VALUES.
  144.  
  145. MODE BSS 0
  146. VFD 42/3LJOB,18/0
  147. VFD 42/7LMONITOR,18/1
  148. MODEL EQU *-MODE LENGTH OF TABLE
  149. TE SPACE 4,10
  150. * TE - TABLE OF TRAP ENABLED VALUES.
  151.  
  152. TE BSS 0
  153. VFD 42/5LFALSE,18/0
  154. VFD 42/4LTRUE,18/1
  155. TEL EQU *-TE LENGTH OF TABLE
  156. TITLE SUBROUTINES.
  157. CDB SPACE 4,10
  158. ** CDB - CONVERT DISPLAY CODE TO BINARY.
  159. *
  160. * *CDB* CONVERTS AN OCTAL DISPLAY CODE NUMBER TO ITS
  161. * BINARY VALUE.
  162. *
  163. * ENTRY (X1) = OCTAL NUMBER TO CONVERT, LEFT JUSTIFIED WITH
  164. * ZERO FILL. LOW ORDER 18 BITS ARE NOT CHECKED.
  165. *
  166. * EXIT (X6) = BINARY VALUE.
  167. * (X6) = 0 IF (X1) WAS NOT OCTAL DISPLAY CODE VALUE.
  168. *
  169. * USES X - 0, 1, 3, 4, 6.
  170. * B - 2.
  171.  
  172.  
  173. CDB2 SX6 B0 RETURN WITH ERROR
  174.  
  175. CDB SUBR ENTRY/EXIT
  176. MX0 60-6
  177. LX1 6
  178. SX6 B0 INITIALIZE RESULT BINARY VALUE
  179. SB2 7
  180. CDB1 BX2 -X0*X1 DISPLAY CODE CHARACTER
  181. SB2 B2-B1 DECREMENT CHARACTER COUNT
  182. ZR X2,CDBX IF ALL CHARACTERS CONVERTED, RETURN
  183. SX3 X2-1R0 SUBTRACT DISPLAY CODE BIAS
  184. SX4 X2-1R8
  185. LX6 3
  186. NG X3,CDB2 IF NOT AN OCTAL NUMBER
  187. PL X4,CDB2 IF NOT AN OCTAL NUMBER
  188. LX1 6 POSITION NEXT CHARACTER
  189. BX6 X6+X3 ADD NEXT BINARY DIGIT TO BINARY NUMBER
  190. GE B2,B0,CDB1 IF MORE CHARACTERS TO CONVERT
  191. EQ CDBX RETURN
  192. VIP SPACE 4,20
  193. ** VIP - VERIFY INPUT PARAMETER.
  194. *
  195. * *VIP* CHECKS SPECIFIED PARAMETER TABLE FOR A MATCH
  196. * AND RETURNS A PARAMETER VALUE.
  197. *
  198. * ENTRY (B2) = ADDRESS OF PARAMETER TABLE.
  199. * (B3) = LENGTH OF PARAMETER TABLE.
  200. * (X1) = PARAMETER CHECKING FOR, LEFT JUSTIFIED WITH
  201. * ZERO FILL. LOW ORDER 18 BITS ARE NOT CHECKED.
  202. *
  203. * EXIT (X6) = PARAMETER VALUE.
  204. * (X6) .LT. 0 IF PARAMETER NOT FOUND.
  205. *
  206. * USES X - 0, 2, 5, 6.
  207. * A - 2.
  208. * B - 3.
  209.  
  210.  
  211. VIP SUBR ENTRY/EXIT
  212. SA2 B2 INITIAL ENTRY IN PARAMETER TABLE
  213. MX0 60-18
  214. VIP1 BX5 X1-X2
  215. BX6 -X0*X2 PARAMETER VALUE
  216. SA2 A2+B1 NEXT ENTRY IN PARAMETER TABLE
  217. BX5 X0*X5
  218. SB3 B3-B1 DECREMENT TABLE LENGTH
  219. ZR X5,VIPX IF MATCHING PARAMETER
  220. GT B3,B0,VIP1 IF MORE ENTRIES IN PARAMETER TABLE
  221. SX6 -B1 SET NO MATCHING PARAMETER FOUND
  222. EQ VIPX RETURN
  223. SPACE 4,10
  224. * COMMON DECKS.
  225.  
  226.  
  227. *CALL COMCSYS
  228.  
  229.  
  230. END
cdc/nos2.source/opl871/ihfu.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator