User Tools

Site Tools


ibm:vm370-lib:cp:dmkrnd.assemble_src

DMKRND Source

References

Source Listing

DMKRND.ASSEMBLE.txt
  1. RND TITLE 'DMKRND (CP) VM/370 - RELEASE 6' 00001000
  2. ISEQ 73,80 VALIDATE SERIALIZATION OF INPUT @V200899 00002000
  3. *. 00003000
  4. * SUBROUTINE NAME - 00004000
  5. * 00005000
  6. * DMKRND 00006000
  7. * 00007000
  8. * FUNCTION - 00008000
  9. * 00009000
  10. * DMKRND IS THE INTERFACE BETWEEN THE VM/370 DUMP SPOOL FILE 00010000
  11. * AND THE OS-SSP DUMP FORMAT PROGRAM FOR PRINTING AND FORMAT- 00011000
  12. * TING DUMPS OF THE 3704 AND 3705 COMMUNICATIONS CONTROLLERS 00012000
  13. * 00013000
  14. * ATTRIBUTES - 00014000
  15. * 00015000
  16. * NON-REUSEABLE, INVOKED VIA NCPDUMP COMMAND IN CMS 00016000
  17. * 00017000
  18. * COMMAND LINE FORMAT - 00018000
  19. * 00019000
  20. * +---------+------------------------------------------------------+ 00020000
  21. * | | | 00021000
  22. * | NCPDUMP | <DUMPNN> <(<ERASE> <NOFORM> <MNEMONIC> <NCPBUFF><)>> | 00022000
  23. * | | | 00023000
  24. * +---------+------------------------------------------------------+ 00024000
  25. * 00025000
  26. * ENTRY CONDITIONS - 00026000
  27. * 00027000
  28. * GR15 = ADDRESS OF DMKRND (NCPDUMP) 00028000
  29. * GR14 = RETURN ADDRESS TO CMS MONITOR 00029000
  30. * GR13 = ADDRESS OF 18-WORD SAVEAREA 00030000
  31. * GR 1 = ADDRESS OF CMS PARAMETER BUFFER 00031000
  32. * 00032000
  33. * EXIT CONDITIONS - 00033000
  34. * 00034000
  35. * GR0-14 RESTORED 00035000
  36. * GR15 = RETURN CODE (SEE MESSAGES) OR ZERO (SUCCESSFUL) 00036000
  37. * 00037000
  38. * CALLS TO OTHER ROUTINES - 00038000
  39. * 00039000
  40. * FSSTATE - TO DETERMINE THE EXISTENCE OF A CMS FILE 00040000
  41. * FSERASE - TO ERASE A TEMPORARY OR WORK FILE 00041000
  42. * FSWRITE - TO CREATE OR ADD TO A CMS DISK FILE 00042000
  43. * FILEDEF - TO SPECIFY OS-SIMULATION DDNAMES FOR IFLDUMP 00043000
  44. * LINEDIT - TO BUILD AND TYPE INFORMATION MESSAGES 00044000
  45. * IFLDUMP - OS-SSP DUMP PROCESSOR FOR 3704/3705 CCU'S 00045000
  46. * 00046000
  47. * EXTERNAL REFERENCES - NONE 00047000
  48. * 00048000
  49. * TABLES / WORK AREAS - NONE 00049000
  50. * 00050000
  51. * NOTES - 00051000
  52. * 00052000
  53. * USE IS MADE OF THE DIAGNOSE CODE X'0034' TO READ 4096-BYTE 00053000
  54. * SPOOL RECORDS FROM THE DUMP FILE CREATED BY VM/370 CP. 00054000
  55. EJECT 00055000
  56. * REGISTER USAGE - 00056000
  57. * 00057000
  58. * GR14-15 LINKAGE REGISTERS 00058000
  59. * GR13 = SAVEAREA BASE ADDRESSABILITY 00059000
  60. * GR12 = MODULE BASE ADDRESSABILITY 00060000
  61. * GR11 = FSCB DSECT ADDRESSABILITY 00061000
  62. * GR0-10 ARE WORK REGISTERS 00062000
  63. * 00063000
  64. * OPERATION - 00064000
  65. * 00065000
  66. * 1. IF NO DUMP FILE WAS SPECIFIED ('DUMPNN' OMITTED), THE 00066000
  67. * DIAGNOSE X'0034' IS USED TO READ A DUMP SPOOL FILE ONTO 00067000
  68. * THE CMS PRIMARY DISK. A CHECK IS MADE FOR EXISTING FILES 00068000
  69. * WITH THE NAME 'DUMPNN NCPDUMP', WHERE 'NN' GOES FROM 00069000
  70. * '00' TO '09'. THE NEW DUMP FILE IS GIVEN THE FIRST SUCH 00070000
  71. * NAME WHICH DOES NOT ALREADY EXIST. AN INFORMATION MSG 00071000
  72. * IS TYPED INFORMING THE USER OF WHICH FILE WAS CREATED. 00072000
  73. * 00073000
  74. * 2. FOR EACH 4096-BYTE SPOOL RECORD, EIGHT 512-BYTE RECORDS 00074000
  75. * ARE WRITTEN INTO THE CMS DISK FILE. 00075000
  76. * 00076000
  77. * 3. AFTER THE CMS FILE HAS BEEN CREATED, THE CMS FILEDEF 00077000
  78. * FUNCTION IS USED TO SETUP THE DDNAME SPECIFICATIONS 00078000
  79. * EXPECTED BY IFLDUMP. THE CMS 'COMPSWT' IS USED TO FORCE 00079000
  80. * A CMS 'LOADMOD' WHEN THE OS LINK MACRO IS USED TO 00080000
  81. * EXECUTE THE IFLDUMP PROGRAM. ALL DUMP OUTPUT IS DIRECTED 00081000
  82. * TO THE VIRTUAL SPOOL PRINTER. A SINGLE-ITEM TEMPORARY 00082000
  83. * FILE IS CREATED TO PASS A CONTROL RECORD TO THE DUMP 00083000
  84. * PROCESSOR, AND THIS FILE IS ERASED FOLLOWING THE DUMP. 00084000
  85. * 00085000
  86. * RESPONSES - 00086000
  87. * 00087000
  88. * 'DUMPNN NCPDUMP' FILE CREATED. 00088000
  89. * 'DUMPNN NCPDUMP' FILE ERASED. 00089000
  90. * 00090000
  91. EJECT 00091000
  92. * ERROR MESSAGES - 00092000
  93. * 00093000
  94. * DMKRND850I UNABLE TO READ DUMP FROM READER 00094000
  95. * RETURN CODE = 21 00095000
  96. * 00096000
  97. * DMKRND851I TEN DUMP FILES ALREADY EXIST 00097000
  98. * RETURN CODE = 22 00098000
  99. * 00099000
  100. * DMKRND852I FATAL I/O ERROR WRITING DUMP 00100000
  101. * RETURN CODE = FROM FSWRITE MACRO 00101000
  102. * 00102000
  103. * DMKRND853I NO DUMP FILES EXIST 00103000
  104. * RETURN CODE = 23 00104000
  105. * 00105000
  106. * DMKRND861I FILE 'DUMPNN NCPDUMP' NOT FOUND 00106000
  107. * RETURN CODE = 28 00107000
  108. * 00108000
  109. * DMKRND863I INVALID PARAMETER - 'PARAMETER' 00109000
  110. * RETURN CODE = 24 00110000
  111. * 00111000
  112. * DMKRND870I UNABLE TO CREATE CONTROL FILE FOR IFLDUMP 00112000
  113. * RETURN CODE = 16 00113000
  114. *. 00114000
  115. EJECT 00115000
  116. DMKRND START 0 @V200899 00116000
  117. ENTRY NCPDUMP @V200820 00117000
  118. REGEQU @V200899 00118000
  119. NCPDUMP DS 0D 370X DUMP PROCESSOR INTERFACE @V200820 00119000
  120. STM R14,R12,12(R13) SAVE INPUT REGISTERS @V200820 00120000
  121. LR R12,R15 USE GR12 AS MODULE BASE @V200820 00121000
  122. USING NCPDUMP,R12 @V200820 00122000
  123. LA R14,SAVEAR POINT TO MY SAVE AREA @V200820 00123000
  124. ST R13,4(0,R14) BACK POINTER @V200820 00124000
  125. ST R14,8(0,R13) FWD POINTER @V200820 00125000
  126. LR R13,R14 . . . @V200820 00126000
  127. SPACE 2 00127000
  128. *---------------------------------------------------------------------* 00128000
  129. * DETERMINE DUMP FILENAME SPECIFIED (IF ANY) * 00129000
  130. *---------------------------------------------------------------------* 00130000
  131. USING DFSCB,R11 @V200820 00131000
  132. LA R11,OUTFSCB POINT TO THE DUMP FILE FSCB @V200820 00132000
  133. LA R4,8(0,R1) MOVE PNTR TO 2ND PLIST ENTRY @V200820 00133000
  134. CLC DUMP(4),0(R4) IS THIS A 'DUMPNN' FILENAME ? @V200820 00134000
  135. BNE TESTOPT BR IF NO - TEST OPTIONS @V200899 00135000
  136. MVC FSCBFN(8),0(R4) MOVE DEFINED FILE NAME TO FSCB@V200820 00136000
  137. LA R4,8(0,R4) MOVE PNTR PAST FILE NAME @V200820 00137000
  138. TESTOPT DS 0H @V200899 00138000
  139. CLI 0(R4),C'(' IS THIS THE START OF THE OPTIONS @V200899 00139000
  140. BE OPTIONS BR IF YES @V200899 00140000
  141. CLC FFS(8),0(R4) END OF OPTIONS ? @V200899 00141000
  142. BE OPTEND BR IF YES @V200899 00142000
  143. B OPTERROR INVALID PARAMETER - ERROR @V200820 00143000
  144. SPACE 00144000
  145. *---------------------------------------------------------------------* 00145000
  146. * ANALYZE SPECIFIED INPUT PARAMETERS * 00146000
  147. *---------------------------------------------------------------------* 00147000
  148. OPTIONS DS 0H @V200899 00148000
  149. LA R4,8(0,R4) MOVE PNTR TO NXT PARAMETER @V200899 00149000
  150. CLC FFS(8),0(R4) END OF OPTIONS ? @V200899 00150000
  151. BE OPTEND BR IF YES @V200899 00151000
  152. CLI 0(R4),C')' IS THIS THE END OF OPTIONS @V200899 00152000
  153. BE OPTEND BR IF YES @V200899 00153000
  154. LA R3,OPTLIST LOAD ADDR OF OPTION LIST @V200899 00154000
  155. LA R6,L'OPTLIST LENGTH OF OPTION LIST ENTRY @V200899 00155000
  156. LA R7,OPTLEND ENDING ADDR OF OPTION LIST @V200899 00156000
  157. OPTLOOP DS 0H @V200899 00157000
  158. CLC 0(8,R3),0(R4) VALID OPTION FOUND @V200899 00158000
  159. BE OPTFND BR IF YES @V200899 00159000
  160. BXLE R3,R6,OPTLOOP LOOP UNTIL END OF LIST @V200899 00160000
  161. B OPTERROR IF FALL-THRU INVALID PARM @V200899 00161000
  162. OPTFND DS 0H @V200899 00162000
  163. MVI 8(R3),X'01' SET OPTION 'ON' @V200899 00163000
  164. B OPTIONS @V200899 00164000
  165. EJECT 00165000
  166. *---------------------------------------------------------------------* 00166000
  167. * FIND THE FIRST 'DUMPNN NCPDUMP' FILEID AVAILABLE * 00167000
  168. *---------------------------------------------------------------------* 00168000
  169. OPTEND DS 0H @V200899 00169000
  170. CLC DUMP(4),FSCBFN WAS FILE NAME DEFINED @V200899 00170000
  171. BE STRTDUMP BR IF YES @V200899 00171000
  172. MVC FSCBFN(8),DUMP LOOK FOR AVAILABLE FILE @V200899 00172000
  173. SLR R3,R3 @VM08836 00173000
  174. ICM R3,2+1,DUMP+4 CHARACTER '00' FOR DUMP FNAME @VM08836 00174000
  175. LA R6,10(0) MAXIMUM NUMBER OF DUMP FILES @VM08836 00175000
  176. LOOKLOOP DS 0H @V200899 00176000
  177. FSSTATE FSCB=OUTFSCB,ERROR=READNXT JUMP WHEN FOUND @V200820 00177000
  178. LA R3,1(0,R3) BUMP TO NXT NAME @V200820 00178000
  179. STH R3,FSCBFN+4 STORE NXT SEQUENCE NAME @V200899 00179000
  180. BCT R6,LOOKLOOP SEARCH FOR A FREE NAME @VM08836 00180000
  181. SPACE 2 00181000
  182. NODUMP DS 0H TEN DUMP FILES ALREADY EXIST @V200820 00182000
  183. WRTERM 'DMKRND851I TEN DUMP FILES ALREADY EXIST', @V200820*00183000
  184. COLOR=R TYPE ERROR MESSAGE IN RED @V200820 00184000
  185. LA R15,22(0) ERROR RETURN CODE @V200820 00185000
  186. ST R15,SVREG15 SET FOR EXIT @V200820 00186000
  187. B RETURN @V200820 00187000
  188. EJECT 00188000
  189. *---------------------------------------------------------------------* 00189000
  190. * READ DUMP SPOOL FILE DATA INTO CMS DISK FILE * 00190000
  191. *---------------------------------------------------------------------* 00191000
  192. READNXT DS 0H READ SPOOL FILE VIA DIAGNOSE @V200820 00192000
  193. MSG 'SPOOL 00C CLASS E' NCPDUMP = CLASS E @V200820 00193000
  194. DC X'83100008' SETUP READER CLASS FOR DUMP @V200820 00194000
  195. LTR R0,R0 WAS SPOOL CMD SUCCESSFUL ? @VM08584 00195000
  196. BNZ UNAREAD NO -- CANNOT READ THE DUMP @VM08584 00196000
  197. L R6,INPUTAD ADDRESS OF 4096-BYTE BUFFER @V200820 00197000
  198. LA R7,X'00C' STANDARD CARD-READER ADDRESS @V200820 00198000
  199. DC X'83670034' READ SYSTEM DUMP SPOOL FILE @V200820 00199000
  200. BC 1,UNAREAD CANNOT READ THE DUMP FILE @V200820 00200000
  201. BC 2,NODFILE NO DUMP FILES EXIST @V200820 00201000
  202. BC 4,EODFILE END OF FILE REACHED (?) @V200820 00202000
  203. SPACE 2 00203000
  204. LA R2,8(0,0) NUMBER OF 512'S IN 4096 @V200820 00204000
  205. STH R2,FSCBNOR WRITE EIGHT RECORDS AT ONCE @V200820 00205000
  206. MVC FSCBLRL(4),=A(4096) BUFFER SIZE = 4096 @V200820 00206000
  207. B DUMPWRT WRITE THE FIRST 4K RECORD @VM08584 00207000
  208. SPACE 00208000
  209. SPOOLRD DS 0H READ FROM SPOOL, WRITE TO DISK @V200820 00209000
  210. DC X'83670034' READ ANOTHER RECORD (GR6,7 OK) @V200820 00210000
  211. BC 4+2,EODFILE END OF FILE REACHED @V200820 00211000
  212. BC 1,UNAREAD I/O ERROR READING DUMP FILE @V200820 00212000
  213. SPACE 00213000
  214. DUMPWRT DS 0H WRITE EIGHT 512-BYTE RECORDS @VM08584 00214000
  215. FSWRITE FSCB=OUTFSCB,BUFFER=(R6),ERROR=WRITERR @V200820 00215000
  216. B SPOOLRD READ FROM CP ONCE MORE @V200820 00216000
  217. EJECT 00217000
  218. *---------------------------------------------------------------------* 00218000
  219. * CLOSE CMS FILE AND SPOOL READER FILE * 00219000
  220. *---------------------------------------------------------------------* 00220000
  221. EODFILE DS 0H END OF DUMP FILE REACHED @V200820 00221000
  222. FSCLOSE FSCB=OUTFSCB CLOSE THE DUMPNN FILE @V200820 00222000
  223. LINEDIT TEXT='''.................'' FILE CREATED', @V200820*00223000
  224. SUB=(CHAR8A,OUTFSCB+8) @V200820 00224000
  225. SPACE 00225000
  226. MSG 'CLOSE 00C' CLOSE THE READER FILE @V200820 00226000
  227. DC X'83100008' . . . @V200820 00227000
  228. * B STRTDUMP SETUP FOR IFLDUMP EXECUTION @V200820 00228000
  229. EJECT 00229000
  230. *---------------------------------------------------------------------* 00230000
  231. * BUILD CONTROL FILE FOR IFLDUMP PROCESSING ROUTINE * 00231000
  232. *---------------------------------------------------------------------* 00232000
  233. STRTDUMP DS 0H @V200899 00233000
  234. MVC NAMEFIL1(8),FSCBFN NAME FOR SYSUT2 FILEDEF@V200820 00234000
  235. MVC NAMEFIL2(8),FSCBFN NAME FOR SYSIN FILEDEF @V200820 00235000
  236. MVC SYSINAM(8),FSCBFN NAME IN CONTROL RECORD @V200820 00236000
  237. LA R11,SYSFSCB POINT TO CONTROL-FILE FSCB @V200820 00237000
  238. MVC FSCBFN(8),SYSINAM FILENAME FOR CONTROL FILE @V200820 00238000
  239. FSSTATE FSCB=OUTFSCB,ERROR=FILENOT CHECK FOR DUMPN@V200820 00239000
  240. SPACE 00240000
  241. CLI NOFORM+8,X'00' HAS NOFORM BEEN SPECIFIED @V200899 00241000
  242. BE *+8 NO -- LEAVE IT 'YES' @V200820 00242000
  243. MVI FORMOPT,C'N' SET PARAMETER TO NOFORM @V200899 00243000
  244. CLI MNEMONIC+8,X'00' MENMONICS REQUESTED ? @V200820 00244000
  245. BE *+8 NO -- LEAVE IT AS IS @V200820 00245000
  246. MVI MNEMOPT,C'Y' SET PARAMETER TO MNEMONICS @V200899 00246000
  247. CLI NCPBUFF+8,X'00' FORMAT NCP BUFFER POOL? @V366838 00246250
  248. BE *+8 NOPE -- LEAVE OPTION AS IS @V366838 00246500
  249. MVI BUFFOPT,C'Y' YES -- SET UP THE ARG. @V366838 00246750
  250. FSERASE FSCB=SYSFSCB ERASE ANY OLD SYSIN FILE @V200899 00247000
  251. FSWRITE FSCB=SYSFSCB,ERROR=CTLFERR @V200899 00248000
  252. * B LINKDMP GO SETUP FOR IFLDUMP @V200820 00249000
  253. EJECT 00250000
  254. *---------------------------------------------------------------------* 00251000
  255. * ISSUE FILEDEF COMMANDS FOR IFLDUMP DDNAME DEFINITIONS * 00252000
  256. *---------------------------------------------------------------------* 00253000
  257. LINKDMP DS 0H @V200820 00254000
  258. LA R1,FILEDEF1 ADDR OF 1-ST FILE DEF @V200899 00255000
  259. SVC 202 DEFINE 'SYSUT2' DDNAME @V200820 00256000
  260. DC AL4(FILDERR) ERROR RETURN ADDRESS @V200820 00257000
  261. SPACE 00258000
  262. LA R1,FILEDEF2 ADDR OF 2-ND FILE DEF @V200899 00259000
  263. SVC 202 DEFINE 'SYSIN' DDNAME @V200820 00260000
  264. DC AL4(FILDERR) ERROR RETURN ADDRESS @V200820 00261000
  265. SPACE 00262000
  266. LA R1,FILEDEF3 ADDR OF 3-RD FILE DEF @V200899 00263000
  267. SVC 202 DEFINE 'SYSPRINT' DDNAME @V200820 00264000
  268. DC AL4(FILDERR) ERROR RETURN ADDRESS @V200820 00265000
  269. SPACE 00266000
  270. GETMAIN R,LV=X'5000' SIZE OF LONGEST IFLDUMP PATH @VA12806 00267100
  271. LR R10,R1 SAVE ADDRESS FOR LATER RELEASE @V200820 00268000
  272. SPACE 00269000
  273. COMPSWT ON SET SWITCH TO LOADMOD IFLDUMP @V200820 00270000
  274. SPACE 2 00271000
  275. LA R1,DUMPARAS ADDR OF DUMMY PARAMETER LIST @V200899 00272000
  276. LINK EP=IFLDUMP LINK TO OS IFLDUMP @V200820 00273000
  277. ST R15,SVREG15 SAVE RETURN CODE @V200899 00274000
  278. EJECT 00275000
  279. FREEMAIN R,LV=X'5000',A=(R10) RELEASE GOTTEN STORAGE @VA12806 00276100
  280. L R15,SVREG15 RESTORE RETURN CODE FROM IFLDUMP @V200820 00277000
  281. LTR R15,R15 TEST RETURN CODE FOR 00 @V200899 00278000
  282. BNZ RETURN @V200899 00279000
  283. CLI ERASE+8,X'00' WAS ERASE REQUESTED @V200899 00280000
  284. BE RETURN BR IF ERASE NOT REQUESTED @V200899 00281000
  285. FSERASE FSCB=OUTFSCB ERASE THE DUMPNN FILE @V200820 00282000
  286. LINEDIT TEXT='''.................'' FILE ERASED', @V200820*00283000
  287. SUB=(CHAR8A,OUTFSCB+8) FILE ERASED MESSAGE @V200820 00284000
  288. B RETURN @V200899 00285000
  289. EJECT 00286000
  290. *---------------------------------------------------------------------* 00287000
  291. * ERROR MESSAGES AND ERROR HANDLING * 00288000
  292. *---------------------------------------------------------------------* 00289000
  293. PRINT NOGEN 00290000
  294. OPTERROR DS 0H INVALID OPTION @V200820 00291000
  295. LINEDIT TEXT='DMKRND863I INVALID PARAMETER - ''........''', *00292000
  296. SUB=(CHAR8A,(R4)) TYPE ERROR MESSAGE @V200820 00293000
  297. LA R15,24(0) RETURN CODE = 24 @V200820 00294000
  298. ST R15,SVREG15 PASS ALONG FOR EXIT @V200820 00295000
  299. B RETURN @V200820 00296000
  300. SPACE 00297000
  301. UNAREAD DS 0H UNABLE TO READ DUMP FILE @V200820 00298000
  302. WRTERM 'DMKRND850I UNABLE TO READ DUMP FROM READER', @V200820*00299000
  303. COLOR=R TYPE ERROR IN RED @V200820 00300000
  304. FSCLOSE FSCB=OUTFSCB CLOSE FILE FOR PARTIAL DUMP @V200820 00301000
  305. LA R15,21(0) ERROR RETURN CODE @V200820 00302000
  306. ST R15,SVREG15 PASS ALONG FOR EXIT @V200820 00303000
  307. B RETURN @V200820 00304000
  308. SPACE 00305000
  309. WRITERR DS 0H FATAL I/O ERROR WRITING DUMP @V200820 00306000
  310. ST R15,SVREG15 PASS WRBUF ERROR RETURN CODE @V200820 00307000
  311. WRTERM 'DMKRND852I FATAL I/O ERROR WRITING DUMP', @V200820*00308000
  312. COLOR=R TYPE ERROR MESSAGE IN RED @V200820 00309000
  313. FSCLOSE FSCB=OUTFSCB CLOSE FILE FOR PARTIAL DUMP @V200820 00310000
  314. B RETURN RETURN CODE IS ALL SET @V200820 00311000
  315. SPACE 00312000
  316. FILENOT DS 0H DUMP FILE NOT FOUND @V200820 00313000
  317. LINEDIT TEXT='DMKRND861I FILE ''.................'' NOT FOUND*00314000
  318. ',SUB=(CHAR8A,OUTFSCB+8) FILE NOT FOUND MSG @V200820 00315000
  319. LA R15,28(0) ERROR RETURN CODE @V200820 00316000
  320. ST R15,SVREG15 PASS IT ALONG FOR RETURN @V200820 00317000
  321. B RETURN @V200820 00318000
  322. SPACE 00319000
  323. CTLFERR DS 0H UNABLE TO BUILD CONTROL FILE @V200820 00320000
  324. WRTERM 'DMKRND870I UNABLE TO CREATE CONTROL FILE FOR IFLDUMP'*00321000
  325. ,COLOR=R ERROR MESSAGES ARE RED @V200820 00322000
  326. LA R15,16(0) ERROR RETURN CODE @V200820 00323000
  327. ST R15,SVREG15 PASS IT ALONG @V200820 00324000
  328. B RETURN @V200820 00325000
  329. SPACE 00326000
  330. NODFILE DS 0H NO DUMP FILES IN THE READER @V200820 00327000
  331. WRTERM 'DMKRND853I NO DUMP FILES EXIST',COLOR=R @V200820 00328000
  332. LA R15,23(0) ERROR RETURN CODE @V200820 00329000
  333. ST R15,SVREG15 PASS IT ALONG @V200820 00330000
  334. B RETURN @V200820 00331000
  335. SPACE 00332000
  336. FILDERR DS 0H ERROR IN CALL TO FILEDEF @V200820 00333000
  337. ST R15,SVREG15 PASS ALONG FILEDEF ERROR @V200820 00334000
  338. PRINT GEN @V200820 00335000
  339. EJECT 00336000
  340. *---------------------------------------------------------------------* 00337000
  341. * ERASE CONTROL FILE, RETURN TO CMS MONITOR * 00338000
  342. *---------------------------------------------------------------------* 00339000
  343. RETURN DS 0H @V200899 00340000
  344. FSERASE FSCB=SYSFSCB ERASE DUMPNN SYSIN FILE @V200820 00341000
  345. MSG 'CLOSE PRT' CLOSE THE SPOOL PRINTER @V200820 00342000
  346. DC X'83100008' VIA CP CONSOLE FUNCTION @V200820 00343000
  347. L R13,4(0,R13) BACK POINTER TO SAVEAREA @V200820 00344000
  348. L R14,12(0,R13) RETURN ADDRESS @V200820 00345000
  349. L R15,SVREG15 RETURN CODE TO GR15 @V200820 00346000
  350. LM R0,R12,12(R13) RESTORE REGISTERS @V200820 00347000
  351. BR R14 @V200899 00348000
  352. EJECT 00349000
  353. *---------------------------------------------------------------------* 00350000
  354. * CONSTANTS, LITERALS, BUFFERS, AND CONTROL DATA AREAS * 00351000
  355. *---------------------------------------------------------------------* 00352000
  356. DUMP DC C'DUMP',C'00 ' DUMPNN FILENAME SKELETON @V200899 00353000
  357. DS 0H 1 OF 2 @V200899 00354000
  358. DMPNMEND DC C'09' HALF. BDRY END LOOKING FOR FILE @V200899 00355000
  359. FFS DC X'FFFFFFFFFFFFFFFF' DBL-WD OF X'FF' @V200820 00356000
  360. SPACE 3 00357000
  361. *---------------------------------------------------------------------* 00358000
  362. * PARAMETER LIST OPTION SEARCH TABLE * 00359000
  363. *---------------------------------------------------------------------* 00360000
  364. OPTLIST DS 0CL9 OPTION KEYWORD & SWITCH @V200899 00361000
  365. ERASE DC C'ERASE ',X'00' @V200899 00362000
  366. NOFORM DC C'NOFORM ',X'00' @V200899 00363000
  367. MNEMONIC DC C'MNEMONIC',X'00' @V200899 00364000
  368. NCPBUFF DC C'NCPBUFF ',X'00' @V366838 00364500
  369. OPTLEND EQU * END OF PARM'S @V200899 00365000
  370. SPACE 2 00366000
  371. *---------------------------------------------------------------------* 00367000
  372. * IFLDUMP DUMMY PARAMETER LIST * 00368000
  373. *---------------------------------------------------------------------* 00369000
  374. DUMPARAS DS 0F @V200899 00370000
  375. DC X'80000000' NO PARAMETERS PASSED @V200820 00371000
  376. EJECT 00372000
  377. *---------------------------------------------------------------------* 00373000
  378. * CMS COMMANDS * 00374000
  379. *---------------------------------------------------------------------* 00375000
  380. FILEDEF1 DS 0D FILEDEF FOR SYSUT2 @V200820 00376000
  381. DC CL8'FILEDEF ' @V200899 00377000
  382. DC CL8'SYSUT2 ' @V200899 00378000
  383. DC CL8'DISK ' @V200899 00379000
  384. NAMEFIL1 DC CL8' ' @V200899 00380000
  385. DC CL8'NCPDUMP ' @V200899 00381000
  386. DC CL8'A1 ' @V200899 00382000
  387. DC CL8'(',CL8'RECFM',CL8'F' @V200820 00383000
  388. DC CL8'BLOCK',CL8'512' @V200820 00384000
  389. DC CL8'XTENT',CL8'513' @V200820 00385000
  390. DC X'FFFFFFFFFFFFFFFF' @V200899 00387000
  391. SPACE 2 00388000
  392. FILEDEF2 DS 0D FILEDEF FOR SYSIN @V200899 00389000
  393. DC CL8'FILEDEF ' @V200899 00390000
  394. DC CL8'SYSIN ' @V200899 00391000
  395. DC CL8'DISK ' @V200899 00392000
  396. NAMEFIL2 DC CL8' ' @V200899 00393000
  397. DC CL8'SYSIN ',CL8'A1 ' @V200899 00394000
  398. DC X'FFFFFFFFFFFFFFFF' @V200899 00395000
  399. SPACE 2 00396000
  400. FILEDEF3 DS 0D FILEDEF FOR SYSPRINT @V200899 00397000
  401. DC CL8'FILEDEF ' @V200899 00398000
  402. DC CL8'SYSPRINT' @V200820 00399000
  403. DC CL8'PRINTER' @V200820 00400000
  404. DC X'FFFFFFFFFFFFFFFF' @V200899 00401000
  405. SPACE 2 00402000
  406. *---------------------------------------------------------------------* 00403000
  407. * CONTROL CARD SKELETON FOR IFLDUMP PROCESSOR * 00404000
  408. *---------------------------------------------------------------------* 00405000
  409. SYSINREC DS 0CL80 @V200899 00406000
  410. SYSINAM DC CL8' ' @V200899 00407000
  411. DC C' DUMP' @V200899 00408000
  412. DC C' FORMAT=' @V200899 00409000
  413. FORMOPT DC C'Y' @V200899 00410000
  414. DC C',MNEMONIC=' @V200899 00411000
  415. MNEMOPT DC C'N' @V200899 00412000
  416. DC C',BUF=' @V366838 00413250
  417. BUFFOPT DC C'N' @V366838 00413500
  418. DC 41C' ' @V366838 00413750
  419. EJECT 00414000
  420. *---------------------------------------------------------------------* 00415000
  421. * FILE SYSTEM CONTROL BLOCKS * 00416000
  422. *---------------------------------------------------------------------* 00417000
  423. OUTFSCB FSCB 'X NCPDUMP A1',BUFFER=INPUT,BSIZE=512 @V200820 00418000
  424. SPACE 2 00419000
  425. SYSFSCB FSCB 'DUMPNN SYSIN A1',BUFFER=SYSINREC,BSIZE=80 @V200820 00420000
  426. SPACE 2 00421000
  427. SVREG15 DC F'0' RETURN CODE HOLD FIELD @V200820 00422000
  428. SAVEAR DS 18F STANDARD OS-FORMAT SAVEAREA @V200820 00423000
  429. SPACE 00424000
  430. LTORG @V200899 00425000
  431. EJECT 00426000
  432. *---------------------------------------------------------------------* 00427000
  433. * SPOOL INPUT BUFFER AND DISK OUTPUT BUFFER * 00428000
  434. *---------------------------------------------------------------------* 00429000
  435. INPUTAD DC A(INPUT) ADDR OF INPUT/OUTPUT AREA @V200899 00430000
  436. ORG DMKRND+4096 START BUFFER ON PAGE BOUNDARY @V200899 00431000
  437. INPUT DS CL4096' ' OUTPUT & INPUT THE SAME FIELD @V200899 00432000
  438. SPACE 3 00433000
  439. *---------------------------------------------------------------------* 00434000
  440. * FILE SYSTEM CONTROL BLOCK DEFINITION * 00435000
  441. *---------------------------------------------------------------------* 00436000
  442. SPACE 00437000
  443. DFSCB DSECT , FILE SYSTEM CONTROL BLOCK @V200820 00438000
  444. FSCBCMD DS CL8 COMMAND NAME (FUNCTION) @V200820 00439000
  445. FSCBFN DS CL8 FILENAME @V200820 00440000
  446. FSCBFT DS CL8 FILETYPE @V200820 00441000
  447. FSCBFM DS CL2 FILEMODE @V200820 00442000
  448. FSCBITM DS 1H RELATIVE ITEM NUMBER @V200820 00443000
  449. FSCBBUF DS 1F BUFFER ADDRESS @V200820 00444000
  450. FSCBLRL DS 1F BUFFER SIZE IN BYTES @V200820 00445000
  451. FSCBFMT DS CL2 RECORD FORMAT (F/V) @V200820 00446000
  452. FSCBNOR DS 1H NUMBER OF ITEMS @V200820 00447000
  453. FSCBINC DS 1F NUMBER OF BYTES ACTUALLY READ @V200820 00448000
  454. DS 1F @V200820 00449000
  455. SPACE 2 @V200820 00450000
  456. END DMKRND @V200820 00451000
ibm/vm370-lib/cp/dmkrnd.assemble_src.txt ยท Last modified: 2023/08/06 13:37 by Site Administrator