使用方法
- 复制安装命令,在自己的智能体环境安装前先检查源码包。
- 从原始文档核对所需工具、凭据和支持的宿主。
- 说明输入材料与期望交付物,并对照来源检查输出。
npx skills add https://github.com/ewrogers/sgdk-skills --skill sgdk-compression开始前需了解
- 安装不包含模型订阅、API 额度或访问文件的权限。
- 仓库星数和安装量反映活跃情况,不等于独立质量或安全测试。
按源仓库内容呈现,保留标题、案例、代码、表格、链接以及原文引用的演示图片。
SGDK compression
Choose compression for the asset's access pattern and the game's frame budget. Smaller ROM data can cost more CPU and staging RAM; decoded graphics still use the same VRAM and transfer bytes. A game need not compress every asset.
Start from the existing project and its loading requirements. Preserve its design, controls and resource ownership. Compression Lab is optional executable evidence, not a game template or required loading architecture.
Workflow
- Inspect the selected
ewrogers/sgdk:latestcontainer's resource manual,
headers and decoder source. Pull it before validation. Record SDK/compiler versions for measurements; do not assume online master matches the image.
- Identify when each asset is needed, how long it stays resident, its decoded
bytes and whether it must support random access. Compare representative art and a low-redundancy control, not just repeated zeroes.
- Try NONE, APLIB and LZ4W where supported. Check actual emitted format/size,
alignment, dictionary dependencies and final padded ROM. Do not interpret AUTO/BEST as the fastest runtime choice.
- Measure release decoding with interrupts and normal audio behavior. Account
for staging lifetime and upload bandwidth separately. Use direct mapped ROM uploads for suitable uncompressed data instead of adding an unnecessary copy.
- Pick an explicit loading strategy: synchronous work while covered, preload
before a deadline, or independently packed chunks. Ordinary unpack() is synchronous and cannot be resumed at an arbitrary byte boundary.
- Check decoded byte equality, output guards, insufficient-capacity rejection
before decoding, queue rejection/retry, and publication after completion. Verify PAL/NTSC display behavior in an emulator; console timing needs hardware.
Read formats and measurement when choosing a codec, preparing resources or interpreting size/time numbers. Read loading and preloading when assigning buffers, chunking an asset or combining decoding with DMA and banked ROM.
Compression Lab includes a standalone generator, RAW/APLIB/LZ4W comparison, fade-covered loading and independent-chunk preloading. Its host contracts and real-SDK base-M68000 tests live in repository tests; the installed example does not depend on those tests or another installed skill.
Boundaries
sgdk-assets: source art/audio preparation, palettes and ResComp import errors.
This skill owns codec selection, decode correctness and decoding cost.
sgdk-streaming: tile caches, residency, visibility and bounded uploads.
This skill prepares decoded bytes; a streaming system decides where they live.
sgdk-memory/sgdk-performance: whole-game RAM accounting and profiling.
Supply codec measurements without replacing those broader budgets.
sgdk-cartridge: bank mappings, far pointers and audio reachability.
Compression does not make an invalid banked pointer safe.
These are responsibility links, not required installations. The references explain this skill's essential contracts directly.




