arm11: Add battery and system time display on the bottom screen - #269
Open
RhanCandia wants to merge 4 commits into
Open
RhanCandia wants to merge 4 commits into
RhanCandia wants to merge 4 commits into
Conversation
Previously, the bottom screen would go black and turn off the backlight after launching a game. This change keeps the bottom screen active and displays real-time statistics (current system time and battery level). To prevent performance impact and excessive I2C traffic to the MCU, stats are refreshed approximately every 10 seconds (600 frames). The display uses in-place console updates to maintain a clean output without scrolling.
This enhancement allows users to independently toggle the bottom screen on and off by holding the Y button and touching the screen. When the backlight is toggled off, the stats update processing (I2C reads and console printing) is also suspended to maximize power savings.
…creen This update adds a toggleable statistics display to the bottom screen during GBA gameplay. Key features include: - Bottom screen remains OFF by default to conserve power. - New hotkey 'Y + TOUCH' to toggle the bottom screen backlight and stats. - Displays current system time and battery percentage. - Efficient 10-second refresh rate (600 frames) to minimize MCU traffic. - Processing is fully suspended when the display is toggled off. - In-place console updates to prevent screen scrolling. - Documentation updated in README.md.
Author
|
Improved Toggle Responsiveness The bottom screen statistics (battery and system time) now refresh immediately upon being toggled on with Previously, the display would show the last cached values for up to 10 seconds before updating. By aligning the frame counter to the next update interval during the toggle event, we now force an instant refresh without increasing the background CPU overhead or adding complexity to the 10-second update cycle. Changes:
|
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
arm11: Add battery and system time display on the bottom screen
Summary
This PR adds the ability to display the current system time and battery percentage on the bottom screen during GBA gameplay.
Features
Y + TOUCHto toggle the bottom screen backlight and statistics display on or off at any time.\r,\x1b[A) to ensure the stats stay pinned to the same lines without scrolling.Y + Touch: Toggle bottom screen) the first time the display is activated to ensure the feature is discoverable.Controlssection of theREADME.md.Rationale
While
open_agb_firmprovides an excellent native GBA experience, users currently have no way to check the time or battery level without rebooting the console. This implementation provides that essential information while strictly prioritizing power efficiency and maintaining a clean, unobtrusive interface.How to Test
open_agb_firmand select any GBA ROM.Yand touch the bottom screen to reveal the stats and the toggle hint.Y + TOUCH.