Skip to content

Fix scroller - 6BPP & 7BPP, fix HiRes#280

Merged
tehKaiN merged 12 commits into
AmigaPorts:mainfrom
kwn:fix-fmodes-attempt-666
Jun 15, 2026
Merged

Fix scroller - 6BPP & 7BPP, fix HiRes#280
tehKaiN merged 12 commits into
AmigaPorts:mainfrom
kwn:fix-fmodes-attempt-666

Conversation

@kwn

@kwn kwn commented Jun 5, 2026

Copy link
Copy Markdown
Contributor

Description

Fix scroll buffer display setup for higher bit depths and hires modes.

This PR improves scroll buffer behavior for 6bpp and 7bpp in FMODE 0, 1, and 3. FMODE 3 is usable but still shows minor horizontal black-line glitches.

It also fixes hires mode setup by correctly composing and writing BPLCON0, and simplifies the related BPLCON0 and BPLCON2 logic in src/ace/utils/extview.c.

Known limitation: 8bpp scroll buffer modes are still not fixed. They likely need a deeper change to the scrolling/wrapping mechanism because the current Copper update approach appears to exceed available timing.

Checklist

  • My code follows the code style of this project.
  • My change requires a change to the documentation.
  • I have updated the documentation accordingly.

@kwn kwn mentioned this pull request Jun 5, 2026
3 tasks

@tehKaiN tehKaiN left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Generally looks good.

I'm not sure whether those extended aga-related ifs/switches in fetchmode.h won't introduce extra overhead for ocs since there's no e.g. ifdef aga in calculating bitplane shift, but if that happens we'll add hot paths.

Comment thread src/ace/managers/viewport/simplebuffer.c Outdated
@tehKaiN tehKaiN merged commit 78219ca into AmigaPorts:main Jun 15, 2026
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.

2 participants