VOGONS


First post, by SKARDAVNELNATE

User metadata
Rank Oldbie
Rank
Oldbie

This is the code from INSTALL.BAT on the System Shock CD

@echo off
if %0a==installa goto all_ok
if %0a==install.bata goto all_ok
echo Please run install directly from the CD-ROM base directory...
goto exit
:all_ok
echo Loading install....
inst\initial.exe
echo ...install finished
:exit

When mounted in DOSBox it gives the "CD-ROM base directory" message. I don't know what the condition %0a==installa is checking for but it must have failed.

I then tried it in Windows XP and the program was located indicating the condition was met. I think all the batch does is add a message before and after. In DOSBox I could have just went to d:\inst\initial.exe and launched it myself but I'm interested in learning what this condition means and how it was effected in DOSBox.

Reply 1 of 3, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

DOSBox does not treat the %0 operator identical to real DOS, it changes the extension on the filename. You can see the effect of this by creating a batch file that has the line "ECHO %0" in it. Real DOS returns the name of the batch file for %0 exactly as you typed it, but DOSBox 0.72 adds the filename extension of the batch file in caps if you didn't type it in; however you can type in the extension when running the batch, so executing "install.bat" (all in lower case) in the System Shock case will work.

I reported the issue to the devs some time ago, but the post was moved to a private area of the forum. BTW, in CVS there is even further difference from real DOS, and the path of the batch file is added to %0 even when it isn't specified on the command line.

Reply 2 of 3, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

looks like "IF %oa==installa and install.bata" check that they name of the install file run is either "install" or "install.bat" (Since you can run it using either "install" or "install.bat".

If "install" or "install.bat" are detected then it continues the batch, if not it ends the batch with the error message.

Looks like DOSBox doesn't support support this.

EDIT I hate you ripsaw. 😠 😉

How To Ask Questions The Smart Way
Make your games work offline

Reply 3 of 3, by SKARDAVNELNATE

User metadata
Rank Oldbie
Rank
Oldbie

DOSBox 0.72 adds the filename extension of the batch file in caps if you didn't type it in

So it would look like install.BAT and this batch doesn't seem to tolerate the use of capital letters.

I seem to have hit another problem. The installer doesn't like that I made an ISO image of the disc. Using to physical CD it works but with the image I get the errors attached bellow. There are 3 files I can't directly copy from the disc (or from the image) and Magic ISO which created it doesn't even like the image.

"INITIAL.EXE"
"INI-MT.XMI "
"INI-SC.XMI "

The XMIs each appear in 2 folders and have 2 spaces after the extension. Is that normal for this game or is this a defect?

Update: The trouble copying the 3 files seems to be in Windows. I got around the issue by loading Norton Commander in DOSBox to copy the CD to a folder. From there I was able to make a better ISO image.

Attachments

  • Shocked.PNG
    Filename
    Shocked.PNG
    File size
    33.26 KiB
    Views
    2036 views
    File license
    Fair use/fair dealing exception