Jump to content

Windows 98 won't recognize logical partition


HardDriv'n

Recommended Posts

Ok, please don't take it as an offence :), but I've rarely seen such a mess in BOTH the two hard disks connected to a same machine :w00t:.

None taken, and I actually had no idea what I was doing when I started this setup. Kind of a practice thing...

1st Hard disk (hd0):

[*]This hard disk has been evidently been partitioned on a motherboard that uses 240 sectors (Lenovo? :unsure:) for Head geometry.

...

[*]This hard disk has been evidently been partitioned on a motherboard that uses 255 sectors ("Standard") for Head geometry.

...

Only you can say WHY the first hard disk uses a 240 Head gemetry and the second doesn't, and if this is by design or should be corrected, one way or the other.

I'm unaware of the significance of the head count, but these were both partitioned on the same board. Is there a way for me to manually fix this without losing data?

Before doing anything of the above, get tiny hexer and my Structure viewers:

http://www.boot-land.net/forums/index.php?showtopic=8734

and check the MBR's and bootsectors with it/them, you should be able to check all of the above.

I've tried this, but your scripts gave me this message while running from Windows 2k/XP:

WARNING: MAXaddress: 512 is beyond EOF: 0

I understand this is a hex editor, but how does it help me? Editing, or saving, MBR/PBR before restoring?

A "general" advice is to STOP hiding and unhiding partitions "at random" ;), seemingly there is NO need to in your setup, it may have been useful when installing things in order to hae C:\ as the drive letter of the system drive in ALL windows (exactly what I personally find confusing) but now each OS should behave like that no matter if the other partitions are hidden or not.

...

Your menu.lst right now is a mess due to the whole hiding/unhiding stuff, but besides, there is something wrong, you have to make up your mind, you EITHER use "hardcoded" paths or "relative" ones.

Point taken.

My advice to fix (as a first step) things is:

  1. from grub4dos UNhide (hd0,2) or however write in the MBR 0F instead of 1F in third entry of partition table and, from the booted 2K or XP, delete the logical volume (hd0,4) AND the extended partition (hd0,2) and re-create a FAT32 primary partition to be used for swap of Win9x - consider also having it as FAT16 as it is roughly 1 Gb in size and you won't have small sized files in it
  2. from the booted Windows 9x, delete the logical volume (hd1,4) AND the extended partition (hd1,3) and recreate a FAT32 (there is NO point in having a "swap" partition as NTFS, which is normally SLOWER) - consider also having it as FAT16 as it is roughly 1 Gb in size and you won't have small sized files in it
  3. from either the Win9x or the 2K or XP backup the contents of (hd1,1) somewhere, then delete the partition and re-create it (this is CRITICAL as right now the CHS address of this partition overlaps (hd1,0) space), formatting it as FAT 32 before restoring the contents or manually correct the CHS values.

I'll do this as soon as I hear back on someone (you?) about the above issues.

Thank you.

Link to comment
Share on other sites


I'm unaware of the significance of the head count, but these were both partitioned on the same board. Is there a way for me to manually fix this without losing data?

Since all your OS will actually use LBA, it's not a problem, though it is "queer".

The only way I can imagine such a thing happen on the same board would be a change in BIOS (either settings - unprobable - or a firmware update), really cannot say. :unsure:

Before doing anything of the above, get tiny hexer and my Structure viewers:

http://www.boot-land.net/forums/index.php?showtopic=8734

and check the MBR's and bootsectors with it/them, you should be able to check all of the above.

I've tried this, but your scripts gave me this message while running from Windows 2k/XP:

WARNING: MAXaddress: 512 is beyond EOF: 0

You need to have the cursor (or selection) on the first byte of the saved sector (or have pressed in the script interface the button with 4 arrows pointing to the center that means "lock to the beginning of file").

I understand this is a hex editor, but how does it help me? Editing, or saving, MBR/PBR before restoring?

Beside other things, yes.

The PTview may be useful to correct the 1F/0F, but it will show you at first glance what the problem with (hd1,1) is.

You may also think at tiny hexer as a "professional" version of HDhacker, with it you can backup the Linux partition bootsector also (of course you will need to study a bit both the app and the theory in order to be able to find it ;)).

jaclaz

Link to comment
Share on other sites

One last question... How do I do the bolded?

* from the booted Windows 9x, delete the logical volume (hd1,4) AND the extended partition (hd1,3) and recreate a FAT32 (there is NO point in having a "swap" partition as NTFS, which is normally SLOWER) - consider also having it as FAT16 as it is roughly 1 Gb in size and you won't have small sized files in it.

I don't know of any disk management that comes with Windows ME, or 98.

And, Thanks for all the help.

:thumbup

Link to comment
Share on other sites

I don't know of any disk management that comes with Windows ME, or 98.

Well, you have FDISK, of course, but most probably it would be better (in the sense of easier and more "accurate") to use Ranish Partition Manager (you will need to use one of the latest versions, the "stable" is limited to 8 Gb if I recall correctly):

http://www.ranish.com/part/

