VOGONS


First post, by alexfru

User metadata
Rank Newbie
Rank
Newbie

Set-up: I'm using DosBox 0.74 on Windows 7 74-bit.

I have two batch files.

QQQ.BAT:
@echo qqq start!
@call www.bat
@echo qqq finish!

and WWW.BAT:
@echo www!

If I run QQQ.BAT directly from DosBox, I get all three lines printed:

z7RYF3k.jpg

But if I try to run this batch file from under any shells similar to the Norton Commander, "CALL WWW.BAT" doesn't seem to return control from WWW.BAT back to QQQ.BAT.

Dos Navigator:

y3uwumv.jpg

Volkov Commander:

gBc5Smz.jpg

And finally, my very own Frunze Commander:

tG5FdvC.jpg

If I exit whatever commander I'm running and run QQQ.BAT again, all is back to normal, all three lines are printed.

What could be the problem and is there any fix or workaround for it?

Reply 1 of 4, by Joey_sw

User metadata
Rank Oldbie
Rank
Oldbie

i would suspect its because those program run the bat using "COMMAND.COM /C" method, which ...

anyway, you can have similar result by running the following in dosbox:

command /C QQQ.BAT

the /C command should have work properly on real DOS.

-fffuuu

Reply 2 of 4, by alexfru

User metadata
Rank Newbie
Rank
Newbie

I have the same (correct) behavior in DOS7 (from Windows 98) command shell, whether I type "qqq.bat" or "command.com /c qqq.bat". 3 echo lines are printed.

Reply 3 of 4, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Here's a patch against current source that resolves the issue in my testing. It also matches the internal batch loop to the command prompt batch loop more closely.

Reply 4 of 4, by alexfru

User metadata
Rank Newbie
Rank
Newbie

This change appears to fix the CALL command.
Thank you!