VOGONS


SSD, Windows 98, Worth it?

Topic actions

First post, by GiSWiG

User metadata
Rank Member
Rank
Member

Life has been quite busy and I've been away from the old hardware world for a while but I have a break to at least get an older DOS/Win98 system going.

I was given a 120GB SSD. I have a Dell version of a Promise SATA RAID card. I have tested it with a SATA HDD and even though it sets up like a RAID drive, it still reads as a FAT32 drive when I plug it in to a newer PC using a USB adapter. The RAID card with the SATA HDD works fine in Windows 98 on old P3 boards.

I'm still on the fence about what PC to put this drive in or even my Wii U. Sound wise, the HDD is quite so noise is not a concern. Game performance wise, there shouldn't be much performance boost but load times would be better.

My options to put it in are:
440BX ASUS P2B-F
Via Apollo 133A/694x ASUS P3V4X
* Important thing is that it is not the plagued 133 chipset
ASRock K8NF3-VSTA via on-board SATA (high performance Win98)
ext. Wii U drive

Thanks

Steamer/GOG-er: ASUS Crosshair IV Formula | AMD Phenom II X6 1100T 3.7GHz all cores | Mushkin 8GB DDR3 RAM 1333 w/ 6-6-6-18 1T | Dual AMD Radeon HD 6850s in CrossFireX | X-Fi Titanium | Dual-boot Windows XP and Vista

Reply 1 of 78, by GiSWiG

User metadata
Rank Member
Rank
Member

I've decided: high performance Win98. It makes sense for quickly loading all those later Win98 games.

Steamer/GOG-er: ASUS Crosshair IV Formula | AMD Phenom II X6 1100T 3.7GHz all cores | Mushkin 8GB DDR3 RAM 1333 w/ 6-6-6-18 1T | Dual AMD Radeon HD 6850s in CrossFireX | X-Fi Titanium | Dual-boot Windows XP and Vista

Reply 4 of 78, by tpowell.ca

User metadata
Rank Member
Rank
Member

"Conservative Swapfile Usage" is your friend here.
If you can, make sure to give Win98 asa close to 512MB of RAM as possible and the line above should limit the amount of swapping done by Windows9x's memory management.

  • Merlin: MS-4144, AMD5x86-160, 32MB, 16GB CF, ZIP100, ESS688, GUS, S3 VirgeGX 2MB, HardMPU
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, GUS 16MB, Voodoo3-3k
    Einstein: P8P400, P4-3GHz HT, 1.5GB, Quadro4 980XGL, Live!

Reply 6 of 78, by shamino

User metadata
Rank Oldbie
Rank
Oldbie

I think you could TRIM it in another machine, yes. That process should just look at the filesystem and TRIM all unallocated sectors, so any OS that understands FAT32 should be able to do that.

The biggest thing that leads to massively increased wear (and slowdown) on an SSD is "write amplification". This is caused by the drive's internal controller having to shuffle data around in the Flash cells in order to accommodate the next write operation without messing up existing data. All that shuffling multiplies the number of writes that are performed far beyond what is apparent to the user. It can get into the 20x and higher range.

This happens as the drive approaches being "full". I put that in quotes because the firmware doesn't understand what logical addresses (LBAs) of the disk are actually being used. Once an LBA has been written to, the drive will believe forever that LBA refers to valid data. Win98's lack of TRIM means it will never be told that LBA is no longer in use. So it will keep preserving it, even after Windows' filesystem has forgotten about it.

Over time, you can approach the point where nearly every LBA on the disk has been the target of some write operation. The drive will dutifully try to preserve all of it, and as the remaining number of unused LBAs gets very small, the drive's perception of it's free space also gets small. Write amplification becomes significant. Performance falls off and wear accelerates.
In this situation, Windows may report the drive having a lot of "free" space, but the drive doesn't understand that. If an address has been used once, the drive still thinks it's important.

To prevent that, don't let every LBA get used. You can do that with partitioning:

First use some means to inform the drive that every LBA is free, so that it will stop maintaining every piece of data that it currently thinks is important.
There are various ways of effectively TRIMming the whole drive. Some ways are more elegant, but a simple and universal way to accomplish this is to do a "secure erase". The downside of "secure erase" is that it doesn't just TRIM the drive, it actually does an exhaustive overwrite of every cell, which shouldn't be necessary for our purposes.

