UCS TITLE 'DMKUCS (CP) VM/370 - RELEASE 6' 00001000 SPACE 4 00002000 MACRO 00003000 UCS &NAME 00004000 GBLA &SW 00005000 SPACE 2 00006000 *********************************************************************** 00007000 * * * * 00008000 * * UCS * UCS NAME * 00009000 * * * * 00010000 *********************************************************************** 00011000 SPACE 2 00012000 AIF ('&SW' EQ '1').ORG IS THIS THE 1ST UCS MACRO 00013000 &SW SETA 1 NO - SET SW TO ONE 00014000 AGO .NORG 00015000 .ORG ANOP 00016000 SPACE 00017000 ORG *-8 OVERLAY LAST ZERO HEADER RECORD 00018000 .NORG ANOP 00019000 SPACE 00020000 AIF (K'&NAME GT 4).ERR1 NAME TOO LONG 00021000 UCS&NAME DS 0H 00022000 DC CL4'&NAME' UCS BUFFER NAME 00023000 DC AL2(NEXT&NAME-UCS&NAME) DISPLACEMENT TO NEXT HDR 00024000 DC AL2(DEND&NAME-DATA&NAME) LENGTH OF BUFFER DATA 00025000 DC AL2(CCW&NAME-UCS&NAME) DISPLACEMENT TO CCW 00026000 DC AL2(NEXT&NAME-CCW&NAME) LENGTH OF CCWS 00027000 DATA&NAME EQU * 00028000 AGO .END 00029000 .ERR1 MNOTE 12,'***UCS NAME -&NAME- OMITTED OR TOO LONG. 4 IS MAX.' 00030000 .END ANOP 00031000 SPACE 3 00032000 MEND 00033000 EJECT 00034000 MACRO 00035000 UCSCCW &NAME,&PRINT 00036000 LCLA &CNT,&DATA,&NUM,&A 00037000 SPACE 2 00038000 *********************************************************************** 00039000 * * * * 00040000 * * UCSCCW * UCS NAME,(PRINT1,PRINT2,PRINT3,,,,,,PRINT12) * 00041000 * * * * 00042000 *********************************************************************** 00043000 SPACE 2 00044000 AIF (K'&NAME GT 4).ERR1 NAME TOO LONG. 4 IS MAX. 00045000 AIF ('&NAME' EQ '').ERR1 INVALID NAME 00046000 DEND&NAME EQU * END OF BUFFER DATA 00047000 CCW&NAME DS 0D 00048000 ORG UCS&NAME VERIFY UCS MACRO WAS USED 00049000 ORG 00050000 SPACE 00051000 AIF ('&PRINT' EQ '').LAST NO PRINT CCW COUNT 00052000 &NUM SETA N'&PRINT NUMBER OF COUNT FIELDS 00053000 AIF ('&NUM' GT '12').ERR2 MAX. CCWS IS 12 00054000 .LOOP ANOP 00055000 &A SETA &A+1 ADD ONE TO FIELD 00056000 &DATA SETA &DATA+&CNT 00057000 &CNT SETA &PRINT(&A) SET UP DATA AND COUNT FIELDS 00058000 AIF ('&CNT' LT '1').ERR3 COUNT LESS THAN ONE 00059000 AIF ('&CNT' GT '132').ERR3 COUNT TOO HIGH 00060000 AIF ('&A' EQ '&NUM').CCW25 LAST CCW 00061000 CCW 9,&DATA,CC+SILI,&CNT PRINT VERIFY CCW 00062000 AGO .LOOP 00063000 .CCW25 ANOP 00064000 CCW 25,&DATA,CC+SILI,&CNT PRINT AND SPACE 3 00065000 &DATA SETA &DATA+&CNT 00066000 AIF ('&DATA' GT '240').ERR4 CHARACTER COUNT EXCEEDS 240 00067000 SPACE 00068000 MNOTE *,'TOTAL PRINT CHARACTER COUNT IS &DATA BYTES' 00069000 SPACE 00070000 .LAST ANOP 00071000 SPACE 00072000 NEXT&NAME DS 0H 00073000 SPACE 00074000 DC XL8'00' ZERO HEADER RECORD 00075000 AGO .END 00076000 .ERR1 ANOP 00077000 SPACE 00078000 MNOTE 12'***UCS NAME -&NAME- OMITTED OR TOO LONG. 4 IS MAX.' 00079000 AGO .END 00080000 .ERR2 ANOP 00081000 SPACE 00082000 MNOTE 12,'***PRINT HAS -&NUM- PARAMETERS. 12 IS MAX.' 00083000 AGO .END 00084000 .ERR3 ANOP 00085000 SPACE 00086000 MNOTE 12,'***PRINT -&CNT- NOT 1 TO 132' 00087000 AGO .END 00088000 .ERR4 ANOP 00089000 SPACE 00090000 MNOTE 12,'***TOTAL CHARACTER COUNT -&DATA- TOO LARGE.240 MAX.' 00091000 AGO .END 00092000 .END ANOP 00093000 SPACE 3 00094000 MEND 00095000 EJECT 00096000 *. 00097000 * 00098000 * 00099000 * MODULE NAME - 00100000 * 00101000 * DMKUCS 00102000 * 00103000 * FUNCTION - 00104000 * 00105000 * 00106000 * THIS MODULE CONTAINS THE UCS BUFFER LOAD IMAGES THAT 00107000 * ARE USED BY THE OPERATOR COMMAND 'LOAD' TO LOAD THE 00108000 * UNIVERSAL CHARACTER SET BUFFER IN THE 2821 CONTROL UNIT. 00109000 * 00110000 * ATTRIBUTES - 00111000 * 00112000 * PAGEABLE, CALLED BY DMKCSO 00113000 * 00114000 * 00115000 * NO EXECUTABLE CODE IN THIS MODULE. 00116000 * 00117000 * 00118000 * NOTES - 00119000 * 00120000 * 1. THIS MODULE MUST START ON A PAGE BOUNDARY. 00121000 * 2. THIS MODULE CANNOT EXCEED A FULL PAGE IN SIZE. 00122000 * 3. TWO MACRO ARE INCLUDED IN THIS MODULE TO ASSIST 00123000 * IN THE CREATION OF BUFFER LOAD IMAGES. 00124000 * 00125000 * 00126000 * 00127000 EJECT 00128000 * 00129000 ****************************** 00130000 * 00131000 * UCS MACRO 00132000 * 00133000 ****************************** 00134000 * 00135000 * 00136000 * THIS MACRO CREATES A 12 BYTE HEADER FOR THE BUFFER LOAD AND IS 00137000 * USED BY DMKCSO. 00138000 * 00139000 * 00140000 * +------+------+--------------------------------+ 00141000 * | | UCS | UCS NAME | 00142000 * +------+------+--------------------------------+ 00143000 * 00144000 * 00145000 * 00146000 * UCS NAME - 00147000 * 00148000 * ONE TO FOUR ALPHABETIC AND/OR NUMERIC CHARACTER NAME TO BE 00149000 * ASSIGNED TO BUFFER LOAD. 00150000 * 00151000 * 00152000 * 00153000 * 00154000 ****************************** 00155000 * 00156000 * UCSCCW MACRO 00157000 * 00158000 ****************************** 00159000 * 00160000 * 00161000 * 00162000 * THIS MACRO CREATES A CCW STRING TO PRINT THE BUFFER 00163000 * LOAD IMAGE WHEN VER IS SPECIFIED BY THE OPERATOR IN 00164000 * LOAD COMMAND. THIS MACRO MUST IMMEDIATELY 00165000 * FOLLOW THE BUFFER LOAD DATA. 00166000 * 00167000 * 00168000 * 00169000 * +------+------+----------------------------------------------+ 00170000 * | |UCSCCW| UCS NAME,(PRINT1,PRINT2,,,,,,PRINT12) | 00171000 * +------+------+----------------------------------------------+ 00172000 * 00173000 * 00174000 * 00175000 * UCS NAME - 00176000 * 00177000 * SAME AS PREVIOUS UCS MACRO 00178000 * 00179000 * (PRINT1,PRINT2,,,,PRINT12) - 00180000 * 00181000 * COUNT - ENTER NUMBER OF CHARACTERS (1 TO 132) TO BE PRINTED BY 00182000 * THE RESPECTIVE CCW IN A VERIFY OPERATION. A MAX OF 12 PRINT 00183000 * FIELDS CAN BE GIVEN. TOTAL PRINT CHARACTER COUNT MUST BE 00184000 * EQUAL OR LESS THAN 240. IF THIS OPERAND IS OMITTED, THE 00185000 * DEFAULT COUNT IS 48 PER CCW. THE DEFAULT CCW ARE 00186000 * LOCATED IN DMKCSO. 00187000 * 00188000 * EXAMPLES - 00189000 * 00190000 * UCS EX01 00191000 * 00192000 * DC 5CL48'1234567890..........WXYZ' 00193000 * 00194000 * UCSCCW EX01,(48,48,48,48,48) 00195000 * 00196000 * 00197000 * 00198000 * UCS EX02 00199000 * 00200000 * DC 5CL48'1234567890.....WXYZ' 00201000 * 00202000 * UCSCCW EX02 00203000 * 00204000 * 00205000 * 00206000 *. 00207000 EJECT 00208000 COPY OPTIONS 00209000 SPACE 00210000 COPY LOCAL OPTIONS 00211000 SPACE 00212000 PRINT DATA 00213000 DMKUCS CSECT 00214000 SPACE 3 00215000 DC CL8'DMKUCS' MODULE NAME 00216000 SPACE 3 00217000 ENTRY DMKUCSLD 00218000 DMKUCSLD DS 0H 00219000 * 'PCS-AN' - 3LEVEL SET, 48 'A' GRAPHICS 00220000 UCS PCAN 00221000 SPACE 00222000 DC C'1234567890,-PQR#$@/STUVWXYZ',X'9C' LOZENGE 00223000 DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00224000 DC C'1234567890,-PQR&&$%/STUVWXYZ',X'9C' LOZENGE 00225000 DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00226000 DC C'1234567890,-PQR#$@/STUVWXYZ',X'9C' LOZENGE 00227000 DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00228000 DC C'1234567890,-PQR&&$%/STUVWXYZ',X'9C' LOZENGE 00229000 DC C'.*1234567890,-JKLMNOABCDEFGHI+.*' 00230000 SPACE 2 00231000 UCSCCW PCAN,(60,60,60,60) 00232000 EJECT 00233000 * 'PCS-HN' - 3 LEVEL SET, 48 'H' GRAPHICS 00234000 UCS PCHN 00235000 SPACE 00236000 DC C'1234567890,-PQR=$''/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00237000 DC C'1234567890,-PQR&&$(/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00238000 DC C'1234567890,-PQR=$''/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00239000 DC C'1234567890,-PQR&&$(/STUVWXYZ).*1234567890,-JKLMNOABCDEFGHI+.*' 00240000 SPACE 2 00241000 UCSCCW PCHN,(60,60,60,60) 00242000 EJECT 00243000 * NORMAL AN ARRANGEMENT 00244000 UCS AN 00245000 SPACE 00246000 DC C'1234567890#@/STUVWXYZ&&,' @VA07307 00247300 DC C'%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' LOZENGE @VA07307 00247700 DC C'1234567890#@/STUVWXYZ&&,' @VA07307 00248300 DC C'%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' LOZENGE @VA07307 00248700 DC C'1234567890#@/STUVWXYZ&&,' @VA07307 00249300 DC C'%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' LOZENGE @VA07307 00249700 DC C'1234567890#@/STUVWXYZ&&,' @VA07307 00250300 DC C'%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' LOZENGE @VA07307 00250700 DC C'1234567890#@/STUVWXYZ&&,' @VA07307 00251300 DC C'%JKLMNOPQR-$*ABCDEFGHI+.',X'4C' LOZENGE @VA07307 00251700 SPACE 2 00252000 UCSCCW AN,(48,48,48,48,48) 00253000 EJECT 00254000 * NORMAL HN ARRANGEMENT 00255000 UCS HN 00256000 SPACE 00257000 DC 5C'1234567890=''/STUVWXYZ&&,(JKLMNOPQR-$*ABCDEFGHI+.)' 00258000 SPACE 2 00259000 UCSCCW HN,(48,48,48,48,48) 00260000 EJECT 00261000 * 'QN' - PL/I - 60 GRAPHICS, 45 PREFERRED 00262000 UCS QN 00263000 SPACE 00264000 DC C'1234567890XY/STUVW_"$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00265000 DC C'1234567890XY/STUVW<;#*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00266000 DC C'1234567890XY/STUVW?>@*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00267000 DC C'1234567890XY/STUVW¬''&&*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00268000 DC C'1234567890XY/STUVW|:%*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00269000 SPACE 2 00270000 UCSCCW QN,(48,48,48,48,48) 00271000 EJECT 00272000 * 'QNC' - PL/I - 60 GRAPHICS, 45 PREFERRED 00273000 UCS QNC 00274000 SPACE 00275000 DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI",=' 00276000 DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI|:_' 00277000 DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI<;¬' 00278000 DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI''?>' 00279000 DC C'1234567890#@/STUVWXYZ&&.%JKLMNOPQR-$*ABCDEFGHI)+(' 00280000 SPACE 2 00281000 UCSCCW QNC,(48,48,48,48,48) 00282000 EJECT 00283000 * 'RN' - FORTRAN,COBOL,COMMERCIAL - 52 GRAPHICS, 47 PRF 00284000 SPACE 00285000 UCS RN 00286000 SPACE 00287000 DC C'1234567890XY/STUVW''@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00288000 DC C'1234567890XY/STUVW%@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00289000 DC C'1234567890XY/STUVW#@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00290000 DC C'1234567890XY/STUVW',X'4C' @VA07658 00291300 DC C'@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' @VA07658 00291600 DC C'1234567890XY/STUVW&&@$*,=JKLMNOPQR-Z(ABCDEFGHI+.)' 00292000 SPACE 2 00293000 UCSCCW RN,(48,48,48,48,48) 00294000 EJECT 00295000 * 'YN' - HIGH SPEED ALPHANUMERIC - 42 GRAPHICS, 39 PREF 00296000 SPACE 00297000 UCS YN 00298000 SPACE 00299000 DC 2C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00300000 DC C'#-$' 00301000 DC 3C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00302000 DC C'#-$' 00303000 DC C'1234567890STABCDEFGHIJKLMNOPQRUVWXYZ*,.' 00304000 SPACE 2 00305000 UCSCCW YN,(39,42,39,39,42,39) 00306000 EJECT 00307000 * 'TN' - TEXT PRINTING - 120 GRAPHICS 00308000 UCS TN 00309000 SPACE 00310000 DC C'1234567890=./STUVWXYZ,#&&JKLMNOPQR-":ABCDEFGHI+abcdefghijklmn' 00311000 DC C'opqrstuvwxyz@''?;Æ!$*%棥·©§¶¼½¾^µþý¸~¬()´±><ðÞ¢¤[]º»¿¨Ð¯®_×|' 00312000 DC C'1234567890=./STUVWXYZ,#&&JKLMNOPQR-":ABCDEFGHI+abcdefghijklmn' 00313000 DC C'opqrstuvwxyz@''?;Æ!$*%棥·©§¶¼½¾^µþý¸~¬()´±><ðÞ¢¤[]º»¿¨Ð¯®_×|' 00314000 SPACE 2 00315000 UCSCCW TN,(60,60,60,60) 00316000 EJECT 00317000 * 'PN' - PL/I - 60 GRAPHICS 00318000 SPACE 00319000 UCS PN 00320000 SPACE 00321000 DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00322000 DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00323000 DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00324000 DC C'1234567890XY/STUVW|:_",=JKLMNOPQR-Z(ABCDEFGHI+.)%$*#&&@<;¬''?>' 00325000 SPACE 2 00326000 UCSCCW PN,(60,60,60,60) 00327000 EJECT 00328000 * 'SN' - TEXT PRINTING - 84 GRAPHICS, 78 PREFERRED 00329000 SPACE 00330000 UCS SN 00331000 SPACE 00332000 DC C'1234567890&&./STUVWXYZ,$*JKLMNOPQR-":' @VA07777 00333100 DC C'ABCDEFGH' @VA07777 00333200 DC X'C94E818283848586878889919293949596979899A2A3' @VA07777 00333300 DC X'A4A5A6A7A8A97C7D4D5DBF4F' @VA07777 00333400 DC C'1234567890&&./STUVWXYZ,$*JKLMNOPQR-":' @VA07777 00333500 DC C'ABCDEFGH' @VA07777 00333600 DC X'C94E818283848586878889919293949596979899A2A3' @VA07777 00333700 DC X'A4A5A6A7A8A97C7D4D5DBF4F' @VA07777 00333800 DC C'1234567890&&./STUVWXYZ,$*JKLMNOPQR-":' @VA07777 00333900 DC C'ABCDEFGH' @VA07777 00334000 DC X'C94E818283848586878889919293949596979899A2A3' @VA07777 00334100 DC X'A4A5A6A7A8A97C7D4D5DBF4F' @VA07777 00334200 DC C'?!;¢%',X'9C' LOZENGE 00335000 SPACE 2 00336000 UCSCCW SN,(78,78,84) 00337000 EJECT 00338000 COPY EQU 00339000 END 00340000