VOGONS


First post, by caiot5

User metadata
Rank Newbie
Rank
Newbie

So I'm setting up a brand new partition on MSDOS and as I already have a primary partition, I have to create an extended one and then a logical one, but for some reason it's giving me the letter D: as the hard drive, instead of E:
The problem is that WORMS game (version 1.0) requires CDROM drive to be letter D: and I really wanted this version to run.
How can I make sure (that) new partitions will start from E: and not D: ?
Any help would be really appreciated.

Reply 1 of 12, by konc

User metadata
Rank l33t
Rank
l33t

You can't, drive letters in DOS aren't permanently assigned. This means that even if you manage to get your new partition as E: by having D: somehow reserved while creating the partition, the next time you reboot it'll get the first free letter.

Reply 2 of 12, by nfraser01

User metadata
Rank Member
Rank
Member

I'm pretty sure MS-DOS assigns all fixed disk partitions first, and sequentially starting at C:. You can change the drive letter of the CD-ROM drive using the DOS driver MSCDEX , but not fixed disks.

Options:

  • There may be a patch to make the installer look elsewhere?
    You potientially could use a OS chooser to hide a particular partition for the install and then bring it back later?
    Just have one larger C: partition?
    The SUBST command may be useful?

HTH

Reply 3 of 12, by Jo22

User metadata
Rank l33t++
Rank
l33t++

I think it's a bit complicated.
MS-DOS 6.2 has a hidden API for supporting Double Space, for example.
The hidden, compressed drive partition technically is D: during boot-up (real C: is a minimal partition), but once the system files are being loaded, MS-DOS makes it appear as C:.
Speaking under correction, though.

"Time, it seems, doesn't flow. For some it's fast, for some it's slow.
In what to one race is no time at all, another race can rise and fall..." - The Minstrel

//My video channel//

Reply 4 of 12, by dr_st

User metadata
Rank l33t
Rank
l33t
caiot5 wrote on 2024-01-27, 17:10:

The problem is that WORMS game (version 1.0) requires CDROM drive to be letter D: and I really wanted this version to run.

Are you certain it is a hardcoded requirement and not just a setting which depends on the CD drive letter it was installed from?

I tried this copy of Worms CD just now (not sure which version), and the CD drive letter is encoded in SETUP.CFG offset 12 (0xC) as a 1-based integer value of the letter. So D: would be 0x04. E: would be 0x05 etc.

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys

Reply 5 of 12, by flynnsbit

User metadata
Rank Newbie
Rank
Newbie
caiot5 wrote on 2024-01-27, 17:10:
So I'm setting up a brand new partition on MSDOS and as I already have a primary partition, I have to create an extended one and […]
Show full quote

So I'm setting up a brand new partition on MSDOS and as I already have a primary partition, I have to create an extended one and then a logical one, but for some reason it's giving me the letter D: as the hard drive, instead of E:
The problem is that WORMS game (version 1.0) requires CDROM drive to be letter D: and I really wanted this version to run.
How can I make sure (that) new partitions will start from E: and not D: ?
Any help would be really appreciated.

You can get around this but it is a bit dumb. Create two partitions, 1 that is a scratch disk, say 10MB (D:), and the second is everything else (E:).

In Autoexec.bat do this:
LOADHIGH C:\DRIVERS\SHSUCDX.COM /D:IDE-CD /L:F /V /C
LOADHIGH ASSIGN D:=F:

This will assign your CD to F: and then "Assign" will take over your 10MB scratch disk that is assigned to D: with your CD drive. So you end up with D: and F: as your CD drive, and E: will be your disk drive.

Like I said, it's stupid but it works for 99% of games that need CD to be D: as this is how I do it on MiSTer.

Reply 6 of 12, by caiot5

User metadata
Rank Newbie
Rank
Newbie
dr_st wrote on 2024-01-27, 20:24:

Are you certain it is a hardcoded requirement and not just a setting which depends on the CD drive letter it was installed from?

