[intv][pico][firmware] Update embedded CONFIG ROM: colour + selection-bar flicker fix - #1574
Open
tschak909 wants to merge 2 commits into
Open
[intv][pico][firmware] Update embedded CONFIG ROM: colour + selection-bar flicker fix#1574tschak909 wants to merge 2 commits into
tschak909 wants to merge 2 commits into
Conversation
FozzTexx
previously approved these changes
Aug 26, 2026
Picks up fujinet-config 49ce329, which stops every CONFIG screen with a
selection bar from repainting its whole list on each cursor move. #BACKTAB is
the live STIC display list, so those repaints -- ~320 cells on the host list,
a blocking mailbox round trip per row on the WiFi list -- were scanned out
half-finished for several frames at a time.
The image grew, so all four [mapping] tuples move with it. Transcribed from
intv/config.cfg and cross-checked mechanically rather than by eye:
$1000-$1F9C -> $6000 becomes $1000-$1ECA -> $6000
$1F9D-$2B49 -> $D000 becomes $1ECB-$2BC2 -> $D000
$2B4A-$3036 -> $F000 becomes $2BC3-$30AF -> $F000
FUJI_STAGE_BASE is unchanged: the image is 0x30B0 words and 0x3100 is still
the next 256-word boundary past it, which the _Static_assert confirms.
Verified: pirto_ii_default links, and the new 24928-byte config.bin is
present verbatim in Minty_pirto_ii_default.elf with the previous 24686-byte
image gone.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Ew7HzDQ3PHtp1uTh7BaT1D
Collaborator
Author
|
sorry. one more change. This fixes the flickering while moving the selection bar in various screens by drastically optimizing the output path! |
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.
Re-embeds the Intellivision CONFIG ROM from
fujinet-config/intv, covering two upstream changes:fujinet-config7b3b2ae) — the CONFIG screens got a real palette: FGBG backgrounds on the host and info screens, a colour-stack selection bar and file-type glyphs in the file browser.fujinet-config49ce329) — every screen with a selection bar repainted its entire list on each cursor move.#BACKTABis the live STIC display list with no shadow buffer, and an NTSC frame only affords ~50 IntyBASIC cell writes, so those repaints (~320 cells on the host list, a blocking mailbox round trip per row on the WiFi list) were scanned out half-finished for several frames running. The file browser additionally spent a >1-frame window carrying 2 of its 4 colour-stack advance bits, shifting everything below the bar one stack position.Firmware-side changes
config.cfg's[mapping]moved with the image size, so all fourmm_add()tuples infuji_config_map()were re-transcribed — cross-checked by regexing both files and comparing tuples, not by eye, since a stale entry maps a segment short and the code past it is silently unreachable:$1000-$1F9C -> $6000$1000-$1ECA -> $6000$1F9D-$2B49 -> $D000$1ECB-$2BC2 -> $D000$2B4A-$3036 -> $F000$2BC3-$30AF -> $F000FUJI_STAGE_BASEis unchanged — the image is0x30B0words and0x3100remains the next 256-word boundary past it, which the existing_Static_assertconfirms at compile time.Verification
pirto_ii_defaultconfigures, compiles and links clean.config.binappears verbatim inMinty_pirto_ii_default.elf, and the previous 24686-byte image is gone.Not yet exercised on real PiRTO II hardware.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Ew7HzDQ3PHtp1uTh7BaT1D