User Tools

Site Tools


ibm:vm370-lib:cp:dmkucc.assemble_src

DMKUCC Source

References

Source Listing

DMKUCC.ASSEMBLE.txt
  1. UCC TITLE 'DMKUCC (CP) VM/370 - RELEASE 6' 00001000
  2. SPACE 4 00002000
  3. MACRO 00003000
  4. UCC &NAME 00004000
  5. GBLA &SW 00005000
  6. SPACE 2 00006000
  7. *********************************************************************** 00007000
  8. * * * * 00008000
  9. * * UCC * UCC NAME * 00009000
  10. * * * * 00010000
  11. *********************************************************************** 00011000
  12. SPACE 2 00012000
  13. AIF ('&SW' EQ '1').ORG IS THIS THE 1ST UCC MACRO 00013000
  14. &SW SETA 1 NO - SET SW TO ONE 00014000
  15. AGO .NORG 00015000
  16. .ORG ANOP 00016000
  17. SPACE 00017000
  18. ORG *-8 OVERLAY LAST ZERO HEADER RECORD 00018000
  19. .NORG ANOP 00019000
  20. SPACE 00020000
  21. AIF (K'&NAME GT 4).ERR1 NAME TOO LONG 00021000
  22. UCC&NAME DS 0H 00022000
  23. DC CL4'&NAME' UCC BUFFER NAME 00023000
  24. DC AL2(NEXT&NAME-UCC&NAME) DISPLACEMENT TO NEXT HDR 00024000
  25. DC AL2(DEND&NAME-DATA&NAME) LENGTH OF BUFFER DATA 00025000
  26. DC AL2(CCW&NAME-UCC&NAME) DISPLACEMENT TO CCW 00026000
  27. DC AL2(NEXT&NAME-CCW&NAME) LENGTH OF CCWS 00027000
  28. DATA&NAME EQU * 00028000
  29. AGO .END 00029000
  30. .ERR1 MNOTE 12,'***UCC NAME -&NAME- OMITTED OR TOO LONG. 4 IS MAX.' 00030000
  31. .END ANOP 00031000
  32. SPACE 3 00032000
  33. MEND 00033000
  34. EJECT 00034000
  35. MACRO 00035000
  36. UCCCCW &NAME,&PRINT 00036000
  37. LCLA &CNT,&DATA,&NUM,&A 00037000
  38. SPACE 2 00038000
  39. *********************************************************************** 00039000
  40. * * * * 00040000
  41. * * UCCCCW * UCC NAME,(PRINT1,PRINT2,PRINT3,,,,,,PRINT12) * 00041000
  42. * * * * 00042000
  43. *********************************************************************** 00043000
  44. SPACE 2 00044000
  45. AIF (K'&NAME GT 4).ERR1 NAME TOO LONG. 4 IS MAX. 00045000
  46. AIF ('&NAME' EQ '').ERR1 INVALID NAME 00046000
  47. DEND&NAME EQU * END OF BUFFER DATA 00047000
  48. CCW&NAME DS 0D 00048000
  49. ORG UCC&NAME VERIFY UCC MACRO WAS USED 00049000
  50. ORG 00050000
  51. SPACE 00051000
  52. AIF ('&PRINT' EQ '').LAST NO PRINT CCW COUNT 00052000
  53. &NUM SETA N'&PRINT NUMBER OF COUNT FIELDS 00053000
  54. AIF ('&NUM' GT '12').ERR2 MAX. CCWS IS 12 00054000
  55. .LOOP ANOP 00055000
  56. &A SETA &A+1 ADD ONE TO FIELD 00056000
  57. &DATA SETA &DATA+&CNT 00057000
  58. &CNT SETA &PRINT(&A) SET UP DATA AND COUNT FIELDS 00058000
  59. AIF ('&CNT' LT '1').ERR3 COUNT LESS THAN ONE 00059000
  60. AIF ('&CNT' GT '132').ERR3 COUNT TOO HIGH 00060000
  61. AIF ('&A' EQ '&NUM').CCW25 LAST CCW 00061000
  62. CCW 9,&DATA,CC+SILI,&CNT PRINT VERIFY CCW 00062000
  63. AGO .LOOP 00063000
  64. .CCW25 ANOP 00064000
  65. CCW 25,&DATA,CC+SILI,&CNT PRINT AND SPACE 3 00065000
  66. &DATA SETA &DATA+&CNT 00066000
  67. AIF ('&DATA' GT '240').ERR4 CHARACTER COUNT EXCEEDS 240 00067000
  68. SPACE 00068000
  69. MNOTE *,'TOTAL PRINT CHARACTER COUNT IS &DATA BYTES' 00069000
  70. SPACE 00070000
  71. .LAST ANOP 00071000
  72. SPACE 00072000
  73. NEXT&NAME DS 0H 00073000
  74. SPACE 00074000
  75. DC XL8'00' ZERO HEADER RECORD 00075000
  76. AGO .END 00076000
  77. .ERR1 ANOP 00077000
  78. SPACE 00078000
  79. MNOTE 12'***UCC NAME -&NAME- OMITTED OR TOO LONG. 4 IS MAX.' 00079000
  80. AGO .END 00080000
  81. .ERR2 ANOP 00081000
  82. SPACE 00082000
  83. MNOTE 12,'***PRINT HAS -&NUM- PARAMETERS. 12 IS MAX.' 00083000
  84. AGO .END 00084000
  85. .ERR3 ANOP 00085000
  86. SPACE 00086000
  87. MNOTE 12,'***PRINT -&CNT- NOT 1 TO 132' 00087000
  88. AGO .END 00088000
  89. .ERR4 ANOP 00089000
  90. SPACE 00090000
  91. MNOTE 12,'***TOTAL CHARACTER COUNT -&DATA- TOO LARGE.240 MAX.' 00091000
  92. AGO .END 00092000
  93. .END ANOP 00093000
  94. SPACE 3 00094000
  95. MEND 00095000
  96. EJECT 00096000
  97. *. 00097000
  98. * 00098000
  99. * 00099000
  100. * MODULE NAME - 00100000
  101. * 00101000
  102. * DMKUCC 00102000
  103. * 00103000
  104. * FUNCTION - 00104000
  105. * 00105000
  106. * 00106000
  107. * THIS MODULE CONTAINS THE UCS BUFFER LOAD IMAGES THAT 00107000
  108. * ARE USED BY THE OPERATOR COMMAND 'LOAD' TO LOAD THE 00108000
  109. * UNIVERSAL CHARACTER SET BUFFER IN THE SKIPJACK ADAPTER. 00109000
  110. * 00110000
  111. * ATTRIBUTES - 00111000
  112. * 00112000
  113. * PAGEABLE, CALLED BY DMKCSB 00113000
  114. * 00114000
  115. * 00115000
  116. * NO EXECUTABLE CODE IN THIS MODULE. 00116000
  117. * 00117000
  118. * 00118000
  119. * NOTES - 00119000
  120. * 00120000
  121. * 1. THIS MODULE MUST START ON A PAGE BOUNDARY. 00121000
  122. * 2. THIS MODULE CANNOT EXCEED A FULL PAGE IN SIZE. 00122000
  123. * 3. TWO MACRO ARE INCLUDED IN THIS MODULE TO ASSIST 00123000
  124. * IN THE CREATION OF BUFFER LOAD IMAGES. 00124000
  125. * 00125000
  126. * 00126000
  127. * 00127000
  128. EJECT 00128000
  129. * 00129000
  130. ****************************** 00130000
  131. * 00131000
  132. * UCC MACRO 00132000
  133. * 00133000
  134. ****************************** 00134000
  135. * 00135000
  136. * 00136000
  137. * THIS MACRO CREATES A 12 BYTE HEADER FOR THE BUFFER LOAD AND IS 00137000
  138. * USED BY DMKCSB. 00138000
  139. * 00139000
  140. * 00140000
  141. * +------+------+--------------------------------+ 00141000
  142. * | | UCC | UCC NAME | 00142000
  143. * +------+------+--------------------------------+ 00143000
  144. * 00144000
  145. * 00145000
  146. * 00146000
  147. * UCC NAME - 00147000
  148. * 00148000
  149. * ONE TO FOUR ALPHABETIC AND/OR NUMERIC CHARACTER NAME TO BE 00149000
  150. * ASSIGNED TO BUFFER LOAD. 00150000
  151. * 00151000
  152. * 00152000
  153. * 00153000
  154. * 00154000
  155. ****************************** 00155000
  156. * 00156000
  157. * UCCCCW MACRO 00157000
  158. * 00158000
  159. ****************************** 00159000
  160. * 00160000
  161. * 00161000
  162. * 00162000
  163. * THIS MACRO CREATES A CCW STRING TO PRINT THE BUFFER 00163000
  164. * LOAD IMAGE WHEN VER IS SPECIFIED BY THE OPERATOR IN 00164000
  165. * LOAD COMMAND. THIS MACRO MUST IMMEDIATELY 00165000
  166. * FOLLOW THE BUFFER LOAD DATA. 00166000
  167. * 00167000
  168. * 00168000
  169. * 00169000
  170. * +------+------+----------------------------------------------+ 00170000
  171. * | |UCCCCW| UCC NAME,(PRINT1,PRINT2,,,,,,PRINT12) | 00171000
  172. * +------+------+----------------------------------------------+ 00172000
  173. * 00173000
  174. * 00174000
  175. * 00175000
  176. * UCC NAME - 00176000
  177. * 00177000
  178. * SAME AS PREVIOUS UCC MACRO 00178000
  179. * 00179000
  180. * (PRINT1,PRINT2,,,,PRINT12) - 00180000
  181. * 00181000
  182. * COUNT - ENTER NUMBER OF CHARACTERS (1 TO 132) TO BE PRINTED BY 00182000
  183. * THE RESPECTIVE CCW IN A VERIFY OPERATION. A MAX OF 12 PRINT 00183000
  184. * FIELDS CAN BE GIVEN. TOTAL PRINT CHARACTER COUNT MUST BE 00184000
  185. * EQUAL OR LESS THAN 240. IF THIS OPERAND IS OMITTED, THE 00185000
  186. * DEFAULT COUNT IS 48 PER CCW. THE DEFAULT CCW ARE 00186000
  187. * LOCATED IN DMKCSB. 00187000
  188. * 00188000
  189. * EXAMPLES - 00189000
  190. * 00190000
  191. * UCC EX01 00191000
  192. * 00192000
  193. * DC 5CL48'1234567890..........WXYZ' 00193000
  194. * 00194000
  195. * UCCCCW EX01,(48,48,48,48,48) 00195000
  196. * 00196000
  197. * 00197000
  198. * 00198000
  199. * UCC EX02 00199000
  200. * 00200000
  201. * DC 5CL48'1234567890.....WXYZ' 00201000
  202. * 00202000
  203. * UCCCCW EX02 00203000
  204. * 00204000
  205. * 00205000
  206. * 00206000
  207. *. 00207000
  208. EJECT 00208000
  209. COPY OPTIONS 00209000
  210. SPACE 00210000
  211. COPY LOCAL OPTIONS 00211000
  212. SPACE 00212000
  213. PRINT DATA 00213000
  214. DMKUCC CSECT 00214000
  215. SPACE 3 00215000
  216. DC CL8'DMKUCC' MODULE NAME 00216000
  217. SPACE 3 00217000
  218. ENTRY DMKUCCLD 00218000
  219. DMKUCCLD DS 0H 00219000
  220. * 'PCS-AN' - 3LEVEL SET, 48 'A' GRAPHICS 00220000
  221. UCC PCAN 00221000
  222. SPACE 00222000
  223. DC C'1234567890,-PQR#$@/STUVWXYZ',X'9C' LOZENGE 00223000
  224. DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00224000
  225. DC C'1234567890,-PQR&&$%/STUVWXYZ',X'9C' LOZENGE 00225000
  226. DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00226000
  227. DC C'1234567890,-PQR#$@/STUVWXYZ',X'9C' LOZENGE 00227000
  228. DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00228000
  229. DC C'1234567890,-PQR&&$%/STUVWXYZ',X'9C' LOZENGE 00229000
  230. DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00230000
  231. DC X'00101010101010101010004000004000' 00231000
  232. DC X'40101010101010101010004060000000' 00232000
  233. DC X'40401010101010101010004040000000' 00233000
  234. DC X'10101010101010101010004040000000' 00234000
  235. SPACE 2 00235000
  236. UCCCCW PCAN,(60,60,60,60) 00236000
  237. EJECT 00237000
  238. * 'PCS-HN' - 3 LEVEL SET, 48 'H' GRAPHICS 00238000
  239. UCC PCHN 00239000
  240. SPACE 00240000
  241. DC C'1234567890,-PQR=$''/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00241000
  242. DC C'1234567890,-PQR&&$(/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00242000
  243. DC C'1234567890,-PQR=$''/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00243000
  244. DC C'1234567890,-PQR&&$(/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00244000
  245. DC X'00101010101010101010004000404000' @V3M4025 00245000
  246. DC X'40101010101010101010004040400000' 00246000
  247. DC X'40401010101010101010004000000000' @V3M4025 00247000
  248. DC X'10101010101010101010000000404000' 00248000
  249. SPACE 2 00249000
  250. UCCCCW PCHN,(60,60,60,60) 00250000
  251. EJECT 00251000
  252. * NORMAL AN ARRANGEMENT 00252000
  253. UCC AN 00253000
  254. SPACE 00254000
  255. DC C'1234567890#@/STUVWXYZ&&,%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' @V3M5007 00255000
  256. DC C'1234567890#@/STUVWXYZ&&,%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' @V3M5007 00256000
  257. DC C'1234567890#@/STUVWXYZ&&,%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' @V3M5007 00257000
  258. DC C'1234567890#@/STUVWXYZ&&,%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' @V3M5007 00258000
  259. DC C'1234567890#@/STUVWXYZ&&,%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' @V3M5007 00259000
  260. DC X'00101010101010101010004000424000' 00260000
  261. DC X'40101010101010101010004060410000' @V3M4025 00261000
  262. DC X'40401010101010101010004040000000' 00262000
  263. DC X'10101010101010101010004040444800' 00263000
  264. SPACE 2 00264000
  265. UCCCCW AN,(48,48,48,48,48) 00265000
  266. EJECT 00266000
  267. * NORMAL HN ARRANGEMENT 00267000
  268. UCC HN 00268000
  269. SPACE 00269000
  270. DC 5C'1234567890=''/STUVWXYZ&&,(JKLMNOPQR-$*ABCDEFGHI+.)' 00270000
  271. DC X'00101010101010101010004000404000' 00271000
  272. DC X'40101010101010101010004040400000' 00272000
  273. DC X'40401010101010101010004000000000' 00273000
  274. DC X'10101010101010101010000000404000' 00274000
  275. SPACE 2 00275000
  276. UCCCCW HN,(48,48,48,48,48) 00276000
  277. EJECT 00277000
  278. * 'QN' - PL/I - 60 GRAPHICS, 45 PREFERRED 00278000
  279. UCC QN 00279000
  280. SPACE 00280000
  281. DC C'1234567890XY/STUVW_"$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00281000
  282. DC C'1234567890XY/STUVW<;#*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00282000
  283. DC C'1234567890XY/STUVW?>@*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00283000
  284. DC C'1234567890XY/STUVW¬''&&*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00284000
  285. DC C'1234567890XY/STUVW|:%*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00285000
  286. DC X'00101010101010101010004040404040' 00286000
  287. DC X'40101010101010101010004040404040' 00287000
  288. DC X'40401010101010101010004040404040' @V3M4025 00288000
  289. DC X'10101010101010101010404040404040' 00289000
  290. SPACE 2 00290000
  291. UCCCCW QN,(48,48,48,48,48) 00291000
  292. EJECT 00292000
  293. * 'QNC' - PL/I - 60 GRAPHICS, 45 PREFERRED 00293000
  294. UCC QNC 00294000
  295. SPACE 00295000
  296. DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI",=' 00296000
  297. DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI|:_' 00297000
  298. DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI<;¬' 00298000
  299. DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI''?>' 00299000
  300. DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI)+(' 00300000
  301. DC X'00101010101010101010004040404040' 00301000
  302. DC X'40101010101010101010004040404040' 00302000
  303. DC X'40401010101010101010004040404040' 00303000
  304. DC X'10101010101010101010404040404040' @V3M4025 00304000
  305. SPACE 2 00305000
  306. UCCCCW QNC,(48,48,48,48,48) 00306000
  307. EJECT 00307000
  308. * 'RN' - FORTRAN,COBOL,COMMERCIAL - 52 GRAPHICS, 47 PRF 00308000
  309. SPACE 00309000
  310. UCC RN 00310000
  311. SPACE 00311000
  312. DC C'1234567890XY/STUVW''@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00312000
  313. DC C'1234567890XY/STUVW%@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00313000
  314. DC C'1234567890XY/STUVW#@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00314000
  315. DC C'1234567890XY/STUVW',X'9C',C'@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00315000
  316. DC C'1234567890XY/STUVW&&@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00316000
  317. DC X'00101010101010101010004000404000' 00317000
  318. DC X'40101010101010101010004060400000' 00318000
  319. DC X'40401010101010101010004040000000' 00319000
  320. DC X'10101010101010101010004040404000' @V3M4025 00320000
  321. SPACE 2 00321000
  322. UCCCCW RN,(48,48,48,48,48) 00322000
  323. EJECT 00323000
  324. * 'YN' - HIGH SPEED ALPHANUMERIC - 42 GRAPHICS, 39 PREF 00324000
  325. SPACE 00325000
  326. UCC YN 00326000
  327. SPACE 00327000
  328. DC 2C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00328000
  329. DC C'#-$' 00329000
  330. DC 3C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00330000
  331. DC C'#-$' 00331000
  332. DC C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00332000
  333. DC X'00101010101010101010004000000000' 00333000
  334. DC X'00101010101010101010004040000000' 00334000
  335. DC X'40001010101010101010004000000000' 00335000
  336. DC X'10101010101010101010004000000000' 00336000
  337. SPACE 2 00337000
  338. UCCCCW YN,(39,42,39,39,42,39) 00338000
  339. EJECT 00339000
  340. * 'TN' - TEXT PRINTING - 120 GRAPHICS 00340000
  341. UCC TN 00341000
  342. SPACE 00342000
  343. DC C'1234567890=./STUVWXYZ,#&&JKLMNOPQR-":ABCDEFGHI+abcdefghijklmn' 00343000
  344. DC X'96979899A2A3A4A5A6A7A8A97C7D6F5E9E5A5B5C6C9C' @VA05398 00344000
  345. DC X'B1B2B3B4B5B6B7B8B9B0A08E8D9DA15F4D5DBE8F6E4C' @VA05398 00344100
  346. DC X'8CAE4A9FADBD9B8BABBBACBCAF6DBF4F' @VA07205 00344210
  347. DC C'1234567890=./STUVWXYZ,#&&JKLMNOPQR-":ABCDEFGHI+abcdefghijklmn' 00345000
  348. DC X'96979899A2A3A4A5A6A7A8A97C7D6F5E9E5A5B5C6C9C' @VA05398 00346000
  349. DC X'B1B2B3B4B5B6B7B8B9B0A08E8D9DA15F4D5DBE8F6E4C' @VA05398 00346100
  350. DC X'8CAE4A9FADBD9B8BABBBACBCAF6DBF4F' @VA07205 00346210
  351. DC X'00303030303030303030406060606060' @V3M4025 00347000
  352. DC X'40303030303030303030406060606060' @V3M4025 00348000
  353. DC X'60603030303030303030006060606060' @V3M4025 00349000
  354. DC X'30303030303030303030406060606060' @V3M4025 00350000
  355. SPACE 2 00351000
  356. UCCCCW TN,(60,60,60,60) 00352000
  357. EJECT 00353000
  358. * 'PN' - PL/I - 60 GRAPHICS 00354000
  359. SPACE 00355000
  360. UCC PN 00356000
  361. SPACE 00357000
  362. DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00358000
  363. DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00359000
  364. DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00360000
  365. DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00361000
  366. DC X'00101010101010101010004040404040' @V3M4025 00362000
  367. DC X'40101010101010101010004040404040' @V3M4025 00363000
  368. DC X'40401010101010101010004040404040' @V3M4025 00364000
  369. DC X'10101010101010101010404040404040' @V3M4025 00365000
  370. SPACE 2 00366000
  371. UCCCCW PN,(60,60,60,60) 00367000
  372. EJECT 00368000
  373. * 'SN' - TEXT PRINTING - 84 GRAPHICS, 78 PREFERRED 00369000
  374. SPACE 00370000
  375. UCC SN 00371000
  376. SPACE 00372000
  377. DC 3C'1234567890&&./STUVWXYZ,$*JKLMNOPQR-":ABCDEFGHI+abcdefghijklmnopqX00373000
  378. rstuvwxyz@''()×|' @V3M5006 00374000
  379. DC C'?!;¢%',X'9C' LOZENGE 00375000
  380. DC X'00303030303030303030404000404040' @V3M4025 00376000
  381. DC X'40303030303030303030404060404000' 00377000
  382. DC X'40403030303030303030004040000040' @VA09244 00378050
  383. DC X'10101010101010101010400040400060' @VA09244 00379050
  384. SPACE 2 00380000
  385. UCCCCW SN,(78,78,84) 00381000
  386. EJECT 00382000
  387. COPY EQU 00383000
  388. END 00384000
ibm/vm370-lib/cp/dmkucc.assemble_src.txt · Last modified: 2023/08/06 13:37 by Site Administrator