-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathaffcv.s
478 lines (454 loc) · 6.71 KB
/
affcv.s
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
;
; **** ZP ABSOLUTE ADRESSES ****
;
a02 = $02
a03 = $03
a04 = $04
a05 = $05
a09 = $09
a0A = $0A
a0F = $0F
a10 = $10
a11 = $11
a70 = $70
a71 = $71
a72 = $72
a73 = $73
a74 = $74
a75 = $75
a76 = $76
a77 = $77
a78 = $78
a79 = $79
a7A = $7A
a7B = $7B
a7C = $7C
a7D = $7D
a7E = $7E
a7F = $7F
;
; **** ZP POINTERS ****
;
p09 = $09
p0C = $0C
p10 = $10
p70 = $70
p72 = $72
p74 = $74
p76 = $76
p7A = $7A
p7C = $7C
;
; **** ABSOLUTE ADRESSES ****
;
a02E3 = $02E3
a7FFD = $7FFD
a7FFE = $7FFE
a7FFF = $7FFF
;
; **** POINTERS ****
;
p8C00 = $8C00
pA141 = $A141
pA155 = $A155
pA3C3 = $A3C3
pA3D7 = $A3D7
pAF79 = $AF79
pAF8D = $AF8D
pBDD9 = $BDD9
pBDED = $BDED
pBE00 = $BE00
;
; **** EXTERNAL JUMPS ****
;
eF089 = $F089
eF17E = $F17E
* = $8E00
JSR s8E20
JSR s8EB0
JSR s8FA0
JSR s8F20
JSR s9050
RTS
JSR s8E20
JSR s8EB0
JSR s8F80
RTS
NOP
NOP
NOP
NOP
NOP
NOP
s8E20 LDA a7FFD
STA a78
ORA #$10
STA a79
LDA a7FFF
BEQ b8E63
LDA #<pA3C3
STA a02
LDA #>pA3C3
STA a03
LDA #<pA141
STA a70
LDA #>pA141
STA a71
STA a73
LDA #$54
STA a72
LDA #<pBDD9
STA a74
LDA #>pBDD9
STA a75
STA a77
LDA #$EC
STA a76
LDA #<pAF79
STA a7A
LDA #>pAF79
STA a7B
STA a7D
LDA #$A1
STA a7C
JMP j8E95
b8E63 LDA #<pA3D7
STA a02
LDA #>pA3D7
STA a03
LDA #<pA155
STA a70
LDA #>pA155
STA a71
STA a73
LDA #$68
STA a72
LDA #<pBDED
STA a74
LDA #>pBDED
STA a75
LDA #>pBE00
STA a77
LDA #<pBE00
STA a76
LDA #<pAF8D
STA a7A
LDA #>pAF8D
STA a7B
STA a7D
LDA #$B5
j8E95 STA a7C
LDA a02
STA a04
LDA a03
STA a05
LDA #<p8C00
STA a09
LDA #>p8C00
STA a0A
LDA a7FFE
STA a7E
RTS
NOP
NOP
NOP
s8EB0 LDX #$5C
b8EB2 JSR s8EC0
JSR s8EF0
JSR s8F70
DEX
BNE b8EB2
RTS
NOP
s8EC0 LDY #$00
LDA #$10
STA (p72),Y
LDA a78
INY
STA (p72),Y
LDA a79
STA (p70),Y
DEY
LDA a78
STA (p70),Y
CLC
LDA a70
ADC #$28
STA a70
BCC b8EDF
INC a71
b8EDF CLC
LDA a72
ADC #$28
STA a72
BCC b8EEA
INC a73
b8EEA RTS
NOP
NOP
NOP
NOP
NOP
s8EF0 LDY #$00
LDA #$10
STA (p76),Y
LDA a78
INY
STA (p76),Y
LDA a79
STA (p74),Y
DEY
LDA a78
STA (p74),Y
SEC
LDA a74
SBC #$28
STA a74
BCS b8F0F
DEC a75
b8F0F SEC
LDA a76
SBC #$28
STA a76
BCS b8F1A
DEC a77
b8F1A RTS
NOP
NOP
NOP
NOP
NOP
s8F20 LDX #$54
b8F22 JSR s8F30
JSR s8F50
JSR s8F70
DEX
BNE b8F22
RTS
NOP
s8F30 LDY #$00
LDA a7E
STA (p7A),Y
INY
LDA #$10
STA (p7A),Y
SEC
LDA a7A
SBC #$28
STA a7A
BCS b8F46
DEC a7B
b8F46 RTS
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
s8F50 LDY #$00
LDA a7E
STA (p7C),Y
INY
LDA #$10
STA (p7C),Y
CLC
LDA a7C
ADC #$28
STA a7C
BCC b8F66
INC a7D
b8F66 RTS
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
s8F70 LDA #$FE
STA a7F
b8F74 DEC a7F
NOP
NOP
BNE b8F74
RTS
NOP
NOP
NOP
NOP
NOP
s8F80 LDX #$5C
LDA #$00
STA a7E
b8F86 JSR s8F30
JSR s8F50
JSR s8F70
DEX
BNE b8F86
RTS
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
s8FA0 LDX #$13
b8FA2 JSR s8FD0
JSR s8FB0
DEX
BNE b8FA2
RTS
NOP
NOP
NOP
NOP
s8FB0 TXA
PHA
LDX #$08
b8FB4 CLC
LDA a02
ADC #$28
STA a02
BCC b8FBF
INC a03
b8FBF DEX
BNE b8FB4
LDA a02
STA a04
LDA a03
STA a05
PLA
TAX
RTS
NOP
NOP
NOP
s8FD0 TXA
PHA
LDX #$00
STX a02E3
j8FD7 LDA a04
STA a10
LDA a05
STA a11
JSR s9000
TAX
BEQ b8FF1
JSR s9010
INC a04
BNE b8FEE
INC a05
b8FEE JMP j8FD7
b8FF1 PLA
TAX
RTS
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
NOP
s9000 LDY #$00
LDA (p09),Y
INC a09
BNE b900A
INC a0A
b900A RTS
NOP
NOP
NOP
NOP
NOP
s9010 JSR eF17E
LDY #$00
b9015 STY a0F
LDA (p0C),Y
ORA #$40
LDY #$00
STA (p10),Y
JSR eF089
LDY a0F
INY
CPY #$08
BNE b9015
RTS
BRK #$00
BRK #$00
BRK #$00
JSR s8E20
LDX #$5C
LDY #$01
b9037 LDA a78
STA (p72),Y
JSR b8EDF
DEX
BNE b9037
RTS
BRK #$00
BRK #$00
BRK #$00
BRK #$00
BRK #$00
BRK #$00
BRK #$00
s9050 LDX #$08
b9052 JSR s9060
JSR s9080
JSR s8F70
DEX
BNE b9052
RTS
NOP
s9060 LDY #$01
CLC
LDA a7C
ADC #$28
STA a7C
BCC b906D
INC a7D
b906D LDA #$10
STA (p7C),Y
CLC
LDA a7C
ADC #$28
STA a7C
BCC b907C
INC a7D
b907C RTS
NOP
NOP
NOP
s9080 LDY #$01
SEC
LDA a7A
SBC #$28
STA a7A
BCS b908D
DEC a7B
b908D LDA #$10
STA (p7A),Y
SEC
LDA a7A
SBC #$28
STA a7A
BCS b909C
DEC a7B
b909C RTS