chip8-test-suite icon indicating copy to clipboard operation
chip8-test-suite copied to clipboard

The quirks test doesn't test if the non-quirked shift fully works

Open gulrak opened this issue 5 months ago • 0 comments

The quirks test lets half-way correct non-quirk shift opcodes through.

The following (wrong) 8xy6 implementation:

                auto flag = (vx & 0b00000001);
                vx = vy >> 1;
                vf = flag;

and a similar one for 8xyE:

                auto flag = vx >> 7;
                vx = vy << 1;
                vf = flag;

will pass the flags and the quirks test, the flags test because there all uses a with the same register for x and y, and the quirks test doesn't seem to verify the flag working, but it sure would be helpful if it did and report an error (similar to the clipping checks).

gulrak avatar Jul 26 '25 07:07 gulrak