Recently I was working on a project where I was implementing some DMA where I needed to pause the 6502 CPU core (via the RDY signal) while transfer took place from DMA to memory, in which I discovered an edge case.
The code in question is as follows:
Code: Select all
LDA #$04
STA $FD0B
DONE
JMP DONENow, when I eventually de-assert the RDY signal the Arlet Ottens core seems to have skipped the JMP opcode (aka code 4c) and tries to interpret the first byte from the JMP instruction as the instruction opcode.
This is not major issue and I can get pass this by just adding one or more NOP's before the JMP instruction.
Is this a known issue with using RDY signals on this 6502 core?
btw, I think overall the core from Arlet Ottens is overall a great core.