Broken Sword II on OS X
Moderator: ScummVM Team
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
Broken Sword II on OS X
Hi,
I am trying to run Broken Sword II on OS X using version 0.8.2 of SCUMM VM.
I get the error "cannot read cd.inf".
"cd.inf" is in the game path.
I have all the required files there as well.
PLEASE HELP?
Thanks!!
I am trying to run Broken Sword II on OS X using version 0.8.2 of SCUMM VM.
I get the error "cannot read cd.inf".
"cd.inf" is in the game path.
I have all the required files there as well.
PLEASE HELP?
Thanks!!
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
Re: Broken Sword II on OS X
I don't know exactly what's wrong here, of course, but here are a few late-night observations to begin with.bigdave898 wrote:Hi,
I am trying to run Broken Sword II on OS X using version 0.8.2 of SCUMM VM.
I get the error "cannot read cd.inf".
"cd.inf" is in the game path.
I have all the required files there as well.
PLEASE HELP?
Thanks!!
There are two files involved here: resource.inf and cd.inf
The resource.inf file is a text file, using DOS/Windows line breaks, with the names of resource files. (I see I really ought to clean up the parsing of it. Some day.) At least in my case, it contains a list of 14 file names.
The cd.inf file is a binary file, where each record consists of 21 bytes. (The first twenty are the resource file name - again - and the last byte indicates where the file can be expected to be found.) So ideally the file should, in my case, be 21 * 14 = 294 bytes long. At the very least, it must not be shorter than that.
The error message you got means that an error occured while reading these records. Probably because the file was shorter than expected. So the trick is figuring out which of the two files is the real source of the problem, and why.
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
Thanks for the quick response.
I got it to kind of work by the following method:
1) I booted up Windows 2000(via Virtual PC)
2) Ran the install program
3) Copied the "cd.inf" file from the actual install directory to the directory I am using for SCUMM VM
4) Ran it from SCUMM VM and got to see the intro, but when the actual game was supposed to load(the point where you're in control) SCUMM VM quits
I will see what else I can do.
I got it to kind of work by the following method:
1) I booted up Windows 2000(via Virtual PC)
2) Ran the install program
3) Copied the "cd.inf" file from the actual install directory to the directory I am using for SCUMM VM
4) Ran it from SCUMM VM and got to see the intro, but when the actual game was supposed to load(the point where you're in control) SCUMM VM quits
I will see what else I can do.
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
OK, got it to work completely by:
putting all the *.clu and *.tab and resource.inf and credits.bmp in a directory called "CLUSTERS", renaming the "music.clu" and "speech.clu" files from each CD appropriately
and having the contents of the video pack, "autorun.inf", "cd.inf", "install.inf" and "resource.inf" in the main directory.
Hope this helps everyone !!!!!!
Time to escape the wrath of the spider/fire
putting all the *.clu and *.tab and resource.inf and credits.bmp in a directory called "CLUSTERS", renaming the "music.clu" and "speech.clu" files from each CD appropriately
and having the contents of the video pack, "autorun.inf", "cd.inf", "install.inf" and "resource.inf" in the main directory.
Hope this helps everyone !!!!!!
Time to escape the wrath of the spider/fire
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
Strange. It shouldn't really matter how the files are organised. Unless the same file name appears in several directories, and its not really the same file. I guess things would get confusing then...bigdave898 wrote:OK, got it to work completely by:
putting all the *.clu and *.tab and resource.inf and credits.bmp in a directory called "CLUSTERS", renaming the "music.clu" and "speech.clu" files from each CD appropriately
and having the contents of the video pack, "autorun.inf", "cd.inf", "install.inf" and "resource.inf" in the main directory.
Hope this helps everyone !!!!!!
Time to escape the wrath of the spider/fire
Apart from the directory you point ScummVM to, it will also look in sub-directories called "clusters", "sword2" and "video". My own preferred layout is to put all of the data files in the main directory, and keep the cutscenes files in a "video" sub-directory.
alternate version
i run the game with the same software versions you have: macosx (10.3.9) and scummvm 0.8.2 (stable).
however, you seem not to have the same broken sword 2 version (mine is from "soldout software", scummvm recognizes as sword2alt) because i need a file all of you didn't mention. here is my file structure layout (i keep the original directory structure just because):
sword2alt/r2ctlns.ocx (1)
sword2alt/sword2/cd.inf
sword2alt/clusters/*.clu (20 of them)
sword2alt/clusters/resource.inf
sword2alt/clusters/cluster.tab
sword2alt/clusters/resource.tab
sword2alt/clusters/credits.bmp
sword2alt/video/* (all files from the cutscenes pack)
(1) the file is a "MS Windows PE 32-bit Intel 80386 GUI DLL", i'm almost (!) sure it isn't necessary, but scummvm needs it to be there to be correctly recognized...
hope it helps!
there is no entry in the required game files documentation about it. i made it work with some trial and error (yes, the source code...). could you please add an entry for it? i can provide the checksums for the other documentation section as well.
ps: actually, i think the required game files and the checksums sould be the same section, but i've read somewhere else that the developers don't agree on this. it would be of help because users could supply more and better information...
however, you seem not to have the same broken sword 2 version (mine is from "soldout software", scummvm recognizes as sword2alt) because i need a file all of you didn't mention. here is my file structure layout (i keep the original directory structure just because):
sword2alt/r2ctlns.ocx (1)
sword2alt/sword2/cd.inf
sword2alt/clusters/*.clu (20 of them)
sword2alt/clusters/resource.inf
sword2alt/clusters/cluster.tab
sword2alt/clusters/resource.tab
sword2alt/clusters/credits.bmp
sword2alt/video/* (all files from the cutscenes pack)
(1) the file is a "MS Windows PE 32-bit Intel 80386 GUI DLL", i'm almost (!) sure it isn't necessary, but scummvm needs it to be there to be correctly recognized...
hope it helps!
there is no entry in the required game files documentation about it. i made it work with some trial and error (yes, the source code...). could you please add an entry for it? i can provide the checksums for the other documentation section as well.
ps: actually, i think the required game files and the checksums sould be the same section, but i've read somewhere else that the developers don't agree on this. it would be of help because users could supply more and better information...
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
Re: alternate version
No, I also have the "Sold Out Software" version. It contains both DOS/Windows 95 versions of the game. SCUMM VM recognizes mine as "Broken Sword 2: The Smoking Mirror"pmaciel wrote:i run the game with the same software versions you have: macosx (10.3.9) and scummvm 0.8.2 (stable).
however, you seem not to have the same broken sword 2 version (mine is from "soldout software", scummvm recognizes as sword2alt) because i need a file all of you didn't mention. here is my file structure layout (i keep the original directory structure just because):
sword2alt/r2ctlns.ocx (1)
sword2alt/sword2/cd.inf
sword2alt/clusters/*.clu (20 of them)
sword2alt/clusters/resource.inf
sword2alt/clusters/cluster.tab
sword2alt/clusters/resource.tab
sword2alt/clusters/credits.bmp
sword2alt/video/* (all files from the cutscenes pack)
(1) the file is a "MS Windows PE 32-bit Intel 80386 GUI DLL", i'm almost (!) sure it isn't necessary, but scummvm needs it to be there to be correctly recognized...
hope it helps!
there is no entry in the required game files documentation about it. i made it work with some trial and error (yes, the source code...). could you please add an entry for it? i can provide the checksums for the other documentation section as well.
ps: actually, i think the required game files and the checksums sould be the same section, but i've read somewhere else that the developers don't agree on this. it would be of help because users could supply more and better information...
What error message do you get if you delete the .ocx file and try to run it?
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
I believe (I didn't have much to do with the game detection) that the only reason for looking for r2ctlns.ocx is to allow the game to be detected from the CD. But since the CD swapping isn't really supported, or at the very least not well tested, it's not a particularly good idea to do so.
Other than that, the file is not needed.
Other than that, the file is not needed.
removing the r2ctlns.ocx file causes scummvm detection to fail, it says it couldn't find any game in the specified directory. with it, or a 0-byte file in its place, it works. when playing the file is not necessary... it's strange why detection is based in this file.
the game is detected as "Broken Sword 2: The Smoking Mirror (alt)". curious, since it is also a "soldout version". however my broken sword 1 (also from "soldout") is not "alt".
why is there no broken swords (and bass) in the checksums listings?
the game is detected as "Broken Sword 2: The Smoking Mirror (alt)". curious, since it is also a "soldout version". however my broken sword 1 (also from "soldout") is not "alt".
why is there no broken swords (and bass) in the checksums listings?
- eriktorbjorn
- ScummVM Developer
- Posts: 3560
- Joined: Mon Oct 31, 2005 7:39 am
The game detection for Broken Sword 2 doesn't use file checksums. At least so far we haven't seen any case where it needs to distinguish beteen different versions, so all it does is to look for files and the description of the game is based on which one it finds.pmaciel wrote:removing the r2ctlns.ocx file causes scummvm detection to fail, it says it couldn't find any game in the specified directory. with it, or a 0-byte file in its place, it works. when playing the file is not necessary... it's strange why detection is based in this file.
the game is detected as "Broken Sword 2: The Smoking Mirror (alt)". curious, since it is also a "soldout version". however my broken sword 1 (also from "soldout") is not "alt".
why is there no broken swords (and bass) in the checksums listings?
There are really only two games it has to consider: The full game, and the demo. If it finds a file called players.clu it assumes that it could be either of them. If it finds a file called r2ctlns.oxc it assumes it must be the full game. For some reason, it uses a different target name and description for that case, but other than that the game engine makes no distinction between them.
-
- Posts: 6
- Joined: Tue Mar 21, 2006 1:14 am
Two files not mentioned so far are "cd.bin" and "startup.inf".
Section 5.6.3 of the ReadMe states that "you will need the cd.bin, cd.inf and startup.inf files from the sword2 directory on CD 1".
Also, according to section 5.6, "you will have to make sure that all filenames use either all upper- or all lower-case letters". I think HFS+ is case-preserving, but case-insensitive, so this might not be important.
Using ScummVM 0.8.2 and the Sold Out Software version, I have the following folders and files:
clusters/cluster.tab
clusters/credits.bmp
clusters/resource.inf
clusters/resource.tab
clusters/vielogo.tga
clusters/*.clu [20 items]
sword2/cd.bin
sword2/cd.inf
sword2/startup.inf
video/* [50 items]
As eriktorbjorn says, the sub-folders aren't necessary, it also seems to work if all files are in the same folder. And I haven't copied the "r2ctlns.ocx" file.
Section 5.6.3 of the ReadMe states that "you will need the cd.bin, cd.inf and startup.inf files from the sword2 directory on CD 1".
Also, according to section 5.6, "you will have to make sure that all filenames use either all upper- or all lower-case letters". I think HFS+ is case-preserving, but case-insensitive, so this might not be important.
Using ScummVM 0.8.2 and the Sold Out Software version, I have the following folders and files:
clusters/cluster.tab
clusters/credits.bmp
clusters/resource.inf
clusters/resource.tab
clusters/vielogo.tga
clusters/*.clu [20 items]
sword2/cd.bin
sword2/cd.inf
sword2/startup.inf
video/* [50 items]
As eriktorbjorn says, the sub-folders aren't necessary, it also seems to work if all files are in the same folder. And I haven't copied the "r2ctlns.ocx" file.
eriktorbjorn, i've finally had a look at the stable source code (i had been postponning it since, what, version 0.4 or so). in the beggining of file sword2/sword2.cpp there is, simplified:
static const Sword2GameSettings sword2_settings[] = {
/* Broken Sword 2 */
{"sword2", "Broken Sword 2: The Smoking Mirror", ..., "players.clu" },
{"sword2alt", "Broken Sword 2: The Smoking Mirror (alt)", ..., "r2ctlns.ocx" },
{"sword2demo", "Broken Sword 2: The Smoking Mirror (Demo)", ... | Sword2::GF_DEMO, "players.clu" },
{NULL, NULL, 0, NULL}
};
i din't go very deep, but i understand that if the ocx file is missing it should detect the non-alt version (because i have "clusters/players.clu"). it doesn't work this way though...
as Ben mentioned, there are more 'documentedly' required files. there is a FIXME comment on the "startup.inf" (line 613) on its possible use (boot params and that), but it's not currently used in the stable release. the other files, "cd.bin" and "clusters/vielogo.tga", i'm almost sure they are not used at all.
i use the original directory structure to avoid problems finding files (ScummVM should work with the original file layout, i think). also, the case is important in the file names, so i only use lowercase even though i'm on hfs+. it only requires half of the processing power of my brain glyph recognition :)
anyway the game worked for me since day one (both in win and mac), i never had (m)any file-not-found problems. should the documentation on the required files be updated?
i still wonder the difference between "sword2" and "sword2alt" modes, i did grep the code sword2/* for "alt\"" and didn't figure much...
static const Sword2GameSettings sword2_settings[] = {
/* Broken Sword 2 */
{"sword2", "Broken Sword 2: The Smoking Mirror", ..., "players.clu" },
{"sword2alt", "Broken Sword 2: The Smoking Mirror (alt)", ..., "r2ctlns.ocx" },
{"sword2demo", "Broken Sword 2: The Smoking Mirror (Demo)", ... | Sword2::GF_DEMO, "players.clu" },
{NULL, NULL, 0, NULL}
};
i din't go very deep, but i understand that if the ocx file is missing it should detect the non-alt version (because i have "clusters/players.clu"). it doesn't work this way though...
as Ben mentioned, there are more 'documentedly' required files. there is a FIXME comment on the "startup.inf" (line 613) on its possible use (boot params and that), but it's not currently used in the stable release. the other files, "cd.bin" and "clusters/vielogo.tga", i'm almost sure they are not used at all.
i use the original directory structure to avoid problems finding files (ScummVM should work with the original file layout, i think). also, the case is important in the file names, so i only use lowercase even though i'm on hfs+. it only requires half of the processing power of my brain glyph recognition :)
anyway the game worked for me since day one (both in win and mac), i never had (m)any file-not-found problems. should the documentation on the required files be updated?
i still wonder the difference between "sword2" and "sword2alt" modes, i did grep the code sword2/* for "alt\"" and didn't figure much...