VOGONS


First post, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t

I find, repair and test a LOT of hardware and I've been running into the age old problem of Windows 9x being forever changed and unable to cope every time a new video card or sound card is installed. If it isn't Windows, it's the games that are having major issues every time.

I'd like to have multiple copies of the OS installed with a boot menu that allows me to select which one I want to use.

On one hand I'm thinking of simply having multiple copies of the Windows directory, then having the system load a bare-bones 98SE installation without the GUI, then having a batch file to run WIN from a different directory depending on which one I want (one set up for Voodoo 3 cards, one for early Nvidia cards, one for ATI Rage 128 cards, etc.) But I honestly don't know if this works or not.

Alternatively, having multiple partitions would work too. I have a 20GB drive I use for testing which would be more than sufficient for several installations (*including multiple copies of games), but its been so long since I've done anything like this, and I can only find information online about dual booting DIFFERENT operating systems, not multiple versions of the same OS.

Anyone have experience doing either of these?

EDIT: Okay, I have this working. See this post!

Last edited by Ozzuneoj on 2018-02-04, 02:08. Edited 2 times in total.

Now for some blitting from the back buffer.

Reply 1 of 12, by derSammler

User metadata
Rank l33t
Rank
l33t

You could simply do that using a DOS menu. Install Windows 98 as normal, then duplicate the Windows folder, so you have e.g. WINDOWS and WINDOWS.BAK (do this within Windows). Set BootGUI=0 in msdos.sys. Now create a DOS menu with two entries: "Boot current Windows" and "Switch Windows installation". The first just runs win.com, so the actual WINDOWS folder is used, the other one does:

move WINDOWS WINDOWS.OLD
move WINDOWS.BAK WINDOWS
move WINDOWS.OLD WINDOWS.BAK
WIN.COM

Which will switch to the other installation and make that one the current and then boots it.

//edit: typo fixed...

Last edited by derSammler on 2018-02-04, 10:06. Edited 2 times in total.

Reply 2 of 12, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
derSammler wrote:
You could simply do that using a DOS menu. Install Windows 98 as normal, then duplicate the Windows folder, so you have e.g. WIN […]
Show full quote

You could simply do that using a DOS menu. Install Windows 98 as normal, then duplicate the Windows folder, so you have e.g. WINDOWS and WINDOWS.BAK (do this within Windows). Set BootGUI=0 in msdos.sys. Now create a DOS menu with two entries: "Boot current Windows" and "Switch Windows installation". The first just runs win.com, so the actual WINDOWS folder is used, the other one does:

move WINDOWS WINDOWS.OLD
move WINDOWS.BAK WINDOWS
move WINDOWS.OLD WINDOWS.BAK
WIN.COM

Which will switch to the other installation and make that one the currect and then boots it.

Won't that actually move all of the data in the Windows directories every time? Its a good idea but it would take far too long.

I'm going to test this out shortly by doing a clean, fresh install on my tester drive. I'll run it using a very bare system (S3 Trio, no other cards), install the USB storage driver, install some games and programs, then set bootgui=0. Then I'll boot from a different drive (so no files will be in use), make copies of the Windows directory on the tester drive and then try running windows from the different drives. We'll see if it works. 😉

Now for some blitting from the back buffer.

Reply 5 of 12, by bjwil1991

User metadata
Rank l33t
Rank
l33t

Huh. Why didn't I think of that before? Would the Program Files (or progra~1 in MS-DOS) and My Documents (or mydocu~1 in MS-DOS) stay the same? I'm thinking about having different Windows 98SE installations per motherboard and drivers (Socket 370, Socket 754) per device, such as the sound card, video card, chipsets, and so on. Plus, I'm planning on booting off of a SATA to PCI controller card for Windows 98SE. Should I install the SATA PCI card drivers in Windows 98SE first, and then clone the HDD to a SATA drive? I'm thinking about using a 120GB SATA SSD. Amazing project, though.

Discord: https://discord.gg/U5dJw7x
Systems from the Compaq Portable 1 to Ryzen 9 5950X
Twitch: https://twitch.tv/retropcuser

Reply 6 of 12, by cyclone3d

User metadata
Rank l33t++
Rank
l33t++
bjwil1991 wrote:

Huh. Why didn't I think of that before? Would the Program Files (or progra~1 in MS-DOS) and My Documents (or mydocu~1 in MS-DOS) stay the same? I'm thinking about having different Windows 98SE installations per motherboard and drivers (Socket 370, Socket 754) per device, such as the sound card, video card, chipsets, and so on. Plus, I'm planning on booting off of a SATA to PCI controller card for Windows 98SE. Should I install the SATA PCI card drivers in Windows 98SE first, and then clone the HDD to a SATA drive? I'm thinking about using a 120GB SATA SSD. Amazing project, though.

