here is an excerpt from an A9L disassembly I have.
Code:
...
A1F00018 8762 L84F5 ld REG_18,#$00F0
B30120201A 8763 ldb REG_1A,$2020[Zero]
A2151C 8764 L84FE ld REG_1C,[REG_14]+
C2191C 8765 st REG_1C,[REG_18]+
E0E01A 8766 djnz REG_1A,L84FE
...
FWIW, REG_14 is set to #$2022 just before this code, and address $2020 is 8. essentially, it is copying 8 values from $2022 to $00F0.
so it makes perfect sense that at line 8766, it would decrease REG_1A and jump back to line 8764 if not ZERO (what the DJNZ means). so it would do that 8 times before the DJNZ would not branch, because REG_1A would then be ZERO.
now here is my problem ... in the A9L bin I have though, the location where the above is E0E01A, my binary has E01AF7. the discrepancy is at address $8504 (decimal 34052)
so it becomes
Code:
...
A1F00018 8762 L84F5 ld REG_18,#$00F0
B30120201A 8763 ldb REG_1A,$2020[Zero]
A2151C 8764 L84FE ld REG_1C,[REG_14]+
C2191C 8765 st REG_1C,[REG_18]+
E01AF7 8766 djnz REG_F7,L8522
...
which makes no sense. this is the first discrepancy i have come across between the disassembly and my actual binary. and my binary appears to be the problem.
any thoughts?