Skip to content

Complete synthetic logical and control instruction milestones - #21

Merged
ilehtoranta merged 213 commits into
mainfrom
codex/synthetic-logical-control-suite
Oct 9, 2026
Merged

ilehtoranta merged 213 commits into
mainfrom
codex/synthetic-logical-control-suite

Conversation

@ilehtoranta

@ilehtoranta ilehtoranta commented Oct 4, 2026 •

Copy link
Copy Markdown
Owner

The synthetic suite adds logical, bit, shift, atomic and control/system coverage for all seven CPU models and the A1200 EC020 profile. Shared fixtures use independent architectural expectations. The approved coverage and five explicitly deferred qualification areas are recorded in docs/COPPER68K_QUALIFICATION_SCOPE.json; known coverage acceptance does not claim exhaustive hardware qualification.

This branch now incorporates mainline through ddc7530, resolving the 68010, 68040 and 68060 source/test conflicts. It preserves mainline's three-level 040/060 paging and 060 FPU implementation alongside the synthetic suite's validated exception, continuation and context-copy corrections. Combined-source fixes preserve MOVES invalid-operand exception priority, reject unassigned 060 F-line operands before inherited FPU decoding, retain the proper access-error frame for transparent protection faults with paging disabled, and preserve selected-space PTEST behavior. A dedicated regression covers transparent protection frames on both 040 and 060.

Fixtures now use mainline's root-pointer masks, real paging descriptors and 040 instruction-cache enable bit. CI packs without duplicating CPU/AHX tests; its explicit full CPU run, required architectural coverage gate and AHX checks remain enabled. The source package version is 1.5.4-synthetic-dev.1, a development version only.

Validation of the final merged source:

  • Full Copper68k suite: 5,383 passed, zero failed, 109 unavailable or explicitly deferred tests. The unavailable tests are excluded from passing coverage.
  • Deterministic architectural report gate: all 86,663,530 required cases in 783 batches pass, with no required mismatches, unsupported execution or untested combinations. Deferred qualification remains visible and nonblocking for known coverage acceptance.
  • AHX: 18 passed, zero failed or skipped.
  • Clean CopperScreen committed-source archive consumes isolated local package 1.5.4-pr21-validation.5: Release solution build has zero warnings/errors; host tests 172 passed with six unavailable optional media tests, disk tests 74 passed, separately built engine diagnostics 1,080 passed.
  • The CPU DLL is byte-identical in the full CPU test build, local NuGet package and isolated consumer outputs (SHA-256 c894d8d5eaa18b6d0320643641f3c00af2e454e7c83afd5803e469ec8c1dce0f).
  • Final staged diff has no whitespace errors, unresolved conflict entries or unstaged changes.

Prior reference and mutation evidence remains documented in the qualification records; this conflict-resolution validation does not claim new external-reference, physical-hardware or native ROM/media replays. FPU arithmetic, enabled MMU operation, physical pipeline/cache qualification and OS compatibility remain outside the synthetic roadmap's acceptance gate. Mainline MMU/FPU features are retained and their ordinary regressions pass.

No package is published, no PR is merged, and unrelated CopperScreen/CopperMod working changes remain untouched.

ilehtoranta and others added 28 commits October 9, 2026 00:54
…lification

Qualify known integer behavior and defer unresolved CPU protocols
@ilehtoranta
ilehtoranta marked this pull request as ready for review October 9, 2026 21:35
@ilehtoranta
ilehtoranta merged commit f31a83f into main Oct 9, 2026
3 checks passed
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