-
Notifications
You must be signed in to change notification settings - Fork 0
/
ET58.lst
16996 lines (16102 loc) · 662 KB
/
ET58.lst
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
ET58.elf: file format elf32-avr
Disassembly of section .text:
00000000 <__vectors>:
0: 0c 94 34 00 jmp 0x68 ; 0x68 <__ctors_end>
4: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
8: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
c: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
10: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
14: 0c 94 10 0a jmp 0x1420 ; 0x1420 <__vector_5>
18: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
1c: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
20: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
24: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
28: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
2c: 0c 94 be 03 jmp 0x77c ; 0x77c <__vector_11>
30: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
34: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
38: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
3c: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
40: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
44: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
48: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
4c: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
50: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
54: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
58: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
5c: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
60: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
64: 0c 94 3e 00 jmp 0x7c ; 0x7c <__bad_interrupt>
00000068 <__ctors_end>:
68: 11 24 eor r1, r1
6a: 1f be out 0x3f, r1 ; 63
6c: cf ef ldi r28, 0xFF ; 255
6e: d8 e0 ldi r29, 0x08 ; 8
70: de bf out 0x3e, r29 ; 62
72: cd bf out 0x3d, r28 ; 61
74: 0e 94 b7 02 call 0x56e ; 0x56e <main>
78: 0c 94 ff 3d jmp 0x7bfe ; 0x7bfe <_exit>
0000007c <__bad_interrupt>:
7c: 0c 94 00 00 jmp 0 ; 0x0 <__vectors>
00000080 <ConstTab>:
...
88: 00 00 nop
8a: 80 00 .word 0x0080 ; ????
...
94: 80 00 .word 0x0080 ; ????
96: 80 00 .word 0x0080 ; ????
98: 00 00 nop
9a: 00 00 nop
9c: 00 00 nop
9e: 80 01 movw r16, r0
...
a8: 7f ff .word 0xff7f ; ????
...
b2: 7f ff .word 0xff7f ; ????
b4: 40 00 .word 0x0040 ; ????
b6: 00 00 nop
b8: 00 00 nop
ba: 00 00 nop
bc: 80 03 fmuls r16, r16
be: 20 00 .word 0x0020 ; ????
c0: 00 00 nop
c2: 00 00 nop
c4: 00 00 nop
c6: 7f fc .word 0xfc7f ; ????
c8: 4c cc rjmp .-1896 ; 0xfffff962 <__eeprom_end+0xff7ef962>
ca: cc cc rjmp .-1640 ; 0xfffffa64 <__eeprom_end+0xff7efa64>
cc: cc cc rjmp .-1640 ; 0xfffffa66 <__eeprom_end+0xff7efa66>
ce: cc cd rjmp .-1128 ; 0xfffffc68 <__eeprom_end+0xff7efc68>
d0: 80 06 cpc r8, r16
d2: 48 00 .word 0x0048 ; ????
d4: 00 00 nop
d6: 00 00 nop
d8: 00 00 nop
da: 7f f9 .word 0xf97f ; ????
dc: 23 d7 rcall .+3654 ; 0xf24 <LoadByte+0x12>
de: 0a 3d cpi r16, 0xDA ; 218
e0: 70 a3 std Z+32, r23 ; 0x20
e2: d7 0a sbc r13, r23
e4: 7f f2 brie .-98 ; 0x84 <ConstTab+0x4>
e6: 51 b7 in r21, 0x31 ; 49
e8: 17 58 subi r17, 0x87 ; 135
ea: e2 19 sub r30, r2
ec: 65 2c mov r6, r5
ee: 7f e5 ldi r23, 0x5F ; 95
f0: 2b cc rjmp .-1962 ; 0xfffff948 <__eeprom_end+0xff7ef948>
f2: 77 11 cpse r23, r7
f4: 84 61 ori r24, 0x14 ; 20
f6: ce fd .word 0xfdce ; ????
f8: 7f ff .word 0xff7f ; ????
fa: 31 72 andi r19, 0x21 ; 33
fc: 17 f7 brid .-60 ; 0xc2 <ConstTab+0x42>
fe: d1 cf rjmp .-94 ; 0xa2 <ConstTab+0x22>
100: 79 ac ldd r7, Y+57 ; 0x39
102: 80 00 .word 0x0080 ; ????
104: 38 aa std Y+48, r3 ; 0x30
106: 3b 29 or r19, r11
108: 5c 17 cp r21, r28
10a: f0 bc out 0x20, r15 ; 32
10c: 80 01 movw r16, r0
10e: 13 5d subi r17, 0xD3 ; 211
110: 8d dd rcall .-1254 ; 0xfffffc2c <__eeprom_end+0xff7efc2c>
112: aa a8 ldd r10, Y+50 ; 0x32
114: ac 17 cp r26, r28
116: 7f fe .word 0xfe7f ; ????
118: 5e 5b subi r21, 0xBE ; 190
11a: d8 a9 ldd r29, Y+48 ; 0x30
11c: 37 28 or r3, r7
11e: 71 95 neg r23
120: 7f fe .word 0xfe7f ; ????
122: 1a 20 and r1, r10
124: 9a 84 ldd r9, Y+10 ; 0x0a
126: fb cf rjmp .-10 ; 0x11e <ConstTab+0x9e>
128: f7 99 sbic 0x1e, 7 ; 30
12a: 80 01 movw r16, r0
12c: 54 9a sbi 0x0a, 4 ; 10
12e: 78 4b sbci r23, 0xB8 ; 184
130: cd 1b sub r28, r29
132: 8a fe .word 0xfe8a ; ????
134: 80 0e add r8, r16
136: 33 e3 ldi r19, 0x33 ; 51
138: b3 ad ldd r27, Z+59 ; 0x3b
13a: 16 d2 rcall .+1068 ; 0x568 <Fatal+0x10>
13c: e6 12 cpse r14, r22
13e: 80 0e add r8, r16
140: b3 e3 ldi r27, 0x33 ; 51
142: b3 ad ldd r27, Z+59 ; 0x3b
144: 16 d2 rcall .+1068 ; 0x572 <main+0x4>
146: e6 12 cpse r14, r22
148: 80 01 movw r16, r0
14a: 2d f8 .word 0xf82d ; ????
14c: 54 58 subi r21, 0x84 ; 132
14e: a2 bb out 0x12, r26 ; 18
150: 4a 9b sbis 0x09, 2 ; 9
152: 80 00 .word 0x0080 ; ????
154: 49 0f add r20, r25
156: da a2 std Y+34, r13 ; 0x22
158: 21 68 ori r18, 0x81 ; 129
15a: c2 35 cpi r28, 0x52 ; 82
15c: 80 01 movw r16, r0
15e: 49 0f add r20, r25
160: da a2 std Y+34, r13 ; 0x22
162: 21 68 ori r18, 0x81 ; 129
164: c2 35 cpi r28, 0x52 ; 82
166: 80 02 muls r24, r16
168: 49 0f add r20, r25
16a: da a2 std Y+34, r13 ; 0x22
16c: 21 68 ori r18, 0x81 ; 129
16e: c2 35 cpi r28, 0x52 ; 82
170: 7f fd .word 0xfd7f ; ????
172: 22 f9 bld r18, 2
174: 83 6e ori r24, 0xE3 ; 227
176: 4e 44 sbci r20, 0x4E ; 78
178: 15 2a or r1, r21
17a: 7f ff .word 0xff7f ; ????
17c: 6b 3f cpi r22, 0xFB ; 251
17e: 8e 43 sbci r24, 0x3E ; 62
180: 25 f5 brhc .+72 ; 0x1ca <ExpTab+0xa>
182: a5 35 cpi r26, 0x55 ; 85
184: 80 05 cpc r24, r0
186: 65 2e mov r6, r21
188: e0 d3 rcall .+1984 ; 0x94a <FontColL+0x4>
18a: 1e 0f add r17, r30
18c: bd c3 rjmp .+1914 ; 0x908 <FontDef+0x2>
18e: 7f fa .word 0xfa7f ; ????
190: 0e fa .word 0xfa0e ; ????
192: 35 12 cpse r3, r21
194: 94 e9 ldi r25, 0x94 ; 148
196: c8 ae std Y+56, r12 ; 0x38
198: 80 05 cpc r24, r0
19a: 7e a5 ldd r23, Y+46 ; 0x2e
19c: dd 5c subi r29, 0xCD ; 205
19e: 5a 4a sbci r21, 0xAA ; 170
1a0: 61 12 cpse r6, r17
1a2: 7f fa .word 0xfa7f ; ????
1a4: 00 ad ldd r16, Z+56 ; 0x38
1a6: fc 90 ld r15, X
1a8: b9 38 cpi r27, 0x89 ; 137
1aa: ce 36 cpi r28, 0x6E ; 110
1ac: 80 00 .word 0x0080 ; ????
1ae: 4f 1b sub r20, r31
1b0: bc dc rcall .-1672 ; 0xfffffb2a <__eeprom_end+0xff7efb2a>
1b2: bf a5 ldd r27, Y+47 ; 0x2f
1b4: 3e 0b sbc r19, r30
1b6: 80 09 sbc r24, r0
1b8: 79 ff .word 0xff79 ; ????
1ba: 5c 28 or r5, r12
1bc: f5 c2 rjmp .+1514 ; 0x7a8 <__vector_11+0x2c>
1be: 8f 5e subi r24, 0xEF ; 239
000001c0 <ExpTab>:
1c0: 15 b2 in r1, 0x15 ; 21
1c2: 59 86 std Y+9, r5 ; 0x09
1c4: c2 0b sbc r28, r18
1c6: 68 6d ori r22, 0xD8 ; 216
1c8: a8 69 ori r26, 0x98 ; 152
1ca: 4a d9 rcall .-3436 ; 0xfffff460 <__eeprom_end+0xff7ef460>
1cc: 26 dd rcall .-1460 ; 0xfffffc1a <__eeprom_end+0xff7efc1a>
1ce: 04 c8 rjmp .-4088 ; 0xfffff1d8 <__eeprom_end+0xff7ef1d8>
1d0: d2 ce rjmp .-604 ; 0xffffff76 <__eeprom_end+0xff7eff76>
1d2: 9f de rcall .-706 ; 0xffffff12 <__eeprom_end+0xff7eff12>
1d4: 65 6c ori r22, 0xC5 ; 197
1d6: 4e ae std Y+62, r4 ; 0x3e
1d8: 53 4f sbci r21, 0xF3 ; 243
1da: 34 36 cpi r19, 0x64 ; 100
1dc: 2d e4 ldi r18, 0x4D ; 77
1de: 72 b6 in r7, 0x32 ; 50
1e0: 22 a6 std Z+42, r2 ; 0x2a
1e2: 82 a5 ldd r24, Z+42 ; 0x2a
1e4: da 57 subi r29, 0x7A ; 122
1e6: c0 be out 0x30, r12 ; 48
1e8: 79 5b subi r23, 0xB9 ; 185
1ea: 10 49 sbci r17, 0x90 ; 144
1ec: ee 32 cpi r30, 0x2E ; 46
1ee: db 23 and r29, r27
1f0: d2 1c adc r13, r2
1f2: 7c ad ldd r23, Y+60 ; 0x3c
1f4: 40 31 cpi r20, 0x10 ; 16
1f6: 43 25 eor r20, r3
1f8: 63 7a andi r22, 0xA3 ; 163
1fa: 19 3a cpi r17, 0xA9 ; 169
1fc: 7e 56 subi r23, 0x6E ; 110
1fe: 5d d0 rcall .+186 ; 0x2ba <ExpTab+0xfa>
200: 46 7c andi r20, 0xC6 ; 198
202: 64 bc out 0x24, r6 ; 36
204: e4 a1 ldd r30, Z+36 ; 0x24
206: 7f 2b or r23, r31
208: 28 7f andi r18, 0xF8 ; 248
20a: ea 27 eor r30, r26
20c: a5 39 cpi r26, 0x95 ; 149
20e: e9 a5 ldd r30, Y+41 ; 0x29
210: 7f 95 4f b1 call 0x5f629e ; 0x5f629e <_etext+0x5ee69c>
214: 1e ad ldd r17, Y+62 ; 0x3e
216: 45 39 cpi r20, 0x95 ; 149
218: 94 ba out 0x14, r9 ; 20
21a: 7f ca rjmp .-2818 ; 0xfffff71a <__eeprom_end+0xff7ef71a>
21c: 66 95 lsr r22
21e: 94 be out 0x34, r9 ; 52
220: c4 4d sbci r28, 0xD4 ; 212
222: e1 5b subi r30, 0xB1 ; 177
224: 7f e5 ldi r23, 0x5F ; 95
226: 2b cc rjmp .-1962 ; 0xfffffa7e <__eeprom_end+0xff7efa7e>
228: 77 11 cpse r23, r7
22a: 84 61 ori r24, 0x14 ; 20
22c: ce fd .word 0xfdce ; ????
22e: 7f f2 brie .-98 ; 0x1ce <ExpTab+0xe>
230: 51 b7 in r21, 0x31 ; 49
232: 17 58 subi r17, 0x87 ; 135
234: e2 19 sub r30, r2
236: 65 2c mov r6, r5
238: 7f f9 .word 0xf97f ; ????
23a: 23 d7 rcall .+3654 ; 0x1082 <FindLab+0x1c>
23c: 0a 3d cpi r16, 0xDA ; 218
23e: 70 a3 std Z+32, r23 ; 0x20
240: d7 0a sbc r13, r23
242: 7f fc .word 0xfc7f ; ????
244: 4c cc rjmp .-1896 ; 0xfffffade <__eeprom_end+0xff7efade>
246: cc cc rjmp .-1640 ; 0xfffffbe0 <__eeprom_end+0xff7efbe0>
248: cc cc rjmp .-1640 ; 0xfffffbe2 <__eeprom_end+0xff7efbe2>
24a: cc cd rjmp .-1128 ; 0xfffffde4 <__eeprom_end+0xff7efde4>
24c: 80 00 .word 0x0080 ; ????
...
256: 80 03 fmuls r16, r16
258: 20 00 .word 0x0020 ; ????
25a: 00 00 nop
25c: 00 00 nop
25e: 00 00 nop
260: 80 06 cpc r8, r16
262: 48 00 .word 0x0048 ; ????
264: 00 00 nop
266: 00 00 nop
268: 00 00 nop
26a: 80 0d add r24, r0
26c: 1c 40 sbci r17, 0x0C ; 12
26e: 00 00 nop
270: 00 00 nop
272: 00 00 nop
274: 80 1a sub r8, r16
276: 3e bc out 0x2e, r3 ; 46
278: 20 00 .word 0x0020 ; ????
27a: 00 00 nop
27c: 00 00 nop
27e: 80 35 cpi r24, 0x50 ; 80
280: 0e 1b sub r16, r30
282: c9 bf out 0x39, r28 ; 57
284: 04 00 .word 0x0004 ; ????
286: 00 00 nop
288: 80 6a ori r24, 0xA0 ; 160
28a: 1d c5 rjmp .+2618 ; 0xcc6 <DispName+0xdc>
28c: ad a8 ldd r10, Y+53 ; 0x35
28e: 2b 70 andi r18, 0x0B ; 11
290: b5 9e mul r11, r21
292: 80 d4 rcall .+2304 ; 0xb94 <DispTextRom+0x6>
294: 42 78 andi r20, 0x82 ; 130
296: 1f 49 sbci r17, 0x9F ; 159
298: ff cf rjmp .-2 ; 0x298 <ExpTab+0xd8>
29a: a6 d5 rcall .+2892 ; 0xde8 <DispName+0x1fe>
29c: 81 a9 ldd r24, Z+49 ; 0x31
29e: 13 ba out 0x13, r1 ; 19
2a0: 47 c9 rjmp .-3442 ; 0xfffff530 <__eeprom_end+0xff7ef530>
2a2: 80 e9 ldi r24, 0x90 ; 144
2a4: 8c e0 ldi r24, 0x0C ; 12
2a6: 83 52 subi r24, 0x23 ; 35
2a8: 2a 7e andi r18, 0xEA ; 234
2aa: eb fb .word 0xfbeb ; ????
2ac: 9d f9 .word 0xf99d ; ????
2ae: de 8e std Y+30, r13 ; 0x1e
2b0: 86 a4 ldd r8, Z+46 ; 0x2e
2b2: 63 19 sub r22, r3
2b4: a0 ae std Z+56, r10 ; 0x38
2b6: a6 0e add r10, r22
2b8: 91 c7 rjmp .+3874 ; 0x11dc <LimitGetAddr+0x2>
2ba: 8d 49 sbci r24, 0x9D ; 157
2bc: 49 76 andi r20, 0x69 ; 105
2be: 75 86 std Z+13, r7 ; 0x0d
2c0: 81 75 andi r24, 0x51 ; 81
2c2: 0c 17 cp r16, r28
2c4: 9a 93 st -Y, r25
2c6: 1e 8b std Y+22, r17 ; 0x16
2c8: 3b 5d subi r19, 0xDB ; 219
2ca: c5 3d cpi r28, 0xD5 ; 213
2cc: 5d e5 ldi r21, 0x5D ; 93
2ce: b5 26 eor r11, r21
2d0: 44 60 ori r20, 0x04 ; 4
2d2: 52 02 muls r21, r18
2d4: 8a 20 and r8, r10
2d6: 97 9b sbis 0x12, 7 ; 18
2d8: ea 4d sbci r30, 0xDA ; 218
2da: 16 a3 std Z+38, r17 ; 0x26
2dc: a1 d1 rcall .+834 ; 0x620 <main+0xb2>
2de: 7f af std Y+63, r23 ; 0x3f
2e0: 21 1a sub r2, r17
000002e2 <RoundTab>:
2e2: 80 02 muls r24, r16
2e4: 20 00 .word 0x0020 ; ????
2e6: 00 00 nop
2e8: 00 00 nop
2ea: 00 00 nop
2ec: 7f ff .word 0xff7f ; ????
...
2f6: 7f fb .word 0xfb7f ; ????
2f8: 4c cc rjmp .-1896 ; 0xfffffb92 <__eeprom_end+0xff7efb92>
2fa: cc cc rjmp .-1640 ; 0xfffffc94 <__eeprom_end+0xff7efc94>
2fc: cc cc rjmp .-1640 ; 0xfffffc96 <__eeprom_end+0xff7efc96>
2fe: cc cd rjmp .-1128 ; 0xfffffe98 <__eeprom_end+0xff7efe98>
300: 7f f8 .word 0xf87f ; ????
302: 23 d7 rcall .+3654 ; 0x114a <LoadAddr5+0x24>
304: 0a 3d cpi r16, 0xDA ; 218
306: 70 a3 std Z+32, r23 ; 0x20
308: d7 0a sbc r13, r23
30a: 7f f5 brid .+94 ; 0x36a <RoundTab+0x88>
30c: 03 12 cpse r0, r19
30e: 6e 97 sbiw r28, 0x1e ; 30
310: 8d 4f sbci r24, 0xFD ; 253
312: df 3b cpi r29, 0xBF ; 191
314: 7f f1 brie .+94 ; 0x374 <RoundTab+0x92>
316: 51 b7 in r21, 0x31 ; 49
318: 17 58 subi r17, 0x87 ; 135
31a: e2 19 sub r30, r2
31c: 65 2c mov r6, r5
31e: 7f ee ldi r23, 0xEF ; 239
320: 27 c5 rjmp .+2638 ; 0xd70 <DispName+0x186>
322: ac 47 sbci r26, 0x7C ; 124
324: 1b 47 sbci r17, 0x7B ; 123
326: 84 23 and r24, r20
328: 7f eb ldi r23, 0xBF ; 191
32a: 06 37 cpi r16, 0x76 ; 118
32c: bd 05 cpc r27, r13
32e: af 6c ori r26, 0xCF ; 207
330: 69 b6 in r6, 0x39 ; 57
332: 7f e7 ldi r23, 0x7F ; 127
334: 56 bf out 0x36, r21 ; 54
336: 94 d5 rcall .+2856 ; 0xe60 <KeyLen+0x6>
338: e5 7a andi r30, 0xA5 ; 165
33a: 42 bc out 0x22, r4 ; 34
33c: 7f e4 ldi r23, 0x4F ; 79
33e: 2b cc rjmp .-1962 ; 0xfffffb96 <__eeprom_end+0xff7efb96>
340: 77 11 cpse r23, r7
342: 84 61 ori r24, 0x14 ; 20
344: ce fd .word 0xfdce ; ????
346: 7f e1 ldi r23, 0x1F ; 31
348: 09 70 andi r16, 0x09 ; 9
34a: 5f 41 sbci r21, 0x1F ; 31
34c: 36 b4 in r3, 0x26 ; 38
34e: a5 97 sbiw r28, 0x25 ; 37
350: 7f dd rcall .-1282 ; 0xfffffe50 <__eeprom_end+0xff7efe50>
352: 5b e6 ldi r21, 0x6B ; 107
354: fe ce rjmp .-516 ; 0x152 <ConstTab+0xd2>
356: bd ed ldi r27, 0xDD ; 221
358: d5 bf out 0x35, r29 ; 53
35a: 7f da rcall .-2818 ; 0xfffff85a <__eeprom_end+0xff7ef85a>
35c: 2f eb ldi r18, 0xBF ; 191
35e: ff 0b sbc r31, r31
360: cb 24 eor r12, r11
362: aa ff .word 0xffaa ; ????
364: 7f d7 rcall .+3838 ; 0x1264 <ExecDel+0x22>
366: 0c bc out 0x2c, r0 ; 44
368: cc 09 sbc r28, r12
36a: 6f 50 subi r22, 0x0F ; 15
36c: 88 cc rjmp .-1776 ; 0xfffffc7e <__eeprom_end+0xff7efc7e>
36e: 7f d3 rcall .+1790 ; 0xa6e <LCD_OutNibble+0x1e>
370: 61 2e mov r6, r17
372: 13 42 sbci r17, 0x23 ; 35
374: 4b b4 in r4, 0x2b ; 43
376: 0e 13 cpse r16, r30
378: 7f d0 rcall .+254 ; 0x478 <ADC_Temp2+0x2a>
37a: 34 24 eor r3, r4
37c: dc 35 cpi r29, 0x5C ; 92
37e: 09 5c subi r16, 0xC9 ; 201
380: d8 0f add r29, r24
382: 7f cd rjmp .-1282 ; 0xfffffe82 <__eeprom_end+0xff7efe82>
384: 10 1d adc r17, r0
386: 7c f7 brge .-34 ; 0x366 <RoundTab+0x84>
388: 3a b0 in r3, 0x0a ; 10
38a: ac d9 rcall .-3240 ; 0xfffff6e4 <__eeprom_end+0xff7ef6e4>
38c: 7f c9 rjmp .-3330 ; 0xfffff68c <__eeprom_end+0xff7ef68c>
38e: 66 95 lsr r22
390: 94 be out 0x34, r9 ; 52
392: c4 4d sbci r28, 0xD4 ; 212
394: e1 5b subi r30, 0xB1 ; 177
396: 7f c6 rjmp .+3326 ; 0x1096 <FindLab+0x30>
398: 38 77 andi r19, 0x78 ; 120
39a: aa 32 cpi r26, 0x2A ; 42
39c: 36 a4 ldd r3, Z+46 ; 0x2e
39e: b4 49 sbci r27, 0x94 ; 148
3a0: 7f c3 rjmp .+1790 ; 0xaa0 <DispChar+0x20>
3a2: 13 92 .word 0x9213 ; ????
3a4: ee 8e std Y+30, r14 ; 0x1e
3a6: 92 1d adc r25, r2
3a8: 5d 07 cpc r21, r29
3aa: 7f bf out 0x3f, r23 ; 63
3ac: 6c 1e adc r6, r28
3ae: 4a 7d andi r20, 0xDA ; 218
3b0: b6 95 lsr r27
3b2: 61 a5 ldd r22, Z+41 ; 0x29
3b4: 7f bc out 0x2f, r7 ; 47
3b6: 3c e5 ldi r19, 0x5C ; 92
3b8: 08 64 ori r16, 0x48 ; 72
3ba: 92 11 cpse r25, r2
3bc: 1a eb ldi r17, 0xBA ; 186
000003be <FactATab>:
3be: 7f fc .word 0xfc7f ; ????
3c0: 2a aa std Y+50, r2 ; 0x32
3c2: aa aa std Y+50, r10 ; 0x32
3c4: aa aa std Y+50, r10 ; 0x32
3c6: aa ab std Y+50, r26 ; 0x32
3c8: 7f fb .word 0xfb7f ; ????
3ca: 08 88 ldd r0, Y+16 ; 0x10
3cc: 88 88 ldd r8, Y+16 ; 0x10
3ce: 88 88 ldd r8, Y+16 ; 0x10
3d0: 88 89 ldd r24, Y+16 ; 0x10
3d2: 7f fe .word 0xfe7f ; ????
3d4: 01 38 cpi r16, 0x81 ; 129
3d6: 13 81 ldd r17, Z+3 ; 0x03
3d8: 38 13 cpse r19, r24
3da: 81 38 cpi r24, 0x81 ; 129
3dc: 7f ff .word 0xff7f ; ????
3de: 06 8e std Z+30, r0 ; 0x1e
3e0: 25 42 sbci r18, 0x25 ; 37
3e2: ee bf out 0x3e, r30 ; 62
3e4: d3 d7 rcall .+4006 ; 0x138c <Program2Dig+0x4>
3e6: 80 00 .word 0x0080 ; ????
3e8: 01 79 andi r16, 0x91 ; 145
3ea: 96 80 ldd r9, Z+6 ; 0x06
3ec: 60 8f std Z+24, r22 ; 0x18
3ee: 09 61 ori r16, 0x19 ; 25
3f0: 80 00 .word 0x0080 ; ????
3f2: 42 3c cpi r20, 0xC2 ; 194
3f4: 93 97 sbiw r26, 0x23 ; 35
3f6: d3 db rcall .-2138 ; 0xfffffb9e <__eeprom_end+0xff7efb9e>
3f8: df 49 sbci r29, 0x9F ; 159
3fa: 80 01 movw r16, r0
3fc: 11 3f cpi r17, 0xF1 ; 241
3fe: 4e ae std Y+62, r4 ; 0x3e
400: b5 f1 brhs .+108 ; 0x46e <ADC_Temp2+0x20>
402: eb 8e std Y+27, r14 ; 0x1b
404: 80 01 movw r16, r0
406: 40 a2 std Z+32, r4 ; 0x20
408: 7c 85 ldd r23, Y+12 ; 0x0c
40a: 30 b4 in r3, 0x20 ; 32
40c: 6f fa .word 0xfa6f ; ????
40e: 80 02 muls r24, r16
410: 00 dc rcall .-2048 ; 0xfffffc12 <__eeprom_end+0xff7efc12>
412: 42 87 std Z+10, r20 ; 0x0a
414: 79 8b std Y+17, r23 ; 0x11
416: d0 d5 rcall .+2976 ; 0xfb8 <StartInKey+0x4>
418: 80 02 muls r24, r16
41a: 20 16 cp r2, r16
41c: ad 16 cp r10, r29
41e: 09 f5 brne .+66 ; 0x462 <ADC_Temp2+0x14>
420: ba 5d subi r27, 0xDA ; 218
422: 80 02 muls r24, r16
424: 49 15 cp r20, r9
426: cd 4c sbci r28, 0xCD ; 205
428: 93 b8 out 0x03, r9 ; 3
42a: d6 ae std Z+62, r13 ; 0x3e
42c: 80 02 muls r24, r16
42e: 6f de rcall .-802 ; 0x10e <ConstTab+0x8e>
430: 91 c7 rjmp .+3874 ; 0x1354 <ProgramSubst2+0xe>
432: 83 36 cpi r24, 0x63 ; 99
434: dd 37 cpi r29, 0x7D ; 125
00000436 <ADC_Vcc>:
436: 4e e4 ldi r20, 0x4E ; 78
438: 0a d0 rcall .+20 ; 0x44e <ADC_Temp2>
43a: ac 01 movw r20, r24
43c: 99 27 eor r25, r25
43e: 81 e0 ldi r24, 0x01 ; 1
440: 75 eb ldi r23, 0xB5 ; 181
442: 60 e8 ldi r22, 0x80 ; 128
444: 0e 94 52 23 call 0x46a4 ; 0x46a4 <DivDWW>
448: 07 97 sbiw r24, 0x07 ; 7
44a: 08 95 ret
0000044c <ADC_Temp>:
44c: 48 ec ldi r20, 0xC8 ; 200
0000044e <ADC_Temp2>:
44e: 50 91 64 00 lds r21, 0x0064
452: 5e 7f andi r21, 0xFE ; 254
454: 50 93 64 00 sts 0x0064, r21
458: 40 93 7c 00 sts 0x007C, r20
45c: 77 27 eor r23, r23
45e: 88 27 eor r24, r24
460: 99 27 eor r25, r25
462: 66 27 eor r22, r22
464: 46 ec ldi r20, 0xC6 ; 198
466: 40 93 7a 00 sts 0x007A, r20
46a: 40 91 7a 00 lds r20, 0x007A
46e: 40 74 andi r20, 0x40 ; 64
470: e1 f7 brne .-8 ; 0x46a <ADC_Temp2+0x1c>
472: 40 91 78 00 lds r20, 0x0078
476: 50 91 79 00 lds r21, 0x0079
47a: 53 70 andi r21, 0x03 ; 3
47c: 74 0f add r23, r20
47e: 85 1f adc r24, r21
480: 91 1d adc r25, r1
482: 6a 95 dec r22
484: 79 f7 brne .-34 ; 0x464 <ADC_Temp2+0x16>
486: 70 58 subi r23, 0x80 ; 128
488: 81 09 sbc r24, r1
48a: 91 09 sbc r25, r1
48c: 10 92 7a 00 sts 0x007A, r1
490: 10 92 7c 00 sts 0x007C, r1
494: 50 91 64 00 lds r21, 0x0064
498: 51 60 ori r21, 0x01 ; 1
49a: 50 93 64 00 sts 0x0064, r21
49e: 08 95 ret
000004a0 <CrcErr>:
4a0: 43 52 subi r20, 0x23 ; 35
4a2: 43 20 and r4, r3
4a4: 45 72 andi r20, 0x25 ; 37
4a6: 72 6f ori r23, 0xF2 ; 242
4a8: 72 00 .word 0x0072 ; ????
000004aa <LogoText>:
4aa: 77 77 andi r23, 0x77 ; 119
4ac: 77 2e mov r7, r23
4ae: 70 61 ori r23, 0x10 ; 16
4b0: 6a 65 ori r22, 0x5A ; 90
4b2: 6e 69 ori r22, 0x9E ; 158
4b4: 63 6b ori r22, 0xB3 ; 179
4b6: 6f 2e mov r6, r31
4b8: 63 7a andi r22, 0xA3 ; 163
...
000004bc <DispBuild>:
4bc: 0e 94 c0 05 call 0xb80 ; 0xb80 <DispSetRow1>
4c0: e2 ee ldi r30, 0xE2 ; 226
4c2: f6 e0 ldi r31, 0x06 ; 6
4c4: 0e 94 c7 05 call 0xb8e ; 0xb8e <DispTextRom>
4c8: 0e 94 da 05 call 0xbb4 ; 0xbb4 <DispSpcClr>
4cc: 0e 94 bd 05 call 0xb7a ; 0xb7a <DispSetRow2>
4d0: ea ea ldi r30, 0xAA ; 170
4d2: f4 e0 ldi r31, 0x04 ; 4
4d4: 0e 94 c7 05 call 0xb8e ; 0xb8e <DispTextRom>
4d8: 0e 94 da 05 call 0xbb4 ; 0xbb4 <DispSpcClr>
4dc: 0e 94 88 03 call 0x710 ; 0x710 <Wait1s>
4e0: 0c 94 25 0b jmp 0x164a ; 0x164a <Disp>
000004e4 <Crc1>:
4e4: 79 2f mov r23, r25
4e6: 98 2f mov r25, r24
4e8: 87 2f mov r24, r23
4ea: 86 27 eor r24, r22
4ec: 78 2f mov r23, r24
4ee: 72 95 swap r23
4f0: 7f 70 andi r23, 0x0F ; 15
4f2: 87 27 eor r24, r23
4f4: 78 2f mov r23, r24
4f6: 72 95 swap r23
4f8: 70 7f andi r23, 0xF0 ; 240
4fa: 97 27 eor r25, r23
4fc: 78 2f mov r23, r24
4fe: 76 95 lsr r23
500: 76 95 lsr r23
502: 76 95 lsr r23
504: 97 27 eor r25, r23
506: 78 2f mov r23, r24
508: 72 95 swap r23
50a: 77 0f add r23, r23
50c: 70 7e andi r23, 0xE0 ; 224
50e: 87 27 eor r24, r23
510: 08 95 ret
00000512 <GetCrc>:
512: ff 27 eor r31, r31
514: ee 27 eor r30, r30
516: 99 27 eor r25, r25
518: 88 27 eor r24, r24
51a: 65 91 lpm r22, Z+
51c: e3 df rcall .-58 ; 0x4e4 <Crc1>
51e: fc 37 cpi r31, 0x7C ; 124
520: e1 f7 brne .-8 ; 0x51a <GetCrc+0x8>
522: e2 30 cpi r30, 0x02 ; 2
524: d1 f7 brne .-12 ; 0x51a <GetCrc+0x8>
526: 08 95 ret
00000528 <SleepUpdate>:
528: 8f 93 push r24
52a: 8c 81 ldd r24, Y+4 ; 0x04
52c: 80 93 3b 01 sts 0x013B, r24
530: 8d 81 ldd r24, Y+5 ; 0x05
532: 80 93 3c 01 sts 0x013C, r24
536: 8f 91 pop r24
538: 08 95 ret
0000053a <PortInit>:
53a: 8b e9 ldi r24, 0x9B ; 155
53c: 85 b9 out 0x05, r24 ; 5
53e: 80 e4 ldi r24, 0x40 ; 64
540: 84 b9 out 0x04, r24 ; 4
542: e2 d0 rcall .+452 ; 0x708 <Wait10ms>
544: 80 ec ldi r24, 0xC0 ; 192
546: 84 b9 out 0x04, r24 ; 4
548: 85 e3 ldi r24, 0x35 ; 53
54a: 88 b9 out 0x08, r24 ; 8
54c: 17 b8 out 0x07, r1 ; 7
54e: 80 e8 ldi r24, 0x80 ; 128
550: 8b b9 out 0x0b, r24 ; 11
552: 8f e5 ldi r24, 0x5F ; 95
554: 8a b9 out 0x0a, r24 ; 10
556: 08 95 ret
00000558 <Fatal>:
558: f8 94 cli
55a: 0e 94 34 26 call 0x4c68 ; 0x4c68 <CalcInit>
55e: 0e 94 c1 11 call 0x2382 ; 0x2382 <StopProg>
562: 8f ef ldi r24, 0xFF ; 255
564: 98 e0 ldi r25, 0x08 ; 8
566: 9e bf out 0x3e, r25 ; 62
568: 8d bf out 0x3d, r24 ; 61
56a: f5 9a sbi 0x1e, 5 ; 30
56c: 72 c0 rjmp .+228 ; 0x652 <Restart>
0000056e <main>:
56e: 11 24 eor r1, r1
570: c0 e0 ldi r28, 0x00 ; 0
572: d1 e0 ldi r29, 0x01 ; 1
574: 1f be out 0x3f, r1 ; 63
576: e0 e0 ldi r30, 0x00 ; 0
578: f1 e0 ldi r31, 0x01 ; 1
57a: 99 e0 ldi r25, 0x09 ; 9
57c: 11 92 st Z+, r1
57e: e0 30 cpi r30, 0x00 ; 0
580: f9 07 cpc r31, r25
582: e1 f7 brne .-8 ; 0x57c <main+0xe>
584: 8f ef ldi r24, 0xFF ; 255
586: 98 e0 ldi r25, 0x08 ; 8
588: 9e bf out 0x3e, r25 ; 62
58a: 8d bf out 0x3d, r24 ; 61
58c: d6 df rcall .-84 ; 0x53a <PortInit>
58e: 87 ec ldi r24, 0xC7 ; 199
590: 80 93 64 00 sts 0x0064, r24
594: 8f ef ldi r24, 0xFF ; 255
596: 80 93 7e 00 sts 0x007E, r24
59a: 8e e3 ldi r24, 0x3E ; 62
59c: bd d0 rcall .+378 ; 0x718 <Waitms>
59e: 80 e8 ldi r24, 0x80 ; 128
5a0: 91 e0 ldi r25, 0x01 ; 1
5a2: 80 93 61 00 sts 0x0061, r24
5a6: 90 93 61 00 sts 0x0061, r25
5aa: aa ef ldi r26, 0xFA ; 250
5ac: b3 e0 ldi r27, 0x03 ; 3
5ae: 0e 94 f1 05 call 0xbe2 ; 0xbe2 <_EERead>
5b2: 8a 30 cpi r24, 0x0A ; 10
5b4: 08 f0 brcs .+2 ; 0x5b8 <main+0x4a>
5b6: 84 e0 ldi r24, 0x04 ; 4
5b8: 8b 83 std Y+3, r24 ; 0x03
5ba: a9 ef ldi r26, 0xF9 ; 249
5bc: b3 e0 ldi r27, 0x03 ; 3
5be: 0e 94 f1 05 call 0xbe2 ; 0xbe2 <_EERead>
5c2: 98 2f mov r25, r24
5c4: 11 97 sbiw r26, 0x01 ; 1
5c6: 0e 94 f1 05 call 0xbe2 ; 0xbe2 <_EERead>
5ca: 9f 3f cpi r25, 0xFF ; 255
5cc: 11 f4 brne .+4 ; 0x5d2 <main+0x64>
5ce: 88 eb ldi r24, 0xB8 ; 184
5d0: 9b e0 ldi r25, 0x0B ; 11
5d2: 80 93 3d 01 sts 0x013D, r24
5d6: 90 93 3e 01 sts 0x013E, r25
5da: ac ef ldi r26, 0xFC ; 252
5dc: b3 e0 ldi r27, 0x03 ; 3
5de: 7e d1 rcall .+764 ; 0x8dc <EERead>
5e0: 8d 87 std Y+13, r24 ; 0x0d
5e2: 11 96 adiw r26, 0x01 ; 1
5e4: 7b d1 rcall .+758 ; 0x8dc <EERead>
5e6: 8e 87 std Y+14, r24 ; 0x0e
5e8: 11 96 adiw r26, 0x01 ; 1
5ea: 78 d1 rcall .+752 ; 0x8dc <EERead>
5ec: 8f 87 std Y+15, r24 ; 0x0f
5ee: 11 96 adiw r26, 0x01 ; 1
5f0: 75 d1 rcall .+746 ; 0x8dc <EERead>
5f2: 88 8b std Y+16, r24 ; 0x10
5f4: 0e 94 8e 23 call 0x471c ; 0x471c <RandShift>
5f8: ac ef ldi r26, 0xFC ; 252
5fa: b3 e0 ldi r27, 0x03 ; 3
5fc: 98 89 ldd r25, Y+16 ; 0x10
5fe: 73 d1 rcall .+742 ; 0x8e6 <EEWrite>
600: 11 96 adiw r26, 0x01 ; 1
602: 9f 85 ldd r25, Y+15 ; 0x0f
604: 70 d1 rcall .+736 ; 0x8e6 <EEWrite>
606: 11 96 adiw r26, 0x01 ; 1
608: 9e 85 ldd r25, Y+14 ; 0x0e
60a: 6d d1 rcall .+730 ; 0x8e6 <EEWrite>
60c: 11 96 adiw r26, 0x01 ; 1
60e: 9d 85 ldd r25, Y+13 ; 0x0d
610: 6a d1 rcall .+724 ; 0x8e6 <EEWrite>
612: 5d d2 rcall .+1210 ; 0xace <LCD_InitGen>
614: 8f d2 rcall .+1310 ; 0xb34 <LCD_Init>
616: f5 d0 rcall .+490 ; 0x802 <KEY_Init>
618: 8f e0 ldi r24, 0x0F ; 15
61a: 8f 8b std Y+23, r24 ; 0x17
61c: 0e 94 a0 0b call 0x1740 ; 0x1740 <ClrPrintBuf>
620: a0 ef ldi r26, 0xF0 ; 240
622: b6 e0 ldi r27, 0x06 ; 6
624: 80 e2 ldi r24, 0x20 ; 32
626: 8d 93 st X+, r24
628: a0 30 cpi r26, 0x00 ; 0
62a: e9 f7 brne .-6 ; 0x626 <main+0xb8>
62c: 1c 92 st X, r1
62e: 0e 94 86 0e call 0x1d0c ; 0x1d0c <ExecClr>
632: 86 e0 ldi r24, 0x06 ; 6
634: 0e 94 6f 26 call 0x4cde ; 0x4cde <CalcSetMem>
638: 8a e0 ldi r24, 0x0A ; 10
63a: 80 93 53 01 sts 0x0153, r24
63e: 80 93 54 01 sts 0x0154, r24
642: 3c df rcall .-392 ; 0x4bc <DispBuild>
644: e2 e3 ldi r30, 0x32 ; 50
646: f5 e5 ldi r31, 0x55 ; 85
648: 84 91 lpm r24, Z+
64a: 8f 8f std Y+31, r24 ; 0x1f
64c: 88 27 eor r24, r24
64e: 0e 94 61 07 call 0xec2 ; 0xec2 <OpenProg>
00000652 <Restart>:
652: 6a df rcall .-300 ; 0x528 <SleepUpdate>
654: 78 94 sei
656: 5d df rcall .-326 ; 0x512 <GetCrc>
658: e2 e0 ldi r30, 0x02 ; 2
65a: fc e7 ldi r31, 0x7C ; 124
65c: 65 91 lpm r22, Z+
65e: 74 91 lpm r23, Z+
660: 68 17 cp r22, r24
662: 79 07 cpc r23, r25
664: 71 f0 breq .+28 ; 0x682 <Restart+0x30>
666: 0e 94 c0 05 call 0xb80 ; 0xb80 <DispSetRow1>
66a: e0 ea ldi r30, 0xA0 ; 160
66c: f4 e0 ldi r31, 0x04 ; 4
66e: 0e 94 c7 05 call 0xb8e ; 0xb8e <DispTextRom>
672: 0e 94 da 05 call 0xbb4 ; 0xbb4 <DispSpcClr>
676: 0e 94 88 03 call 0x710 ; 0x710 <Wait1s>
67a: 0e 94 88 03 call 0x710 ; 0x710 <Wait1s>
67e: 0e 94 89 0a call 0x1512 ; 0x1512 <DispFlags>
682: 58 d2 rcall .+1200 ; 0xb34 <LCD_Init>
684: e2 d7 rcall .+4036 ; 0x164a <Disp>
00000686 <Loop>:
686: 8c 81 ldd r24, Y+4 ; 0x04
688: 9d 81 ldd r25, Y+5 ; 0x05
68a: 60 91 3b 01 lds r22, 0x013B
68e: 70 91 3c 01 lds r23, 0x013C
692: 86 1b sub r24, r22
694: 97 0b sbc r25, r23
696: 60 91 3d 01 lds r22, 0x013D
69a: 70 91 3e 01 lds r23, 0x013E
69e: 77 23 and r23, r23
6a0: 21 f0 breq .+8 ; 0x6aa <Loop+0x24>
6a2: 86 17 cp r24, r22
6a4: 97 07 cpc r25, r23
6a6: 08 f0 brcs .+2 ; 0x6aa <Loop+0x24>
6a8: c8 c6 rjmp .+3472 ; 0x143a <GoSleep>
6aa: 0e 94 8c 0b call 0x1718 ; 0x1718 <DispTrace>
6ae: f2 9b sbis 0x1e, 2 ; 30
6b0: 07 c0 rjmp .+14 ; 0x6c0 <Loop+0x3a>
6b2: 3a df rcall .-396 ; 0x528 <SleepUpdate>
6b4: 49 d4 rcall .+2194 ; 0xf48 <LoadPrg>
6b6: 38 f3 brcs .-50 ; 0x686 <Loop>
6b8: 0e 94 a1 14 call 0x2942 ; 0x2942 <Exec>
6bc: 00 d1 rcall .+512 ; 0x8be <BreakKey>
6be: e3 cf rjmp .-58 ; 0x686 <Loop>
6c0: d2 d0 rcall .+420 ; 0x866 <GetKey>
6c2: 31 f0 breq .+12 ; 0x6d0 <Loop+0x4a>
6c4: f3 99 sbic 0x1e, 3 ; 30
6c6: 03 c0 rjmp .+6 ; 0x6ce <Loop+0x48>
6c8: 0e 94 a1 14 call 0x2942 ; 0x2942 <Exec>
6cc: 01 c0 rjmp .+2 ; 0x6d0 <Loop+0x4a>
6ce: e7 d5 rcall .+3022 ; 0x129e <Program>
6d0: f2 99 sbic 0x1e, 2 ; 30
6d2: d9 cf rjmp .-78 ; 0x686 <Loop>
6d4: f5 99 sbic 0x1e, 5 ; 30
6d6: 02 c0 rjmp .+4 ; 0x6dc <Loop+0x56>
6d8: f4 9b sbis 0x1e, 4 ; 30
6da: d5 cf rjmp .-86 ; 0x686 <Loop>
6dc: 0e 94 7c 0b call 0x16f8 ; 0x16f8 <DispErr>
6e0: d2 cf rjmp .-92 ; 0x686 <Loop>
000006e2 <Build>:
6e2: 45 54 subi r20, 0x45 ; 69
6e4: 2d 35 cpi r18, 0x5D ; 93
6e6: 38 20 and r3, r8
6e8: 32 32 cpi r19, 0x22 ; 34
6ea: 31 31 cpi r19, 0x11 ; 17
6ec: 32 39 cpi r19, 0x92 ; 146
...
000006f0 <Wait10us>:
6f0: 8f 93 push r24
6f2: 85 e0 ldi r24, 0x05 ; 5
6f4: 00 c0 rjmp .+0 ; 0x6f6 <Wait10us+0x6>
6f6: 00 c0 rjmp .+0 ; 0x6f8 <Wait10us+0x8>
6f8: 00 c0 rjmp .+0 ; 0x6fa <Wait10us+0xa>
6fa: 8a 95 dec r24
6fc: e9 f7 brne .-6 ; 0x6f8 <Wait10us+0x8>
6fe: 8f 91 pop r24
700: 08 95 ret
00000702 <Wait100us>:
702: 8f 93 push r24
704: 8d e4 ldi r24, 0x4D ; 77
706: f7 cf rjmp .-18 ; 0x6f6 <Wait10us+0x6>
00000708 <Wait10ms>:
708: 8a e0 ldi r24, 0x0A ; 10
70a: 06 c0 rjmp .+12 ; 0x718 <Waitms>
0000070c <Wait100ms>:
70c: 84 e6 ldi r24, 0x64 ; 100
70e: 04 c0 rjmp .+8 ; 0x718 <Waitms>
00000710 <Wait1s>:
710: 02 d0 rcall .+4 ; 0x716 <Wait250ms>
712: 01 d0 rcall .+2 ; 0x716 <Wait250ms>
714: 00 d0 rcall .+0 ; 0x716 <Wait250ms>
00000716 <Wait250ms>:
716: 8a ef ldi r24, 0xFA ; 250
00000718 <Waitms>:
718: 8f 93 push r24
71a: 9f 93 push r25
71c: 9a e0 ldi r25, 0x0A ; 10
71e: f1 df rcall .-30 ; 0x702 <Wait100us>
720: 9a 95 dec r25
722: e9 f7 brne .-6 ; 0x71e <Waitms+0x6>
724: 8a 95 dec r24
726: d1 f7 brne .-12 ; 0x71c <Waitms+0x4>
728: 9f 91 pop r25
72a: 8f 91 pop r24
72c: 08 95 ret
0000072e <RemapDig>:
72e: 92 82 std Z+2, r9 ; 0x02
730: 83 84 ldd r8, Z+11 ; 0x0b
732: 72 73 andi r23, 0x32 ; 50
734: 74 62 ori r23, 0x24 ; 36
736: 63 64 ori r22, 0x43 ; 67
738: 7b 7c andi r23, 0xCB ; 203
73a: 7d 6b ori r23, 0xBD ; 189
73c: 6c 6d ori r22, 0xDC ; 220
0000073e <KeyInRow>:
73e: e1 df rcall .-62 ; 0x702 <Wait100us>
740: 8f e0 ldi r24, 0x0F ; 15
742: 1c 9b sbis 0x03, 4 ; 3
744: 8f 5f subi r24, 0xFF ; 255
746: 4f 9b sbis 0x09, 7 ; 9
748: 8f 5e subi r24, 0xEF ; 239
74a: 35 9b sbis 0x06, 5 ; 6
74c: 8f 5d subi r24, 0xDF ; 223
74e: 18 9b sbis 0x03, 0 ; 3
750: 8f 5c subi r24, 0xCF ; 207
752: 34 9b sbis 0x06, 4 ; 6
754: 8f 5b subi r24, 0xBF ; 191
756: 19 9b sbis 0x03, 1 ; 3
758: 8f 5a subi r24, 0xAF ; 175
75a: 32 9b sbis 0x06, 2 ; 6
75c: 8f 59 subi r24, 0x9F ; 159
75e: 1b 9b sbis 0x03, 3 ; 3
760: 8f 58 subi r24, 0x8F ; 143
762: 30 9b sbis 0x06, 0 ; 6
764: 8f 57 subi r24, 0x7F ; 127
766: 8f 30 cpi r24, 0x0F ; 15
768: 39 f0 breq .+14 ; 0x778 <KeyInRow+0x3a>
76a: ee 23 and r30, r30
76c: 21 f4 brne .+8 ; 0x776 <KeyInRow+0x38>
76e: e8 2f mov r30, r24
770: ef 2b or r30, r31
772: 8f 70 andi r24, 0x0F ; 15
774: 09 f0 breq .+2 ; 0x778 <KeyInRow+0x3a>
776: ef ef ldi r30, 0xFF ; 255
778: f3 95 inc r31
77a: 08 95 ret
0000077c <__vector_11>:
77c: 8f 93 push r24
77e: 8f b7 in r24, 0x3f ; 63
780: 8f 93 push r24
782: ef 93 push r30
784: ff 93 push r31
786: e0 91 04 01 lds r30, 0x0104
78a: f0 91 05 01 lds r31, 0x0105
78e: 31 96 adiw r30, 0x01 ; 1
790: e0 93 04 01 sts 0x0104, r30
794: f0 93 05 01 sts 0x0105, r31
798: ee 27 eor r30, r30
79a: f1 e0 ldi r31, 0x01 ; 1
79c: 55 9a sbi 0x0a, 5 ; 10
79e: cf df rcall .-98 ; 0x73e <KeyInRow>
7a0: 55 98 cbi 0x0a, 5 ; 10
7a2: 22 9a sbi 0x04, 2 ; 4
7a4: cc df rcall .-104 ; 0x73e <KeyInRow>
7a6: 22 98 cbi 0x04, 2 ; 4
7a8: 25 9a sbi 0x04, 5 ; 4
7aa: c9 df rcall .-110 ; 0x73e <KeyInRow>
7ac: 25 98 cbi 0x04, 5 ; 4
7ae: 39 9a sbi 0x07, 1 ; 7
7b0: c6 df rcall .-116 ; 0x73e <KeyInRow>
7b2: 39 98 cbi 0x07, 1 ; 7
7b4: 3b 9a sbi 0x07, 3 ; 7
7b6: c3 df rcall .-122 ; 0x73e <KeyInRow>
7b8: 3b 98 cbi 0x07, 3 ; 7
7ba: f6 98 cbi 0x1e, 6 ; 30
7bc: ee 23 and r30, r30
7be: 89 f0 breq .+34 ; 0x7e2 <__vector_11+0x66>
7c0: ef 3f cpi r30, 0xFF ; 255
7c2: 79 f0 breq .+30 ; 0x7e2 <__vector_11+0x66>
7c4: e1 36 cpi r30, 0x61 ; 97
7c6: 09 f4 brne .+2 ; 0x7ca <__vector_11+0x4e>
7c8: f6 9a sbi 0x1e, 6 ; 30
7ca: f0 91 06 01 lds r31, 0x0106
7ce: fe 17 cp r31, r30
7d0: 11 f0 breq .+4 ; 0x7d6 <__vector_11+0x5a>
7d2: e0 93 08 01 sts 0x0108, r30
7d6: e0 93 06 01 sts 0x0106, r30
7da: 88 e0 ldi r24, 0x08 ; 8
7dc: 80 93 07 01 sts 0x0107, r24
7e0: 0a c0 rjmp .+20 ; 0x7f6 <__vector_11+0x7a>
7e2: 80 91 07 01 lds r24, 0x0107
7e6: 8a 95 dec r24
7e8: 32 f0 brmi .+12 ; 0x7f6 <__vector_11+0x7a>
7ea: 80 93 07 01 sts 0x0107, r24
7ee: 19 f4 brne .+6 ; 0x7f6 <__vector_11+0x7a>
7f0: 8f ef ldi r24, 0xFF ; 255
7f2: 80 93 06 01 sts 0x0106, r24
7f6: ff 91 pop r31
7f8: ef 91 pop r30
7fa: 8f 91 pop r24
7fc: 8f bf out 0x3f, r24 ; 63
7fe: 8f 91 pop r24
800: 18 95 reti
00000802 <KEY_Init>:
802: 10 92 80 00 sts 0x0080, r1
806: 8b e0 ldi r24, 0x0B ; 11
808: 80 93 81 00 sts 0x0081, r24
80c: 82 e0 ldi r24, 0x02 ; 2
80e: 80 93 89 00 sts 0x0089, r24
812: 80 e7 ldi r24, 0x70 ; 112
814: 80 93 88 00 sts 0x0088, r24
818: 10 92 85 00 sts 0x0085, r1
81c: 10 92 84 00 sts 0x0084, r1
820: 80 91 6f 00 lds r24, 0x006F
824: 82 60 ori r24, 0x02 ; 2
826: 80 93 6f 00 sts 0x006F, r24
82a: 8f ef ldi r24, 0xFF ; 255
82c: 88 87 std Y+8, r24 ; 0x08
82e: 8e 83 std Y+6, r24 ; 0x06
830: 89 87 std Y+9, r24 ; 0x09
832: 08 95 ret