-
Notifications
You must be signed in to change notification settings - Fork 81
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
M68k - wrong MOVE from SR test #6
Comments
Hi,
Thank you for running these tests on a real 68000! I ran them on the Easy68k simulator where they all passed, however I did notice that the simulator results did not always match the 68000 datasheet, so im not surprised that the results aree different on a genuine 68000.
I am happy to see that only four other opocode tests fail, so please let me know what I need to modify in these tests to allow them to pass. My guess would be that the problems are in the handling of the flags.
Thanks again!
-Ted
…________________________________
From: Stovent ***@***.***>
Sent: Sunday, October 24, 2021 10:56 AM
To: MicroCoreLabs/Projects ***@***.***>
Cc: Subscribed ***@***.***>
Subject: [MicroCoreLabs/Projects] M68k - wrong MOVE from SR test (Issue #6)
Using the MC68000_test_all_opcodes.X68 test rom, the MOVE from SR test does
move #$275A, SR * Initial value
move SR , d0
cmpi.w #$275A , d0
But from the M68000RPM, on the MOVE from SR instruction
Unimplemented bits are read as zeros.
Since the bit 6 of the SR is unimplemented, the test should compare with $271A instead.
Also this has been proved to be wrong on an actual hardware (Philips CD-i, having a 68000-based CPU) :
[alt text]<https://camo.githubusercontent.com/32a2b3b8126cea4ad86da3b39d69c0844f8e9e9bf3fd0b505e87756bacfc08de/68747470733a2f2f6d656469612e646973636f72646170702e6e65742f6174746163686d656e74732f3739373137303534323735383036383238342f3837323632343431323332353732343230302f756e6b6e6f776e2e706e67>
About the other instructions that fails on hardware, we are not sure yet why they fails.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub<#6>, or unsubscribe<https://github.com/notifications/unsubscribe-auth/AM4AVEO2ZYMVTLT326XPVUDUIRCEXANCNFSM5GTWDX4A>.
Triage notifications on the go with GitHub Mobile for iOS<https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675> or Android<https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub>.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Using the
MC68000_test_all_opcodes.X68
test rom, the MOVE from SR test doesBut from the M68000RPM, on the MOVE from SR instruction
Since the bit 6 of the SR is unimplemented, the test should compare with $271A instead.
Also this has been proved to be wrong on an actual hardware (Philips CD-i, having a 68000-based CPU) :
About the other instructions that fails on hardware, we are not sure yet why they fails.
About the screenshot : your test ROM has been modified so that when a test fails, instead of doing an infinite loop, it prints the name of the test that fails on the serial port of the console, and continues with the next tests.
The text was updated successfully, but these errors were encountered: