ASSEMBLY LISTING OF SEGMENT >udd>sm>ds>w>ml>gtss_ascii_bcd_.alm ASSEMBLED ON: 04/18/00 1120.5 mdt Tue OPTIONS USED: list symbols ASSEMBLED BY: ALM Version 8.14 March 1989 ASSEMBLER CREATED: 06/09/89 1102.3 mdt Fri 1 " *********************************************************** 2 " * * 3 " * * 4 " * Copyright, (C) Honeywell Information Systems Inc., 1981 * 5 " * * 6 " * * 7 " *********************************************************** 8 9 " ASCII to BCD conversion routine. 10 " 11 " dcl gtss_ascii_bcd_ entry(ptr,FB,ptr); 12 " Parm 1: Pointer to (input) ascii string. 13 " Parm 2: Length of (input) string. 14 " Parm 3: Pointer to (output) bcd string. 15 " (caller must assure output string long enough). 16 " 17 " dcl gtss_print_line_bcd_ entry(ptr,FB,ptr,FB); 18 " MORE 19 " 20 " dcl gtss_ascii_bcd_check_ entry(ptr,FB,ptr,FB); 21 " MORE 22 " 23 " 24 " Author: Dave Ward 05/22/78 25 " (from gcos_cv_ascii_gebcd_) 26 " 000000 27 name gtss_ascii_bcd_ 000000 28 entry gtss_ascii_bcd_ 000012 29 entry gtss_ascii_bcd_check_ 000032 30 entry gtss_printline_bcd_ 31 000000 32 gtss_ascii_bcd_: 000000 aa 0 00002 3521 20 33 eppbp ap|2,* bp -> input data 000001 aa 2 00000 3521 20 34 eppbp bp|0,* 000002 aa 0 00004 2351 20 35 lda ap|4,* a = length 000003 aa 0 00006 3535 20 36 eppbb ap|6,* bb -> output buffer 000004 aa 3 00000 3535 20 37 eppbb bb|0,* 38 000005 aa 0 00140 1605 40 39 join: mvt (pr,rl),(pr,rl) 000006 aa 200000 000005 40 desc9a bp|0,al 000007 aa 300000 020005 41 desc6a bb|0,al 000010 0a 000113 0000 00 42 arg table 43 000011 aa 7 00044 7101 20 44 short_return 45 46 000012 47 gtss_ascii_bcd_check_: 000012 aa 0 00002 3521 20 48 eppbp ap|2,* 000013 aa 2 00000 3521 20 49 eppbp bp|0,* bp -> input data 000014 aa 0 00004 2351 20 50 lda ap|4,* a = length 000015 aa 0 00006 3535 20 51 eppbb ap|6,* bb -> output buffer 000016 aa 3 00000 3535 20 52 eppbb bb|0,* 53 000017 aa 0 00000 1645 40 54 tct (pr,rl) 000020 aa 200000 000005 55 desc9a bp|0,al 000021 0a 000153 0000 00 56 arg tctable 000022 aa 3 00000 0001 00 57 arg bb|0 58 000023 aa 0 00010 4501 20 59 stz ap|8,* 000024 0a 000005 6064 00 60 ttn join no illegal chars found 000025 aa 3 00000 2351 00 61 lda bb|0 000026 aa 777777 3750 07 62 ana -1,dl 000027 aa 000001 0750 07 63 ada 1,dl move count from last good to first bad char 000030 aa 0 00010 7551 20 64 sta ap|8,* store error code 000031 aa 7 00044 7101 20 65 short_return 66 000032 67 gtss_printline_bcd_: 000032 aa 000060 6270 00 68 save 000033 aa 7 00040 2721 20 000034 aa 0 00002 3521 20 69 eppbp ap|2,* bp -> input data 000035 aa 2 00000 3521 20 70 eppbp bp|0,* 000036 aa 0 00004 7271 20 71 lxl7 ap|4,* 000037 aa 0 00006 3535 20 72 eppbb ap|6,* bb -> output buffer 000040 aa 3 00000 3535 20 73 eppbb bb|0,* 000041 aa 6 00052 4501 00 74 stz tally zero output character count 75 000042 aa 0 16003 1245 40 76 scm (pr,rl),(du),mask(016) 000043 aa 200000 000017 77 desc9a bp|0,x7 000044 aa 000000 0000 00 78 arg 0 000045 aa 6 00052 0001 00 79 arg tally 80 000046 aa 6 00052 2361 00 81 ldq tally 000047 0a 000055 6000 00 82 tze ttf 000050 aa 0 00140 1605 40 83 mvt (pr,rl),(pr,rl) 000051 aa 200000 000006 84 desc9a bp|0,ql 000052 aa 300000 020006 85 desc6a bb|0,ql 000053 0a 000113 0000 00 86 arg table 000054 0a 000111 6064 00 87 ttn ret 88 000055 aa 6 00053 4501 00 89 ttf: stz count 90 000056 aa 0 00100 1005 06 91 pull: mlr (pr,ql),(pr),fill(0) 000057 aa 200000 000001 92 desc9a bp|0,1 000060 aa 600051 000004 93 desc9a temp,4 94 000061 aa 6 00051 2351 00 95 lda temp 000062 aa 012000 1150 03 96 cmpa =o012000,du 000063 0a 000077 6010 00 97 tnz not_nl 000064 aa 6 00053 0541 00 98 aos count 000065 aa 000001 0760 07 99 adq 1,dl 000066 aa 0 00004 1161 20 100 cmpq ap|4,* 000067 0a 000056 6040 00 101 tmi pull 000070 aa 6 00053 2351 00 102 put_nl: lda count 000071 aa 000030 7350 00 103 als 24 000072 aa 007700 3750 03 104 ana =o007700,du 000073 aa 770000 2750 03 105 ora =o770000,du 000074 aa 6 00050 7551 00 106 sta NL 000075 aa 6 00050 3521 00 107 eppbp NL 000076 0a 000104 7100 00 108 tra put_cc 109 000077 aa 6 00053 2341 00 110 not_nl: szn count 000100 0a 000070 6010 00 111 tnz put_nl 000101 aa 014000 1150 03 112 cmpa =o014000,du 000102 0a 000111 6010 00 113 tnz ret 000103 0a 000213 3520 00 114 eppbp NP 000104 aa 6 00052 2361 00 115 put_cc: ldq tally 000105 aa 0 00106 1005 00 116 mlr (pr),(pr,ql) 000106 aa 200000 020002 117 desc6a bp|0,2 000107 aa 300000 020002 118 desc6a bb|0,2 000110 aa 000002 0760 07 119 adq 2,dl 120 000111 aa 0 00010 7561 20 121 ret: stq ap|8,* 000112 aa 7 00042 7101 20 122 return 123 000113 aa 020020 020020 124 table: oct 020020020020 000114 aa 020020 020020 125 oct 020020020020 000115 aa 020020 020020 126 oct 020020020020 000116 aa 020020 020020 127 oct 020020020020 000117 aa 020020 020020 128 oct 020020020020 000120 aa 020020 020020 129 oct 020020020020 000121 aa 020020 020020 130 oct 020020020020 000122 aa 020020 020020 131 oct 020020020020 000123 aa 020077 076013 132 oct 020077076013 000124 aa 053074 032057 133 oct 053074032057 000125 aa 035055 054060 134 oct 035055054060 000126 aa 073052 033061 135 oct 073052033061 000127 aa 000001 002003 136 oct 000001002003 000130 aa 004005 006007 137 oct 004005006007 000131 aa 010011 015056 138 oct 010011015056 000132 aa 036075 016017 139 oct 036075016017 000133 aa 014021 022023 140 oct 014021022023 000134 aa 024025 026027 141 oct 024025026027 000135 aa 030031 041042 142 oct 030031041042 000136 aa 043044 045046 143 oct 043044045046 000137 aa 047050 051062 144 oct 047050051062 000140 aa 063064 065066 145 oct 063064065066 000141 aa 067070 071012 146 oct 067070071012 000142 aa 037034 040072 147 oct 037034040072 000143 aa 057021 022023 148 oct 057021022023 000144 aa 024025 026027 149 oct 024025026027 000145 aa 030031 041042 150 oct 030031041042 000146 aa 043044 045046 151 oct 043044045046 000147 aa 047050 051062 152 oct 047050051062 000150 aa 063064 065066 153 oct 063064065066 000151 aa 067070 071012 154 oct 067070071012 000152 aa 040034 020020 155 oct 040034020020 156 000153 aa 777777 777777 157 tctable: dec -1,-1,-1,-1,-1,-1,-1,-1 000154 aa 777777 777777 000155 aa 777777 777777 000156 aa 777777 777777 000157 aa 777777 777777 000160 aa 777777 777777 000161 aa 777777 777777 000162 aa 777777 777777 000163 aa 000000 000000 158 dec 0,0,0,0,0,0,0,0 000164 aa 000000 000000 000165 aa 000000 000000 000166 aa 000000 000000 000167 aa 000000 000000 000170 aa 000000 000000 000171 aa 000000 000000 000172 aa 000000 000000 000173 aa 000000 000000 159 dec 0,0,0,0,0,0,0,0 000174 aa 000000 000000 000175 aa 000000 000000 000176 aa 000000 000000 000177 aa 000000 000000 000200 aa 000000 000000 000201 aa 000000 000000 000202 aa 000000 000000 000203 aa 000000 000000 160 dec 0,0,0,0,0,0,0 000204 aa 000000 000000 000205 aa 000000 000000 000206 aa 000000 000000 000207 aa 000000 000000 000210 aa 000000 000000 000211 aa 000000 000000 000212 aa 000000 001001 161 vfd 9/0,9/0,9/1,9/1 162 000213 aa 772000 000000 163 NP: oct 772000000000 164 temp NL,temp,tally,count 165 end ENTRY SEQUENCES 000214 5a 000033 0000 00 000215 aa 7 00046 2721 20 000216 0a 000000 7100 00 000217 5a 000022 0000 00 000220 aa 7 00046 2721 20 000221 0a 000012 7100 00 000222 5a 000012 0000 00 000223 aa 7 00046 2721 20 000224 0a 000032 7100 00 NO LITERALS NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000226 5a 000003 000000 000227 5a 000051 600000 000230 aa 000000 000000 000231 55 000012 000002 000232 5a 000002 400003 000233 55 000006 000012 000234 aa 017 147 164 163 000235 aa 163 137 141 163 000236 aa 143 151 151 137 000237 aa 142 143 144 137 000240 55 000022 000003 000241 0a 000223 500000 000242 55 000015 000003 000243 aa 023 147 164 163 gtss_printline_bcd_ 000244 aa 163 137 160 162 000245 aa 151 156 164 154 000246 aa 151 156 145 137 000247 aa 142 143 144 137 000250 55 000033 000012 000251 0a 000220 500000 000252 55 000025 000003 000253 aa 025 147 164 163 gtss_ascii_bcd_check_ 000254 aa 163 137 141 163 000255 aa 143 151 151 137 000256 aa 142 143 144 137 000257 aa 143 150 145 143 000260 aa 153 137 000 000 000261 55 000042 000022 000262 0a 000215 500000 000263 55 000036 000003 000264 aa 017 147 164 163 gtss_ascii_bcd_ 000265 aa 163 137 141 163 000266 aa 143 151 151 137 000267 aa 142 143 144 137 000270 55 000002 000033 000271 6a 000000 400002 000272 55 000045 000003 000273 aa 014 163 171 155 symbol_table 000274 aa 142 157 154 137 000275 aa 164 141 142 154 000276 aa 145 000 000 000 DEFINITIONS HASH TABLE 000277 aa 000000 000015 000300 aa 000000 000000 000301 aa 000000 000000 000302 aa 000000 000000 000303 5a 000012 000000 000304 aa 000000 000000 000305 aa 000000 000000 000306 5a 000022 000000 000307 5a 000042 000000 000310 aa 000000 000000 000311 aa 000000 000000 000312 5a 000033 000000 000313 aa 000000 000000 000314 aa 000000 000000 NO EXTERNAL NAMES NO TRAP POINTER WORDS TYPE PAIR BLOCKS 000315 aa 000001 000000 000316 aa 000000 000000 INTERNAL EXPRESSION WORDS 000317 aa 000000 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 000226 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 000010 000004 aa 000000 117244 000005 aa 361023 525721 000006 aa 000000 131036 000007 aa 702771 737550 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 000142 000020 aa 000000 000103 000021 aa 000123 000120 000022 aa 000134 000103 000023 aa 000064 000000 000024 aa 101114 115040 000025 aa 126145 162163 000026 aa 151157 156040 000027 aa 070056 061064 000030 aa 040115 141162 000031 aa 143150 040061 000032 aa 071070 071040 000033 aa 040040 040040 000034 aa 123143 150162 000035 aa 157164 150056 000036 aa 123171 163115 000037 aa 141151 156164 000040 aa 056155 040040 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 154151 163164 000045 aa 040163 171155 000046 aa 142157 154163 000047 aa 040040 040040 000050 aa 040040 040040 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 000043 000067 aa 310157 125667 000070 aa 000000 131036 000071 aa 702772 000000 000072 aa 076165 144144 >udd>sm>ds>w>ml>gtss_ascii_bcd_.alm 000073 aa 076163 155076 000074 aa 144163 076167 000075 aa 076155 154076 000076 aa 147164 163163 000077 aa 137141 163143 000100 aa 151151 137142 000101 aa 143144 137056 000102 aa 141154 155040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number 53 count gtss_ascii_bcd_: 89, 98, 102, 110, 164. 0 gtss_ascii_bcd_ gtss_ascii_bcd_: 28, 32. 12 gtss_ascii_bcd_check_ gtss_ascii_bcd_: 29, 47. 32 gtss_printline_bcd_ gtss_ascii_bcd_: 30, 67. 5 join gtss_ascii_bcd_: 39, 60. 50 NL gtss_ascii_bcd_: 106, 107, 164. 77 not_nl gtss_ascii_bcd_: 97, 110. 213 NP gtss_ascii_bcd_: 114, 163. 56 pull gtss_ascii_bcd_: 91, 101. 104 put_cc gtss_ascii_bcd_: 108, 115. 70 put_nl gtss_ascii_bcd_: 102, 111. 111 ret gtss_ascii_bcd_: 87, 113, 121. 113 table gtss_ascii_bcd_: 42, 86, 124. 52 tally gtss_ascii_bcd_: 74, 79, 81, 115, 164. 153 tctable gtss_ascii_bcd_: 56, 157. 51 temp gtss_ascii_bcd_: 93, 95, 164. 55 ttf gtss_ascii_bcd_: 82, 89. 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