Skip to content

Fix PTT for CX and CX II #271

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

Merged
merged 2 commits into from
Dec 20, 2022
Merged

Fix PTT for CX and CX II #271

merged 2 commits into from
Dec 20, 2022

Conversation

Vogtinator
Copy link
Member

@Vogtinator Vogtinator commented Oct 11, 2022

The On button has different behaviour. On the CX II, sleep mode had to be implemented to even allow turning it off and on.

@adriweb
Copy link
Member

adriweb commented Oct 11, 2022

Confirmed to work on emulated CX

The On button on Touchpad and CX/CX II keypads is not connected to the keypad
controller but the PMU, so its state is not visible in the keypad data and it
does not generate a keypad interrupt. On the CX II it does not generate a PMU
interrupt either, at least not unconditionally.
With this, it's possible to turn the calculator back on after it went into
sleep mode (idle timeout or explicitly turned off).

What happens when pressing On is that the calc starts from bootrom again, but
that finds fastboot data in the 90030000 area left by the OS and uses that to
validate some state and jumps back to the OS code in SDRAM.

Add a TODO entry to improve fastboot data handling. Currently the data is
preserved across restarts, which means that some possibly incompatible bootrom
tries to interpret it. So far the validation detects that SDRAM was cleared and
aborts.
@Vogtinator Vogtinator marked this pull request as ready for review December 20, 2022 21:41
@Vogtinator Vogtinator changed the title On button PTT fix Fix PTT for CX and CX II Dec 20, 2022
@Vogtinator Vogtinator merged commit 5bd1550 into nspire-emus:master Dec 20, 2022
@Vogtinator Vogtinator deleted the pttfix branch December 20, 2022 21:51
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