I seem to have yet another problem with the 'open bus' thing. I was able to solve my last problem in a sort of round about way, but that was just the program counter and getting the opcode but now I'm dealing with assignment to a register. Now I have another problem with open bus and it's with the LDA ($NUM, X) command inside nestest.nes
A snippet of that section in the FCEUX log. Problem Line is on $CFF2 and $CFF4
It tried to access $C600 which I know shouldn't be accessed like that so I would think it's using the open bus thingy, but there's no indication of a $5D being used anywhere except after the LDA! And I'm sure the CMP has no effect. Where'd that $5D come from and why? Maybe it's not open bus like I thought?
I tried to test it by trying to duplicate it in a test rom of sorts of my own.
$C600 has the value $FF and the Accumulator comes out zero
Different Address but same value as FCEUX log:
Accumulator comes out as $FF.
So I'm thinking that maybe the value in the address has an effect(or it could be the address itself, I dunno) but I have no idea why.
So just what is the method for dealing with this type of thing?
Thank you for your time
A snippet of that section in the FCEUX log. Problem Line is on $CFF2 and $CFF4
Code:
$CFEA:A1 80 LDA ($80,X) @ $0303 = #$5C A:5B X:03 Y:69 P:nvubdIzC
$CFEC:C9 5C CMP #$5C A:5C X:03 Y:69 P:nvubdIzC
$CFEE:D0 10 BNE $D000 A:5C X:03 Y:69 P:nvubdIZC
$CFF0:A2 00 LDX #$00 A:5C X:03 Y:69 P:nvubdIZC
$CFF2:A1 FF LDA ($FF,X) @ $C600 = #$20 A:5C X:00 Y:69 P:nvubdIZC
$CFF4:C9 5D CMP #$5D A:5D X:00 Y:69 P:nvubdIzC
$CFF6:D0 08 BNE $D000 A:5D X:00 Y:69 P:nvubdIZC
$CFF8:A2 81 LDX #$81 A:5D X:00 Y:69 P:nvubdIZC
$CFEC:C9 5C CMP #$5C A:5C X:03 Y:69 P:nvubdIzC
$CFEE:D0 10 BNE $D000 A:5C X:03 Y:69 P:nvubdIZC
$CFF0:A2 00 LDX #$00 A:5C X:03 Y:69 P:nvubdIZC
$CFF2:A1 FF LDA ($FF,X) @ $C600 = #$20 A:5C X:00 Y:69 P:nvubdIZC
$CFF4:C9 5D CMP #$5D A:5D X:00 Y:69 P:nvubdIzC
$CFF6:D0 08 BNE $D000 A:5D X:00 Y:69 P:nvubdIZC
$CFF8:A2 81 LDX #$81 A:5D X:00 Y:69 P:nvubdIZC
It tried to access $C600 which I know shouldn't be accessed like that so I would think it's using the open bus thingy, but there's no indication of a $5D being used anywhere except after the LDA! And I'm sure the CMP has no effect. Where'd that $5D come from and why? Maybe it's not open bus like I thought?
I tried to test it by trying to duplicate it in a test rom of sorts of my own.
Code:
LDA #$00
STA $00FF
LDA #$C6
STA $0100
LDA #$5C ; just in case
LDA [$FF, X]
CMP #$5D
STA $00FF
LDA #$C6
STA $0100
LDA #$5C ; just in case
LDA [$FF, X]
CMP #$5D
$C600 has the value $FF and the Accumulator comes out zero
Different Address but same value as FCEUX log:
Code:
LDA #$27
STA $00FF
LDA #$C0
STA $0100
LDA #$5C
LDY #$20
LDA [$FF, X]
CMP #$5D
STA $00FF
LDA #$C0
STA $0100
LDA #$5C
LDY #$20
LDA [$FF, X]
CMP #$5D
Accumulator comes out as $FF.
So I'm thinking that maybe the value in the address has an effect(or it could be the address itself, I dunno) but I have no idea why.
So just what is the method for dealing with this type of thing?
Thank you for your time