dosbox-staging
dosbox-staging copied to clipboard
Is path priority working or broken? Changing dir order doesn't seem to make a difference.
Are you using the latest Dosbox-Staging Version?
- [X] I have checked releases and am using the latest release.
Different version than latest?
No response
What Operating System are you using?
Windows 7
If Other OS, please describe
No response
Relevant hardware info
No response
Have you checked that no other similar issue already exists?
- [X] I have searched and not found similar issues.
A clear and concise description of what the bug is.
I want to use a custom version of CHOICE over the default DOSBox Staging one, so I put a 3rd party (FreeDOS) CHOICE.EXE in my mounted C:\PROGRAMS folder.
If I was DOSBox-X, I would need to change the path order (makes sense), so assuming the same for Staging I changed "SET PATH=%PATH%;C:\PROGRAMS;" in my autoexec to "SET PATH=C:\PROGRAMS;%PATH%;".
However, typing "choice /?" at the root still runs Z:\CHOICE.COM. I tried renaming CHOICE.EXE to CHOICE.COM just in case it was prioritizing extension, but got the same result. The only way that the custom CHOICE gets found is if I specifically type "C:\PROGRAMS\CHOICE /?"... so it seems the path priority is being ignored, unless I've missed something obvious?
One other path question: I was previously using Staging 0.76.0 and upgraded to 0.78.1. In my old conf file I had "PATH=C:\Programs" as a line and it worked fine. Under 0.78.1 this now causes Z drive "core" programs not to be found, so I had to chance the line to "SET PATH=%PATH%;C:\PROGRAMS" or "SET PATH=Z:;C:\PROGRAMS". Just curious how the code changed and what PATH is set to ("Z:"?) by default now to cause this, since I didn't think Staging had a PATH conf option like (for example) DOSBox-X that I can change (i.e. I need to just use normal "set path" in autoexec), does it?
On a related note, is PATHEXT available in DOSBox Staging to help with priority issues like this (i.e. so you can change it to run .bat files ahead of .com files), as either a conf or environment variable?
Steps to reproduce the behaviour.
Explain how to reproduce 1. 2. 3.
Your configuration
[autoexec]
set PATH=%PATH%;C:\PROGRAMS;
OR
[autoexec]
set PATH=C:\PROGRAMS;%PATH%;
Provide a Log
No response
Code of Conduct & Contributing Guidelines
- [X] Yes, I agree.
Thanks for those conf examples, @Banjo-Oz.
[autoexec]
set PATH=C:\PROGRAMS;%PATH%;
If this is your first line in autoexec
, then I'm not sure where C:\PROGRAMS
is being mounted.
Try adding this:
[autoexec]
set PATH=C:\PROGRAMS;%PATH%;
C:
cd \PROGRAMS
dir CHOICE.*
My guess is, it will report that C: doesn't exist.
For this to work, C:\PROGRAMS\CHOICE.EXE
(or .COM
) needs to exist inside the DOSBox shell, and be accessible.
If you get this mounted and setup so it's accessible, then the PATH priority will work.
Sorry, I only added the relevant example for path (I thought it was self explanatory, my mistake). C is mounted first (from .\DOSGAMEFOLDER, which contains the subfolder PROGRAMS).
With the full autoexec being: [autoexec] mount C "DOSGAMEFOLDER" c: set PATH=C:\PROGRAMS;%PATH%;
The issue remains that everything is accessible just fine... the priority of the PATH is what is not working as intended, as per originally reported in the first post (i.e. changing the set path order doesn't fix the issue).
Just checking if anyone else can confirm this is a bug they can reproduce... or something unique to my setup.
I think this is safe to close.