Skip to content
New issue

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

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

Already on GitHub? # to your account

Query - wrt adding mime-type associations with savestate (*.uss) files #1522

Closed
giantclambake opened this issue Nov 29, 2024 · 1 comment
Closed
Assignees

Comments

@giantclambake
Copy link

giantclambake commented Nov 29, 2024

Further to our discussions about this, I've just now discovered that...

gcb@gallah:~$ amiberry --statefile "Stunt Car Racer (1989)(Micro Style).uss" -G

..works as expected -> Note: to really leverage this, amiberry "Stunt Car Racer (1989)(Micro Style).uss" should work too ;)

...it currently doesn't of course, but consider user might do ie; savestate_dir=/home/gcb/Desktop , and in that case [this] mime-type association would create a desktop launcher icon for these .uss files, which could be launched directly with amiberry, without the need for the --statefile switch ... more background...

....I need your feedback wrt mime-type detection of the .uss filename extension ..chocky blocks...

*the filename extension .uss is not declared in the current shared-mime-info database XML
*however, the .uss extension is at the same time, (erroneously) claimed by the x-ms-asx mime-type detection
*the actual cause of this detection, is due to a match in the leading bytes of the .uss file being ASF
*as with the *.lha file type mime-type handling, etiquette dictates overriding existing detection magic, and providing our own

To that end, we can match the 7th byte (1E) but that seems a bit flimsy to me, but a better match is to be had by testing bytes 16 thru 18 (UAE) ... it seems sane enough to me... BUT..

..I have to ask you ~ can I rely on those bytes? I appears like I can, but it never hurts to ask (seeing as there's a version number thereafter, which is likely to change? ;)

TIA

@giantclambake
Copy link
Author

giantclambake commented Nov 30, 2024

On the proviso that amiberry can direct-load a savestate.uss file, you could add the following XML snippet to packaging/linux/mime/amiberry.xml file ~

    <mime-type type="application/x-UAE-savestate-file">
        <comment>UAE SaveState file</comment>
        <generic-icon name="amiberry"/>
        <magic-deleteall/>
        <magic priority="60">
            <match type="string" value="UAE" offset="16:18"/>
        </magic>
        <glob pattern="*.uss"/>
    </mime-type>

....and include the following in the packaging/linux/Amiberry.desktop file MimeType= string ~

application/x-UAE-savestate-file

Note: Unlike floppy disk images and whdload game archives. there is no 'generic' icon file that really symbolizes a savestate.uss filetype (actions/edit-redo kinda works for me).... so I left it set to the amiberry icon. We could include another icon file for this purpose, or, choose another icon...but it would need be a 'generic' icon, to be assured of all systems actually having it present....(which is why applications include their own if needed 8)

HTH

# for free to join this conversation on GitHub. Already have an account? # to comment
Projects
None yet
Development

No branches or pull requests

2 participants