32- and 64-bit OpenMPT installed in a single PC?

Started by Some1NamedNate, May 22, 2019, 01:38:49

Previous topic - Next topic

Some1NamedNate

My only concern about installing both 32-bit and 64-bit OpenMPT on one PC is that there is a Registry conflict. For instance, if I have both versions installed and I open, say, an XM to OpenMPT, it opens the x64 version. Similarly, if I install 64-bit OpenMPT, with an existing 32-bit installation prior, the 64-bit version takes over the desktop shortcut and file associations. I say there should be a method to distinguish between the two versions when they are installed on one PC, i.e. file associations ("Open this file with 'OpenMPT (32-bit)' or 'OpenMPT (64-bit)'").

Which made think of an idea at the time of writing this. OpenMPT's 64-bit installer should detect whether or not a 32-bit install of OpenMPT is present. Each version should have distinct registry values, e.g. when you want to open an XM from Explorer, you can choose to either open that module with 32-bit OpenMPT or 64-bit OpenMPT. Both versions can store settings in "%APPDATA%\OpenMPT\mptrack.ini" .


LPChip

I don't think an XM module can utilize VST effects and instruments, so I don't think there is a reason to have an XM Module opened by either 32 bit or 64 bit versions, right? Only the MPTM could have either. But correct me if I'm wrong here.

I can see how this would be something for mptm modules if you have equally amount of 32bit vs 64bit versions of plugins, and you create mptm songs specifically for either version, though.
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

Saga Musix

Quote from: LPChip on May 22, 2019, 08:26:35
I don't think an XM module can utilize VST effects and instruments
You don't seem to remember a lot from the pre-MPTM days, do you? ;) XMs can very well contain plugins but it is heavily discouraged, and in that sense you are right that for an XM file won't matter which version of OpenMPT is launched most of the time. Whether you use 32-bit or 64-bit OpenMPT really only makes a difference when you use VST plugins.

FWIW, the linked issue does not propose any specific solution to the problem, and I think "asking the user each time they click on a module file which version of OpenMPT they want to launch" is not a solution. But you can easily solve this issue yourself for the time being using RegEdit:
The path that you need is HKEY_CLASSES_ROOT\OpenMPTFile\shell. There is an Open folder in there, and you need another folder with exactly the same contents (but different name obviously). That other folder would then point to the "other" OpenMPT instance (i.e. if Open's command points to 32-bit, the new folder's command would point to 64-bit). Doing so adds a new option to the context menu of files associated to OpenMPT.

Even without that, right-clicking a module file will give you the "open with" menu, where you can choose between different OpenMPT executables, but they will be hard to tell apart because they will both have the same name.
» No support, bug reports, feature requests via private messages - they will not be answered. Use the forums and the issue tracker so that everyone can benefit from your post.

LPChip

Its not that I don't remember anything from the pre-mptm days, its more that I only used .it modules back in the day and if I remember correctly, you wanted to remove support for VST plugins from the IT filestructure and use mptm exclusively. Of course due to backwards compatibility, you can't really remove it from IT files, but I wasn't aware the same hack was possible with .xm files too.
"Heh, maybe I should've joined the compo only because it would've meant I wouldn't have had to worry about a damn EQ or compressor for a change. " - Atlantis
"yes.. I think in this case it was wishful thinking: MPT is makng my life hard so it must be wrong" - Rewbs

Some1NamedNate

I used "XM" as a placeholder extension :P . MPTM and others apply also.