English Amiga Board


Go Back   English Amiga Board > Support > support.FS-UAE

 
 
Thread Tools
Old 26 June 2017, 13:02   #1
Asterra
 
Posts: n/a
Trouble with FS-UAE via command line

I intend to use FS-UAE from a front-end, and as such I need for it to be able to launch games with a command line. My collection happens to be the WHDLoad archive, which FS-UAE is capable of handling, though there seem to be tradeoffs.

I have three problems.

First, the apparent basic inability to point FS-UAE directly at a WHDLoad game .zip and have it work, even though it can handle things fine from within the GUI. I get this message:

"Did not find the specified WHDLoad slave. Check the WHDLoad arguments"

There is probably a solution to this, but let's move on to the next issue: I can't think of a convenient way to make FS-UAE load a game via its UUID, which seems to be the only way to force FS-UAE to use a custom config, which is a necessary step to get many games to play correctly. I found an app that can generate folders with the names of games, with empty files inside them whose filenames are the games' corresponding UUIDs, but this is only especially useful for one frontend (LaunchBox), which is useless to me. Plus, Launcher.exe doesn't like UUID text with a path included (like: Launcher.exe "WHDLoadGames/Turrican v1.3/sdf785693-2954u9s-3459sdsdfs"). Best I can come up with here would be maybe individual bat files, named after the games, that simply launch Launcher.exe with the appropriate UUID, and while that should work, I sadly wouldn't know how to automate the generation of 2000+ bat files like that. (Though I suspect the folder/UUID files I mentioned earlier would make it at least doable.)

Last problem: Even if I successfully launch FS-UAE with a UUID, it ignores my custom configs anyway. For example, I set up a custom config for APB because it needed an anti-Atari shader to avoid looking dark. According to tutorials I've watched, using the UUID should cause FS-UAE to use this custom config (which I gave the same name as the game). But it ignores it. So I'm missing something important here as well.

Anyway, that's what I'm staring at. Hopefully someone can offer some tips.
 
Old 26 June 2017, 19:54   #2
gryf
Registered User
 
Join Date: Jan 2013
Location: Poland
Posts: 28
Yeah, you are right. FS-UAE doesn't support whdload zipped games. It is FS-UAE-Launcher feature. Since whdload games are basically small bootable HDs/Directories with launchable games, you can take a look into small utility I wrote, which can deal with compressed directories from commandline: https://github.com/gryf/fs-uae-wrapper
gryf is offline  
Old 27 June 2017, 02:55   #3
Asterra
 
Posts: n/a
Quote:
Originally Posted by gryf View Post
Yeah, you are right. FS-UAE doesn't support whdload zipped games. It is FS-UAE-Launcher feature. Since whdload games are basically small bootable HDs/Directories with launchable games, you can take a look into small utility I wrote, which can deal with compressed directories from commandline: https://github.com/gryf/fs-uae-wrapper
Thanks for the help.

Well, if it's just a matter of using the correct executable, I'll use the correct one. I hadn't even known to check for a completely different exe. But... it's all moot because Launcher.exe works just fine to launch games either by their user-defined .fs-uae config or their UUID.

That leaves me with problems #2 and #3 from before, or alternatively:

4: I don't know how to (conveniently) create custom .fs-uae files for every single game in my collection, which, for the purposes of launching from a front end, is the only way to get any use out of them.
 
Old 27 June 2017, 06:55   #4
gryf
Registered User
 
Join Date: Jan 2013
Location: Poland
Posts: 28
I can't help you with FS-UAE-Launcher (since I don't use it at all), I just cook up my own configurations for every game/system, which in the end doesn't differ much from each other.

First of all, I have prepared special Host.fs-uae, which will be read before any per-game configuration. There goes all the paths for kickstart/floppy/cdroms/whatever. Next is to provide an config for each game, like:

Code:
[config]
amiga_model = A1200/020
title = Chaos Engine

hard_drive_0 = $CONFIG/Chaos_Engine_ECS

zorro_iii_memory = 65536
floppy_drive_volume = 0

scanlines = 1
keep_aspect = 1
Where the only things to change are those in bold. You can add custom settings for each game individually and that's it. Note, that in this example you have to have whdload game unpacked and prepared in a way like this:

Code:
Chaos_Engine_ECS/
├── C
│ ├── DIC
│ ├── Patcher
│ ├── quituae
│ ├── RawDIC
│ ├── WHDLoad
│ └── WHDLoadCD32
├── ChaosEngine
│ ├── ChaosEngine.info
│ ├── ChaosEngine.Slave
│ ├── Disk.1
│ ├── Disk.2
│ ├── Manual
│ ├── Manual.info
│ ├── ReadMe
│ └── ReadMe.info
└── S
    └── startup-sequence
