Skip to content

Copper: wake the vertical-blank COP1LC strobe at hpos 6#130

Merged
LinuxJedi merged 1 commit into
mainfrom
fix/copper-frame-start-hpos
Jul 6, 2026
Merged

Copper: wake the vertical-blank COP1LC strobe at hpos 6#130
LinuxJedi merged 1 commit into
mainfrom
fix/copper-frame-start-hpos

Conversation

@LinuxJedi

Copy link
Copy Markdown
Owner

Stacked on #128 (same function).

The Copper does not start fetching at the very first color clock of the restart line. The vAmigaTS Copper/Skip/copstrt1+copstrt2 real-A500 captures bracket the restarted Copper's first comparator decision to beam $0B..$0C: copstrt1's SKIP at $000B is taken, copstrt2's at $000D is not. Waking the strobe at hpos 6 puts the first decision inside that window.

Results

case before after
Copper/Skip/copstrt1 28.3% 0.000% (exact, matches photo)
Copper/Skip/copstrt2 28.3% 28.3% vs vAmiga - but now matches the real-A500 capture (red field shown); vAmiga itself skips where the real machine does not

Photos > vAmiga per the project's reference hierarchy.

Gates

  • 1320 unit tests green (four frame-restart tests updated for the strobe hpos; the restarted first write moves hpos 0x02 -> 0x08); clippy + fmt clean.
  • Demo screenshot set byte-identical.

The Copper does not start fetching at the very first color clock of the
restart line. The vAmigaTS Copper/Skip/copstrt1+copstrt2 real-A500
captures bracket the restarted Copper's first comparator decision to
beam $0B..$0C: copstrt1's SKIP at $000B is taken, copstrt2's at $000D
is not. Waking the strobe at hpos 6 puts Copperline's first decision
inside that window; both cases now match the hardware captures
(copstrt1 also 0.000% against vAmiga; on copstrt2 vAmiga itself skips
where the real machine does not, so the remaining reference diff there
is vAmiga's).

Demo screenshot set byte-identical; 1320 unit tests green (the four
frame-restart tests advance through the strobe hpos and the restarted
first write moves 0x02 -> 0x08).
Base automatically changed from fix/copper-dormant-lc-retarget to main July 6, 2026 07:59
@LinuxJedi LinuxJedi merged commit 4122fbb into main Jul 6, 2026
7 checks passed
@LinuxJedi LinuxJedi deleted the fix/copper-frame-start-hpos branch July 6, 2026 08:05
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