-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCP.inc
2551 lines (2489 loc) · 43.3 KB
/
CP.inc
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 $A980
; =============== S U B R O U T I N E =======================================
_cp_sub04:
LDA #$40
STA byte_B6
LDA #$00
STA byte_B5
STA byte_B4
STA byte_B3
JSR sub_1B58F
LDA _training_mode_flag
BEQ loc_1A9AC
JSR sub_1AAAC
JSR sub_1AEA7
JSR sub_1AC55
JMP sub_1AB07
; ---------------------------------------------------------------------------
loc_1A9AC:
JSR sub_1AA66
JSR sub_1AA47
BCS loc_1A9F6
LDA byte_5BF
BNE loc_1A9F6
LDA byte_5EC
CMP #$04
BCS loc_1A9CD
CMP #$02
BCC loc_1AA21
LDA byte_5DC
BPL loc_1AA21
CMP #$FA
BCS loc_1AA21
loc_1A9CD:
LDA byte_5EB
BPL loc_1A9E7
JSR sub_1AC2C
JSR sub_1AEA7
JSR sub_1AD48
JSR sub_1AC55
JSR sub_1AFC5
JSR sub_1AC8E
JMP sub_1B053
; ---------------------------------------------------------------------------
loc_1A9E7:
JSR sub_1AEA7
JSR sub_1AE5A
JSR sub_1AC55
JSR sub_1AC8E
JMP sub_1B053
; ---------------------------------------------------------------------------
loc_1A9F6:
JSR sub_1AAAC
JSR sub_1AAF1
LDA byte_5CD
CMP #$03
BCS loc_1AA1B
LDA byte_5EA
CMP #$04
BCC loc_1AA1E
LDA byte_419
BNE loc_1AA1B
LDA byte_5EC
BEQ loc_1AA1B
CMP #$04
BCS loc_1AA1B
JSR sub_1AAD7
loc_1AA1B:
JMP sub_1AB07
; ---------------------------------------------------------------------------
loc_1AA1E:
JMP sub_1AB10
; ---------------------------------------------------------------------------
loc_1AA21:
JSR sub_1AC2C
JSR sub_1AB28
JSR sub_1AB7E
JSR sub_1ABA7
JSR sub_1B053
LDA byte_5DE
CMP #$0E
BCC loc_1AA41
LDA byte_5EC
CMP #$02
BCS loc_1AA41
JMP sub_1AC06
; ---------------------------------------------------------------------------
loc_1AA41:
JSR sub_1ABB7
JMP sub_1ABDA
; =============== S U B R O U T I N E =======================================
sub_1AA47:
LDA byte_5BF
CMP byte_5DD
BEQ loc_1AA5D
LDA byte_5BE
BPL loc_1AA5F
CMP #$FE
BCS loc_1AA5F
LDA #$80
JSR sub_1B12D
loc_1AA5D:
CLC
RTS
; ---------------------------------------------------------------------------
loc_1AA5F:
LDA #$80
JSR sub_1B0CE
SEC
locret_1AA65:
RTS
; =============== S U B R O U T I N E =======================================
sub_1AA66:
LDA byte_5EB
BMI locret_1AA65
LDY byte_5EE
BEQ locret_1AA65
LDA byte_41A
BNE locret_1AA65
LDA byte_5B5
ASL
CMP byte_5B7
BCS locret_1AA65
LDA byte_5EB
CMP #$03
BCC loc_1AA8A
CPY byte_5EB
BCC locret_1AA65
loc_1AA8A:
LDA #$E0
LDY byte_5D0
BEQ loc_1AAA9
LDA byte_5F2
SEC
SBC byte_5D4
BEQ loc_1AA9E
ADC #$D0
BNE loc_1AAA9
loc_1AA9E:
LDA byte_5C0
SEC
SBC byte_5DE
BEQ locret_1AA65
ADC #$C0
loc_1AAA9:
JMP sub_1B0CE
; =============== S U B R O U T I N E =======================================
sub_1AAAC:
LDX #$01
loc_1AAAE:
LDA byte_1AABF-1,X
STA byte_B8
LDA byte_440,X
JSR sub_1B151
INX
CPX #$19
BNE loc_1AAAE
nullsub_7:
RTS
byte_1AABF:
.BYTE $D0,$C8,$C0,$B8,$B0,$A8,$5F,$5A,$55,$50,$4B,$46,$23,$20,$1D,$1A
.BYTE $17,$14,$06,$05,$04,$03,$02,$01
; =============== S U B R O U T I N E =======================================
sub_1AAD7:
LDY byte_5CE
BNE loc_1AAE1
LDA #$80
JSR sub_1B0F0
loc_1AAE1:
LDA byte_5D2
CMP #$02
BCS nullsub_7
LDA #$80
JSR sub_1B0F0
LDA #$10
BNE sub_1AAF3
; =============== S U B R O U T I N E =======================================
sub_1AAF1:
LDA #$01
; =============== S U B R O U T I N E =======================================
sub_1AAF3:
PHA
LDX #$00
LDY #$13
loc_1AAF8:
LDA byte_440,Y
BNE loc_1AAFE
INX
loc_1AAFE:
INY
CPY #$19
BNE loc_1AAF8
PLA
JMP sub_1B14F
; =============== S U B R O U T I N E =======================================
sub_1AB07:
LDX #$80
LDA byte_459
ASL
JMP sub_1B0F2
; =============== S U B R O U T I N E =======================================
sub_1AB10:
LDA byte_459
CLC
ADC #$01
AND #$1E
LDX #$80
JSR sub_1B0F2
LDA byte_5C0
SEC
SBC #$13
LDX #$10
JMP sub_1B0F2
; =============== S U B R O U T I N E =======================================
sub_1AB28:
LDA byte_5C2
CMP #$06
BEQ locret_1AB7D
LDX #$07
loc_1AB31:
LDA byte_440,X
CMP #$01
BNE loc_1AB78
CPX #$13
BCS loc_1AB4C
LDA byte_460
BEQ loc_1AB4C
CMP #$02
BCS loc_1AB78
LDA byte_5C2
CMP #$05
BCS loc_1AB78
loc_1AB4C:
TXA
TAY
LDA #$06
STA byte_BD
loc_1AB52:
LDA byte_47F,Y
CMP #$06
BEQ loc_1AB78
CPY #$18
BEQ loc_1AB6E
LDA byte_461,Y
BEQ loc_1AB67
LDA #$10
JSR sub_1B139
loc_1AB67:
INY
DEC byte_BD
BNE loc_1AB52
BEQ loc_1AB78
loc_1AB6E:
LDA byte_460
BEQ loc_1AB78
LDA #$10
JSR sub_1B139
loc_1AB78:
INX
CPX #$19
BNE loc_1AB31
locret_1AB7D:
RTS
; =============== S U B R O U T I N E =======================================
sub_1AB7E:
LDA byte_47A
BEQ locret_1AB7D
CMP #$16
BCS loc_1AB94
CMP #$13
BCS loc_1AB8F
LDA #$50
BNE loc_1AB91
loc_1AB8F:
LDA #$30
loc_1AB91:
JSR sub_1B0F0
loc_1AB94:
LDA byte_5C2
CMP #$05
BNE locret_1AB7D
CMP byte_5E0
BCC locret_1AB7D
BEQ locret_1AB7D
LDA #$01
JMP sub_1B0DA
; =============== S U B R O U T I N E =======================================
sub_1ABA7:
LDX byte_5C8
LDA #$18
JSR sub_1B0F2
LDX byte_5C4
LDA #$10
JMP sub_1B0F2
; =============== S U B R O U T I N E =======================================
sub_1ABB7:
LDX byte_5C2
LDA #$18
JSR sub_1B0F2
LDY #$00
loc_1ABC1:
LDA byte_493,Y
BEQ loc_1ABCB
INY
CPY #$06
BNE loc_1ABC1
loc_1ABCB:
LDA byte_1ABD3,Y
LDX #$10
JMP sub_1B0F2
; ---------------------------------------------------------------------------
byte_1ABD3:
.BYTE $00,$10,$20,$30,$60,$70,$80
; =============== S U B R O U T I N E =======================================
sub_1ABDA:
LDY #$18
loc_1ABDC:
LDA byte_480,Y
BEQ loc_1ABE4
DEY
BNE loc_1ABDC
loc_1ABE4:
LDA #$06
STA byte_BD
LDX #$00
loc_1ABEA:
LDA byte_440,Y
CMP #$02
BEQ loc_1ABF2
INX
loc_1ABF2:
DEY
DEC byte_BD
BNE loc_1ABEA
LDA byte_1ABFF,X
LDX #$0A
JMP sub_1B0F2
; ---------------------------------------------------------------------------
byte_1ABFF:
.BYTE $00,$00,$01,$03,$04,$05,$06
; =============== S U B R O U T I N E =======================================
sub_1AC06:
LDA byte_5C0
SEC
SBC byte_5DE
BEQ loc_1AC14
LDX #$04
JSR sub_1B0F2
loc_1AC14:
LDY byte_5C0
LDA byte_440,Y
AND #$01
LDX #$04
JSR sub_1B14F
INY
LDA byte_440,Y
AND #$01
LDX #$02
JMP sub_1B14F
; =============== S U B R O U T I N E =======================================
sub_1AC2C:
LDY #$01
loc_1AC2E:
LDX byte_1AC3D-1,Y
LDA byte_440,Y
JSR sub_1B14F
INY
CPY #$19
BNE loc_1AC2E
RTS
; ---------------------------------------------------------------------------
byte_1AC3D:
.BYTE $60,$4A,$40,$38,$30,$28,$22,$1E,$1A,$16,$13,$10,$0C,$0A,$08,$06
.BYTE $05,$04,$00,$00,$00,$00,$00,$00
; =============== S U B R O U T I N E =======================================
sub_1AC55:
LDX #$1A
loc_1AC57:
LDY byte_460,X
BEQ locret_1AC75
LDA byte_1AC76-1,Y
STA byte_B8
LDA byte_420
CMP #$03
BCC loc_1AC6A
LDA #$03
loc_1AC6A:
ASL
ADC #$06
JSR sub_1B0F4
INX
CPX #$1F
BNE loc_1AC57
locret_1AC75:
RTS
; ---------------------------------------------------------------------------
byte_1AC76:
.BYTE $D0,$D0,$D0,$D0,$D0,$D0,$D0,$C0,$C0,$B0,$A0,$90,$70,$50,$40,$28
.BYTE $1C,$18,$07,$03,$03,$03,$01,$01
; =============== S U B R O U T I N E =======================================
sub_1AC8E:
LDX #$1A
loc_1AC90:
LDY byte_460,X
BEQ locret_1AC75
LDA byte_5F3
BNE loc_1ACB8
LDA byte_5F1
CMP #$02
BCC loc_1ACA8
LDA byte_5DF
CMP #$0D
BCS loc_1ACB8
loc_1ACA8:
LDA byte_5C2
CMP byte_5E0
BCS loc_1ACB4
LDY #$E0
BNE loc_1AD09
loc_1ACB4:
LDY #$F8
BNE loc_1AD09
loc_1ACB8:
LDY byte_5C2
LDA byte_5C8
CMP #$04
BCS loc_1ACDF
CPY #$05
BCS loc_1ACDF
CMP #$03
BEQ loc_1ACD4
CPY #$04
BEQ loc_1ACE3
CPY #$03
BEQ loc_1ACEE
BNE loc_1ACF9
loc_1ACD4:
LDA byte_5C3
CMP #$05
BCS loc_1ACF9
CMP #$04
BEQ loc_1ACF9
loc_1ACDF:
LDY #$E1
BNE loc_1AD09
loc_1ACE3:
LDA byte_5C3
CMP #$04
BCS loc_1ACF9
LDY #$03
BNE loc_1AD09
loc_1ACEE:
LDA byte_5C3
CMP #$03
BCS loc_1ACF9
LDY #$01
BNE loc_1AD09
loc_1ACF9:
JSR sub_1AD39
BCC loc_1AD30
loc_1ACFE:
LDA #$20
CPY #$06
BEQ loc_1AD06
LDA #$01
loc_1AD06:
JMP sub_1B139
; ---------------------------------------------------------------------------
loc_1AD09:
STY byte_BD
JSR sub_1AD39
BCS loc_1ACFE
LDA byte_460,X
CMP #$13
BCC loc_1AD2B
LDA byte_5C2
CMP byte_5E0
BCC locret_1AD38
LDA byte_413
CMP #$02
BCC loc_1AD2B
LDA byte_493
BEQ locret_1AD38
loc_1AD2B:
LDA byte_BD
JSR sub_1B0DA
loc_1AD30:
INX
CPX #$1F
BEQ locret_1AD38
JMP loc_1AC90
; ---------------------------------------------------------------------------
locret_1AD38:
RTS
; =============== S U B R O U T I N E =======================================
sub_1AD39:
LDA byte_5C9
CMP #$04
BCC locret_1AD47
LDY byte_5E0
CPY #$04
BCC locret_1AD47
locret_1AD47:
RTS
; =============== S U B R O U T I N E =======================================
sub_1AD48:
LDX #$00
STX byte_BD
INX
loc_1AD4D:
LDA byte_440,X
BEQ loc_1ADC5
CMP #$01
BEQ loc_1AD6B
LDY byte_5F0
CPY #$02
BCC loc_1AD87
CMP #$02
BEQ loc_1AD87
CMP #$03
BEQ loc_1AD8D
CMP #$04
BEQ loc_1AD93
BNE loc_1AD99
loc_1AD6B:
LDA byte_1ADE1-1,X
STA byte_B8
TXA
SEC
SBC byte_BD
CMP #$06
BCS loc_1AD80
LDA byte_BD
BEQ loc_1AD80
LDA #$02
BNE loc_1AD82
loc_1AD80:
LDA #$00
loc_1AD82:
STX byte_BD
JMP loc_1ADC2
; ---------------------------------------------------------------------------
loc_1AD87:
LDA byte_1ADF9-1,X
JMP loc_1ADAC
; ---------------------------------------------------------------------------
loc_1AD8D:
LDA byte_1AE11-1,X
JMP loc_1ADAA
; ---------------------------------------------------------------------------
loc_1AD93:
LDA byte_1AE29-1,X
JMP loc_1ADAA
; ---------------------------------------------------------------------------
loc_1AD99:
SEC
SBC #$05
STA byte_BE
ASL byte_BE
LDA byte_1AE41,X
SEC
SBC byte_BE
BCS loc_1ADAA
LDA #$00
loc_1ADAA:
STX byte_BD
loc_1ADAC:
STA byte_B8
LDY #$03
LDA byte_441,X
CMP #$02
BCC loc_1ADB9
INY
INY
loc_1ADB9:
LDA byte_43F,X
CMP #$02
BCC loc_1ADC1
INY
loc_1ADC1:
TYA
loc_1ADC2:
JSR sub_1B0F4
loc_1ADC5:
INX
CPX #$19
BNE loc_1AD4D
LDA byte_5F0
BEQ locret_1ADE0
LDA byte_413
CMP #$02
BCC locret_1ADE0
LDA byte_493
BNE locret_1ADE0
LDA #$03
JMP sub_1B139
; ---------------------------------------------------------------------------
locret_1ADE0:
RTS
; ---------------------------------------------------------------------------
byte_1ADE1:
.BYTE $08,$08,$00,$00,$00,$00,$04,$04,$04,$04,$04,$04,$06,$08,$08,$08
.BYTE $08,$08,$06,$04,$02,$00,$00,$00
byte_1ADF9:
.BYTE $18,$1C,$20,$24,$40,$28,$40,$29,$28,$28,$60,$70,$68,$70,$80,$98
.BYTE $A0,$C8,$F0,$F0,$C8,$A0,$60,$50
byte_1AE11:
.BYTE $18,$1C,$20,$24,$40,$28,$3F,$28,$27,$27,$5F,$6F,$67,$6F,$7F,$97
.BYTE $9F,$C7,$EF,$EF,$C7,$70,$30,$28
byte_1AE29:
.BYTE $18,$1C,$20,$24,$40,$28,$3D,$27,$26,$26,$5D,$6D,$65,$6D,$7D,$95
.BYTE $9D,$C5,$ED,$ED,$C5,$40,$18,$10
byte_1AE41:
.BYTE $00,$18,$1C,$20,$24,$40,$28,$3C,$26,$25,$25,$5C,$6C,$63,$6B,$7B
.BYTE $93,$9B,$C3,$EB,$EB,$C2,$20,$0C,$08
; =============== S U B R O U T I N E =======================================
sub_1AE5A:
LDX #$01
loc_1AE5C:
LDY byte_440,X
CPY #$02
BCC loc_1AE89
LDA byte_1AE8F-1,X
STA byte_B8
CPX #$0D
BCC loc_1AE74
CPY #$02
BEQ loc_1AE74
INC byte_B8
INC byte_B8
loc_1AE74:
LDY #$03
LDA byte_441,X
CMP #$02
BCC loc_1AE7E
INY
loc_1AE7E:
LDA byte_43F,X
CMP #$02
BCC loc_1AE86
INY
loc_1AE86:
JSR sub_1B0F4
loc_1AE89:
INX
CPX #$19
BNE loc_1AE5C
RTS
; ---------------------------------------------------------------------------
byte_1AE8F:
.BYTE $14,$16,$18,$1C,$20,$22,$24,$28,$30,$40,$50,$60,$68,$70,$80,$98
.BYTE $A0,$B0,$C0,$C0,$DE,$DC,$DA,$D8
; =============== S U B R O U T I N E =======================================
sub_1AEA7:
LDX #$01
loc_1AEA9:
LDA byte_440,X
CMP #$01
BNE loc_1AEEF
TXA
PHA
LDA #$00
STA byte_B8
LDY #$06
loc_1AEB8:
CPX #$18
BEQ loc_1AEDE
LDA byte_461,X
BEQ loc_1AED8
CMP #$02
BEQ loc_1AECD
CMP #$01
BNE loc_1AED1
LDA #$12
BNE loc_1AED3
loc_1AECD:
LDA #$0C
BNE loc_1AED3
loc_1AED1:
LDA #$10
loc_1AED3:
CLC
ADC byte_B8
STA byte_B8
loc_1AED8:
INX
DEY
BNE loc_1AEB8
BEQ loc_1AEEA
loc_1AEDE:
LDA byte_460
BEQ loc_1AEEA
LDA #$20
CLC
ADC byte_B8
STA byte_B8
loc_1AEEA:
PLA
TAX
JSR sub_1AEF5
loc_1AEEF:
INX
CPX #$19
BNE loc_1AEA9
nullsub_8:
RTS
; =============== S U B R O U T I N E =======================================
sub_1AEF5:
LDA byte_B8
BEQ nullsub_8
CPX #$13
BCS loc_1AF0D
LDA byte_460
BEQ loc_1AF0D
CMP #$02
BCS nullsub_8
LDA byte_5C2
CMP #$04
BCS nullsub_8
loc_1AF0D:
LDY byte_5E1
CPY #$06
BEQ loc_1AF29
CPY #$05
BEQ loc_1AF2D
CPY #$04
BEQ loc_1AF32
LDY byte_5C8
CPY #$04
BCS locret_1AF3C
CPY #$03
BEQ loc_1AF37
BNE loc_1AF3D
loc_1AF29:
LDA #$F0
BNE loc_1AF4A
loc_1AF2D:
LDA byte_1AF95-1,X
BNE loc_1AF4A
loc_1AF32:
LDA byte_1AF7D-1,X
BNE loc_1AF4A
loc_1AF37:
LDA byte_1AFAD-1,X
BNE loc_1AF4A
locret_1AF3C:
RTS
; ---------------------------------------------------------------------------
loc_1AF3D:
LDA byte_1AF4D-1,X
LDY byte_5C0
CPY #$0D
BCC loc_1AF4A
LDA byte_1AF65-1,X
loc_1AF4A:
JMP sub_1B151
; ---------------------------------------------------------------------------
byte_1AF4D:
.BYTE $00,$00,$00,$00,$00,$00,$01,$01,$02,$02,$03,$04,$05,$08,$0A,$0C
.BYTE $0C,$0E,$10,$10,$10,$10,$10,$10
byte_1AF65:
.BYTE $00,$00,$00,$00,$00,$00,$04,$04,$08,$08,$0C,$10,$14,$20,$28,$30
.BYTE $30,$38,$40,$40,$40,$40,$40,$40
byte_1AF7D:
.BYTE $00,$00,$00,$00,$00,$00,$02,$02,$04,$04,$06,$08,$08,$10,$18,$18
.BYTE $18,$18,$20,$20,$20,$20,$20,$20
byte_1AF95:
.BYTE $00,$00,$00,$00,$00,$00,$04,$04,$08,$08,$0C,$10,$14,$20,$28,$30
.BYTE $30,$38,$40,$40,$40,$40,$40,$40
byte_1AFAD:
.BYTE $00,$00,$00,$00,$00,$00,$01,$01,$02,$02,$03,$03,$04,$04,$05,$05
.BYTE $06,$06,$06,$06,$06,$06,$06,$06
; =============== S U B R O U T I N E =======================================
sub_1AFC5:
LDY byte_5DE
CPY #$06
BCC loc_1AFCE
LDY #$06
loc_1AFCE:
LDA byte_5E7
CMP #$02
BCC locret_1B02F
BNE loc_1AFE1
LDA byte_5C9
BNE loc_1AFF4
LDA byte_1B030,Y
BNE loc_1B00D
loc_1AFE1:
LDA byte_5C9
BEQ loc_1AFEF
CMP #$01
BNE loc_1AFF4
LDA byte_1B037,Y
BNE loc_1B00D
loc_1AFEF:
LDA byte_1B03E,Y
BNE loc_1B00D
loc_1AFF4:
LDA byte_5E9
CMP byte_5CB
BEQ loc_1B010
LDA byte_5E7
CMP #$02
BCC loc_1B010
BNE loc_1B00A
LDA byte_1B045,Y
BNE loc_1B00D
loc_1B00A:
LDA byte_1B04C,Y
loc_1B00D:
JMP sub_1B0DA
; ---------------------------------------------------------------------------
loc_1B010:
LDA byte_5E7
CMP #$03
BCC locret_1B02F
LDY byte_5DE
CPY byte_5C0
BEQ loc_1B023
LDA #$02
BNE loc_1B00D
loc_1B023:
LDA byte_400,Y
CMP byte_440,Y
BEQ locret_1B02F
LDA #$01
BNE loc_1B00D
locret_1B02F:
RTS
; ---------------------------------------------------------------------------
byte_1B030:
.BYTE $10,$06,$05,$03,$01,$01,$01
byte_1B037:
.BYTE $10,$08,$06,$04,$02,$01,$01
byte_1B03E:
.BYTE $F0,$F0,$F0,$04,$02,$01,$01
byte_1B045:
.BYTE $08,$05,$04,$03,$01,$01,$01
byte_1B04C:
.BYTE $F0,$F0,$F0,$04,$02,$01,$01
; =============== S U B R O U T I N E =======================================
sub_1B053:
LDY byte_5C4
LDX byte_5C6
LDA byte_5E2
CMP #$06
BCC loc_1B0B5
BNE loc_1B076
CPY #$06
BCC loc_1B0AA
BNE loc_1B06F
CPX byte_5E4
BNE loc_1B081
BEQ loc_1B08B
loc_1B06F:
CPX byte_5E4
BEQ loc_1B081
BNE loc_1B08B
loc_1B076:
CPY #$06
BCC loc_1B0AA
DEX
DEX
CPX byte_5E4
BCC loc_1B08B
loc_1B081:
LDA byte_5E6
BEQ locret_1B0C8
LDA #$E0
JMP sub_1B0DA
; ---------------------------------------------------------------------------
loc_1B08B:
LDA byte_5C6
CLC
ADC #$06
TAY
LDA byte_440,Y
CMP #$02
BCC loc_1B09C
LDA byte_441,Y
loc_1B09C:
CMP #$01
BNE locret_1B0C8
LDA byte_5E6
BEQ locret_1B0C8
LDA #$80
JMP sub_1B0DA
; ---------------------------------------------------------------------------
loc_1B0AA:
LDA #$10
JSR sub_1B12D
LDA byte_1B0C9-1,Y
JMP sub_1B139
; ---------------------------------------------------------------------------
loc_1B0B5:
CPY #$06
BCC locret_1B0C8
LDA byte_5E6
BEQ loc_1B0C3
LDA #$01
JMP sub_1B0CE
; ---------------------------------------------------------------------------
loc_1B0C3:
LDA #$01
JMP sub_1B0DA
; ---------------------------------------------------------------------------
locret_1B0C8:
RTS
; ---------------------------------------------------------------------------
byte_1B0C9:
.BYTE $04,$03,$02,$01,$00
; =============== S U B R O U T I N E =======================================
sub_1B0CE:
STA byte_BC
LDA #$01
STA byte_BA
LDA #$00
STA byte_B9
BEQ sub_1B0E4
; =============== S U B R O U T I N E =======================================
sub_1B0DA:
STA byte_BC
LDA #$01
STA byte_B9
LDA #$00
STA byte_BA
; =============== S U B R O U T I N E =======================================
sub_1B0E4:
STA byte_B8
BEQ sub_1B0FC
STA byte_BC
LDA #$00
STA byte_B8
BEQ sub_1B0FA
; =============== S U B R O U T I N E =======================================
sub_1B0F0:
LDX #$01
; =============== S U B R O U T I N E =======================================
sub_1B0F2:
STX byte_B8
; =============== S U B R O U T I N E =======================================
sub_1B0F4:
STA byte_BC
LDA #$00
STA byte_B9
; =============== S U B R O U T I N E =======================================
sub_1B0FA:
STA byte_BA
; =============== S U B R O U T I N E =======================================
sub_1B0FC:
STA byte_BB
; =============== S U B R O U T I N E =======================================
sub_1B0FE:
LDA byte_BC
BEQ loc_1B12A
LSR byte_BC
BCC loc_1B11F
LDA byte_B8
CLC
ADC byte_B3
STA byte_B3
LDA byte_B9
ADC byte_B4
STA byte_B4
LDA byte_BA
ADC byte_B5