Skip to content
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

Draft: [6502] Pass Lorenz C64 tests #4177

Draft
wants to merge 2 commits into
base: master
Choose a base branch
from

Conversation

SaxxonPike
Copy link
Contributor

This change makes the 6502 opcode tests (not specific to 6510 I/O behavior) pass on the M6502X CPU core:

  • Fix decimal mode SBC implementation (flags improperly set)
  • Add ANE implementation
  • Implement SHA/SHX/SHY page correction behavior and RDY pin interaction
  • Allow system cores to configure the "constant" values for ANE and LXA, this is implemented like a register that can be "read". Not all manufactured 6502 derivatives will have identical values, but should mostly be consistent among the same make and model of CPU

See more in this issue: #4176

This is a draft because we will want input from other system core developers who maintain cores that use the M6502X CPU core.

Check if completed:

@YoshiRulz YoshiRulz marked this pull request as draft January 8, 2025 15:50
@YoshiRulz
Copy link
Member

I believe Atari2600Hawk, A7800Hawk, and NesHawk would be the other relevant cores, and they're all maintainerless since alyosha left.

@SaxxonPike
Copy link
Contributor Author

@YoshiRulz I will do my best to verify that these changes still satisfy existing tests that still exist (SHX/SHY/SHA is a really rare case and not super useful, doubt much commercial software uses them at all much less full on system-specific test suites)

Some links for consideration:

@YoshiRulz
Copy link
Member

@SaxxonPike
Copy link
Contributor Author

SaxxonPike commented Jan 11, 2025

This makes the 1541 disk drive CPU test suite pass.
pc64 1 2025-01-11 13 05 03
pc64 2 2025-01-11 15 50 40
(edit: added disk 2 screenshot)

@SaxxonPike SaxxonPike force-pushed the c64-lorenz-test-fixes branch from 3f27f39 to b7ac959 Compare January 11, 2025 22:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants