Skip to content

Show D88 disk images in Finder with their title screen - #200

Merged
bubio merged 3 commits into
mainfrom
feature/ql-disk-thumbnail
Sep 24, 2026
Merged

bubio merged 3 commits into
mainfrom
feature/ql-disk-thumbnail

Conversation

@bubio

@bubio bubio commented Sep 24, 2026

Copy link
Copy Markdown
Owner

Summary

  • Quick Look のサムネイル拡張で .d88 にも対応した。ディスクをその場で起動し(Bubilator88Core 1.2.0 の BootSnapshot。V2・4MHz・サウンドボード II なし・期限 3 秒)、落ち着いた時点の画面をサムネイルにする。起動しない・ほぼ黒画面のディスクは汎用アイコンのまま
  • com.bubio.bubilator88.d88-disk-image を exported で宣言。他アプリの exported 宣言に負けないようにするため
  • サンドボックス内の拡張が ~/Library/Application Support/Bubilator88/ の BIOS ROM を読めるよう、読み取り専用の temporary exception を追加(Developer ID 配布が前提)。ROM ファイルの対応表は Shared/BIOSFiles.swift に移し、アプリと拡張で共有
  • 16 MB を超えるファイルは読まない。同時に起動するのは 2 本まで
  • Bubilator88Core を 1.2.0 に更新(Add BootSnapshot for disk thumbnails, and a switch to skip audio synthesis Bubilator88Core#23)
  • BootTester の PPM を一覧画像にする scripts/ppm_contact_sheet.py を追加
  • docs/develop を更新(設計と実測: QUICKLOOK_DISK_THUMBNAIL_PLAN.md)

Test plan

  • QLThumbnailGenerator 経由でテスト用 .d88 のサムネイル生成を確認(タイトル画面、LION は失敗扱いで汎用アイコン)
  • 6 枚同時の要求で、待ち行列による期限切れがないことを確認
  • .b88s のサムネイルが従来どおり生成されることを確認
  • Finder 上でタイトル画面がサムネイルになることを確認(手動)
  • ワークスペース(ローカルのコア)と素のプロジェクト(pin の 1.2.0)の両方で Debug ビルド成功
  • コアの swift test 940 件、/regression 20 件 PASS

🤖 Generated with Claude Code

bubio and others added 3 commits September 24, 2026 13:51
The Quick Look thumbnail extension now also handles .d88: it boots the
disk with Bubilator88Core's BootSnapshot (V2, 4MHz, no Sound Board II,
3 second budget) and draws the frame it settles on. Disks that do not
boot to anything, or leave a nearly black screen, keep the generic icon.

- Declare com.bubio.bubilator88.d88-disk-image as an exported type, so
  another app's exported d88 type does not take precedence over it
- Let the sandboxed extension read the BIOS ROMs in
  ~/Library/Application Support/Bubilator88/ through a read-only
  temporary exception, and move the ROM file table to Shared/BIOSFiles
  so the app and the extension share it
- Skip files over 16 MB and run at most two boots at once
- Require Bubilator88Core 1.2.0 for BootSnapshot

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Used to eyeball a batch of BootTester --snapshot captures.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@bubio
bubio merged commit aa8e146 into main Sep 24, 2026
3 checks passed
@bubio
bubio deleted the feature/ql-disk-thumbnail branch September 24, 2026 05:00
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