You should be able to install on the drive hooked up to the SATA PCI controller. That's what I have done in the past.

Yamaha modified setupds and drivers
Yamaha XG repository
YMF7x4 Guide
Aopen AW744L II SB-LINK

Reply 8 of 12, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
derSammler wrote:

No, MOVE on a directory is just RENAME. Ask MS why it's MOVE and not RENAME. 😉

Ah, of course. I forgot about that.

Thanks, this will probably cause less problems than worrying about different games or applications looking in the wrong directories for things. I'll be trying it later tonight. 😀

Now for some blitting from the back buffer.

Reply 9 of 12, by derSammler

User metadata
Rank l33t
Rank
l33t
bjwil1991 wrote:

Huh. Why didn't I think of that before? Would the Program Files (or progra~1 in MS-DOS) and My Documents (or mydocu~1 in MS-DOS) stay the same?

Yes, just make sure you always do the initial copy of those folders in Windows, so you don't kill the long file names.

Reply 10 of 12, by Vipersan

User metadata
Rank Oldbie
Rank
Oldbie

A project I had fun with a while back ..to build a tower with multiple Operating systems from win 3.1 to XP ..
3 O/S per hard drive ..(ie 3 x primary partitions per drive) and employing an IDE switch ..which I purchased from the US broken.
So I guess similar in many ways to the original topic.
-------------------------------
copied from my post on Amibay
-------------------------------
Chameleon is a project I started last year ..
The object of the excercise was to create a tower with 1GB of ram which would run multiple legacy Operating systems..
I wanted 3 OS to each IDE hard drive ..all windows ...and this proved dificult though not impossible ..
Boot sector restrictions were the main problem ...and avoiding each installation trying to overwrite and upgrade the resident OS .
I finally got it built ..
Win 3.1 win95 Win98SE WinME Win2000 and XP
There is also a CF slot at the front ..on which Linux Mint15 currently resides..
It has a floppy drive ..
A CD/DVD drive
A DDS4 DAT tape drive
..and another drive some of you may know of ..
The drive that never was ..as CD became the norm..
A PD/CD drive ..
This drive takes a CD like media (rewriteable) which is in its own case and is not removeable ..
Preformatted sectors ...and the data appears to last for decades if not forever without decay..
I recently read data stored on a disc in the 80s ..with no sign of degradation..
incredible !!!
X Card by Sigma designs ...and a commodore tape drive hooked to one of the ports for TAP file transfer.
It also sports an Adapted SCSI card ..and is home to a 2gb SCSI hard drive
I call it Chameleon ..because it can change as needed ..
The tricky bit was finding an IDE switch ..which you can see in the photo ..
I had to buy this from the USA ...and was not working ..and had to be fixed before I could use it..
This switch allows push button selection between 2 hard drives ..and the Compact Flash interface/reader ..
Obviously this can't perform a 'HOT' swap and requires booting down before a different HD/OS is initialised ..
--------------------------------------
rgds
VS

Attachments

  • attachment.jpg
    Filename
    attachment.jpg
    File size
    103.34 KiB
    Views
    525 views
    File license
    Fair use/fair dealing exception

Reply 11 of 12, by Ozzuneoj

User metadata
Rank l33t
Rank
l33t
derSammler wrote:
You could simply do that using a DOS menu. Install Windows 98 as normal, then duplicate the Windows folder, so you have e.g. WIN […]
Show full quote

You could simply do that using a DOS menu. Install Windows 98 as normal, then duplicate the Windows folder, so you have e.g. WINDOWS and WINDOWS.BAK (do this within Windows). Set BootGUI=0 in msdos.sys. Now create a DOS menu with two entries: "Boot current Windows" and "Switch Windows installation". The first just runs win.com, so the actual WINDOWS folder is used, the other one does:

move WINDOWS WINDOWS.OLD
move WINDOWS.BAK WINDOWS
move WINDOWS.OLD WINDOWS.BAK
WIN.COM

Which will switch to the other installation and make that one the currect and then boots it.

I can confirm, this method works. 😀

I know I typed a post about this earlier, but apparently I forgot to actually post it? Anyway, here is the process I went through:

On my tester system (Wintac W6BXA 440BX, P3 450, 20GB Maxtor D740X, 256MB PC-100, S3 Trio64V2/DX) I backed up a few things from the hard drive to a flash drive, rebooted from a 98SE boot floppy, formatted the 20GB drive to ensure a 100% fresh start, used an alternative Windows install I have on a CF card to copy the win98 folder to the 20GB drive (could have done it from a cdrom too), shut down, disconnected all drives except my 20GB drive and my floppy, booted from the floppy, ran setup from the c:\win98 folder (setup /is to skip scandisk check which often has problems with larger drives).

