whycyhl
2022-05-05 683c912f9ac1935a7b109fb402bb276dba450f6b
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
   1                       .file    "MainMenu.c"
   2                   __SREG__ = 0x3f
   3                   __SP_H__ = 0x3e
   4                   __SP_L__ = 0x3d
   5                   __CCP__  = 0x34
   6                   __tmp_reg__ = 0
   7                   __zero_reg__ = 1
  15                   .Ltext0:
  16                   .global    DSPMainMenuText
  18                   DSPMainMenuText:
  19                   .LFB8:
  20                   .LM1:
  21                   .LVL0:
  22 0000 8F92              push r8
  23 0002 9F92              push r9
  24 0004 AF92              push r10
  25 0006 BF92              push r11
  26 0008 CF92              push r12
  27 000a DF92              push r13
  28 000c EF92              push r14
  29 000e FF92              push r15
  30 0010 0F93              push r16
  31 0012 1F93              push r17
  32                   /* prologue: function */
  33                   /* frame size = 0 */
  34 0014 982E              mov r9,r24
  35                   .LM2:
  36 0016 80E0              ldi r24,lo8(MenuCaption)
  37 0018 90E0              ldi r25,hi8(MenuCaption)
  38                   .LVL1:
  39 001a 6BE0              ldi r22,lo8(11)
  40 001c 40E1              ldi r20,lo8(16)
  41 001e 28E1              ldi r18,lo8(24)
  42 0020 30E0              ldi r19,hi8(24)
  43 0022 08E1              ldi r16,lo8(24)
  44 0024 10E0              ldi r17,hi8(24)
  45 0026 B3E0              ldi r27,lo8(3)
  46 0028 EB2E              mov r14,r27
  47 002a ACEF              ldi r26,lo8(-4)
  48 002c CA2E              mov r12,r26
  49 002e 0E94 0000         call DSP24x24Str
  50                   .LM3:
  51 0032 88E1              ldi r24,lo8(24)
  52 0034 90E0              ldi r25,hi8(24)
  53 0036 62E3              ldi r22,lo8(50)
  54 0038 70E0              ldi r23,hi8(50)
  55 003a 46E1              ldi r20,lo8(22)
  56 003c 20E0              ldi r18,lo8(0)
  57 003e 03E0              ldi r16,lo8(3)
  58 0040 EE24              clr r14
  59 0042 EA94              dec r14
  60 0044 CC24              clr r12
  61 0046 CA94              dec r12
  62 0048 F2E0              ldi r31,lo8(2)
  63 004a AF2E              mov r10,r31
  64 004c 0E94 0000         call DrawLine
  65                   .LM4:
  66 0050 80E0              ldi r24,lo8(MenuVersionText)
  67 0052 90E0              ldi r25,hi8(MenuVersionText)
  68 0054 65E0              ldi r22,lo8(5)
  69 0056 40E1              ldi r20,lo8(16)
  70 0058 20EE              ldi r18,lo8(224)
  71 005a 30E0              ldi r19,hi8(224)
  72 005c 0EE1              ldi r16,lo8(30)
  73 005e 10E0              ldi r17,hi8(30)
  74 0060 E3E0              ldi r30,lo8(3)
  75 0062 EE2E              mov r14,r30
  76 0064 70EE              ldi r23,lo8(-32)
  77 0066 C72E              mov r12,r23
  78 0068 0E94 0000         call DSP24x24StrS
  79                   .LM5:
  80 006c 8AE0              ldi r24,lo8(10)
  81 006e 9816              cp r9,r24
  82 0070 01F0              breq .L2
  83 0072 59E4              ldi r21,lo8(73)
  84 0074 B52E              mov r11,r21
  85                   .LVL2:
  86 0076 00C0              rjmp .L3
  87                   .LVL3:
  88                   .L2:
  89 0078 44E1              ldi r20,lo8(20)
  90 007a B42E              mov r11,r20
  91                   .LVL4:
  92                   .L3:
  93                   .LM6:
  94 007c 84E0              ldi r24,lo8(4)
  95 007e 60E0              ldi r22,lo8(MenuButton+16)
  96 0080 70E0              ldi r23,hi8(MenuButton+16)
  97 0082 40E0              ldi r20,lo8(0)
  98 0084 2EE1              ldi r18,lo8(30)
  99 0086 07E1              ldi r16,lo8(23)
 100 0088 38E4              ldi r19,lo8(72)
 101 008a E32E              mov r14,r19
 102 008c F12C              mov r15,__zero_reg__
 103 008e 9CE5              ldi r25,lo8(92)
 104 0090 C92E              mov r12,r25
 105 0092 D12C              mov r13,__zero_reg__
 106 0094 AB2C              mov r10,r11
 107 0096 8824              clr r8
 108 0098 8A94              dec r8
 109 009a 0E94 0000         call DrawButtonH48
 110                   .LM7:
 111 009e 80E0              ldi r24,lo8(MenuText)
 112 00a0 90E0              ldi r25,hi8(MenuText)
 113 00a2 66E0              ldi r22,lo8(6)
 114 00a4 4EE0              ldi r20,lo8(14)
 115 00a6 28E7              ldi r18,lo8(120)
 116 00a8 30E0              ldi r19,hi8(120)
 117 00aa 08E6              ldi r16,lo8(104)
 118 00ac 10E0              ldi r17,hi8(104)
 119 00ae EB2C              mov r14,r11
 120 00b0 CC24              clr r12
 121 00b2 CA94              dec r12
 122 00b4 0E94 0000         call DSP16x24Str
 123                   .LM8:
 124 00b8 8BE0              ldi r24,lo8(11)
 125 00ba 9816              cp r9,r24
 126 00bc 01F0              breq .L4
 127 00be 89E4              ldi r24,lo8(73)
 128 00c0 B82E              mov r11,r24
 129                   .LVL5:
 130 00c2 00C0              rjmp .L5
 131                   .L4:
 132 00c4 04E1              ldi r16,lo8(20)
 133 00c6 B02E              mov r11,r16
 134                   .LVL6:
 135                   .L5:
 136                   .LM9:
 137 00c8 84E0              ldi r24,lo8(4)
 138 00ca 60E0              ldi r22,lo8(MenuButton+16)
 139 00cc 70E0              ldi r23,hi8(MenuButton+16)
 140 00ce 40E0              ldi r20,lo8(0)
 141 00d0 2EE1              ldi r18,lo8(30)
 142 00d2 07E1              ldi r16,lo8(23)
 143 00d4 10E7              ldi r17,lo8(368)
 144 00d6 E12E              mov r14,r17
 145 00d8 11E0              ldi r17,hi8(368)
 146 00da F12E              mov r15,r17
 147 00dc BCE5              ldi r27,lo8(92)
 148 00de CB2E              mov r12,r27
 149 00e0 D12C              mov r13,__zero_reg__
 150 00e2 AB2C              mov r10,r11
 151 00e4 8824              clr r8
 152 00e6 8A94              dec r8
 153 00e8 0E94 0000         call DrawButtonH48
 154                   .LM10:
 155 00ec 80E0              ldi r24,lo8(MenuText+14)
 156 00ee 90E0              ldi r25,hi8(MenuText+14)
 157 00f0 65E0              ldi r22,lo8(5)
 158 00f2 4EE0              ldi r20,lo8(14)
 159 00f4 29EA              ldi r18,lo8(425)
 160 00f6 31E0              ldi r19,hi8(425)
 161 00f8 08E6              ldi r16,lo8(104)
 162 00fa 10E0              ldi r17,hi8(104)
 163 00fc EB2C              mov r14,r11
 164 00fe CC24              clr r12
 165 0100 CA94              dec r12
 166 0102 0E94 0000         call DSP16x24Str
 167                   .LM11:
 168 0106 8CE0              ldi r24,lo8(12)
 169 0108 9816              cp r9,r24
 170 010a 01F0              breq .L6
 171 010c A9E4              ldi r26,lo8(73)
 172 010e BA2E              mov r11,r26
 173                   .LVL7:
 174 0110 00C0              rjmp .L7
 175                   .L6:
 176 0112 F4E1              ldi r31,lo8(20)
 177 0114 BF2E              mov r11,r31
 178                   .LVL8:
 179                   .L7:
 180                   .LM12:
 181 0116 84E0              ldi r24,lo8(4)
 182 0118 60E0              ldi r22,lo8(MenuButton+16)
 183 011a 70E0              ldi r23,hi8(MenuButton+16)
 184 011c 40E0              ldi r20,lo8(0)
 185 011e 2EE1              ldi r18,lo8(30)
 186 0120 07E1              ldi r16,lo8(23)
 187 0122 E8E4              ldi r30,lo8(72)
 188 0124 EE2E              mov r14,r30
 189 0126 F12C              mov r15,__zero_reg__
 190 0128 50EC              ldi r21,lo8(192)
 191 012a C52E              mov r12,r21
 192 012c D12C              mov r13,__zero_reg__
 193 012e AB2C              mov r10,r11
 194 0130 8824              clr r8
 195 0132 8A94              dec r8
 196 0134 0E94 0000         call DrawButtonH48
 197                   .LM13:
 198 0138 80E0              ldi r24,lo8(MenuText+28)
 199 013a 90E0              ldi r25,hi8(MenuText+28)
 200 013c 66E0              ldi r22,lo8(6)
 201 013e 4EE0              ldi r20,lo8(14)
 202 0140 28E7              ldi r18,lo8(120)
 203 0142 30E0              ldi r19,hi8(120)
 204 0144 0CEC              ldi r16,lo8(204)
 205 0146 10E0              ldi r17,hi8(204)
 206 0148 EB2C              mov r14,r11
 207 014a CC24              clr r12
 208 014c CA94              dec r12
 209 014e 0E94 0000         call DSP16x24Str
 210                   .LM14:
 211 0152 8DE0              ldi r24,lo8(13)
 212 0154 9816              cp r9,r24
 213 0156 01F0              breq .L8
 214 0158 39E4              ldi r19,lo8(73)
 215 015a B32E              mov r11,r19
 216                   .LVL9:
 217 015c 00C0              rjmp .L9
 218                   .L8:
 219 015e 24E1              ldi r18,lo8(20)
 220 0160 B22E              mov r11,r18
 221                   .LVL10:
 222                   .L9:
 223                   .LM15:
 224 0162 84E0              ldi r24,lo8(4)
 225 0164 60E0              ldi r22,lo8(MenuButton+16)
 226 0166 70E0              ldi r23,hi8(MenuButton+16)
 227 0168 40E0              ldi r20,lo8(0)
 228 016a 2EE1              ldi r18,lo8(30)
 229 016c 07E1              ldi r16,lo8(23)
 230 016e 90E7              ldi r25,lo8(368)
 231 0170 E92E              mov r14,r25
 232 0172 91E0              ldi r25,hi8(368)
 233 0174 F92E              mov r15,r25
 234 0176 10EC              ldi r17,lo8(192)
 235 0178 C12E              mov r12,r17
 236 017a D12C              mov r13,__zero_reg__
 237 017c AB2C              mov r10,r11
 238 017e 8824              clr r8
 239 0180 8A94              dec r8
 240 0182 0E94 0000         call DrawButtonH48
 241                   .LM16:
 242 0186 80E0              ldi r24,lo8(MenuText+42)
 243 0188 90E0              ldi r25,hi8(MenuText+42)
 244 018a 69E0              ldi r22,lo8(9)
 245 018c 4EE0              ldi r20,lo8(14)
 246 018e 20E9              ldi r18,lo8(400)
 247 0190 31E0              ldi r19,hi8(400)
 248 0192 0CEC              ldi r16,lo8(204)
 249 0194 10E0              ldi r17,hi8(204)
 250 0196 EB2C              mov r14,r11
 251 0198 CC24              clr r12
 252 019a CA94              dec r12
 253 019c 0E94 0000         call DSP16x24Str
 254                   .LM17:
 255 01a0 8EE0              ldi r24,lo8(14)
 256 01a2 9816              cp r9,r24
 257 01a4 01F0              breq .L10
 258 01a6 B9E4              ldi r27,lo8(73)
 259 01a8 BB2E              mov r11,r27
 260                   .LVL11:
 261 01aa 00C0              rjmp .L11
 262                   .L10:
 263 01ac A4E1              ldi r26,lo8(20)
 264 01ae BA2E              mov r11,r26
 265                   .LVL12:
 266                   .L11:
 267                   .LM18:
 268 01b0 84E0              ldi r24,lo8(4)
 269 01b2 60E0              ldi r22,lo8(MenuButton+16)
 270 01b4 70E0              ldi r23,hi8(MenuButton+16)
 271 01b6 40E0              ldi r20,lo8(0)
 272 01b8 2EE1              ldi r18,lo8(30)
 273 01ba 07E1              ldi r16,lo8(23)
 274 01bc F8E4              ldi r31,lo8(72)
 275 01be EF2E              mov r14,r31
 276 01c0 F12C              mov r15,__zero_reg__
 277 01c2 E4E2              ldi r30,lo8(292)
 278 01c4 CE2E              mov r12,r30
 279 01c6 E1E0              ldi r30,hi8(292)
 280 01c8 DE2E              mov r13,r30
 281 01ca AB2C              mov r10,r11
 282 01cc 8824              clr r8
 283 01ce 8A94              dec r8
 284 01d0 0E94 0000         call DrawButtonH48
 285                   .LM19:
 286 01d4 80E0              ldi r24,lo8(MenuText+56)
 287 01d6 90E0              ldi r25,hi8(MenuText+56)
 288 01d8 68E0              ldi r22,lo8(8)
 289 01da 4EE0              ldi r20,lo8(14)
 290 01dc 2EE6              ldi r18,lo8(110)
 291 01de 30E0              ldi r19,hi8(110)
 292 01e0 00E3              ldi r16,lo8(304)
 293 01e2 11E0              ldi r17,hi8(304)
 294 01e4 EB2C              mov r14,r11
 295 01e6 CC24              clr r12
 296 01e8 CA94              dec r12
 297 01ea 0E94 0000         call DSP16x24Str
 298                   .LM20:
 299 01ee 8FE0              ldi r24,lo8(15)
 300 01f0 9816              cp r9,r24
 301 01f2 01F0              breq .L12
 302 01f4 59E4              ldi r21,lo8(73)
 303 01f6 B52E              mov r11,r21
 304                   .LVL13:
 305 01f8 00C0              rjmp .L13
 306                   .L12:
 307 01fa 44E1              ldi r20,lo8(20)
 308 01fc B42E              mov r11,r20
 309                   .LVL14:
 310                   .L13:
 311                   .LM21:
 312 01fe 84E0              ldi r24,lo8(4)
 313 0200 60E0              ldi r22,lo8(MenuButton+16)
 314 0202 70E0              ldi r23,hi8(MenuButton+16)
 315 0204 40E0              ldi r20,lo8(0)
 316 0206 2EE1              ldi r18,lo8(30)
 317 0208 07E1              ldi r16,lo8(23)
 318 020a 30E7              ldi r19,lo8(368)
 319 020c E32E              mov r14,r19
 320 020e 31E0              ldi r19,hi8(368)
 321 0210 F32E              mov r15,r19
 322 0212 94E2              ldi r25,lo8(292)
 323 0214 C92E              mov r12,r25
 324 0216 91E0              ldi r25,hi8(292)
 325 0218 D92E              mov r13,r25
 326 021a AB2C              mov r10,r11
 327 021c 8824              clr r8
 328 021e 8A94              dec r8
 329 0220 0E94 0000         call DrawButtonH48
 330                   .LM22:
 331 0224 80E0              ldi r24,lo8(MenuText+70)
 332 0226 90E0              ldi r25,hi8(MenuText+70)
 333 0228 6DE0              ldi r22,lo8(13)
 334 022a 4EE0              ldi r20,lo8(14)
 335 022c 27E7              ldi r18,lo8(375)
 336 022e 31E0              ldi r19,hi8(375)
 337 0230 00E3              ldi r16,lo8(304)
 338 0232 11E0              ldi r17,hi8(304)
 339 0234 EB2C              mov r14,r11
 340 0236 CC24              clr r12
 341 0238 CA94              dec r12
 342 023a 0E94 0000         call DSP16x24Str
 343                   /* epilogue start */
 344                   .LM23:
 345 023e 1F91              pop r17
 346 0240 0F91              pop r16
 347 0242 FF90              pop r15
 348 0244 EF90              pop r14
 349 0246 DF90              pop r13
 350 0248 CF90              pop r12
 351 024a BF90              pop r11
 352                   .LVL15:
 353 024c AF90              pop r10
 354 024e 9F90              pop r9
 355                   .LVL16:
 356 0250 8F90              pop r8
 357 0252 0895              ret
 358                   .LFE8:
 360                   .global    RespondMenuKeyboard
 362                   RespondMenuKeyboard:
 363                   .LFB10:
 364                   .LM24:
 365                   .LVL17:
 366                   /* prologue: function */
 367                   /* frame size = 0 */
 368 0254 FC01              movw r30,r24
 369                   .LM25:
 370 0256 6C30              cpi r22,lo8(12)
 371 0258 01F0              breq .L19
 372                   .LVL18:
 373 025a 6D30              cpi r22,lo8(13)
 374 025c 00F4              brsh .L23
 375 025e 6A30              cpi r22,lo8(10)
 376 0260 01F0              breq .L17
 377 0262 6B30              cpi r22,lo8(11)
 378 0264 01F0              breq .+2
 379 0266 00C0              rjmp .L16
 380 0268 00C0              rjmp .L27
 381                   .L23:
 382 026a 6E30              cpi r22,lo8(14)
 383 026c 01F0              breq .L21
 384 026e 6E30              cpi r22,lo8(14)
 385 0270 00F0              brlo .L20
 386 0272 6F30              cpi r22,lo8(15)
 387 0274 01F0              breq .+2
 388 0276 00C0              rjmp .L16
 389 0278 00C0              rjmp .L28
 390                   .L17:
 391                   .LM26:
 392 027a 8081              ld r24,Z
 393 027c 8A30              cpi r24,lo8(10)
 394 027e 01F0              breq .+2
 395 0280 00C0              rjmp .L16
 396                   .LM27:
 397 0282 1092 0000         sts (GB_TestingParm)+1,__zero_reg__
 398 0286 1092 0000         sts GB_TestingParm,__zero_reg__
 399                   .LM28:
 400 028a 1092 0000         sts (GB_TestingParm+2)+1,__zero_reg__
 401 028e 1092 0000         sts GB_TestingParm+2,__zero_reg__
 402                   .LM29:
 403 0292 0E94 0000         call BackColorCH
 404                   .LVL19:
 405                   .LM30:
 406 0296 0E94 0000         call DSPWorkingPage
 407 029a 0895              ret
 408                   .LVL20:
 409                   .L27:
 410                   .LM31:
 411 029c 8081              ld r24,Z
 412 029e 8B30              cpi r24,lo8(11)
 413 02a0 01F4              brne .L16
 414                   .LM32:
 415 02a2 0E94 0000         call BackColorCH
 416                   .LVL21:
 417                   .LM33:
 418 02a6 0E94 0000         call DSPChargePage
 419 02aa 0895              ret
 420                   .LVL22:
 421                   .L19:
 422                   .LM34:
 423 02ac 8081              ld r24,Z
 424 02ae 8C30              cpi r24,lo8(12)
 425 02b0 01F4              brne .L16
 426                   .LM35:
 427 02b2 0E94 0000         call BackColorCH
 428                   .LVL23:
 429                   .LM36:
 430 02b6 0E94 0000         call DSPFileManagePage
 431 02ba 0895              ret
 432                   .LVL24:
 433                   .L20:
 434                   .LM37:
 435 02bc 8081              ld r24,Z
 436 02be 8D30              cpi r24,lo8(13)
 437 02c0 01F4              brne .L16
 438                   .LM38:
 439 02c2 0E94 0000         call BackColorCH
 440                   .LVL25:
 441                   .LM39:
 442 02c6 0E94 0000         call DSPSYSSetPage
 443 02ca 0895              ret
 444                   .LVL26:
 445                   .L21:
 446                   .LM40:
 447 02cc 8081              ld r24,Z
 448 02ce 8E30              cpi r24,lo8(14)
 449 02d0 01F4              brne .L16
 450                   .LM41:
 451 02d2 8091 0000         lds r24,GB_FBO_Data+10
 452 02d6 9091 0000         lds r25,(GB_FBO_Data+10)+1
 453 02da 892B              or r24,r25
 454 02dc 01F4              brne .L25
 455                   .LM42:
 456 02de 80E0              ldi r24,lo8(MenuMCZeroText)
 457 02e0 90E0              ldi r25,hi8(MenuMCZeroText)
 458 02e2 63E1              ldi r22,lo8(19)
 459                   .LVL27:
 460 02e4 41E0              ldi r20,lo8(1)
 461 02e6 20E0              ldi r18,lo8(0)
 462 02e8 0E94 0000         call DSPMessageBox
 463                   .LVL28:
 464 02ec 0895              ret
 465                   .LVL29:
 466                   .L25:
 467                   .LM43:
 468 02ee 0E94 0000         call BackColorCH
 469                   .LVL30:
 470                   .LM44:
 471 02f2 0E94 0000         call DSPSingleVolData
 472 02f6 0895              ret
 473                   .LVL31:
 474                   .L28:
 475                   .LM45:
 476 02f8 8091 0000         lds r24,MenuItemIndex
 477 02fc 8F30              cpi r24,lo8(15)
 478 02fe 01F4              brne .L16
 479                   .LM46:
 480 0300 0E94 0000         call BackColorCH
 481                   .LVL32:
 482                   .LM47:
 483 0304 0E94 0000         call DSPAboutPage
 484 0308 0895              ret
 485                   .LVL33:
 486                   .L16:
 487                   .LM48:
 488 030a 6093 0000         sts MenuItemIndex,r22
 489                   .LM49:
 490 030e 862F              mov r24,r22
 491 0310 0E94 0000         call DSPMainMenuText
 492                   .LVL34:
 493 0314 0895              ret
 494                   .LFE10:
 496                   .global    GetMenuSelected
 498                   GetMenuSelected:
 499                   .LFB9:
 500                   .LM50:
 501 0316 1F93              push r17
 502                   /* prologue: function */
 503                   /* frame size = 0 */
 504                   .LM51:
 505 0318 0E94 0000         call GetTouchLocal
 506 031c 182F              mov r17,r24
 507                   .LVL35:
 508                   .LM52:
 509 031e 8823              tst r24
 510 0320 01F4              brne .L30
 511                   .LVL36:
 512                   .LM53:
 513 0322 1092 0000         sts getlastkeycount.2439,__zero_reg__
 514                   .LM54:
 515 0326 1092 0000         sts lastkey.2438,__zero_reg__
 516 032a 00C0              rjmp .L41
 517                   .L30:
 518                   .LM55:
 519 032c 8230              cpi r24,lo8(2)
 520 032e 01F4              brne .L32
 521                   .LM56:
 522 0330 80E0              ldi r24,lo8(0)
 523                   .LVL37:
 524 0332 0E94 0000         call GetButtonIsBeep
 525 0336 0197              sbiw r24,1
 526 0338 01F4              brne .L33
 527                   .LM57:
 528 033a 84E6              ldi r24,lo8(100)
 529 033c 90E0              ldi r25,hi8(100)
 530 033e 0E94 0000         call BuzzerBeep
 531                   .L33:
 532                   .LM58:
 533 0342 8091 0000         lds r24,MenuItemIndex
 534 0346 8F5F              subi r24,lo8(-(1))
 535 0348 8093 0000         sts MenuItemIndex,r24
 536                   .LM59:
 537 034c 8031              cpi r24,lo8(16)
 538 034e 00F0              brlo .L34
 539                   .LM60:
 540 0350 8AE0              ldi r24,lo8(10)
 541 0352 8093 0000         sts MenuItemIndex,r24
 542                   .L34:
 543                   .LM61:
 544 0356 8091 0000         lds r24,MenuItemIndex
 545 035a 0E94 0000         call DSPMainMenuText
 546 035e 88EE              ldi r24,lo8(1000)
 547 0360 93E0              ldi r25,hi8(1000)
 548                   .LVL38:
 549                   .LBB18:
 550                   .LBB19:
 551                   .LBB20:
 552                   .LBB21:
 553                   .LM62:
 554 0362 28EB              ldi r18,lo8(184)
 555 0364 30E0              ldi r19,hi8(184)
 556                   .L35:
 557 0366 F901              movw r30,r18
 558                   .LVL39:
 559                   /* #APP */
 560                    ;  105 "c:/winavr-20100110/lib/gcc/../../avr/include/util/delay_basic.h" 1
 561 0368 3197              1: sbiw r30,1
 562 036a 01F4              brne 1b
 563                    ;  0 "" 2
 564                   /* #NOAPP */
 565                   .LBE21:
 566                   .LBE20:
 567                   .LM63:
 568 036c 0197              sbiw r24,1
 569                   .LM64:
 570 036e 01F4              brne .L35
 571 0370 00C0              rjmp .L41
 572                   .LVL40:
 573                   .L32:
 574                   .LBE19:
 575                   .LBE18:
 576                   .LM65:
 577 0372 8430              cpi r24,lo8(4)
 578 0374 01F4              brne .L36
 579                   .LM66:
 580 0376 80E0              ldi r24,lo8(0)
 581                   .LVL41:
 582 0378 0E94 0000         call GetButtonIsBeep
 583 037c 0197              sbiw r24,1
 584 037e 01F4              brne .L37
 585                   .LM67:
 586 0380 84E6              ldi r24,lo8(100)
 587 0382 90E0              ldi r25,hi8(100)
 588 0384 0E94 0000         call BuzzerBeep
 589                   .L37:
 590                   .LM68:
 591 0388 80E0              ldi r24,lo8(MenuItemIndex)
 592 038a 90E0              ldi r25,hi8(MenuItemIndex)
 593 038c 6091 0000         lds r22,MenuItemIndex
 594 0390 0E94 0000         call RespondMenuKeyboard
 595 0394 00C0              rjmp .L41
 596                   .LVL42:
 597                   .L36:
 598                   .LM69:
 599 0396 8091 0000         lds r24,lastkey.2438
 600                   .LVL43:
 601 039a 1817              cp r17,r24
 602 039c 01F4              brne .L38
 603 039e 8091 0000         lds r24,getlastkeycount.2439
 604 03a2 8A30              cpi r24,lo8(10)
 605 03a4 00F4              brsh .L38
 606                   .LM70:
 607 03a6 8F5F              subi r24,lo8(-(1))
 608 03a8 8093 0000         sts getlastkeycount.2439,r24
 609                   .L38:
 610                   .LM71:
 611 03ac 1093 0000         sts lastkey.2438,r17
 612                   .LM72:
 613 03b0 8091 0000         lds r24,getlastkeycount.2439
 614 03b4 8823              tst r24
 615 03b6 01F4              brne .L41
 616                   .LM73:
 617 03b8 812F              mov r24,r17
 618 03ba 8A50              subi r24,lo8(-(-10))
 619 03bc 8630              cpi r24,lo8(6)
 620 03be 00F4              brsh .L41
 621                   .LM74:
 622 03c0 80E0              ldi r24,lo8(0)
 623 03c2 0E94 0000         call GetButtonIsBeep
 624 03c6 0197              sbiw r24,1
 625 03c8 01F4              brne .L39
 626                   .LM75:
 627 03ca 84E6              ldi r24,lo8(100)
 628 03cc 90E0              ldi r25,hi8(100)
 629 03ce 0E94 0000         call BuzzerBeep
 630                   .L39:
 631                   .LM76:
 632 03d2 80E0              ldi r24,lo8(MenuItemIndex)
 633 03d4 90E0              ldi r25,hi8(MenuItemIndex)
 634 03d6 612F              mov r22,r17
 635 03d8 0E94 0000         call RespondMenuKeyboard
 636 03dc 84EF              ldi r24,lo8(500)
 637 03de 91E0              ldi r25,hi8(500)
 638                   .LVL44:
 639                   .LBB22:
 640                   .LBB23:
 641                   .LBB24:
 642                   .LBB25:
 643                   .LM77:
 644 03e0 28EB              ldi r18,lo8(184)
 645 03e2 30E0              ldi r19,hi8(184)
 646                   .L40:
 647 03e4 F901              movw r30,r18
 648                   .LVL45:
 649                   /* #APP */
 650                    ;  105 "c:/winavr-20100110/lib/gcc/../../avr/include/util/delay_basic.h" 1
 651 03e6 3197              1: sbiw r30,1
 652 03e8 01F4              brne 1b
 653                    ;  0 "" 2
 654                   /* #NOAPP */
 655                   .LBE25:
 656                   .LBE24:
 657                   .LM78:
 658 03ea 0197              sbiw r24,1
 659                   .LM79:
 660 03ec 01F4              brne .L40
 661                   .LVL46:
 662                   .L41:
 663                   /* epilogue start */
 664                   .LBE23:
 665                   .LBE22:
 666                   .LM80:
 667 03ee 1F91              pop r17
 668                   .LVL47:
 669 03f0 0895              ret
 670                   .LFE9:
 672                   .global    DSPMainMenu
 674                   DSPMainMenu:
 675                   .LFB7:
 676                   .LM81:
 677 03f2 6F92              push r6
 678 03f4 7F92              push r7
 679 03f6 8F92              push r8
 680 03f8 AF92              push r10
 681 03fa CF92              push r12
 682 03fc DF92              push r13
 683 03fe EF92              push r14
 684 0400 FF92              push r15
 685 0402 0F93              push r16
 686                   /* prologue: function */
 687                   /* frame size = 0 */
 688                   .LM82:
 689 0404 0E94 0000         call DisableCustomInput
 690                   .LM83:
 691 0408 80E0              ldi r24,lo8(gs(DSPMainMenu))
 692 040a 90E0              ldi r25,hi8(gs(DSPMainMenu))
 693 040c 9093 0000         sts (GB_SYS_State)+1,r25
 694 0410 8093 0000         sts GB_SYS_State,r24
 695                   .LM84:
 696 0414 80E0              ldi r24,lo8(gs(GetMenuSelected))
 697 0416 90E0              ldi r25,hi8(gs(GetMenuSelected))
 698 0418 9093 0000         sts (GB_SYS_State+2)+1,r25
 699 041c 8093 0000         sts GB_SYS_State+2,r24
 700                   .LM85:
 701 0420 0E94 0000         call DisableMonomerVolGether
 702                   .LM86:
 703 0424 8091 0000         lds r24,MenuItemIndex
 704 0428 0E94 0000         call DSPMainMenuText
 705                   .LM87:
 706 042c F0E0              ldi r31,lo8(MenuButton)
 707 042e 6F2E              mov r6,r31
 708 0430 F0E0              ldi r31,hi8(MenuButton)
 709 0432 7F2E              mov r7,r31
 710 0434 82E0              ldi r24,lo8(2)
 711 0436 B301              movw r22,r6
 712 0438 45E0              ldi r20,lo8(5)
 713 043a 20E1              ldi r18,lo8(16)
 714 043c 08E0              ldi r16,lo8(8)
 715 043e E5E9              ldi r30,lo8(149)
 716 0440 EE2E              mov r14,r30
 717 0442 F12C              mov r15,__zero_reg__
 718 0444 50E9              ldi r21,lo8(400)
 719 0446 C52E              mov r12,r21
 720 0448 51E0              ldi r21,hi8(400)
 721 044a D52E              mov r13,r21
 722 044c 39E4              ldi r19,lo8(73)
 723 044e A32E              mov r10,r19
 724 0450 8824              clr r8
 725 0452 8A94              dec r8
 726 0454 0E94 0000         call DrawButtonH48
 727                   .LM88:
 728 0458 88E0              ldi r24,lo8(8)
 729 045a 90E0              ldi r25,hi8(8)
 730 045c 680E              add r6,r24
 731 045e 791E              adc r7,r25
 732 0460 82E0              ldi r24,lo8(2)
 733 0462 B301              movw r22,r6
 734 0464 44E0              ldi r20,lo8(4)
 735 0466 20E1              ldi r18,lo8(16)
 736 0468 02E1              ldi r16,lo8(18)
 737 046a 9FE8              ldi r25,lo8(399)
 738 046c E92E              mov r14,r25
 739 046e 91E0              ldi r25,hi8(399)
 740 0470 F92E              mov r15,r25
 741 0472 0E94 0000         call DrawButtonH48
 742                   .LM89:
 743 0476 80E0              ldi r24,lo8(0)
 744                   /* epilogue start */
 745 0478 0F91              pop r16
 746 047a FF90              pop r15
 747 047c EF90              pop r14
 748 047e DF90              pop r13
 749 0480 CF90              pop r12
 750 0482 AF90              pop r10
 751 0484 8F90              pop r8
 752 0486 7F90              pop r7
 753 0488 6F90              pop r6
 754 048a 0895              ret
 755                   .LFE7:
 757                   .global    MenuCaption
 758                       .section    .progmem.data,"a",@progbits
 761                   MenuCaption:
 762 0000 4243 542D         .string    "BCT-300/120"
 762      3330 302F 
 762      3132 3000 
 763                   .global    MenuMCZeroText
 766                   MenuMCZeroText:
 767 000c 67                .byte    103
 768 000d 4A                .byte    74
 769 000e 47                .byte    71
 770 000f 0D                .byte    13
 771 0010 3D                .byte    61
 772 0011 4A                .byte    74
 773 0012 00                .byte    0
 774 0013 59                .byte    89
 775 0014 47                .byte    71
 776 0015 40                .byte    64
 777 0016 48                .byte    72
 778 0017 40                .byte    64
 779 0018 49                .byte    73
 780 0019 4E                .byte    78
 781 001a 4A                .byte    74
 782 001b 3D                .byte    61
 783 001c 00                .byte    0
 784 001d 10                .byte    16
 785 001e 01                .byte    1
 786 001f 0000 00           .skip 3,0
 787                   .global    MenuVersionText
 790                   MenuVersionText:
 791 0022 5632 2E30         .string    "V2.0A"
 791      4100 
 792 0028 0000 0000         .skip 4,0
 793                   .global    MenuText
 796                   MenuText:
 797 002c 6D                .byte    109
 798 002d 3B                .byte    59
 799 002e 43                .byte    67
 800 002f 4C                .byte    76
 801 0030 5B                .byte    91
 802 0031 3F                .byte    63
 803 0032 0000 0000         .skip 8,0
 803      0000 0000 
 804 003a 64                .byte    100
 805 003b 3B                .byte    59
 806 003c 4C                .byte    76
 807 003d 5B                .byte    91
 808 003e 3F                .byte    63
 809 003f 0000 0000         .skip 9,0
 809      0000 0000 
 809      00
 810 0048 60                .byte    96
 811 0049 3B                .byte    59
 812 004a 49                .byte    73
 813 004b 49                .byte    73
 814 004c 57                .byte    87
 815 004d 40                .byte    64
 816 004e 0000 0000         .skip 8,0
 816      0000 0000 
 817 0056 6A                .byte    106
 818 0057 3B                .byte    59
 819 0058 4D                .byte    77
 820 0059 4E                .byte    78
 821 005a 4C                .byte    76
 822 005b 4A                .byte    74
 823 005c 45                .byte    69
 824 005d 46                .byte    70
 825 005e 3B                .byte    59
 826 005f 0000 0000         .skip 5,0
 826      00
 827 0064 6C                .byte    108
 828 0065 4C                .byte    76
 829 0066 4A                .byte    74
 830 0067 4D                .byte    77
 831 0068 48                .byte    72
 832 0069 4A                .byte    74
 833 006a 4E                .byte    78
 834 006b 4C                .byte    76
 835 006c 0000 0000         .skip 6,0
 835      0000 
 836 0072 6C                .byte    108
 837 0073 4C                .byte    76
 838 0074 40                .byte    64
 839 0075 3F                .byte    63
 840 0076 4F                .byte    79
 841 0077 4D                .byte    77
 842 0078 4E                .byte    78
 843 0079 3B                .byte    59
 844 007a 49                .byte    73
 845 007b 4A                .byte    74
 846 007c 3D                .byte    61
 847 007d 46                .byte    70
 848 007e 44                .byte    68
 849 007f 00                .skip 1,0
 850                   .global    MenuButton
 853                   MenuButton:
 854 0080 5E                .byte    94
 855 0081 57                .byte    87
 856 0082 3C                .byte    60
 857 0083 4A                .byte    74
 858 0084 4C                .byte    76
 859 0085 0000 00           .skip 3,0
 860 0088 5E                .byte    94
 861 0089 3D                .byte    61
 862 008a 4A                .byte    74
 863 008b 3F                .byte    63
 864 008c 0000 0000         .skip 4,0
 865 0090 2020 2020         .string    "    "
 865      00
 866 0095 0000 00           .skip 3,0
 867                       .data
 870                   MenuItemIndex:
 871 0000 0A                .byte    10
 872                       .lcomm getlastkeycount.2439,1
 873                       .lcomm lastkey.2438,1
 922                   .Letext0:
