ASSEMBLY LISTING OF SEGMENT >spec>on>pl1-dir>validate_4bit_decimal_.alm ASSEMBLED ON: 04/07/83 1112.8 mst Thu OPTIONS USED: list ASSEMBLED BY: ALM Version 6.4 April 1981 ASSEMBLER CREATED: 11/03/82 1423.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 " Program to assist valid_decimal_....  11 " Written 780815 by PG and JRD. 12 "  000000 13 name validate_4bit_decimal_  000000 14 segdef sign  000022 15 segdef digits  16 "  000002 17 equ value_ptr,2  000004 18 equ sign_offset,4  000006 19 equ sign_result,6  20 "  21 " Entry: validate_4bit_decimal_$sign (value_ptr, sign_offset) returns (bit (1) aligned);  22 "  000000 23 sign:  000000 aa 0 00002 3521 20 24 epp2 ap|value_ptr,* pr2 -> arg1  000001 aa 2 00000 3521 20 25 epp2 pr2|0,* pr2 -> data  000002 aa 0 00004 7211 20 26 lxl1 ap|sign_offset,*  000003 aa 0 00006 3535 20 27 epp3 ap|sign_result,* pr3 -> place to return bit  000004 aa 0 12000 1065 11 28 cmpc (pr,x1),(),fill(12) first sign is 12(8)  000005 aa 200000 040001 29 desc4a pr2|0,1 000006 aa 000000 000000 30 zero  000007 0a 000015 6020 00 31 tnc fail char < 12, i.e. not a sign char 000010 aa 0 17000 1065 11 32 cmpc (pr,x1),(),fill(17) last sign is 17(8)  000011 aa 200000 040001 33 desc4a pr2|0,1 000012 aa 000000 000000 34 zero  000013 0a 000017 6000 00 35 tze ok -17 is OK  000014 0a 000017 6020 00 36 tnc ok <17 is OK, too 37 "  000015 38 fail:  000015 aa 3 00000 4501 00 39 stz pr3|0 return ("0"b)  000016 aa 7 00044 7101 20 40 short_return  41 "  000017 42 ok: 000017 aa 400000 2350 03 43 lda =o400000,du  000020 aa 3 00000 7551 00 44 sta pr3|0 return ("1"b)  000021 aa 7 00044 7101 20 45 short_return  46 "  47 " Entry: validate_4bit_decimal_$digits (value_ptr, digits_offset, digits_length) returns (bit (1) aligned); 48 "  000004 49 equ digits_offset,4  000006 50 equ digits_length,6  000010 51 equ digits_result,8  52 "  000022 53 digits: 000022 aa 0 00002 3521 20 54 epp2 ap|value_ptr,*  000023 aa 2 00000 3521 20 55 epp2 pr2|0,*  000024 aa 0 00004 7211 20 56 lxl1 ap|digits_offset,*  000025 aa 0 00006 7221 20 57 lxl2 ap|digits_length,*  000026 aa 0 00010 3535 20 58 epp3 ap|digits_result,*  000027 aa 0 00000 1645 51 59 tct (pr,rl,x1) 000030 aa 200000 040012 60 desc4a pr2|0,x2  000031 0a 000035 0000 00 61 arg table  000032 aa 3 00000 0001 00 62 arg pr3|0 use return value as a temp!  000033 0a 000017 6064 00 63 ttn ok 000034 0a 000015 7100 00 64 tra fail  65 "  000035 66 table:  000035 aa 000000 000000 67 vfd 9/0,9/0,9/0,9/0  000036 aa 000000 000000 68 vfd 9/0,9/0,9/0,9/0  000037 aa 000000 001001 69 vfd 9/0,9/0,9/1,9/1  000040 aa 001001 001001 70 vfd 9/1,9/1,9/1,9/1  71 end  NO LITERALS  NAME DEFINITIONS FOR ENTRY POINTS AND SEGDEFS 000042 5a 000003 000000 000043 5a 000035 600000 000044 aa 000000 000000 000045 55 000014 000002 000046 5a 000002 400003 000047 55 000006 000014 000050 aa 026 166 141 154 000051 aa 151 144 141 164 000052 aa 145 137 064 142 000053 aa 151 164 137 144 000054 aa 145 143 151 155 000055 aa 141 154 137 000 000056 55 000021 000003 000057 0a 000022 400000 000060 55 000017 000003 000061 aa 006 144 151 147 digits  000062 aa 151 164 163 000 000063 55 000026 000014 000064 0a 000000 400000 000065 55 000024 000003 000066 aa 004 163 151 147 sign  000067 aa 156 000 000 000 000070 55 000002 000021 000071 6a 000000 400002 000072 55 000031 000003 000073 aa 014 163 171 155 symbol_table  000074 aa 142 157 154 137 000075 aa 164 141 142 154 000076 aa 145 000 000 000 DEFINITIONS HASH TABLE  000077 aa 000000 000015 000100 aa 000000 000000 000101 aa 000000 000000 000102 aa 000000 000000 000103 aa 000000 000000 000104 5a 000014 000000 000105 aa 000000 000000 000106 5a 000026 000000 000107 aa 000000 000000 000110 aa 000000 000000 000111 aa 000000 000000 000112 aa 000000 000000 000113 aa 000000 000000 000114 5a 000021 000000 NO EXTERNAL NAMES  NO TRAP POINTER WORDS  TYPE PAIR BLOCKS  000115 aa 000001 000000 000116 aa 000000 000000 INTERNAL EXPRESSION WORDS 000117 aa 000000 000000 LINKAGE INFORMATION 000000 aa 000000 000000 000001 0a 000042 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 111316 000005 aa 510113 575622 000006 aa 000000 111621 000007 aa 265011 046413 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 000123 000020 aa 000000 000105 000021 aa 000000 000112 000022 aa 000115 000105 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 110157 154155 000035 aa 163164 145144 000036 aa 164056 123171 000037 aa 163115 141151 000040 aa 156164 056155 000041 aa 040040 040040 000042 aa 040040 040040 000043 aa 040040 040040 000044 aa 154151 163164 000045 aa 040040 040040 000046 aa 040040 040040 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 000053 000067 aa 116201 150132 000070 aa 000000 111621 000071 aa 253427 600000 000072 aa 076163 160145 >spec>on>pl1-dir>validate_4bit_decimal_.alm 000073 aa 143076 157156 000074 aa 076160 154061 000075 aa 055144 151162 000076 aa 076166 141154 000077 aa 151144 141164 000100 aa 145137 064142 000101 aa 151164 137144 000102 aa 145143 151155 000103 aa 141154 137056 000104 aa 141154 155040 MULTICS ASSEMBLY CROSS REFERENCE LISTING Value Symbol Source file Line number  22 digits validate_4bit_decimal_: 15, 53.  6 digits_length validate_4bit_decimal_: 50, 57.  4 digits_offset validate_4bit_decimal_: 49, 56.  10 digits_result validate_4bit_decimal_: 51, 58.  15 fail validate_4bit_decimal_: 31, 38, 64. 17 ok validate_4bit_decimal_: 35, 36, 42, 63.  0 sign validate_4bit_decimal_: 14, 23.  4 sign_offset validate_4bit_decimal_: 18, 26.  6 sign_result validate_4bit_decimal_: 19, 27.  35 table validate_4bit_decimal_: 61, 66.  2 value_ptr validate_4bit_decimal_: 17, 24, 54. 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