However you don't actually *need* to do it from DOS/Win9x, you can do it from a booted 2K or XP, but you will need to temporarily set the pagefile to some other volume and reboot before deleting the partition, and then set it again on the newly created partition.

And, Thanks for all the help.

You are welcome. :)

jaclaz

Link to comment
Share on other sites

Well, I'm just reporting back on my results, for whoever may end stumbling into this thread.

After deleting the extended partition on disk 1 of 2 (hd0,4), creating a "primary" fat16 partition, wiping drive 2 of 2 (low-level-format), and reinstalling Windows 98 at (hd1,0), the original problem returned.

If I boot directly with a primary fat partition on drive 1 of 2, I end up at a command prompt asking for the location of "command.com". In other words, it looks for Windows 98 in what I can only guess as the primary fat partition on drive 1 (hd0,2), instead of drive 2 where Win98 is actually located (hd1,0).

And, if I remap the drives at all...

map (hd0) (hd1)
map (hd1) (hd0)

OR

map (hd0) (hd1)
map (hd1) (hd0)
map --hook

Windows will hang at where it should load to the desktop, and stays at a perpetually loading screen with the mouse pointer.

One thing I noticed was this message:

Setup found a compressed volume or a disk-cache utility on your computer. Quit setup and check your compressed volume with your disk- compression software or remove the disk-cache utility. Then run Setup again.

I can't remember if this was present the first time I installed Win98, simply ignored by myself, or not existent. So...I decided hell, why don't I just use the same partition I use for the Windows 2K/XP pagefile? I could live without the benefit of a swap file on the other IDE port...

Using the WinXP disk management, I deleted/re-created (hd0,3) as an "un-formatted" partition, re-created my shared partition (hd1,1), re-created an "un-formatted" partition (hd1,2) for Linux, and re-created the swap file partition for Win 2K/XP/98 now on (hd1,3) as a primary fat16. I loaded up Lucid Puppy, used GParted to format partition (hd0,3) as "linux-swap", formatted partition (hd1,3) as "ext3", and installed Linux to the partition (hd1,3).

Again using the map commands...

map (hd0) (hd1)
map (hd1) (hd0)

OR

map (hd0) (hd1)
map (hd1) (hd0)
map --hook

These caused Win98 to hang, same as above.

Without mapping the drives this time, I was able to boot Win98, but only if I specified this command:

chainloader /io.sys

This didn't work:

chainloader +1

Windows 98 detected the Linux partitions, but they showed as "not accessible". I noticed the linux-swap, from drive 1 of 2, was loaded in DOS-Compatibilty mode.

But..., the fat16 partition to be used for the swap file (hd1,3) was not recognized.

My final best guess, "assumptions", on this matter are:

Windows 98 will not load correctly from drive 2 of 2 if there are primary Fatxx, or Linux Extn partitions present on drive 1 of 2.

Windows 98 will not work properly if Linux Extn partitions are present on the same drive.

Windows ME may, or may not, have less rigid "rules" concerning partitioning compared to earlier versions of Windows.

Windows ME may, or may not, have better partitions recognition capabilities than previous versions of Windows. (Stop gap between the "9x" 98, and "NT" XP?)

I've reinstalled WinME, and all is back to where I was at. (Without DOS switch booting... :wacko: )

Link to comment
Share on other sites

Good. :)

Now I am completely lost again.:w00t:

The fact that

chainloader /io.sys

worked and and

chainloader +1

only means that you either failed to establish root properly or your bootsector is NOT a Win9x one or it is NOT properly set.

It is very likely that you need something "more" to have Win898 working from second drive, but from a quick look you performed such a number of changes/experiment ALL TOGETHER and without properly detailing them that I have NO idea what is causing the problem and even cannot say how it can be solved.

If you are happy with WinME, I would consider the thing closed, otherwise please post again how you have setip the thingy with ALL details, including menu.lst and the ususal MBR's/bootsectors.

It is very possible that the problem is originated by the primary FAT on 1st drive, if this is the case, try making it a logical volume inside extended and try again.

jaclaz

Link to comment
Share on other sites

Good. :)

Now I am completely lost again.:w00t:

The fact that

chainloader /io.sys

worked and and

chainloader +1

only means that you either failed to establish root properly or your bootsector is NOT a Win9x one or it is NOT properly set.

It is very likely that you need something "more" to have Win898 working from second drive, but from a quick look you performed such a number of changes/experiment ALL TOGETHER and without properly detailing them that I have NO idea what is causing the problem and even cannot say how it can be solved.

If you are happy with WinME, I would consider the thing closed, otherwise please post again how you have setip the thingy with ALL details, including menu.lst and the ususal MBR's/bootsectors.

It is very possible that the problem is originated by the primary FAT on 1st drive, if this is the case, try making it a logical volume inside extended and try again.

jaclaz

Having a Primary FAT Partition on the First Recognized Hard Drive (DL=80H in INT 13 Call) will always be assigned Drive Letter C:.

IO.SYS 7 will always load it's Configuration Manager Overlay, CONFIG.SYS and AUTOEXEC.BAT from either Drive A: or Drive C:, depending on how it is loaded. It cannot be set to any other Drive, regardless of how it is loaded.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...