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

[C64] EasyFlash overhaul #4160

Merged
merged 1 commit into from
Jan 4, 2025

Conversation

SaxxonPike
Copy link
Contributor

  • Implement the AM29F040B flash device as its own component
  • Fix save data for games that use the standard EasyAPI driver
  • Fix "Briley Witch Chronicles 2": the flash driver checks AutoSelect register 02 to see if the cartridge is write-protected
  • Rom is stored as bytes instead of ints, saves a lot of memory
  • EasyFlash now has proper hard reset and clock operations
  • SaveRam deltas fixed
  • Flash writes and erases take a realistic amount of cycles to complete and properly report progress- this process is not instantaneous in hardware

These changes will make prior save states and saveram incompatible if they use the EasyFlash format.

Check if completed:

- Implement the AM29F040B flash device as its own component
- Fix save data for games that use the standard EasyAPI driver
- Fix "Briley Witch Chronicles 2": the flash driver checks AutoSelect register 02 to see if the cartridge is write-protected
- Rom is stored as bytes instead of ints, saves a lot of memory
- EasyFlash now has proper hard reset and clock operations
- SaveRam deltas fixed
@SaxxonPike
Copy link
Contributor Author

More notes to add:

  • Memory domains have been added for EF RAM, and both Low/High flash ROM chips at the hardware level
  • C64 Cartridges can now implement ISaveRam (we will want to explore how to handle disk+cartridge configurations in the future)

@YoshiRulz YoshiRulz merged commit 99ca3be into TASEmulators:master Jan 4, 2025
4 checks passed
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