ProcessorTests
ProcessorTests copied to clipboard
6502 `02 58 f3` case doesn't match Visual 6502
{ "name": "02 35 44", "initial": { "pc": 1837, "s": 197, "a": 33, "x": 239, "y": 61, "p": 108, "ram": [ [1837, 2], [1838, 53], [1839, 68]]}, "final": { "pc": 1837, "s": 197, "a": 33, "x": 239, "y": 61, "p": 108, "ram": [ [1837, 2], [1838, 53], [1839, 68]]}, "cycles": [ [1837, 2, "read"], [1838, 53, "read"], [1838, 53, "read"]] }
It suggests there should be a read from the PC on the 3rd cycle, but the bus activity in Visual 6502 shows a read from $ffff:
cycle ab db rw Fetch pc a x y s p
0 0000 02 1 unknown 0000 aa 00 00 fd nv‑BdIZc
0 0000 02 1 unknown 0000 aa 00 00 fd nv‑BdIZc
1 0001 58 1 0001 aa 00 00 fd nv‑BdIZc
1 0001 58 1 0001 aa 00 00 fd nv‑BdIZc
2 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
2 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
Then 2 reads from fffe
, and then endless ffff
.
cycle ab db rw Fetch pc a x y s p
3 fffe 00 1 0002 aa 00 00 fd nv‑BdIZc
3 fffe 00 1 0002 aa 00 00 fd nv‑BdIZc
4 fffe 00 1 0002 aa 00 00 fd nv‑BdIZc
4 fffe 00 1 0002 aa 00 00 fd nv‑BdIZc
5 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
5 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
6 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
6 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
7 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
7 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
8 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
8 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
9 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
9 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
10 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
10 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
11 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
11 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
12 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
12 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
13 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
13 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
14 ffff 00 1 0002 aa 00 00 fd nv‑BdIZc
```