libretro / libretro-uae

PUAE libretro
GNU General Public License v2.0
114 stars 61 forks source link

WHDLoad Generic Games #602

Closed zzedmore closed 1 year ago

zzedmore commented 1 year ago

Hi, there are a lot of these WHDLG installs on the net by a user named Aladin. Basically stuff that hasn't got an official LHA, mostly PD. You probably already know this. I have a couple of questions/issues.

A lot of them come up with the requester asking to choose one of the .info files. I normally choose 'Workbench31 4 MB.info'. Is there any way to add this to the MkCustom so that it automatically chooses the stated file ? I tried typing 'slave=workbench31_4.slave' into MkCustom but it isn't recognized, 'wrong number of arguments' or something ?

When loading the attached game (not really a demo, just shareware) it says that 'xpkBLZW.library' is required. Any chance you could officially add this to the WHDLoad files ?

Thanks 😃

BacmanAGAdemo-WHDL.zip

sonninnos commented 1 year ago

Hmm. MkCustom value is passed to WHDLoad command as a bonus after already determining what the slave is. The script would need a serious rewrite to work with packages that have multiple slaves..

Adding the compressor should be easily doable, as long as I can find it, since it wasn't in this xpk package from aminet: https://aminet.net/package/util/pack/xpk_User

zzedmore commented 1 year ago

It wasn't in my ClassicWB either but I just looked and it seems it's in the LHA I posted above ! Why didn't the core find it ?

sonninnos commented 1 year ago

Because it isn't in the boot/sys drive path, which is the WHDLoad helper image.

rsn8887 commented 1 year ago

By the way, the little tool kgiconload allows you to launch a .info file directly from the commandline, so it helps to launch WHDLoad games where the .info has a different name than the .slave. It launches with all tool type options as well!

kgiconload link: http://eab.abime.net/showpost.php?p=584390&postcount=72

sonninnos commented 1 year ago

WBRun does that already. The issue is which info should get picked when there are many. Sometimes alphabetical first might be correct, sometimes not.

If that allows adding tooltype parameters to the info on the fly then it will an improvement. WBRun does not seem to be able to, and thus info is not used when using custom tooltypes.

Not sure why this was closed since I was planning to add support for these special installs so that it picks the 4MB slave if one exists, since that is the most reasonable one. And if it won't work, the fire button can still be held down to bring up the requester, which uses WBRun to launch the info.

rsn8887 commented 1 year ago

WBrun launches a program as if run in WB.

kgiconload launches a .info exactly as if you double clicked it on the Workbench, including all tooltypes from .info, and correct executable for project icons. It is good for loading .info by itself.

I remember there’s an important difference between kgiconload and wbrun when loading the generic WHDLoad games with correct tooltypes from .info. Latest kgiconload http://eab.abime.net/showpost.php?p=733614&postcount=92

Probably you are right. I bet I was just using WBrun wrong.

I just remembered that for Aladin Generic WHDLoad installs it is best to use Workbench31_4 version always, at least that worked in my testing.

rsn8887 commented 1 year ago

You are right, wbrun works just like kgiconload, but you have to run it without specifying the .info ending (that was my mistake when I tried it):

wbrun blahblah to start blahblah.info

kgiconload needs the .info ending to be there: kgiconload blahblah.info

sonninnos commented 1 year ago

Indeed not needing to remove the extension would make the script somewhat simpler, but oh well, what is done is done.

I managed to make this particular Bacman game to start now properly without any trickery by modifying the script and by adding the missing library. Any other problem cases I should be aware of while I'm at it?

zzedmore commented 1 year ago

I think that's all for the time being, thanks!

sonninnos commented 1 year ago

Also added powerpacker.library and diskfont.library, and added one more exception for launching infos that are named like the directory. This allows launching Space Taxi 3 directly, and removes the need for info selector for Giana Sisters SE from Pixelglass.

zzedmore commented 1 year ago

Also added powerpacker.library and diskfont.library, and added one more exception for launching infos that are named like the directory. This allows launching Space Taxi 3 directly, and removes the need for info selector for Giana Sisters SE from Pixelglass.

I just tried 'SpaceTaxi3-WHDL.lha' and 'GianaSistersSE_v1.2.lha'. They already boot straight into the game with the current version of PUAE. Are you using different versions ? (GianaSistersSE I got from Retroplay's BETA directory).

sonninnos commented 1 year ago

Different versions. Giana Sisters SE is straight from pixelglass.org, and this Space Taxi 3 is just spacetaxi3.lha as in not a WHDLoad version.