clr fready; ініціалізація прапора готовності 70 0044 C2 79
clr begread; ініціалізація прапора початку читання 71 0046 C2 7C
clr errtemp; генерація сигналу заборонено 72 0048 C2 77
clr notsound 73 004A
74 004A 75 61 00
mov control, # 0 75 004D 75 47 44
mov rcount, # indicat; покажчик на дані для індикації 76 0050 90 03 4E
mov dptr, # seg7ind; адреса масиву кодів індикатора 77 0053
78
; Обнулення тимчасових лічильників 79 0053 75 48 00
mov soundgenl, # 0 80 0056 75 49 00
mov soundgenh, # 0 81 0059 75 62 00
mov minutes, # 0 82 005C
83 005C 75 90 EF
mov p1, # 11101111b; ініціалізація порту, керуючого включенням 84
; певних розрядів індикатора 85 005F
86
; Запуск таймера динамічної індикації 87 005F D2 8E
setb tr1 88 0061
89 0061
waitnew: 90 0061 D2 7B
setb inden; динамічна індикація дозволена 91
92 0063 30 78 FD
jnb fready, $; очікування нових даних з датчика 93 0066 C2 78
clr fready; скидання прапора готовності до наступного разу 94 0068
95
; Визначення довжини паузи 96
; ih, il-довжина імпульсу 97
; ph, pl-довжина імпульсу + довжина паузи 98 0068
99
; Перепишемо в першу чергу дані з спец осередків у регістри, щоб не 100
; втратити їх (дані) 101 0068 AC 42
mov r4, ih 102 006A AD 43
mov r5, il 103 006C AE 40
mov r6, ph 104 006E AF 41
mov r7, pl 105 0070
106
; Знайдемо довжину паузи 107 0070 C3
clr c 108 0071
109 0071 ED
mov a, r5 110 0072 9F
subb a, r7 111 0073 FF
mov r7, a 112 0074
113 0074 EE
mov a, r6 114 0075 9C
subb a, r4 115 0076 FE
mov r6, a; r6, r7-довжина паузи 116
117
; Пересилання довжини імпульсу і паузи в спеціальні трехбайтние змінні 118 0077 78 52
mov r0, # pulse 119 0079 ED
mov a, r5 120 007A F6
mov @ r0, a 121 007B 08
inc r0 122 007C EC
<...