amigavision / AmigaVision

The ultimate Amiga games & demo scene setup for MiSTer & Pocket FPGAs, emulators, and real hardware. Open source, community driven. This is an Amiga HDF image builder that uses WHDLoad and custom installs, based on the Arcade Game Selector launcher.
https://amiga.vision
MIT License
116 stars 4 forks source link

Add QR codes that link to game manuals (25×25 or 29×29px pixel-doubled) #82

Open limi opened 1 year ago

limi commented 1 year ago

Since we already have a game → HoL mapping, we could generate QR codes to show in the launcher that would load the relevant game manual on a phone/tablet to use while playing the game.

Example: http://hol.abime.net/72/manual

We would have to find a way to capture the URL to the PDF, and generate a QR code that can be displayed alongside the game entry.

AGS2 would need some sort of mechanism for showing the QR code in a predefined area of the layout.

It needs 21×21px + a 1px border, ideally.

peterdutton commented 1 year ago

This seems like a great idea - have you considered suggesting it at the core MiSTer level? You could imagine an option for 'Manual QR' from the OSD that could work very nicely.

limi commented 1 year ago

This seems to be the most common Python module to generate QR codes: https://pypi.org/project/qrcode/

HeyItsLollie commented 10 months ago

I'd love to have this in AmigaVision, it'd be just as useful on PC & Pocket. Already had to download a few manuals just to get past password checks for some games.

BlueMaxima commented 8 months ago

WHDLoad files usually contain manual, readme, info and guide files in some combination. I'd be surprised if there wasn't a way to be able to read those files from the launcher.

limi commented 5 months ago

Useful online generator for testing, looks like we’d need at least 25×25px to support 32 characters; 21×21px allows 17 characters, 29×29 supports 53 characters:

https://pewscorner.github.io/barcodes/qrcode_generator.html

Also, 25×25px is minuscule even in 640×400, so probably need to be pixel-doubled to 50×50px for ease of scanning, but we’ll do some experiments.