Skip to content

CD-i: Add Interlace Graphics #13997

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Aug 9, 2025
Merged

CD-i: Add Interlace Graphics #13997

merged 8 commits into from
Aug 9, 2025

Conversation

Vincent-Halver
Copy link
Contributor

@Vincent-Halver Vincent-Halver commented Jul 27, 2025

Minimal code to double the vertical resolution for #13231 .

I would appreciate feedback, especially as I don't feel confident of the proper expected way to do this within MAME's screen object.

Old version
image
New Version (crisper, due to pixels being less stretched out).
image

Difference map showing the only difference is the "blurriness" due to resolution upscaling.

{BA07974D-8D1E-4411-AF66-1E86B39B581A}

This was tested minimally and seems stable.

Something closer to a proper interlaced image can be accomplished using the _PA bit, however current screen blanks between frames preventing the parity bit from being able to produce a correct interlace image yet.

Minimal code to double the vertical resolution for mamedev#13231 . The result is a slightly crisper looking image on most monitors due to better upscaling on images are have less oblique pixels.

This was tested minimally and seems stable.

Something closer to a proper interlaced image can be accomplished using the _PA bit, however current screen blanks between frames preventing the parity bit from being able to produce a correct interlace image yet.
@ICEknigh7
Copy link
Contributor

If you're just looking for sharpness and the actual system's resolution is not really higher, that's what the prescale option in mame.ini does.

@Vincent-Halver
Copy link
Contributor Author

You can read more information in the linked bug. This does not yet fix the bug, but is a necessary precondition.

@Vincent-Halver Vincent-Halver changed the title CD-i: Double Vertical Resolution CD-i: Add Interlace Graphics Jul 28, 2025
@Vincent-Halver
Copy link
Contributor Author

Vincent-Halver commented Jul 28, 2025

image Interlaced graphics are added.

Photo CDs now show double resolution as before.

Seems like it helps reduce the risk of but does not fully fix #2561 .

@Vincent-Halver Vincent-Halver marked this pull request as ready for review July 28, 2025 03:27
When the interlace bit is off, line-duplication is re-enabled. This ensures the interlace effect is only visible when the game declares the output to be interlaced.
In some cases, such as during startup, the line length of the interlaced line is impacted. This corrects the offset.
@Vincent-Halver
Copy link
Contributor Author

This is now ready for review. I fixed all the known gaps in the original change.

Notice: This breaks save states.
This is because the interlaced pixels from the previous frame are now part of the save state.

Games this reportedly helps:
The Flowers of Robert Mapplethorpe - Makes use of interlace graphics for higher resolution photos.
Photo CD Sampler - Same, as with many other art or photo discs.
Zelda Wand of Gamelon - Appears to partially fix one of the known freeze glitches caused by skipping dialog.

@rb6502 rb6502 merged commit df793d3 into mamedev:master Aug 9, 2025
6 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.

3 participants