ASSEMBLY LISTING OF SEGMENT >dumps>old_dumps>on>MIB-073181>apl_zcode_to_ascii_.alm ASSEMBLED ON: 08/08/81 1940.4 mst Sat OPTIONS USED: list -target Level68 ASSEMBLED BY: ALM Version 6.4 April 1981 ASSEMBLER CREATED: 07/15/81 1221.6 mst Wed  1 " ******************************************************  2 " * *  3 " * *  4 " * Copyright (c) 1972 by Massachusetts Institute of *  5 " * Technology and Honeywell Information Systems, Inc. *  6 " * *  7 " * *  8 " ******************************************************  9  10 "ALM subroutine to convert from 9 bit EBCDIC ZCODE to 9 bit Multics APL ASCII  11 "Input bytes must be valid EBCDIC characters in the range  12 "00 <_ hexadecimal_value <_ FF, or 000 <_ octal_value <_ 377.  13 "  14 "ARG 1: source string - data to be converted  15 "ARG 2: target string - converted data  16 "  17 "PL/I Usage:  18 "  19 "dcl apl_zcode_to_ascii_ entry (char (*), char (*));  20 " call apl_zcode_to_ascii_ (input_string, output_string);  21 "  22 "Note: the EBCDIC to ASCII mapping used is defined in the text  23 " of this procedure. It is available to the user program  24 " through the following declaration.  25 "  26 "dcl apl_zcode_to_ascii_$za_table char (256) external static;  27 "  28 "The table consists of 256 ASCII characters which correspond to 29 "the 256 EBCDIC characters. As only 128 of the EBCDIC characters  30 "have ASCII mappings, the other 128 are mapped into the ASCII SUB  31 "character, octal 032. (The EBCDIC SUB character is also mapped  32 "into octal 032.  33 "  34 " 0) Created (as ebcdic_to_ascii_) by Ross E. Klinger, 02/14/74 35 " 1) Modified (as ebcdic_to_ascii) by R.E. Klinger, 03/13/75  36 " 2) Rewritten to be apl_zcode_to_ascii_ by Paul Green, 7/30/76 000000 37 name apl_zcode_to_ascii_  000000 38 segdef apl_zcode_to_ascii_ 000022 39 segdef za_table  000000 40 apl_zcode_to_ascii_:  000000 aa 0 00002 3515 20 41 epp1 ap|2,* address of source string to pr1  000001 aa 0 00004 3535 20 42 epp3 ap|4,* address of target string to pr3  000002 aa 000000 2230 03 43 ldx3 0,du set x3 not to skip parent pointer if none  000003 aa 0 00000 7221 00 44 lxl2 ap|0 load argument list code value  000004 aa 000004 3020 03 45 canx2 =o000004,du check for code 4 - no parent pointer 000005 0a 000007 6010 00 46 tnz *+2 transfer if no parent pointer 000006 aa 000002 2230 03 47 ldx3 2,du parent pointer - set x3 to skip it  000007 aa 0 00006 2351 33 48 lda ap|6,x3* load source string descriptor  000010 aa 0 00010 2361 33 49 ldq ap|8,x3* load target string descriptor  000011 0a 000020 3750 00 50 ana mask drop all but string size bits  000012 0a 000020 3760 00 51 anq mask ditto  000013 aa 2 30140 1605 40 52 mvt (pr,rl),(pr,rl),fill(230) translate ebcdic to ascii  000014 aa 100000 000005 53 desc9a pr1|0,al source string 000015 aa 300000 000006 54 desc9a pr3|0,ql target string 000016 0a 000022 0000 00 55 arg za_table  000017 aa 7 00044 7101 20 56 short_return "exit  57  000020 aa 000077 777777 58 mask: oct 000077777777  000021 aa 000000 0110 03 59 even  60 " ASCII OUTPUT ASCII GRAPHIC EBCDIC INPUT  000022 aa 000001 002003 61 za_table: oct 000001002003 NUL SOH STX ETX 00-03  000023 aa 032011 032072 62 oct 032011032072 - HT - FAKECOLON 04-07  000024 aa 056032 032013 63 oct 056032032013 FAKEPERIOD - - VT 08-0B  000025 aa 014015 133135 64 oct 014015133135 FF CR [ ] 0C-0F  000026 aa 050051 073057 65 oct 050051073057 ( ) SEMICOLON / 10-13 000027 aa 134255 256032 66 oct 134255256032 \ -< -> - 14-17  000030 aa 032245 053055 67 oct 032245053055 - DIAR + - 18-1B  000031 aa 251205 052212 68 oct 251205052212 x -: * c 1C-1F  000032 aa 213174 204203 69 oct 213174204203 f | & v 20-23  000033 aa 074200 075201 70 oct 074200075201 < <_ = >_ 24-27  000034 aa 076202 252206 71 oct 076202252206 > /= a e 28-2B  000035 aa 247250 246054 72 oct 247250246054 i p w , 2C-2F  000036 aa 041233 220221 73 oct 041233220221 ! o| _| t 30-33  000037 aa 211077 176207 74 oct 211077176207 o ? ~ ^| 34-37  000040 aa 210222 223217 75 oct 210222223217 v| (_ )_ n 38-3B  000041 aa 224137 234242 76 oct 224137234242 u _ \o b 3C-3F  000042 aa 215216 241232 77 oct 215216241232 _o q 'q *o 40-43  000043 aa 226225 240237 78 oct 226225240237 &~ v~ .n d| 44-47  000044 aa 236227 230243 79 oct 236227230243 g| -o -/ -\ 48-4B  000045 aa 244275 274046 80 oct 244275274046 m _f _e "046 4C-4F  000046 aa 100043 044032 81 oct 100043044032 @ # $ - 50-53  000047 aa 777776 141142 82 oct 777776141142 Td Sd A B 54-57  000050 aa 143144 145146 83 oct 143144145146 C D E F 58-5B  000051 aa 147150 151152 84 oct 147150151152 G H I J 5C-5F  000052 aa 153154 155156 85 oct 153154155156 K L M N 60-63  000053 aa 157160 161162 86 oct 157160161162 O P Q R 64-67  000054 aa 163164 165166 87 oct 163164165166 S T U V 68-6B  000055 aa 167170 171172 88 oct 167170171172 W X Y Z 6C-6F  000056 aa 214101 102103 89 oct 214101102103 d A_ B_ C_ 70-73  000057 aa 104105 106107 90 oct 104105106107 D_ E_ F_ G_ 74-77  000060 aa 110111 112113 91 oct 110111112113 H_ I_ J_ K_ 78-7B  000061 aa 114115 116117 92 oct 114115116117 L_ M_ N_ O_ 7C-7F  000062 aa 120121 122123 93 oct 120121122123 P_ Q_ R_ S_ 80-83  000063 aa 124125 126127 94 oct 124125126127 T_ U_ V_ W_ 84-87  000064 aa 130131 132272 95 oct 130131132272 W_ Y_ Z_ _d 88-8B  000065 aa 060061 062063 96 oct 060061062063 0 1 2 3 8C-8F  000066 aa 064065 066067 97 oct 064065066067 4 5 6 7 90-93  000067 aa 070071 056253 98 oct 070071056253 8 9 . ^ 94-97  000070 aa 040047 072254 99 oct 040047072254 SP ' : g 98-9B  000071 aa 012775 010300 100 oct 012775010300 NL EOB BS LF 9C-9F  000072 aa 231032 032032 101 oct 231032032032 g~ - - - A0-A3  000073 aa 032032 032032 102 oct 032032032032 - - - - A4-A7  000074 aa 032032 136042 103 oct 032032136042 - - "136 "042 A8-AB  000075 aa 045032 032032 104 oct 045032032032 % - - - AC-AF  000076 aa 032032 032032 105 oct 032032032032 - - - - B0-B3  000077 aa 032032 032302 106 oct 032032032302 - - - c| B4-B7  000100 aa 032032 032032 107 oct 032032032032 - - - - B8-BB  108 " END OF ZCODES.  000101 aa 032135 032032 109 oct 032135032032 -,],-,- BC-F 000102 aa 173101 102103 110 oct 173101102103 {,A,B,C C0-3 000103 aa 104105 106107 111 oct 104105106107 D,E,F,G C4-7 000104 aa 110111 032032 112 oct 110111032032 H,I,-,- C8-B 000105 aa 032032 032032 113 oct 032032032032 -,-,-,- CC-F 000106 aa 175112 113114 114 oct 175112113114 },J,K,L D0-3 000107 aa 115116 117120 115 oct 115116117120 M,N,O,P D4-7 000110 aa 121122 032032 116 oct 121122032032 Q,R,-,- D8-B 000111 aa 032032 032032 117 oct 032032032032 -,-,-,- DC-F 000112 aa 134032 123124 118 oct 134032123124 \,-,S,T E0-3 000113 aa 125126 127130 119 oct 125126127130 U,V,W,X E4-7 000114 aa 131132 032032 120 oct 131132032032 Y,Z,-,- E8-B 000115 aa 032032 032032 121 oct 032032032032 -,-,-,- EC-F 000116 aa 060061 062063 122 oct 060061062063 0,1,2,3 F0-3 000117 aa 064065 066067 123 oct 064065066067 4,5,6,7 F4-7 000120 aa 070071 032032 124 oct 070071032032 8,9,-,- F8-B 000121 aa 032032 032032 125 oct 032032032032 -,-,-,- FC-F 126 end  NO LITERALS  NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000122 5a 000003 000000 000123 5a 000040 600000 000124 aa 000000 000000 000125 55 000013 000002 000126 5a 000002 400003 000127 55 000006 000013 000130 aa 023 141 160 154 000131 aa 137 172 143 157 000132 aa 144 145 137 164 000133 aa 157 137 141 163 000134 aa 143 151 151 137 000135 55 000021 000003 000136 0a 000022 400000 000137 55 000016 000003 000140 aa 010 172 141 137 za_table  000141 aa 164 141 142 154 000142 aa 145 000 000 000 000143 55 000031 000013 000144 0a 000000 400000 000145 55 000024 000003 000146 aa 023 141 160 154 apl_zcode_to_ascii_ 000147 aa 137 172 143 157 000150 aa 144 145 137 164 000151 aa 157 137 141 163 000152 aa 143 151 151 137 000153 55 000002 000021 000154 6a 000000 400002 000155 55 000034 000003 000156 aa 014 163 171 155 symbol_table  000157 aa 142 157 154 137 000160 aa 164 141 142 154 000161 aa 145 000 000 000 DEFINITIONS HASH TABLE  000162 aa 000000 000015 000163 aa 000000 000000 000164 aa 000000 000000 000165 5a 000013 000000 000166 aa 000000 000000 000167 aa 000000 000000 000170 aa 000000 000000 000171 5a 000031 000000 000172 aa 000000 000000 000173 5a 000021 000000 000174 aa 000000 000000 000175 aa 000000 000000 000176 aa 000000 000000 000177 aa 000000 000000 NO EXTERNAL NAMES  NO TRAP POINTER WORDS  TYPE PAIR BLOCKS  000200 aa 000001 000000 000201 aa 000000 000000 INTERNAL EXPRESSION WORDS LINKAGE INFORMATION  000000 aa 000000 000000 000001 0a 000122 000000 000002 aa 000000 000000 000003 aa 000000 000000 000004 aa 000000 000000 000005 aa 000000 000000 000006 22 000010 000010 000007 a2 000000 000000 SYMBOL INFORMATION SYMBOL TABLE HEADER  000000 aa 000000 000001 000001 aa 163171 155142 000002 aa 164162 145145 000003 aa 000000 000004 000004 aa 000000 110170 000005 aa 042035 457451 000006 aa 000000 110226 000007 aa 477573 230027 000010 aa 141154 155040 000011 aa 040040 040040 000012 aa 000024 000040 000013 aa 000034 000040 000014 aa 000044 000100 000015 aa 000002 000002 000016 aa 000064 000000 000017 aa 000000 000130 000020 aa 000000 000110 000021 aa 000000 000117 000022 aa 000122 000110 000023 aa 000064 000000 000024 aa 101114 115040 000025 aa 126145 162163 000026 aa 151157 156040 000027 aa 040066 056064 000030 aa 040040 101160 000031 aa 162151 154040 000032 aa 061071 070061 000033 aa 040040 040040 000034 aa 115141 162164 000035 aa 151156 163157 000036 aa 156056 123171 000037 aa 163115 141151 000040 aa 156164 056141 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 154151 163164 000045 aa 040055 164141 000046 aa 162147 145164 000047 aa 040114 145166 000050 aa 145154 066070 000051 aa 040040 040040 000052 aa 040040 040040 000053 aa 040040 040040 000054 aa 040040 040040 000055 aa 040040 040040 000056 aa 040040 040040 000057 aa 040040 040040 000060 aa 040040 040040 000061 aa 040040 040040 000062 aa 040040 040040 000063 aa 040040 040040 000064 aa 000000 000001 000065 aa 000000 000001 000066 aa 000072 000066 000067 aa 102254 630077 000070 aa 000000 110226 000071 aa 335100 000000 000072 aa 076144 165155 >dumps>old_dumps>on>MIB-073181>apl_zcode_to_ascii_.alm  000073 aa 160163 076157 000074 aa 154144 137144 000075 aa 165155 160163 000076 aa 076157 156076 000077 aa 115111 102055 000100 aa 060067 063061 000101 aa 070061 076141 000102 aa 160154 137172 000103 aa 143157 144145 000104 aa 137164 157137 000105 aa 141163 143151 000106 aa 151137 056141 000107 aa 154155 040040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number  0 apl_zcode_to_ascii_ apl_zcode_to_ascii_: 38, 40.  20 mask apl_zcode_to_ascii_: 50, 51, 58. 22 za_table apl_zcode_to_ascii_: 39, 55, 61. NO FATAL ERRORS  ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved