Jump to content
LaunchBox Community Forums

How to append optional command-line parameters after the ROM / DiskImage File


Michael M

Recommended Posts

Greetings Launchbox team and enthusiasts... I have been using LaunchBox for a few weeks now, and I am impressed with the quality and features of this remarkable tool.  An extensive amount of work has gone into it, and the level of support to connect up and launch all manner of emulators is very high.

I am now trying to determine how to wire up my disk images for the Commodore 64.  I am, and will always be, an enthusiast of the Commodore64 and Atari 800 series of computers.  I grew up using, playing on, and programing both computers.  Atari and Commodore were quite remarkable for their time.  The mid-1980's to the early 1990's was an amazing period of growth for the personal computer.  Years ago I purchased a CatWeasel floppy drive controller for my 486 PC, and successfully archived most of my floppy diskettes to Disk Image files that I could run through emulators on my PC.  This worked very well, and I am now in the process of loading them into LaunchBox so that my kids can easily access and enjoy them.  LaunchBox makes it simple to connect up all of these platforms.

In my opinion, the best Commodore64 Emulator ever written is CCS64.  Staring during the heyday of MS-DOS, It is one of the oldest emulators, released more than 2 decades ago, in 1995.  After many years of development, It's accuracy is nearly perfect, offering cycle exact emulation of it's 6510 CPU, 1541 floppy disk controller, VIC (video) and SID (sound) chips.  If the software ran on the original Commodore64, it will run on CCS64.

One of the coolest command-line features of CCS64 is to be able to run any game on a disk image, through the use of an optional index.  As anyone who has used any of the old 8-bit computers know, multiple files and programs could be stored on a floppy disk, unlike a cartridge which generally ran a single program or game.  By default, CCS64 will launch the first game on the disk image using the familiar LOAD "*",8,1 syntax (load and execute).

But what if the program or game is not the first program on your disk?  CCS64 offers an optional index parameter (after the disk image), which tells CCS64 to load the 'n' file on the floppy diskette.

Example command:  CCS64 C:\EMULATE\DISK01.D64,4

So, how to make that work with LaunchBox?  Most optional command-line param's are entered immediately following the program name, and before the ROM file.  This is the pattern that LaunchBox uses.  This works great for most emulators I have already configured in LaunchBox.

I have been trying to determine a way to append the index at the end of the file, to indicate which file on the disk image to load.  I got part of my answer from a previous post, in which snarfo67 was attempting to similarly add a command-line switch after the ROM name.  He was trying to do this with M.A.M.E.  According to SentaiBrad, one solution was to make use of the %romfile% variable, which is great; it's probably the best direction to take.

The closest I have been able to get is to:

  1. Enter the path to the ROM file under the Launcher Tab
  2. Configure the Emulator of choice (CCS64) in the Emulation Tab
  3. Edited Emulator Details and placed this in the "Default Command-Line Parameters" : %romfile%,4
  4. Tried checking the box, "use filename only without file extension or folder path"
  5. Checked "Don't use quotes"

The resulting output comes very close, but is not quite right: CCS64.exe %romfile%,4 File

If I could just get rid of that lingering 'File' reference at the end, I believe the command would work.  Because the emulation configuration in LaunchBox can be controlled from at least three different places, each of which seems to have options for command-line parameters, finding the correct combination of switches and configurations is the trick! :-)  I am hoping for direction on how to easily configure this without manually hacking each game. :-)  Then it would be a simple matter of adding a quick configuration for those games that are not the first game on the target disk image.  Multiple game configurations could be created and then be easily launched... all from a single disk image.

Any recommendations would be greatly appreciated!  Thank you!

Link to comment
Share on other sites

Of course, running a different file from a disk image can be done from the emulator itself, but it would be great to figure out how to tell LaunchBox how to target a different program within a disk image.  Again, CCS64 does it by adding an index after the disk image.  Simple enough, but figuring out how to configure that as a command-line in LaunchBox has evaded me thus far.

Even if I am able to nix the 'File' String appending my command, it doesn't guarantee that it will launch correctly (depending on how LaunchBox is interpreting and executing the command internally)... but at least it will match the command structuring I am trying to duplicate.

Here's a screenshot showing what I am trying to accomplish.  

LaunchBox - Trying to add a file index to path - Michael M.jpg

Edited by Michael M
Adding clarity.
Link to comment
Share on other sites

  • 1 year later...

Hello Michael,

It may be a bit late, but I wanted to let you know that Launchbox does not append the final "File" part to the command line when you are already using %romfile% somewhere in the parameters.
The Sample Command includes it, but it is false, it is not passed in the command line.
I just tested it on 9.3 using a simple batch file that outputs all arguments it receives (just write "echo %*" in a .bat file to test).

So your %romfile%,4 solution is correct and would work if you test it.

Regards,

Patrick

  • Like 1
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...