Closed calc84maniac closed 7 months ago
I've discovered an unusual bug in rev M emulation, which I think is a blocker on this PR.
Basically, the issue is that if you turn off the calculator while emulating rev M, linking stops working. This issue persists through resets and state saves/loads, and even when resetting into another revision. The only way to restore linking is to reload the ROM.
I did a git bisect, and found that this issue exists even back in @jacobly0's first commit, which leads me to believe it's something related to different code paths (in the boot code?) executed on rev M. But I don't understand why the problem persists through resets and other revisions. Perhaps there's some USB register that's never getting reset? I would appreciate if an expert on linking could look into this issue.
Finally fixed the outstanding USB issue, last call for reviews / sanity testing
@calc84maniac said it's ready and people have tested it without issues so far, let's merge :)
Makes the following changes to support new hardware on rev M+ and lay groundwork for future Python support and LCD improvements: