Skip to content
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

GRAPHICS: Add support for loading oversized Mac CURS resources #3847

Merged
merged 1 commit into from May 7, 2022

Conversation

elasota
Copy link
Contributor

@elasota elasota commented Apr 30, 2022

This adds an optional flag for when the CURS data is oversized but the engine knows that it's in CURS format (i.e. because it loaded it from a "CURS" resource and not "crsr")

Needed for mTropolis (which has two 70-byte cursor resources in its standard cursor pack).

somaen
somaen approved these changes May 7, 2022
@bluegr
Copy link
Member

@bluegr bluegr commented May 7, 2022

I assume you're talking about this: http://www.computinghistory.org.uk/det/56511/mTROPOLIS/

Quite a straightforward change. Since this heuristic doesn't work for this software, perhaps we could enhance it in the future, so that these cursors can be automatically detected. In the meantime, we can use this override flag.

Thanks for your work! Merging

@bluegr bluegr merged commit 1ea57c9 into scummvm:master May 7, 2022
8 checks passed
@elasota
Copy link
Contributor Author

@elasota elasota commented May 7, 2022

I assume you're talking about this: http://www.computinghistory.org.uk/det/56511/mTROPOLIS/

Quite a straightforward change. Since this heuristic doesn't work for this software, perhaps we could enhance it in the future, so that these cursors can be automatically detected. In the meantime, we can use this override flag.

Thanks for your work! Merging

Yes, that's correct. Re: Improving the heuristic, I think it should just be two separate loader paths that the engine decides by resource type instead of using size, unless there's evidence that some game stores one format in the other resource type.

Even in that case, if the issue is monochrome data being stored in a "crsr" resource, then that's probably the special case to single out, since I'm pretty sure putting "crsr" data inside of a "CURS" resource just results in it being loaded as monochrome by an actual Mac.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants