-
Notifications
You must be signed in to change notification settings - Fork 0
/
source.asm
3750 lines (3750 loc) · 56.2 KB
/
source.asm
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
org 0x0
goto 9e
call 19
movwf 36
call 15
movf 20,W
iorwf 21,W
btfsc 3,2
goto 99
call 93
bcf 4,7
movf 36,W
xorwf 0,F
clrwdt
goto e
goto f
incf 20,F
btfsc 3,2
incfsz 21,F
goto c
xorwf 0,F
goto 99
xorlw ff
bsf 4,7
andwf 0,F
goto 99
movwf 28
movlw 6
btfsc 28,3
movlw 5
movwf 4
movlw 0
movwf a
movf 28,W
andlw 7
addwf 2,F
retlw 1
retlw 2
retlw 4
retlw 8
retlw 10
retlw 20
retlw 40
retlw 80
movwf 4
movf 0,W
goto 99
clrf 23
movwf 22
movlw ff
addwf 22,F
btfss 3,0
addwf 23,F
btfss 3,0
goto 99
movlw 3
movwf 21
movlw e6
call 3c
goto 30
clrf 21
addlw fb
movwf 20
comf 21,F
movlw ff
btfss 3,0
goto 45
addwf 20,F
btfsc 3,0
goto 42
addwf 20,F
clrwdt
incfsz 21,F
goto 42
nop
return
movwf 22
movlw 1
goto 51
movwf 22
movlw 4
goto 51
movwf 28
movf 23,W
subwf 21,W
btfss 3,2
goto 58
movf 22,W
subwf 20,W
movlw 4
btfsc 3,0
movlw 1
btfsc 3,2
movlw 2
andwf 28,W
btfss 3,2
movlw ff
goto 99
clrf 25
clrf 24
movlw 10
movwf 26
rlf 21,W
rlf 24,F
rlf 25,F
movf 22,W
subwf 24,F
movf 23,W
btfss 3,0
incfsz 23,W
subwf 25,F
btfsc 3,0
goto 77
movf 22,W
addwf 24,F
movf 23,W
btfsc 3,0
incfsz 23,W
addwf 25,F
bcf 3,0
rlf 20,F
rlf 21,F
decfsz 26,F
goto 65
movf 20,W
goto 99
movlw 10
movwf 28
clrf 21
clrf 20
rrf 27,F
rrf 26,F
btfss 3,0
goto 8b
movf 22,W
addwf 20,F
movf 23,W
btfsc 3,0
incfsz 23,W
addwf 21,F
rrf 21,F
rrf 20,F
rrf 25,F
rrf 24,F
decfsz 28,F
goto 81
movf 24,W
goto 99
comf 20,F
comf 21,F
incf 20,F
btfsc 3,2
incf 21,F
return
bcf 3,7
bcf 3,6
bcf 3,5
clrwdt
return
movlw 7
movwf 1f
movlw ff
movwf 6
bsf 3,5
movlw 78
movwf 6
bcf 3,5
movlw ff
movwf 5
bsf 3,5
movlw 38
movwf 5
movlw 58
movwf 1
bcf 3,5
movlw 3
movwf 5
movlw ff
movwf 6
clrf 40
clrf 41
movlw 3
movwf 23
movlw e8
clrf a
call 2f
bsf a,3
call 6a8
movlw e8
movwf 4a
movlw 3
movwf 4b
movlw e8
movwf 48
movlw 3
movwf 49
movlw 3
movwf 23
movlw e8
clrf a
call 2f
bsf a,3
call 6ae
movlw 1
movwf 4e
bsf a,3
call 668
movlw 80
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 14
subwf 50,W
bcf a,3
btfsc 3,0
goto 101
movf 50,W
sublw 13
bcf a,3
btfss 3,0
goto fb
bcf a,3
call e3
movwf 4e
bcf a,3
goto fb
movlw 0
movwf a
movf 50,W
addwf 2,F
retlw 4f
retlw 50
retlw 54
retlw 20
retlw 41
retlw 75
retlw 74
retlw 6f
retlw 4e
retlw 6f
retlw 74
retlw 63
retlw 68
retlw 65
retlw 72
retlw 20
retlw 52
retlw 36
retlw 2e
retlw 34
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto d3
movlw c0
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 14
subwf 50,W
bcf a,3
btfsc 3,0
goto 134
movf 50,W
sublw 13
bcf a,3
btfss 3,0
goto 12e
bcf a,3
call 116
movwf 4e
bcf a,3
goto 12e
movlw 1
movwf a
movf 50,W
addwf 2,F
retlw 43
retlw 48
retlw 4f
retlw 4f
retlw 53
retlw 45
retlw 20
retlw 43
retlw 4f
retlw 4e
retlw 46
retlw 49
retlw 47
retlw 55
retlw 52
retlw 41
retlw 54
retlw 49
retlw 4f
retlw 4e
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 106
movlw 94
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 13
subwf 50,W
bcf a,3
btfsc 3,0
goto 166
movf 50,W
sublw 12
bcf a,3
btfss 3,0
goto 160
bcf a,3
call 149
movwf 4e
bcf a,3
goto 160
movlw 1
movwf a
movf 50,W
addwf 2,F
retlw 31
retlw 20
retlw 2d
retlw 20
retlw 45
retlw 44
retlw 4d
retlw 20
retlw 4e
retlw 6f
retlw 74
retlw 63
retlw 68
retlw 43
retlw 75
retlw 74
retlw 74
retlw 65
retlw 72
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 139
movlw d4
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 14
subwf 50,W
bcf a,3
btfsc 3,0
goto 199
movf 50,W
sublw 13
bcf a,3
btfss 3,0
goto 193
bcf a,3
call 17b
movwf 4e
bcf a,3
goto 193
movlw 1
movwf a
movf 50,W
addwf 2,F
retlw 32
retlw 20
retlw 2d
retlw 20
retlw 45
retlw 44
retlw 4d
retlw 20
retlw 45
retlw 78
retlw 74
retlw 65
retlw 6e
retlw 64
retlw 20
retlw 52
retlw 65
retlw 61
retlw 63
retlw 68
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 16b
movlw 94
movwf 4e
bsf a,3
call 668
bsf a,3
call 67c
movlw 1
movwf 5c
clrwdt
bcf a,3
btfss 6,3
goto 1dc
clrwdt
bcf a,3
btfsc 6,5
goto 1b7
clrwdt
bcf a,3
btfss 6,5
goto 1a9
clrwdt
movf 5c,W
sublw 1
bcf a,3
btfsc 3,2
goto 1b5
bcf a,3
goto 1c9
bcf a,3
goto 1cf
clrwdt
bcf a,3
btfsc 6,4
goto 1a1
clrwdt
bcf a,3
btfss 6,4
goto 1bb
clrwdt
movf 5c,W
sublw 1
bcf a,3
btfsc 3,2
goto 1c7
bcf a,3
goto 1c9
bcf a,3
goto 1cf
movlw 1
movwf 5c
movlw 94
movwf 4e
bcf a,3
goto 1d5
movlw 2
movwf 5c
movlw d4
movwf 4e
bcf a,3
goto 1d5
bsf a,3
call 668
movlw c8
clrf a
call 2e
clrf a
goto 1a1
movlw c8
clrf a
call 2e
bsf a,3
call 677
clrwdt
movf 5c,W
sublw 2
bcf a,3
btfsc 3,2
goto 725
movlw 1
movwf 4e
bsf a,3
call 668
movlw 80
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 13
subwf 50,W
bcf a,3
btfsc 3,0
goto 21d
movf 50,W
sublw 12
bcf a,3
btfss 3,0
goto 217
bcf a,3
call 200
movwf 4e
bcf a,3
goto 217
movlw 2
movwf a
movf 50,W
addwf 2,F
retlw 4f
retlw 50
retlw 54
retlw 20
retlw 45
retlw 44
retlw 4d
retlw 20
retlw 4e
retlw 6f
retlw 74
retlw 63
retlw 68
retlw 43
retlw 75
retlw 74
retlw 74
retlw 65
retlw 72
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 1f0
movlw c2
movwf 4e
bsf a,3
call 668
movf 40,W
movwf 20
movf 41,W
movwf 21
clrf 23
movlw 0
clrf a
call 4b
bcf a,3
btfss 3,2
goto 25a
clrf 50
clrwdt
movlw 11
subwf 50,W
bcf a,3
btfsc 3,0
goto 258
movf 50,W
sublw 10
bcf a,3
btfss 3,0
goto 252
bcf a,3
call 23d
movwf 4e
bcf a,3
goto 252
movlw 2
movwf a
movf 50,W
addwf 2,F
retlw 31
retlw 20
retlw 2d
retlw 20
retlw 53
retlw 45
retlw 54
retlw 20
retlw 43
retlw 55
retlw 54
retlw 20
retlw 44
retlw 45
retlw 50
retlw 54
retlw 48
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 22d
bcf a,3
goto 2de
clrf 50
clrwdt
movlw e
subwf 50,W
bcf a,3
btfsc 3,0
goto 283
movf 50,W
sublw d
bcf a,3
btfss 3,0
goto 27d
bcf a,3
call 26b
movwf 4e
bcf a,3
goto 27d
movlw 2
movwf a
movf 50,W
addwf 2,F
retlw 31
retlw 20
retlw 2d
retlw 20
retlw 44
retlw 45
retlw 50
retlw 54
retlw 48
retlw 20
retlw 3d
retlw 20
retlw 30
retlw 2e
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 25b
movf 40,W
movwf 20
movf 41,W
movwf 21
movlw 10
movwf 22
movlw 27
movwf 23
clrf a
call 61
movwf 59
movlw 30
addwf 59,W
movwf 4e
bsf a,3
call 670
movf 59,W
movwf 26
clrf 27
movlw 10
movwf 22
movlw 27
movwf 23
clrf a
call 7d
movwf 46
movf 25,W
movwf 47
movf 46,W
subwf 40,W
movwf 44
movf 47,W
btfss 3,0
addlw 1
subwf 41,W
movwf 45
movf 44,W
movwf 20
movf 45,W
movwf 21
movlw e8
movwf 22
movlw 3
movwf 23
clrf a
call 61
movwf 5a
movlw 30
addwf 5a,W
movwf 4e
bsf a,3
call 670
movf 5a,W
movwf 26
clrf 27
movlw e8
movwf 22
movlw 3
movwf 23
clrf a
call 7d
movwf 46
movf 25,W
movwf 47
movf 46,W
subwf 44,W
movwf 42
movf 47,W
btfss 3,0
addlw 1
subwf 45,W
movwf 43
movf 42,W
movwf 20
movf 43,W
movwf 21
movlw 64
movwf 22
clrf 23
clrf a
call 61
movwf 58
movlw 30
addwf 58,W
movwf 4e
bsf a,3
call 670
movlw 22
movwf 4e
bsf a,3
call 670
movlw 96
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw d
subwf 50,W
bcf a,3
btfsc 3,0
goto 314
movf 50,W
sublw c
bcf a,3
btfss 3,0
goto 30e
bcf a,3
call 2f3
movwf 4e
bcf a,3
goto 30e
movlw 3
movwf a
movf 50,W
goto 300
org 0x600
addwf 2,F
retlw 32
retlw 20
retlw 2d
retlw 20
retlw 43
retlw 55
retlw 54
retlw 20
retlw 4e
retlw 4f
retlw 54
retlw 43
retlw 48
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 2e3
movlw d6
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 11
subwf 50,W
bcf a,3
btfsc 3,0
goto 344
movf 50,W
sublw 10
bcf a,3
btfss 3,0
goto 33e
bcf a,3
call 329
movwf 4e
bcf a,3
goto 33e
movlw 3
movwf a
movf 50,W
addwf 2,F
retlw 33
retlw 20
retlw 2d
retlw 20
retlw 4a
retlw 4f
retlw 47
retlw 20
retlw 45
retlw 4c
retlw 45
retlw 43
retlw 54
retlw 52
retlw 4f
retlw 44
retlw 45
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 319
movlw c2
movwf 4e
bsf a,3
call 668
bsf a,3
call 67c
movlw 1
movwf 5c
clrwdt
bcf a,3
btfss 6,3
goto 399
clrwdt
bcf a,3
btfsc 6,5
goto 368
clrwdt
bcf a,3
btfss 6,5
goto 354
clrwdt
movlw 3
subwf 5c,W
bcf a,3
btfss 3,0
goto 360
bcf a,3
goto 380
clrwdt
movf 5c,W
sublw 2
bcf a,3
btfsc 3,2
goto 38c
bcf a,3
goto 386
clrwdt
bcf a,3
btfsc 6,4
goto 34c
clrwdt
bcf a,3
btfss 6,4
goto 36c
clrwdt
movlw 2
subwf 5c,W
bcf a,3
btfsc 3,0
goto 378
bcf a,3
goto 38c
clrwdt
movf 5c,W
sublw 2
bcf a,3
btfsc 3,2
goto 380
bcf a,3
goto 386
movlw 1
movwf 5c
movlw c2
movwf 4e
bcf a,3
goto 390
movlw 2
movwf 5c
movlw 96
movwf 4e
bcf a,3
goto 390
movlw 3
movwf 5c
movlw d6
movwf 4e
bsf a,3
call 668
movlw 3
movwf 23
movlw e8
clrf a
call 2f
clrf a
goto 34c
movlw 3
movwf 23
movlw e8
clrf a
call 2f
bsf a,3
call 677
clrwdt
movf 5c,W
sublw 3
bcf a,3
btfsc 3,2
goto 4ab
clrwdt
movf 5c,W
sublw 2
bcf a,3
btfsc 3,2
goto 55c
movlw 1
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw 10
subwf 50,W
bcf a,3
btfsc 3,0
goto 3db
movf 50,W
sublw f
bcf a,3
btfss 3,0
goto 3d5
bcf a,3
call 3c1
movwf 4e
bcf a,3
goto 3d5
movlw 3
movwf a
movf 50,W
addwf 2,F
retlw 20
retlw 20
retlw 20
retlw 53
retlw 65
retlw 74
retlw 20
retlw 43
retlw 55
retlw 54
retlw 20
retlw 44
retlw 45
retlw 50
retlw 54
retlw 48
bsf a,3
call 670
incf 50,F
bcf a,3
btfss 3,2
goto 3b1
movlw c4
movwf 4e
bsf a,3
call 668
clrf 50
clrwdt
movlw c
subwf 50,W
bcf a,3
btfsc 3,0
goto 406
movf 50,W
sublw b
bcf a,3
btfss 3,0
goto 400
bcf a,3
call 3f0
movwf 4e
bcf a,3