Once the drive is completely TRIMmed, then set up your partition(s). Don't allocate the partitions under Win98. Instead, use a modern version of gParted or similar and enable the option to align the partitions on 1MB boundaries. This resolves the partition alignment issue that can otherwise occur when using old versions of Windows.
It's fine to use Win98 to do the formatting, just don't use it to make the partitions.

Don't partition the entire drive. If you leave say 25% of the drive unpartitioned, this means that Win98 will never direct a single write operation to any of those LBAs. This means that no matter what, the drive will never reach the point of thinking it has less than 25% free space. At 25% free space, write amplification shouldn't be much of a problem.

By leaving unpartitioned space, you are basically tricking the drive into having more reserved Flash storage than the manufacturer originally provided. This is also one of the differences between consumer and "enterprise" SSDs. The latter have more reserved Flash storage so that they are less susceptible to this issue, and because they are sometimes used in applications where TRIM isn't as feasible. This trick makes the drive harder to beat down.

I recall some article(s) that studied this at the big review sites (Anandtech or similar). This was an issue when SSDs were new and TRIM wasn't yet supported. This is really the same situation we're in if we use an SSD on old OSes like Win98, so for us those articles are still relevant.

Reply 7 of 78, by krcroft

User metadata
Rank Member
Rank
Member

You could also dual boot to a tiny modern Linux distro to apply trim.
But the lack of trim doesn't wear out your drive faster than having it. The lack of trim simply means that the garbage collection phase happens on write events, as opposed to periodically. So writes might take a fraction more time.

Reply 8 of 78, by Jo22

User metadata
Rank l33t
Rank
l33t

"Should the pagefile be placed on SSDs?

Yes. Most pagefile operations are small random reads or larger sequential writes, both of which are types of operations that SSDs handle well.

In looking at telemetry data from thousands of traces and focusing on pagefile reads and writes, we find that


Pagefile.sys reads outnumber pagefile.sys writes by about 40 to 1,

Pagefile.sys read sizes are typically quite small, with 67% less than or equal to 4 KB, and 88% less than 16 KB.

Pagefile.sys writes are relatively large, with 62% greater than or equal to 128 KB and 45% being exactly 1 MB in size.


In fact, given typical pagefile reference patterns and the favorable performance characteristics SSDs have on those patterns,
there are few files better than the pagefile to place on an SSD."

Source: https://blogs.msdn.microsoft.com/e7/2009/05/0 … d-state-drives/

TRIM.

At home. we're running an SSD for three yaears now in an old PC with Windows 7.
Without TRIM enabled. So far, only the mainboard's SATA controller broke once (yup, it was the mainboard; same behavior with HDDs, too).
So we had the replace the mainboard by an identical replacment part (to keep one or two hardware-dongled pograms).

Why no TRIM ? Since the system uses an old chipset (nforce4) that is not compatible with
Windows Seven's built-in MS-AHCI or MS-IDE drivers.

As you know, not all 3rd-party SATA´drivers can pass-through the Win7 TRIM command. 😉

Edit: Edited. Quote reduced in size.

Last edited by Jo22 on 2018-03-19, 18:25. Edited 2 times in total.

"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 9 of 78, by swaaye

User metadata
Rank Moderator
Rank
Moderator

You're unlikely to do all that much writing and deletion with old games and 98. Swap file writes are not something to care about either. And even if you somehow do manage to write tens of terabytes and expend your SSD, they are pretty cheap these days. Terabytes - a storage concept that was unimaginable to me in 1999.

The problem with using a SSD is you need to use SATA, meaning it complicates the whole setup with adapters, PCI cards, or modern chipsets that can be flakey with 98. Sometimes just running a PATA HDD on PIIX4E is quite ok, especially when even a 2003 80GB is super future speedy compared to a contemporary 1998-99 HDD.

Reply 10 of 78, by Koltoroc

User metadata
Rank Member
Rank
Member
swaaye wrote:

You're unlikely to all that much writing and deletion with old games and 98. Swap file writes are not something to care about either. And even if you somehow do manage to write tens of terabytes and expend your SSD, they are pretty cheap these days.

