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

NEO screenshot support for more modes still compatible with the format #33

Closed
wants to merge 16 commits into from

Conversation

bbbradsmith
Copy link
Contributor

@bbbradsmith bbbradsmith commented Jan 24, 2024

This is a followup to #31 where it was heavily modified before merging I think due to a misunderstanding. I was not given a chance to respond before these modifications were made.

In that PR, I mentioned that for the edge case of screenshots that don't fit in the traditional NEO format, I made two small non-standard extensions to the file. However, I think this comment was mistaken to indicate that a large part of the code was intended for support of this, which it was not.

Most of the removed or edited code ended up removing support for TT and Falcon resolutions/modes which are still valid compatible NEO data. I am re-submitting the patch to restore this support, with the following changes:

  • Restore support for more modes which are standard NEO compatible.
  • Removed all non-standard NEO extensions (see below).
  • Introduce more specific errors, either indicating too many colours, or non-standard dimensions.
  • Add a few extra comments explaining the error case and why the NEO format isn't sufficient.
  • The workaround for STRam access was removed, since the DIRENT problem was fixed after my initial PR.
  • Integrate minor style changes I saw introduced in the edits (mostly to do with comment formatting).
  • The "HATARI 4BPP" comment in the filename was restored, as it is helpful for identifying Hatari as the source of the screenshot, and the resolution.

To clarify what part of the code was originally introduced to support the non-standard extension, it was very minor, see this change:

  • Resolution field could use other values than 0-2 to indicate 8bpp or 16bpp. This is now prevented with the error case (res>2).
  • A 24-bit RGB suffix palette was added so that no colour information was lost for modes that have better than 9-bit ST color, or needed 256 color entries for 8bpp. The code to produce this non-standard suffix has been removed.

Alternatively, #34 provides this patch + additional support for the XIMG format.

@bbbradsmith
Copy link
Contributor Author

Consolidated with #34 and other cleanup into #35

@bbbradsmith bbbradsmith deleted the neo-shot branch April 15, 2024 17:18
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