Copperline models Amiga hardware behaviour. Contributions should describe the underlying 68000, Agnus, Denise, Paula, CIA, floppy, expansion, or timing behaviour they change.
Do not add compatibility branches keyed to a game, demo, ROM, disk, config, or filename. If a workaround is unavoidable, isolate it behind a hardware-derived condition and add a TODO for the more accurate model that should replace it.
Do not commit or attach copyrighted ROMs, disks, hard-disk images, CD images,
or other third-party assets. Local test assets belong in test-assets/ or in
the repository root, where .gitignore excludes the known ROM and disk
extensions.
Bug reports may name the software used to reproduce a problem, but should not upload the image itself. Prefer a small hardware-focused reproduction when one can be made.
Run the asset-free checks before opening a pull request:
cargo fmt --check
cargo clippy --all-targets --all-features --locked -- -D warnings
cargo test --lockedDocumentation changes should also build cleanly:
cd docs
myst build --html --ci --strict --check-links
myst build --pdf --ci --strict
test -s _build/exports/copperline.pdfThe ignored integration tests under tests/ require local ROM and disk
assets. They should skip cleanly when those assets are absent; see
tests/README.md for the expected filenames and lookup order.