The problem with using a SSD is you need to use SATA, meaning it complicates the whole setup with adapters, PCI cards, or modern chipsets that can be flakey with 98. Sometimes just running a PATA HDD on PIIX4E is quite ok, especially when even a 2003 80GB is super future speedy compared to a contemporary 1998-99 HDD.

There Are IDE SSDs they are a bit more expensive, as they are industrial stuff, but they do exist. Also, SSDs do work an IDE to SATA converter. Any loss of performance is marginal at best since even if you use SATA, the PCI bandwidth will be the limiting factor, even before SATA itself becomes one.

Reply 11 of 78, by swaaye

User metadata
Rank Moderator
Rank
Moderator
Koltoroc wrote:

There Are IDE SSDs they are a bit more expensive, as they are industrial stuff, but they do exist. Also, SSDs do work an IDE to SATA converter. Any loss of performance is marginal at best since even if you use SATA, the PCI bandwidth will be the limiting factor, even before SATA itself becomes one.

I use a SATA PATA adapter occasionally, and have tried them on several motherboards from 440BX up to nForce3. There are a few types of them. The thing is they aren't always compatible with a board or drive for whatever reason. I even set up a original XBox with one. I do like these adapters more than PCI SATA cards though because they don't require drivers. The fewer 3rd party VXDs you need the happier you will be!

I don't think I remember anyone here going for one of the IDE industrial drives but sure that might be an option.

Occasionally we get people who want to play with CF cards. Mostly on older PCs though.

Reply 12 of 78, by cyclone3d

User metadata
Rank l33t
Rank
l33t
tegrady wrote:

You may have an issue using an SSD with Windows 98. Windows 98 does not support TRIM functions, so your SSD may wear out fairly quickly, or at least that is what I have heard.

Most, if not all, of the newer SSDs, and even a lot of the now considered old SSDs have built in garbage collection/TRIM.

Yamaha YMF modified setupds and drivers
Yamaha XG resource repository - updated November 27, 2018
Yamaha YMF7x4 Guide
AW744L II - YMF744 - AOpen Cobra Sound Card - Install SB-Link Header
Epstein didn't kill himself

Reply 13 of 78, by shamino

User metadata
Rank Oldbie
Rank
Oldbie

I just want to emphasize that TRIM and garbage collection are different things. All SSDs have garbage collection. The process of garbage collection is where the write amplification issue occurs. When the SSD thinks that nearly all of it's Flash cells hold valid data, it doesn't see much garbage, so it becomes more difficult for garbage collection to rearrange data for the next write. This leads to a thrashing effect, similar to defragmenting a nearly full hard disk.

The only garbage the SSD can readily identify by itself is the garbage produced by it's own rearrangement of data on the internal Flash cells. Garbage produced by "deletion" of things under the OS can only be identified if the OS conveys the info.
TRIM is the mechanism for the OS to do that. In the absence of TRIM, old "deleted" data can eventually overwhelm the drive because it can't identify this as garbage without a tip from the OS.

TRIM cannot be done internally(*), because only the OS should be in charge of understanding it's own filesystem. The SSD just sees logical address numbers and fixed size "sectors" of data that it associates with each. It's up to the OS to tell the drive that LBA 1234555 no longer refers to valid data, and thus it's associated storage can be garbage collected.

TRIM is what keeps the SSD from suffering a severe misconception of how "full" it actually is. This frees up the garbage collection to work efficiently and not Thrash the Flash trying to maintain junk data that the OS doesn't care about anymore.

(*) = I just noticed in a wikipedia article that apparently Samsung tried something crazy and did implement a completely internal TRIM function on some of their drives, by assuming that the drive will contain an NTFS filesystem. This sounds like a disaster waiting to happen. It should be (and in normal practice, it is) up to the OS to figure out where the "free" space is on it's own filesystem and convey that to the SSD.

--
In the absence of TRIM, some additional "overprovisioning" mitigates the issue. This can be done by leaving a range of logical addresses unpartitioned (so the SSD never gets an opportunity to think they point to valid data). However, in a system that doesn't churn over a lot of data, you may go for years/forever without ever experiencing an appreciable effect.
Even so, on such a lightly loaded system, you also probably don't really need 100% of the drive's advertised capacity, so I still advocate leaving some of it unpartitioned as a best practice with TRIM-less OSes.

