VOGONS


Harvester: IMGMOUNT trouble

Topic actions

First post, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

Harvester is a game coming on three CDs. I'm using Dosbox 0.74 on Linux. Anticipating trouble with switching CDs, I made ISO images from the CDs. I mounted the first image into the host system's filesystem and used the regular MOUNT command within Dosbox (without any flags apart from -cdrom). Worked great until the first request of the game to insert the second CD.

I tried mounting all three images with IMGMOUNT. On the DOS prompt, I confirmed Ctrl+F4 cycles between the three images ("dir d:" changes accordingly). However, within the game, none of the discs is recognised. I took a step back and mounted only the first image with IMGMOUNT. Even then, the disc isn't recognised by the game (it's stuck on the prompt to insert the requested CD). Remember, that's the same image I can use with MOUNT just fine.

I also tried using MOUNT and switching between the images on OS level (using lazy umount since for obvious reasons, regular umount won't let me as long as Dosbox uses the image), switching between the physical CDs (again, using lazy umount), simply mounting the second image 'over' the first one and telling Dosbox to reload its caches with Ctrl+F4 each time, but none of these made the game recognise the second CD.

So I'm back to IMGMOUNT which really should work. Shouldn't it?

Reply 1 of 38, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

do the games have audio tracks ?

Water flows down the stream
How to ask questions the smart way!

Reply 2 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

No, single-track CDs.

Reply 3 of 38, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

odd, imgmount should be as compatible as regular mount, in some cases even more compatible.
have you tried a different program to make the isos ?

Water flows down the stream
How to ask questions the smart way!

Reply 4 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

I used regular dd and dd_rescue on my own CDs as well as images made by a friend of mine when I ran into the problem (don't know what program he used, but I assume something Windows-based).

Reply 5 of 38, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

could you check the output of dir in both the regular mount and the imgmount ?

Water flows down the stream
How to ask questions the smart way!

Reply 6 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

There are two subtle differences in the directory listing:

1. Using regular MOUNT, [.] and [..] entries are included, but they aren't there using IMGMOUNT.
2. Using regular MOUNT, the entries are ordered as I'd expect them to be, i.e. directories first, then files. Using IMGMOUNT, directories are listed among the files according to their names.

Both report the same overall size of the CD (though what Dosbox reports is significantly smaller than the ISO image), the same number of files and not the same number of directories (due to 1.).

Reply 7 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I have no problem installing and running the game in DOSBox 0.74 on WinXP using an image of the first disc. In real DOS (and Windows) the root directory of drives do not show "." or ".." directory entries unless the drive is SUBSTed to a subdirectory. The ".." (parent directory) in particular has no meaning in the root. Prior to 0.74, IMGMOUNT would show dot-dirs in the root, which caused a compatibility issue with one game. It's strange that a MOUNTed CD is showing dot-dirs in the root, but maybe a quirk of Linux. Anyway, I can run the game with 0.73 and 0.74, so the dot-dirs do not appear to be an issue, nor does DOSBox's sorting of the directory entries.

Please post the drive mountings you are using to install and run the game. You probably have entered them correctly, but might be useful info for someone trying to reproduce the problem on a Linux platform.

Reply 8 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

The mount commands:

mount c /home/standard/Games/PC/
mount d /media/cdrom -t cdrom

That way, the first CD is recognised, I can start and play the game, but I can't switch the CD for obvious reasons. Which, after what I assume to be one third of the game, is required.

Using

imgmount d /home/standard/harvester1.iso -t iso

and

imgmount d /home/standard/harvester1.iso /home/standard/harvester2.iso /home/standard/harvester3.iso -t iso

respectively, it doesn't work. I should make this a little clearer, though:

The game does start, but if I to load a game from the main menu, the game then asks me to insert the first CD. No matter how many times I press Ctrl+F4 and click the left mouse button (the game asks me to do the latter after inserting the CD), the same prompt keeps appearing in an endless loop.

I can add that this behaviour is consistent in 0.74 and 0.73. I originally encountered it in the older version and then upgraded before posting here.

Reply 9 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I don't have any trouble loading saved games. How do you run the game after mounting? It should be like:

c:
cd harvest
harvest

Did you choose the small or large installation? Here is the CONFIG.INI file I have after a large installation; does yours have different SAVE or CD_ROM values?

FX_VOLUME=9
MUSIC_VOLUME=3
TEXT=YES
GORE=YES
QUICK_TIPS=ON
SAVE=.\
VOICE=SOUND\VOICE\
GAMMA=0
TOWN=HARVEST.SCR
CD_ROM=D:\
DRIVE_1=D:\harvest.dat
DRIVE_2=D:\sound.dat
DRIVE_3=C:\HARVEST\harvest2.dat

Reply 10 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

I can load saved games as well if I use regular MOUNT. I'm starting the game with exactly the same commands you listed. The problem occurs both with small and large installation. My CONFIG.INI looks matches yours exactly.

Reply 11 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I have an idea of what the problem might be. When you start the game, after the intro movies, do you get a screen with a guy standing in a room, or one like the attached image?

Reply 12 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

Like the attachment.

Reply 13 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

I was able to reproduce the situation you are encountering by *intentionally* altering the volume label of the first disc. The volume labels of the 3 discs must be: DISK1, DISK2, and DISK3, respectively; the game looks for those labels. Do you have a way of checking the volume labels (outside DOSBox) of the images you created?

Reply 14 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

Things are starting to get interesting... the labels of the images are:

'DISK1                          '
'DISK2 '
'DISK3 '

Same on the images I got from my friend.

Reply 15 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Not sure I'm interpreting those correctly, do they contain single-quotes and have appended space characters, or is that just formatting added by whatever you used to read the labels? Each label is 5 characters long exactly; if yours are different, the problem is the app you used to make the images.

BTW, can I offer you a wafer-thin mint? 😉

Reply 16 of 38, by Qbix

User metadata
Rank DOSBox Author
Rank
DOSBox Author

or imgmount not stripping spaces.
dd should make 1:1 images as it has no idea of a cdrom or whatever. it just reads bytes and outputs them

Water flows down the stream
How to ask questions the smart way!

Reply 17 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author
bool CMscdex::GetVolumeName(Bit8u subUnit, char* data) {   
if (subUnit>=numDrives) return false;
Bit16u drive = dinfo[subUnit].drive;

Bit16u error;
bool success = false;
PhysPt ptoc = GetTempBuffer();
success = ReadVTOC(drive,0x00,ptoc,error);
if (success) {
MEM_StrCopy(ptoc+40,data,31);
data[31] = 0;
rtrim(data);
};

return success;
}

Well, the volume name inside the image is padded with spaces if looked at as binary data, but how would rtrim() not work? Still wonder if those single-quotes got embedded in the name, or if they're just formatting from some tool used to read the names.

Reply 18 of 38, by Mr Creosote

User metadata
Rank Newbie
Rank
Newbie

The label is what the BSD 'file' command returns. I assume it's adding those quotes for clarity. Every CD image I have here (no matter whether it's been created by me or someone else) has a fixed-length name in this output of 'file' - including trailing spaces. I'm afraid Qbix could be right; it could very well still be a bug of the game or Dosbox itself. Not saying it is, but a bug of that kind in dd sounds like an unlikely theory.

On the other hand, if I read the Dosbox code correctly, the volume label should be read in the function CMscdex::GetVolumeName which does call rtrim...

BTW, can I offer you a wafer-thin mint?

I'm full, couldn't eat another thing.

Edit: You were faster than me 😀

Reply 19 of 38, by ripsaw8080

User metadata
Rank DOSBox Author
Rank
DOSBox Author

Before we go further down this line of researching the problem, let's be certain of the problem. Please run the attached program inside DOSBox to see what it displays for the volume labels as DOSBox is reading them. It's quick & dirty and only reads from the D drive. The square brackets are formatting that it adds to make trailing spaces stand out.