Trying ROM Disassembly & getting lots of Invalid Opcodes
Posted: Thu May 24, 2018 4:15 pm
Hi,
I'm trying to teach myself to read NES assembly code & I hit a snag.
I used disasm6 v1.5, both with and without use of a CDL file from FCEUX and the resultant ASM file is chock full of invalid Opcode errors.
Here is a sample section:
I'm assuming that this isn't correct and that something went wrong?
I know that it's possible for this to happen if I have a bad ROM dump & I saw bootgod's site mentioned but I don't know how to check the CRC32 values of the file I have against the database.
Thanks
I'm trying to teach myself to read NES assembly code & I hit a snag.
I used disasm6 v1.5, both with and without use of a CDL file from FCEUX and the resultant ASM file is chock full of invalid Opcode errors.
Here is a sample section:
Code: Select all
bvc __83aa ; $83e8: 50 c0
cld ; $83ea: d8
.hex ef a3 40 ; $83eb: ef a3 40 Invalid Opcode - ISC $40a3
.hex cf 0c 72 ; $83ee: cf 0c 72 Invalid Opcode - DCP $720c
bcs __83a6 ; $83f1: b0 b3
sbc #$9c ; $83f3: e9 9c
.hex a3 02 ; $83f5: a3 02 Invalid Opcode - LAX ($02,x)
.hex cf 20 09 ; $83f7: cf 20 09 Invalid Opcode - DCP $0920
sbc $00 ; $83fa: e5 00
brk ; $83fc: 00
.hex 6f 0c 7e ; $83fd: 6f 0c 7e Invalid Opcode - RRA $7e0c
.hex d3 b3 ; $8400: d3 b3 Invalid Opcode - DCP ($b3),y
sbc #$60 ; $8402: e9 60
.hex d4 04 ; $8404: d4 04 Invalid Opcode - NOP $04,x
.hex 57 c0 ; $8406: 57 c0 Invalid Opcode - SRE $c0,x
cld ; $8408: d8
.hex 1f a4 0c ; $8409: 1f a4 0c Invalid Opcode - SLO $0ca4,x
.hex 72 ; $840c: 72 Invalid Opcode - KIL
.hex d3 8b ; $840d: d3 8b Invalid Opcode - DCP ($8b),y
.hex 12 ; $840f: 12 Invalid Opcode - KIL
lda $8c,x ; $8410: b5 8c
pla ; $8412: 68
bvs __83d0 ; $8413: 70 bb
.hex b3 e9 ; $8415: b3 e9
I know that it's possible for this to happen if I have a bad ROM dump & I saw bootgod's site mentioned but I don't know how to check the CRC32 values of the file I have against the database.
Thanks