Reply 14 of 78, by squiggly

User metadata
Rank Member
Rank
Member

I had major problems on Win98 on SSD, using it in legacy SATA mode (so to Win98 it still looks like an old IDE hdd). Basically when Win98 bluescreens (as it does very often), it would destroy not only the Win98 filesystem/boot sector, but also that on another partition with WinXP. I could not boot into either of them. Using a SATA spinning disk with a SATA/IDE adapter into an old IDE port, Win98 crashes do not mess up the HDD. Never was able to figure it out, I now use spinning disks in drive caddies and SATA/IDE adapters.

Reply 15 of 78, by bjwil1991

User metadata
Rank l33t
Rank
l33t

I have a PCI SATA controller (VIA VT6421A) that uses AHCI, and supported both MS-DOS and Windows XP without issues on a 120GB HDD. It really depends on the controller card (PCI) or onboard chipset. When SATA was released,there was only 1 mode: IDE drive mode. It wasn't until later on that AHCI was implemented (2004-2005).

Discord: https://discord.gg/U5dJw7x
Systems from C64 to FX-6300.

Reply 16 of 78, by swaaye

User metadata
Rank Moderator
Rank
Moderator

I think the only benefits that AHCI brings are hot plugging and NCQ. Not really hugely beneficial. NCQ can bring big speed gains with SSDs, but it's not really going to be applicable to old hardware with a processing bottleneck.

Trim can work with IDE mode. But you still need Windows 7 or newer.

Reply 17 of 78, by Jo22

User metadata
Rank l33t
Rank
l33t
swaaye wrote:

Trim can work with IDE mode. But you still need Windows 7 or newer.

I second that. The MS-IDE driver (pciide.sys) supports TRIM, too.

"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 18 of 78, by InjecTioN

User metadata
Rank Newbie
Rank
Newbie

I'd like to contribute to this topic, for I also experienced some issues with my 32GB SSD under Windows 98, which was slowing down my Tualatin 1400 by the day it seemed.

The ForceTrim.exe application creates large files in all of the empty spaces of the filesystem and deletes them afterwards. This acts about the same way the native TRIM command acts.

Filename
ForceTrim.zip
File size
223.89 KiB
Downloads
20 downloads
File comment
Author: BJameson
File license
Public domain
1fxp3m-2.png
Filename
1fxp3m-2.png
File size
7.36 KiB
Views
537 views
File license
Public domain

NOTE: While running it, Windows might tell you to clean up your drive, as the free space will be consumed rapidly. This is also a reason to only execute this executable while the PC is idle.

Sources:

Windows 98 works quite a bit faster after running it. 😀

If someone has the source (ForceTrimSource.zip) and/or batch file (trim-batchfile.zip) available or is able to download them elsewhere, please let me know. I'll add them to this forum post if you DM me. 😀

I hope this helps. 😀

Reply 19 of 78, by konc

User metadata
Rank Oldbie
Rank
Oldbie
InjecTioN wrote on 2020-01-15, 14:16:

The ForceTrim.exe application creates large files in all of the empty spaces of the filesystem and deletes them afterwards. This acts about the same way the native TRIM command acts.

I'm pretty sure this doesn't do what you think it does, anybody please do correct me if I'm wrong. From what I understand it just triggers trim by allocating and then freeing up space. Which means it needs OS trim capability already, it doesn't magically do it. It's intended for win7 to manually trigger the trim in case it's not happening on its own for some reason. It's even written in one of the links you gave:

"Although the TRIM command should work automatically with Windows 7, it sometimes can be a bit “lazy”. For those of you who have Windows 7 with SSD and feel the drive could use some freshen-up, check out a little app called ForceTrim. This tool is not supported with RAID. ForceTrim will force the drive to go over all free flash cells and use the TRIM command on every cell that is marked for deletion."

Also from the program itself:

Capture.PNG
Filename
Capture.PNG
File size
6.87 KiB
Views
506 views
File license
Public domain
InjecTioN wrote on 2020-01-15, 14:16:

Windows 98 works quite a bit faster after running it. 😀

hey, placebos are proven to help anyway 😉