Skip to content

Invert the block cursor cell in B/W graphics - #37

Merged
bubio merged 2 commits into
mainfrom
fix/block-cursor-attribute-graphics
Oct 17, 2026
Merged

bubio merged 2 commits into
mainfrom
fix/block-cursor-attribute-graphics

Conversation

@bubio

@bubio bubio commented Oct 17, 2026 •

Copy link
Copy Markdown
Owner

Summary

  • N88-日本語BASIC でカーソルが表示されない問題を修正
  • 日本語BASIC は文字を白黒グラフィック(属性グラフィックモード)に描き、テキスト VRAM は空白のまま。ブロックカーソルは CRTC が反転属性としてかけるが、その反転がグラフィック描画用の属性に入っておらず、何も見えていなかった
  • 表示中のブロックカーソルを、属性グラフィックの描画が読む属性にも反映(BubiC が共有の attrib.expand に XOR しているのと同じ)
  • テキスト非表示・CRTC 停止時の既存ルールはそのまま先に効く
  • PC88.glyph のコメントを修正:FONT.ROM が無くても全部 0 にはならず、内蔵フォントが 0x00〜0xF7 を描く(0xF8〜0xFF は実 ROM と同じく空白)

Test plan

  • swift test 全 1054 件成功(新規 attributeGraphAttributesInvertBlockCursorCell を含む)
  • 回帰テスト scripts/regression_compare.py 20/20 PASS
  • 日本語BASIC のクイックセーブを BootTester で読み込み、「Ok」の下にブロックカーソルが出ることを確認
  • vramtest の F / M1〜6 / P / Q / N / O / G / U / B(24 ケース × 24kHz/15kHz の 48 枚)が修正前とピクセル一致

🤖 Generated with Claude Code

bubio and others added 2 commits October 17, 2026 09:35
The CRTC applies the block cursor as a reverse attribute, and B/W
attribute graphics take their reverse from the attributes, but the
cursor only reached the text overlay. N88-日本語BASIC draws its text
into graphics over blank text VRAM, so its cursor never showed. Fold
the visible block cursor into the attributes the graphics renderer
reads, as BubiC does with its shared attrib.expand.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bubio
bubio merged commit 1893d4c into main Oct 17, 2026
3 checks passed
@bubio
bubio deleted the fix/block-cursor-attribute-graphics branch October 17, 2026 00:45
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.

1 participant