I tried this copy of Worms CD just now (not sure which version), and the CD drive letter is encoded in SETUP.CFG offset 12 (0xC) as a 1-based integer value of the letter. So D: would be 0x04. E: would be 0x05 etc.

Now that's interesting! I will test it later and see if that helps.

Reply 7 of 12, by caiot5

User metadata
Rank Newbie
Rank
Newbie
flynnsbit wrote on 2024-01-27, 21:12:
You can get around this but it is a bit dumb. Create two partitions, 1 that is a scratch disk, say 10MB (D:), and the second is […]
Show full quote

You can get around this but it is a bit dumb. Create two partitions, 1 that is a scratch disk, say 10MB (D:), and the second is everything else (E:).

In Autoexec.bat do this:
LOADHIGH C:\DRIVERS\SHSUCDX.COM /D:IDE-CD /L:F /V /C
LOADHIGH ASSIGN D:=F:

This will assign your CD to F: and then "Assign" will take over your 10MB scratch disk that is assigned to D: with your CD drive. So you end up with D: and F: as your CD drive, and E: will be your disk drive.

Like I said, it's stupid but it works for 99% of games that need CD to be D: as this is how I do it on MiSTer.

I don't think I have this SHSUCDX.COM, isn't that from the FREEDOS?
But it is a good approach. If the modification of the SETUP.CFG file won't do the "magic", then I will try that.
Thanks.

Reply 8 of 12, by caiot5

User metadata
Rank Newbie
Rank
Newbie
dr_st wrote on 2024-01-27, 20:24:

Are you certain it is a hardcoded requirement and not just a setting which depends on the CD drive letter it was installed from?

I tried this copy of Worms CD just now (not sure which version), and the CD drive letter is encoded in SETUP.CFG offset 12 (0xC) as a 1-based integer value of the letter. So D: would be 0x04. E: would be 0x05 etc.

Well there is a SETUP.CFG for sure, but I couldn't edit the file using EDIT.COM . Would I need to use a Hex Editor to change that?

Reply 9 of 12, by flynnsbit

User metadata
Rank Newbie
Rank
Newbie
caiot5 wrote on 2024-01-28, 02:27:
I don't think I have this SHSUCDX.COM, isn't that from the FREEDOS? But it is a good approach. If the modification of the SETUP. […]
Show full quote
flynnsbit wrote on 2024-01-27, 21:12:
You can get around this but it is a bit dumb. Create two partitions, 1 that is a scratch disk, say 10MB (D:), and the second is […]
Show full quote

You can get around this but it is a bit dumb. Create two partitions, 1 that is a scratch disk, say 10MB (D:), and the second is everything else (E:).

In Autoexec.bat do this:
LOADHIGH C:\DRIVERS\SHSUCDX.COM /D:IDE-CD /L:F /V /C
LOADHIGH ASSIGN D:=F:

This will assign your CD to F: and then "Assign" will take over your 10MB scratch disk that is assigned to D: with your CD drive. So you end up with D: and F: as your CD drive, and E: will be your disk drive.

Like I said, it's stupid but it works for 99% of games that need CD to be D: as this is how I do it on MiSTer.

I don't think I have this SHSUCDX.COM, isn't that from the FREEDOS?
But it is a good approach. If the modification of the SETUP.CFG file won't do the "magic", then I will try that.
Thanks.

You don't have to use SHSUCDX as that was just an example. MSCDEX or whatever will work, just set the drive letter to whatever you are going to use with the ASSIGN util. A bit of a hack but it gets around how the DOS disk scheme assignment algorithm that sets disk drives work when you need a very specific letter while having hard disks in the mix. The setup.cfg is a better idea unless you have a lot of games that were already setup for the CD drive to be D:

Good luck!

Reply 11 of 12, by dr_st

User metadata
Rank l33t
Rank
l33t
caiot5 wrote on 2024-01-28, 04:37:

Well there is a SETUP.CFG for sure, but I couldn't edit the file using EDIT.COM . Would I need to use a Hex Editor to change that?

Yes, I use XE.

https://cloakedthargoid.wordpress.com/ - Random content on hardware, software, games and toys