DEFINED SYMBOLS
                            *ABS*:00000000 MainMenu.c
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:2      *ABS*:0000003f __SREG__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:3      *ABS*:0000003e __SP_H__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:4      *ABS*:0000003d __SP_L__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:5      *ABS*:00000034 __CCP__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:6      *ABS*:00000000 __tmp_reg__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:7      *ABS*:00000001 __zero_reg__
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:18     .text:00000000 DSPMainMenuText
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:761    .progmem.data:00000000 MenuCaption
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:790    .progmem.data:00000022 MenuVersionText
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:853    .progmem.data:00000080 MenuButton
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:796    .progmem.data:0000002c MenuText
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:362    .text:00000254 RespondMenuKeyboard
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:766    .progmem.data:0000000c MenuMCZeroText
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:870    .data:00000000 MenuItemIndex
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:498    .text:00000316 GetMenuSelected
                             .bss:00000000 getlastkeycount.2439
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:872    .bss:00000001 lastkey.2438
C:\Users\ADMINI~1\AppData\Local\Temp/cczqpTm3.s:674    .text:000003f2 DSPMainMenu
 
UNDEFINED SYMBOLS
DSP24x24Str
DrawLine
DSP24x24StrS
DrawButtonH48
DSP16x24Str
GB_TestingParm
BackColorCH
DSPWorkingPage
DSPChargePage
DSPFileManagePage
DSPSYSSetPage
GB_FBO_Data
DSPMessageBox
DSPSingleVolData
DSPAboutPage
GetTouchLocal
GetButtonIsBeep
BuzzerBeep
DisableCustomInput
GB_SYS_State
DisableMonomerVolGether
__do_copy_data
__do_clear_bss