where startup-sequence looks like:
Code:
cd ChaosEngine
whdload Cache DCache PreLoad Slave=ChaosEngine.Slave SplashDelay=0
HTH.
gryf is offline  
Old 27 June 2017, 09:30   #5
Asterra
 
Posts: n/a
Quote:
Originally Posted by gryf View Post
I just cook up my own configurations for every game/system, which in the end doesn't differ much from each other.
[...]
Next is to provide an config for each game, like:
If I can find a way, I think creating individual configs for each game, like you did, is the way to go. The problem is it doesn't seem to be something I could eventually do in batch. Here is a typical config file if I were to create them manually one by one:
Code:
# FS-UAE configuration saved by FS-UAE Launcher
# Last saved: 2017-06-26 02:58:34

[fs-uae]
amiga_model = A1200
fast_memory = 8192
hard_drive_0 = F:/Hyperspin/Emulators/Commodore Amiga/FS-UAE/WHDLoad_files/GalacticConqueror_v1.0.zip
shader = atari-color-fix.shader
x_whdload_args = GalacticConqueror.Slave PRELOAD
Each game is set up (by the online database) to be emulated on particular Amiga models (600, 1200, 500+ etc.), so that is a concern. Worse, the names of the .Slave files are all unique and rarely use the same exact text as the game's name or filename. I also don't have access to that information because it is tucked away in a .sqlite file and I have no idea how to open or parse it. If I did have that data in a sequential text file, I suppose in theory a .bat file could be created to generate the .fs-uae files I need.
 
Old 27 June 2017, 12:43   #6
FrodeSolheim
FS-UAE Developer

FrodeSolheim's Avatar
 
Join Date: Dec 2011
Location: Førde, Norway
Age: 37
Posts: 3,427
Quote:
Originally Posted by Asterra View Post
First, the apparent basic inability to point FS-UAE directly at a WHDLoad game .zip and have it work, even though it can handle things fine from within the GUI. I get this message:

"Did not find the specified WHDLoad slave. Check the WHDLoad arguments"
Are you using the stable version? The development version has much better support for WHDLoad archives, and should be able to run most of them fine via command line. It will also try to match the archive against the online database and use options from the database if it finds a match.

[For other readers, the OP is talking about FS-UAE Launcher. FS-UAE itself does not have any specific WHDLoad support].
FrodeSolheim is offline  
Old 27 June 2017, 17:48   #7
Asterra
 
Posts: n/a
Quote:
Originally Posted by FrodeSolheim View Post
Are you using the stable version? The development version has much better support for WHDLoad archives, and should be able to run most of them fine via command line. It will also try to match the archive against the online database and use options from the database if it finds a match.
Good guess. I had been using the stable. I switched over.

The sad truth is that while this does enable me to load WHDLoad archives directly, this still does not cause the launcher to recognize that I have set up custom config files in a few dozen cases (to fix shading and improve compatibility where needed). APB, for example, needs a special shader. This works if I launch the game via its config file. It does not work if I launch the game via its WHDLoad zip archive or its UUID. It doesn't matter whether I use Launcher.exe or fs-uae-launcher.exe.

Honestly this is pretty baffling, because everything I have read and every video guide I have scrutinized has insisted that making custom config files will cause the launcher to automatically make use of those configs. It sure would be nice if someone could explain either that everyone was completely mistaken or that I have missed an important step.

Edit: I managed to kludge a solution based on utilizing both the zips and the configs. I'll have to rename all of the files but at least it seems to be working. I will note for posterity that fs-uae-launcher.exe doesn't seem to like running from a front end if there is any kind of path included in its executable (/fred/bob/fs-uae/fs-uae-launcher.exe "/fred/bob/fs-uae/games/game.zip"). It gives a Python error. Fortunately, doing so is not strictly necessary.

Last edited by Asterra; 27 June 2017 at 19:55.
 
Old 29 June 2017, 09:05   #8
Scaphoid
 
Posts: n/a
Quote:
Originally Posted by Asterra View Post
It gives a Python error.
What kind of error?
 
 


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools

Similar Threads
Thread Thread Starter Forum Replies Last Post
Trouble with WHDLoad through command line FreddyBoubil support.FS-UAE 3 27 June 2017 12:59
UAE for 68k command line Leandro Jardim support.OtherUAE 1 29 June 2015 02:28
Launch FS-UAE from command line with pre-configured config file AlphaUMi support.FS-UAE 7 19 March 2015 19:04
FS-UAE & command line parameters Alpha One support.FS-UAE 1 29 October 2014 20:21
WHDload and FS-UAE command line browniesrgut support.FS-UAE 4 12 April 2013 15:21

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT +2. The time now is 02:23.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2018, vBulletin Solutions Inc.
Page generated in 0.07434 seconds with 15 queries