VOGONS


First post, by Golffies

User metadata
Rank Newbie
Rank
Newbie

Hello,
on the classic hardware configuration of a Compaq Armada (floppy + CD-Rom + HDD), reinstalling Windows 98 SE is easy. It took me a few trial and errors and worked because the machine is from 2000. Other pre-2010 computers are less well off in terms of peripheral compatibility. Before I launch into a long description, here's a question to help me close the wrong doors for the next build:

  • contents of the Windows 98 SE installation CD-ROM copied to volume E:
  • installation target = volume D:
  • boot under FreeDOS from volume C:

The installation of Windows 98 SE fails with the following error message (I'm quoting from memory): ‘Windows shall not be installed on the boot volume’. Presumably, the installer is trying to write to C:, whereas I would like it to write to D:. After changing the boot volume in the BIOS, the next time the computer is rebooted, D: would obviously become C:.

Is there a way of making the installer write to D:? It seems obvious when installing a modern OS, but maybe it just wasn't possible in the last century?

Thanks for your advice.

WP_20240511_22_26_05_Pro.jpg
Filename
WP_20240511_22_26_05_Pro.jpg
File size
897.01 KiB
Views
513 views
File comment
Volumes list generated by fdisk
File license
CC-BY-4.0

Reply 1 of 14, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie

I wouldn't try to do that - the registry and everything else will be written with D:\ paths, when you switch the order in the BIOS, you're going to have a disaster on your hands.

Can you boot Win98 DOS from something that would get A/B letters and start the installation from there with C being the drive you want to be C in the long term? Or, the other thing you could do - do a sys d: when booted from something else, I think a very basic DOS setup created by sys should survive its drive letters changing, then boot from your new C: drive, and install 98 from there.

Reply 2 of 14, by Horun

User metadata
Rank l33t++
Rank
l33t++

Do not know about bios on Compaq Armada, probably crappy but my current soc 370 and above boards have a BIOS boot menu.
If yours has that then: To do it properly only the drive you are installing the OS too is connected and "starting fresh w/o any partitions" you fdisk set as C bootable, then format and install.
Then disconnect that HD and connect next drive do exactly same, etc. It has always worked well for me the only thing needed is to remember the BIOS drive order for each OS....
That way no OS interferes with another ( note XP can mess with Win7 recycle bin but there is a reg edit to not allow XP to even see the Win7 drive/partiton which fixes that. )
Just my way as it is as easy to pick boot drive from BIOS F2 or F11 boot menu if the bios has it then from a Grub, etc boot menu...specially since you have to exit out of the whatever OS and reboot to pick another 😀

Hate posting a reply and then have to edit it because it made no sense 😁 First computer was an IBM 3270 workstation with CGA monitor. Stuff: https://archive.org/details/@horun

Reply 3 of 14, by Golffies

User metadata
Rank Newbie
Rank
Newbie

Thank you for your answers.

VivienM wrote on 2024-05-12, 00:11:

Can you boot Win98 DOS from something that would get A/B letters

Apart from the floppy drive physically connected to the motherboard, do you have in mind any other device that would do this job? Would a USB-booted CD-ROM be indexed by the BIOS under a letter other than C: for instance?

Or, the other thing you could do - do a sys d: when booted from something else, I think a very basic DOS setup created by sys should survive its drive letters changing, then boot from your new C: drive, and install 98 from there.

It's easy to reformat the 256MB Compact Flash that will eventually be used as a C: drive, using the format /s command, and then designate it in the BIOS as the boot volume. Won't I then end up in the current configuration, where the Windows 98SE installer complains that it shouldn't write to the boot disk?

Horun wrote on 2024-05-12, 02:00:

Do not know about bios on Compaq Armada, [SNIP]. To do it properly only the drive you are installing the OS too is connected and "starting fresh w/o any partitions" you fdisk set as C bootable, then format and install.

On the Compaq Armada, I proceeded as you describe, with a single HDD, which is why the installation of Windows 98 SE was successful, after a few tries. This laptop has a floppy drive, so there's no real challenge. 😀

Reply 4 of 14, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie
Golffies wrote on 2024-05-12, 05:21:
VivienM wrote on 2024-05-12, 00:11:

Can you boot Win98 DOS from something that would get A/B letters

Apart from the floppy drive physically connected to the motherboard, do you have in mind any other device that would do this job? Would a USB-booted CD-ROM be indexed by the BIOS under a letter other than C: for instance?

I think the bootable Win98 OEM CD-ROM has a 'virtual floppy' component and then loads a CD-ROM driver (or doesn't, if you're trying to do this with a SATA optical drive...) and mounts the rest of the CD using a different drive letter, and I'm pretty sure your actual C drive gets the C letter in that process. Keep in mind that this was the absolute infancy of bootable CD-ROMs...

Now, if you want to add USB in the middle of this... I don't know.

Golffies wrote on 2024-05-12, 05:21:

Or, the other thing you could do - do a sys d: when booted from something else, I think a very basic DOS setup created by sys should survive its drive letters changing, then boot from your new C: drive, and install 98 from there.

It's easy to reformat the 256MB Compact Flash that will eventually be used as a C: drive, using the format /s command, and then designate it in the BIOS as the boot volume. Won't I then end up in the current configuration, where the Windows 98SE installer complains that it shouldn't write to the boot disk?

First, 256MB sounds... small. Very small. (I tried to google but I can't seem to find what the actual minimum that the 98SE installer enforces is...)

Second, something doesn't seem quite right with this. You should be able to boot Win98 DOS from your C drive and install Win98 on that drive... I think many people have done that where you copy the installation files to C:\WIN98, make C: bootable, then boot from C, do CD WIN98; SETUP and off you go, especially on a retro setup where you may not have a floppy/PATA CD-ROM to boot from...

Now I'm completely speculating, but I'm wondering if the real problem is that it's confused because that drive is too small and you have other drives with other letters that are big enough.

Reply 5 of 14, by elszgensa

User metadata
Rank Member
Rank
Member

I installed 98se on a 256MB HDD just now and it went fine. It'll get a bit tight once you start installing extra stuff but at this point the size isn't necessarily a show stopper (depending on how large that FreeDOS partition is). Do note though that copying the setup files over to the same disk is not an option in this scenario, there's simply not enough room for them and the installed system (default component selection comes out to ~200MB). Gotta install from the CD(/network/different hdd/whatever).

Golffies: Next time could you please post the exact messages you're getting instead of paraphrasing from memory? There's no need for a game of Chinese Whispers here. Thanks.

edit: And now I've tried some of that multiple partition, cross install insanity. Created a fresh (reasonably sized) HDD image, made two partitions (200 + 400mb), 'format c: /s' and 'format d:', copied winsetup to c, rebooted into that freshly installed DOS, started setup and asked it to install to D:\WINDOWS. <todd howard>It Just Works!</todd>... Though obviously, naively trying to make this new D: install into a C: one wouldn't work, for the reasons already mentioned up thread.

Reply 6 of 14, by Golffies

User metadata
Rank Newbie
Rank
Newbie

Thank you once again for your answers. They are useful.

VivienM wrote on 2024-05-12, 12:53:

You should be able to boot Win98 DOS from your C drive and install Win98 on that drive... I think many people have done that where you copy the installation files to C:\WIN98, make C: bootable, then boot from C, do CD WIN98; SETUP and off you go

In fact, it worked just as you said it would. The CF card was assigned the letter C: while setup.exe and the installation files were on E:. The Windows installer then populated C: with the files, without protesting that it was writing to the boot disk. Thank you.

It had no impact, but here's a detail I can't quite explain. I first prepared the CF card from FreeDos by creating a single active partition with fdisk, then copying a minimal system with format /s onto the FAT16 volume. And I couldn't boot from this CF card. It only worked after writing a booloader to it with fdisk /mbr. Does the format /s command in MS-DOS create the booloader automatically? In FreeDOS, it doesn't. In MS-DOS, do we have to use fdisk /mbr as well?

elszgensa wrote on 2024-05-12, 14:06:

Next time could you please post the exact messages you're getting instead of paraphrasing from memory? There's no need for a game of Chinese Whispers here. Thanks.

I would have done better to take a screenshot. I like your evocation of the mysteries of the Far East. The best explanation I can give for this error message on my first attempt is that the C: volume was populated with a full system (I'd booted from FreeDOS), my target CF card was on D: (a clean FAT16 partition, with 'active' flag set, but no file on it), and the Windows installation files were on a FAT32 partition on E:. I hoped that the installer would give me a choice of target drive to write its files to, but instead it found a system on C: and refused to write to it. My aim was to get setup.exe to write on D:.

started setup and asked it to install to D:\WINDOWS.

How do you do it? Is this a command-line option, when you run setup.exe?

Now, if you want to add USB in the middle of this... I don't know.

Neither do I. What did you have in mind other than the floppy drive on A: or B:? I only mentioned the USB CD-ROM as a hypothesis. This weekend I learned about the Easy2Boot utility, thanks to the PhilsComputerLab YouTube channel. Easy2Boot boots the computer from a Mass Storage device on USB, and assigns the A: and B: letters to the disk images stored on the USB memory stick/HDD/SSD. This means you can boot from A: without having a physical floppy drive, and have the Windows installation files on B:. The target machine's hard disk then remains assigned to C:. Sounds like a solid alternative, even if it does require a bit of work to prepare the USB stick.

After your replies (thanks!), by booting on the CF card and installing Windows on it, I got as far as the ‘plug and pray’ hardware detection phase, after the first reboot. This is where it freezes, even though an LED indicates very sporadic accesses to the CF card. Finally, the next day, I switched off the machine. Mind you, it still draws ~200watts.

Attachments

  • WP_20240512_19_22_25_Pro.jpg
    Filename
    WP_20240512_19_22_25_Pro.jpg
    File size
    635.44 KiB
    Views
    290 views
    File comment
    Windows 98 SE froze at the ‘plug and pray’ hardware detection stage.
    File license
    CC-BY-4.0

Reply 7 of 14, by elszgensa

User metadata
Rank Member
Rank
Member
Golffies wrote on 2024-05-13, 09:12:

How do you do it? Is this a command-line option, when you run setup.exe?

When it asks you which directory install to, change from the default "C:\WINDOWS" to "Other directory" then enter "D:\WINDOWS"... Yes it has the drive letter in there not just the folder name, maybe you just missed that. And yes it applies this to Program Files too.

Reply 8 of 14, by dr_st

User metadata
Rank l33t
Rank
l33t
Golffies wrote on 2024-05-11, 20:44:
Before I launch into a long description, here's a question to help me close the wrong doors for the next build: […]
Show full quote

Before I launch into a long description, here's a question to help me close the wrong doors for the next build:

  • contents of the Windows 98 SE installation CD-ROM copied to volume E:
  • installation target = volume D:
  • boot under FreeDOS from volume C:

Why are you aiming for a dual-boot of Win98 SE and FreeDOS? What does it give you (besides extra headache) over just having Win98 SE and Win98SE DOS mode?

Golffies wrote on 2024-05-11, 20:44:

Is there a way of making the installer write to D:? It seems obvious when installing a modern OS, but maybe it just wasn't possible in the last century?

My Windows 98SE is installed to G: on my system, so obviously there is a way. As was told:

elszgensa wrote on 2024-05-13, 09:20:

When it asks you which directory install to, change from the default "C:\WINDOWS" to "Other directory" then enter "D:\WINDOWS"... Yes it has the drive letter in there not just the folder name, maybe you just missed that. And yes it applies this to Program Files too.

This is exactly how it is done. This way the installer will put the Windows directory, and Program Files on D:\. The boot files will still go on C: because Win98 SE uses a DOS bootloader, and that one only knows how to boot from a first primary active partition. Maybe that's where the presence of FreeDOS messes up the installation.

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

Reply 9 of 14, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie
Golffies wrote on 2024-05-13, 09:12:

It had no impact, but here's a detail I can't quite explain. I first prepared the CF card from FreeDos by creating a single active partition with fdisk, then copying a minimal system with format /s onto the FAT16 volume. And I couldn't boot from this CF card. It only worked after writing a booloader to it with fdisk /mbr. Does the format /s command in MS-DOS create the booloader automatically? In FreeDOS, it doesn't. In MS-DOS, do we have to use fdisk /mbr as well?

That's a good question, but it wouldn't surprise me if format /s was solely about setting up things inside the partition, while fdisk /mbr set up the MBR.

Keep in mind that this kind of craziness is not what was expected to be done back in the day. sys x: or format /s was more for making floppies bootable whereas you'd set up your hard drive by running the appropriate SETUP from floppy. And so it might very well be that SETUP not only copied the system files but also did the MBR stuff...

Golffies wrote on 2024-05-13, 09:12:

After your replies (thanks!), by booting on the CF card and installing Windows on it, I got as far as the ‘plug and pray’ hardware detection phase, after the first reboot. This is where it freezes, even though an LED indicates very sporadic accesses to the CF card. Finally, the next day, I switched off the machine. Mind you, it still draws ~200watts.

What hardware are you running? I can tell you my 98SE project tended to freeze right around there too for as long as I had SATA devices and SATA enabled. 98SE is extremely picky and expects two IDE controllers at the 'standard' memory addresses, etc., or failing that, a well-known SCSI card of its time.

Again, it's funny because back in the day, everybody thought 95/98SE could run on anything. But it turns out the definition of 'anything' in 1996 is... quite different... from a lot of what's out there in the XP/SATA/PCI-E/etc era.

Reply 10 of 14, by Ryccardo

User metadata
Rank Member
Rank
Member

Yes, in general, sys and format /s work with the VBR only 😀

The first PC BIOS only supports floppies (and the next few ones don't support HDDs either, only option roms that may implement them), so the Int19 first stage bootloader is very simple - read first sector from drive 0 ("A:") up to 5 times, if it worked run it, if it failed run Int18 (start BASIC);

and in floppies, traditionally non-partitioned, the first sector is the VBR of the only "partition"/filesystem!

Then as relatively huge 10 and 20MB HDDs came out, someone™ decided that they should be partitionable into multiple virtual disks, and while Microsoft FDISK tries hard to obstruct you from having multiple primary partitions, the "standard" MBR supplied by the same program, FORMAT, and DOS itself have no problem with supporting the traditional way to multiboot where the MBR just loads and runs the VBR of the active partition; even in the FAT32/NTFS age the "standard MBR" is only really different in having LBA support!
https://thestarman.pcministry.com/asm/mbr/index.html#MBR

so as a matter of fact, most "DOS" installers just check if the first HDD (Int13 drive 80) has a valid MBR (I think this just means, both in general and in this context, "ending in 55AA"),
only if it doesn't it runs fdisk /mbr (you may have noticed official DOS is very first-disk centric because so are all contemporary BIOSes, even modern ones with configurable boot sequence and/or F12 menu and/or USB drive support all reorder drives so that the bootable one is 0x80)!

I suspect the reason fdisk /mbr is undocumented, is because it's an internal use option - just like most other ones (eg format /autotest) and yes, the executable part of the MBR was supposed to be written once forever 😀

Reply 11 of 14, by Golffies

User metadata
Rank Newbie
Rank
Newbie

Hi guys,
thank you very much for your many replies and helpful advice.

Ryccardo wrote on 2024-05-15, 09:41:

sys and format /s work with the VBR only

Thank you for your detailed reply, which removes any doubt and couldn't be a better conclusion to this thread on installing Windows 98 on the D: partition.

VivienM wrote on 2024-05-13, 22:31:

That's a good question, but it wouldn't surprise me if format /s was solely about setting up things inside the partition, while fdisk /mbr set up the MBR.

Your intuition was right.

VivienM wrote on 2024-05-13, 22:31:

What hardware are you running? I can tell you my 98SE project tended to freeze right around there too for as long as I had SATA devices and SATA enabled. 98SE is extremely picky and expects two IDE controllers at the 'standard' memory addresses, etc., or failing that, a well-known SCSI card of its time.

I will follow your advice, and try to boot by disabling as many controllers as possible from the BIOS (with the exception of the IDE/PATA controller, of course). Having said that, without even needing to reduce the motherboard's functionality yet, I have since discovered that Windows 98 manages to boot into safe mode. Having the kernel compatible with the Intel P43 chipset without any specific drivers, that's already a lot. I take my hat off to the Wintel world, whose multi-brand compatibility effort, stacking standards one on top of the other, makes it possible without a driver to obtain a VGA display from a graphics adapter on a PCIe bus, usable by an OS from the last century. Astonishing. A next step will be to install drivers to access the screen resolutions offered by the VESA BIOS Extensions.

Before the first reboot, by following very closely the instructions that Rudolph Loew provided for each of his patches, I managed to successfully install from DOS the driver patches for:

  • RAM above 512MB (I don't have a RAM stick of that size),
  • SATA controllers,
  • the AHCI protocol,
  • LBA48 compatibility, i.e. volumes (or drives?) greater than 137GB.

Without much effort, Windows 98 then sees FAT16 and FAT32 volumes on SSDs attached to the motherboard. The 256MB Compact Flash card operating in True IDE mode, from which Windows is booted, is of course supported by default. Windows 98 SE takes up a total of 190MB on it (see attached screenshot), making the 256MB capacity a possible choice for boot volume.

dr_st wrote on 2024-05-13, 13:20:

Why are you aiming for a dual-boot of Win98 SE and FreeDOS? What does it give you (besides extra headache) over just having Win98 SE and Win98SE DOS mode?

Well, my aim is for it not to work the first time, so that I can rediscover the logic of the 90s, rather than applying a ‘recipe’ and coming up with yet another retro-gaming machine as quickly as possible. So I'm working on a multi-drive, multi-boot machine, including a LinuxMint volume. Switching to a modern OS makes it easier to work on the Windows 98 volume from the outside. With Clonezilla (a rustic but effective utility under Linux), it's easy to keep a block-by-block copy of the Compact Flash card, and to restore it if I do something stupid. It's a better reward for the work already done, rather than reinstalling everything ‘from scratch’ in the event of a problem, as is sometimes done in Windows 98 related videos on Youtube.

elszgensa wrote on 2024-05-13, 09:20:

When it asks you which directory install to, change from the default "C:\WINDOWS" to "Other directory" then enter "D:\WINDOWS"... Yes it has the drive letter in there not just the folder name, maybe you just missed that.

Thank you very much for that clarification. You're absolutely right, I missed it. When I read that screen, I wrongly assumed that the choice only referred to one folder rather than another, and not to the drive itself.

Attachments

Reply 12 of 14, by dr_st

User metadata
Rank l33t
Rank
l33t
Golffies wrote on 2024-05-18, 11:21:

Well, my aim is for it not to work the first time, so that I can rediscover the logic of the 90s, rather than applying a ‘recipe’ and coming up with yet another retro-gaming machine as quickly as possible. So I'm working on a multi-drive, multi-boot machine, including a LinuxMint volume. Switching to a modern OS makes it easier to work on the Windows 98 volume from the outside. With Clonezilla (a rustic but effective utility under Linux), it's easy to keep a block-by-block copy of the Compact Flash card, and to restore it if I do something stupid. It's a better reward for the work already done, rather than reinstalling everything ‘from scratch’ in the event of a problem, as is sometimes done in Windows 98 related videos on Youtube.

Well, FreeDOS, Linux Mint are about as far from "the logic of the 90s" as can be, and multi-drive systems were not common either. That 'reinstall from scratch every time there is a problem' was, unfortunately, exactly what most people running Win9x in the nineties were forced to do, so I understand completely your desired to avoid that. 😎 Still don't see the need for FreeDOS, but whatever. Glad you are making progress. 😀

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

Reply 13 of 14, by VivienM

User metadata
Rank Oldbie
Rank
Oldbie
dr_st wrote on 2024-05-18, 12:04:

That 'reinstall from scratch every time there is a problem' was, unfortunately, exactly what most people running Win9x in the nineties were forced to do, so I understand completely your desired to avoid that.

Yup, and over time, most people developed tricks to make that easier, e.g. partitioning your drive so that you could blow up your OS/apps drive without having to back up your documents (to floppy!) first. As the price of drives went down, I eventually switched to a dedicated documents drive rather than a partition...

... then one day, I realized that the last time I had ever blown up the boot drive was when I went from Vista 32-bit to 64-bit, so I stopped doing that.

Looking back, it's amazing how much more temperamental the Win9x and even NT 5.x OSes were and how easy it could be to get yourself into a situation where, oops, reformat/reinstall time.

And the other thing is, people didn't have bootable Linux distributions, removable media, USB to IDE adapters, other computers, etc. In the 2010s before full-disk-encryption started to become more common, if your OS drive is unbootable and you have data you need to rescue, take the drive out, plug it into a USB to SATA/PATA adapter on another machine, and retrieve the data, then put the drive back in, format and reinstall. Or boot the unbootable machine with some Linux thing, plug in a flash drive or network connection, move data that way. But you couldn't do that in 1999, especially if you couldn't afford a Zip drive.

(This may be my equivalent of a 'when I was young I walked 20 miles in the snow to get to school', but I once had a Win95 machine that randomly decided to stop booting. I think it started after a PCI NIC was put in it for high-speed Internet. Okay, boot up in command line, rename C:\WINDOWS to C:\WINOLD, reinstall Windows. Great. But then... a few hours/days later, reinstalling the wrong thing and it won't boot again. Ran that machine with a very limited software set for like three months until the one-week school vacation in March when I spent probably... most of the week... backing up data over floppies and reformatting that machine, which did fix the problem. That's where I learned why everybody on the IBM Aptiva newsgroup partitioned their drives...)

Reply 14 of 14, by dr_st

User metadata
Rank l33t
Rank
l33t
VivienM wrote on 2024-05-18, 12:40:

Yup, and over time, most people developed tricks to make that easier, e.g. partitioning your drive so that you could blow up your OS/apps drive without having to back up your documents (to floppy!) first. As the price of drives went down, I eventually switched to a dedicated documents drive rather than a partition...

I've done so too, to an extent. My Win98SE system has an 80GB drive with a few DOS partitions, a Win98 SE installation partition, and a Win98 SE "data" partition (including games). Most games do not require reinstallation; some need registry settings to be backed up and restored.

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