After Windows was installed, I installed the USB storage driver and installed a few games and scads of demos from 1997-1999 PC Gamer disks I had laying around. The idea was to make a mostly hardware-agnostic but packed-to-the-gills Windows 98SE video\sound card testing installation. Once I got it loaded with games, I edited msdos.sys to boot straight to the command prompt (under options enter: bootgui=0 and logo=0). Now it was time to make copies of the Windows folder. Using DOS would not for this work due to the long file names, lots of hidden, read only and system files, many sub-directories etc. I could have done it by booting from my CF card on the tester system but I thought it'd been nice to also be able to copy large amounts of drivers and other things from my main system. So, I disconnected the drive, attached it to my main PC with a USB>IDE adapter and proceeded to make several copies of the WINDOWS folder (making sure that hidden and system files were shown). I named the copies as follows:

WIN_BACK (the original untouched Windows directory)
WIN_ORIG (the first copy of the original, ready to be used with my S3 Trio for testing things that don't need drivers, like disk drives)
WIN_V1 (for testing Voodoo Graphics cards)
WIN_V2 (for Voodoo 2)
WIN_V3 (for Voodoo 3)
WIN_NV (for Nvidia cards... though I may have more than one of these eventually)
... and I can easily make more by simply copying the WIN_BACK folder from within Windows (on the tester) and renaming it (WIN_ATI for example)

For the first boot I renamed WIN_ORIG to Windows. This would have also been a good time add the path command to the autoexec (I ended up having to mess with this under DOS the first time). In autoexec.bat I entered: path=C:\windows;C:\windows\command;C:\WIN_BACK\command

Without "c:\WIN_BACK\command" included, it would no longer be possible to MOVE (rename) a directory to Windows once the existing Windows folder was renamed (crazy software paradox thing) because the MOVE command would no longer be recognized (it exists in the WINDOWS\COMMAND directory).

First boot I typed: "MOVE WINDOWS WIN_ORIG" and it was done in seconds. Then I typed "MOVE WIN_V3 WINDOWS" and it was done in seconds. I typed "WIN" and Windows was loading and I was on my way! 😀

It actually works! It works perfectly in fact. Its super fast to MOVE the folder from one "name" to another, and I find it simple enough to just do it manually for now without messing with batch files. Less room for error doing this as well. I will probably put identifiers into each windows directory (blank file called "ZWIN_V3" for example, so it'd appear at the end of a dir listing) just in case I get sidetracked for a while and forget which folder is currently named Windows.

My biggest blunder that cost me many many hours of work ended up being a really stupid video driver\setting issue. It could have been that I should have set my desktop to a lower resolution\bit depth (on the Trio64) before shutting down and installing my Voodoo 3 card. When loading up the WIN_V3 installation the first time, I couldn't get ANY games to work after installing drivers with 3 different Voodoo 3 cards. I installed drivers 5 times at least, deleted all traces of drivers manually from the registry and from Windows directories, reinstalled some games, installed DirectX 7.0a (rather than 6.1a)... nothing worked. Games would just crash when trying to switch from 2D to 3D modes, or would freeze or give me a blank screen. Some times I had strange issues that seemed related to my monitor not exposing the correct resolutions so I switched MONITORS and it made no difference. I thought maybe my motherboard was dying, or my power supply... I tried a different 440BX board I had, with no change. I deleted that entire Windows directory and started fresh with a new copy that was all set up and ready to go (which felt really awesome btw) and it STILL did it after installing drivers. After messing around a bit I changed the desktop resolution to 1024x768 24bit (from the standard 800x600 16bit) and... everything worked great after that. 🤣 I don't know what the deal was with this, but I'm going to write this one down to hopefully save myself some time in the future. I'm thinking that maybe some leftover from the S3 Trio or some awful quirk of 98SE was interfering until I changed the desktop resolution and bit depth HIGHER than any of the games were trying to run. I had tried 640x480 16bit already and it made no difference so I assumed this wasn't the problem. Oh well... 😵

I'm tempted to actually purposefully try this again to see if I can repeat this failure and the fix... but after all the hours I spent diagnosing it, I'm sick of looking at the same games crashing. 😵

Now for some blitting from the back buffer.

Reply 12 of 12, by lolo799

User metadata
Rank Oldbie
Rank
Oldbie

You could have used the hardware profile function from the system properties too, I use it on a 2.5" hdd I put in 2 different laptops, at boot it asks you for the profile you want to use.

PCMCIA Sound, Storage & Graphics