VOGONS


First post, by SodaSuccubus

User metadata
Rank Member
Rank
Member

Hey vogons! Sooo sorry for the long post!

So iv had some mysterious issues plague my Win98/95 rigs. I generally like to use CF cards as a easy convenient way to move files but it seems after enough time these cards like to suspiciously all crap out, all the same way.

They just eventually refuse to boot into windows and keyboard-restarting the computer will show that the bios doesn't even detect the card anymore.
Of course, when i restart the computer proper via the PSU the bios will re-detect the CF. Only for windows to still not wanna boot.

I can't even Fdisk it with a boot disk. It'l just back out that there's been an error with drive c: This behaviour keeps up untill i re-format the card on a modern computer, to wich it will seemingly work normal on my rigs until it randomly decides to crap out again (usually sometime after a windows install)

Im at a huge loss to how this keeps happening. Its done it on my socket 7 rig, and my 440Bx slot 1. Iv tried replacing the CF-IDE converter, the cable. Only solution iv found so far is to buy a new CF card. These arn't cheepo brands eather. Iv been using SanDisk Extreme Pro cards out of the hope they last long.

Is Windows98 gaming really this killer on the CF cards life span? I am a bit of serial-windows-re-installer, constantly re-formating and re installing windows with diffrent hardware. idk, i might have done it 4-5 times on this card since iv bought it so maybe that has to do with it?

Im at a total loss, and down a few $$ in CF cards that just refuse to cooperate anymore in retro machines. Any ideas?

Reply 1 of 21, by tpowell.ca

User metadata
Rank Member
Rank
Member

Maybe its a problem with the on-board IDE controller, or how windows 98 is using the swapfile.

How much RAM do you have?

  • Merlin: MS-4144, AMD5x86-160 32MB, 16GB CF, ZIP100, Orpheus, GUS, S3 VirgeGX 2MB
    Tesla: GA-6BXC, VIA C3 Ezra-T, 256MB, 120GB SATA, YMF744, GUSpnp, Quadro2
    Newton: K6XV3+/66, AMD K6-III+500, 256MB, 32GB SSD, AWE32, Voodoo3

Reply 2 of 21, by SodaSuccubus

User metadata
Rank Member
Rank
Member
tpowell.ca wrote on 2020-03-09, 15:35:

Maybe its a problem with the on-board IDE controller, or how windows 98 is using the swapfile.

How much RAM do you have?

256Mb. Although i have another stick of 128 available too.I haven't messed around with conservative swap use or doing ramdrives for swap.

Reply 4 of 21, by douglar

User metadata
Rank Oldbie
Rank
Oldbie

The behavior sort of sounds like the CF exceeded it's life span, but it never hurts to break out the multi-meter and check your power supply too.

You might be able to ask the drive what happened to it. Try plugging the dead drive into a working system and see if you can get any info out of the drive with a S.M.A.R.T. viewer:
[*]http://panterasoft.com/index.html
[*]http://www.almico.com/speedfan.php
[*]http://www.astra32.com/screens.htm

Or you can see if your manufacture puts out something specific for your device:
[*] https://product.tdk.com/info/en/products/flas … e/tdksmart.html
[*] https://www.hdsentinel.com/how_to_monitor_sd_ … alth_status.php

If it is wear that is killing your drives:
[*]As other people said, shut off the swap file if you have the ram for it
[*]If your drive supports wear leveling, consider leaving 1/3 the drive unpartitioned. Deleting files doesn't really free up CF space in windows 98 because there is no trim support. Keeping plenty of free blocks on the CF helps it spread out writes over a larger area, prolonging the life of the device.
[*]If your drive supports wear leveling and you have run it for a long time with one big partition, consider doing an ATA secure erase to release allocated blocks. https://tinyapps.org/docs/wipe_drives_hdparm.html

Last edited by Stiletto on 2020-03-11, 05:12. Edited 1 time in total.

Reply 5 of 21, by SodaSuccubus

User metadata
Rank Member
Rank
Member

Thanks for the advice so far guys, i managed to dig up another CF that isn't total bust from the looks of it. Re-installing windows now and will try some of these swap tricks.

derSammler wrote on 2020-03-09, 17:03:

Swapfile. Either turn it of or put it onto a second mechanical HDD.

Yeah, ideally i'd like to not deal with the swapfile at all. But iv heard that makes windows go a bit crazy.
Whats the general amount of ram required to even do that anyway? I only have 384mb right now on hand so maybe a ram-drive for the swap would be better? I wouldn't know how to do ram drives in win98.

Actually, ideal-ideally it sounds like i'd be better moving off sensitive CF cards in general, as i do plan on using this rig quiet often for some good gaming. Maybe i'll try SD or SATA

Last edited by SodaSuccubus on 2020-03-09, 18:30. Edited 2 times in total.

Reply 7 of 21, by SodaSuccubus

User metadata
Rank Member
Rank
Member
derSammler wrote on 2020-03-09, 18:28:

I turn off the swapfile in Win98 starting with 128 MB of RAM for socket 7 systems and starting with 256 MB for Slot 1 or S370 systems < 1 GHz.

SD cards are even worse (and slow!).

I'll give that a go here then. Pardon my dummyness, but that'd be disabling virtual..memory..i think? Correct?

Im still figuring out my Win98-fu :p

Reply 8 of 21, by SirNickity

User metadata
Rank Oldbie
Rank
Oldbie

If formatting on another PC "revives" the CF card, I'm not sure that's wear. For what it's worth, I used Compact Flash cards in my Linux appliances for years. The #1 problem I had with them was poor-to-nonexistent DMA support. The Linux kernel would throw errors on I/O like mad until I added the card to the DMA blacklist. PIO worked fine. Maybe set your BIOS to force PIO and see if that helps.

Reply 9 of 21, by derSammler

User metadata
Rank l33t
Rank
l33t
SodaSuccubus wrote on 2020-03-09, 18:34:

Pardon my dummyness, but that'd be disabling virtual..memory..i think? Correct?

Yes, that's correct.

SirNickity wrote on 2020-03-09, 18:52:

If formatting on another PC "revives" the CF card, I'm not sure that's wear.

As long as the controller is not damaged, you can always "revive" a dead card. It just won't hold any data for more than a few hours - if at all.

Reply 10 of 21, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Im at a total loss, and down a few $$ in CF cards that just refuse to cooperate anymore in retro machines. Any ideas?

Hi, any chance the CF cards were no-name models ? If so, they could be fake, ie. they have less capacity than they claim to have. And when you exceed the real capacity, they probably go nuts each time (some fake USB pen drives behave like that, too).
Also, you could try an industrial CF card for the Windows 98 C: "hard disk" and a bigger, cheaper one for drive D: where you installl applications and games onto (or better E: since D: is used for CD-ROM traditionally).

"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 11 of 21, by SodaSuccubus

User metadata
Rank Member
Rank
Member
Jo22 wrote on 2020-03-09, 21:35:

Im at a total loss, and down a few $$ in CF cards that just refuse to cooperate anymore in retro machines. Any ideas?

Hi, any chance the CF cards were no-name models ? If so, they could be fake, ie. they have less capacity than they claim to have. And when you exceed the real capacity, they probably go nuts each time (some fake USB pen drives behave like that, too).
Also, you could try an industrial CF card for the Windows 98 C: "hard disk" and a bigger, cheaper one for drive D: where you installl applications and games onto (or better E: since D: is used for CD-ROM traditionally).

These are brand CF cards. SanDisk Extreme Pro. I use to buy regular Sandisks but those would die just from looking at them funny. I buy off Amazon so, idk, maybe theyre re-badged fakes. I'v had alot of really good experiences with these ExtremePro cards, and its usually not for a good while and a few many windows re-installs before they start crapping out.

Windows 98 has finished installing. Gonna try some games and re-boots and see how that goes with the swap disabled.
In the meantime, it seems i have an issue with a second voodoo 2 card that you can read up on the fourms Video section.

This build sure is a frustrating, yet fun journey ;-;

EDIT: It crapped out in the middle of installing RTCW.....

Reply 12 of 21, by Horun

User metadata
Rank l33t++
Rank
l33t++

Good CF cards can only handle a max of 1,000,000 cycles but typically start to fail around 500k. As derSammler and douglar mentioned, you need to limit how often windows is writing to them or else the typical 3 year life span (for a camera as example) will be cut super short. Windows 9x and above updates logs, updates ini's, shortcuts in recent folder and restore plus lots of items into the swap file. Have read that a fully loaded Win system can write as many as 1000 times in just a simple boot up, check your mail and shut down.
If you were running DOS and Win3 the CF would last a very long time because there is little to none of that.

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 13 of 21, by SodaSuccubus

User metadata
Rank Member
Rank
Member
Horun wrote on 2020-03-09, 22:57:

Good CF cards can only handle a max of 1,000,000 cycles but typically start to fail around 500k. As derSammler and douglar mentioned, you need to limit how often windows is writing to them or else the typical 3 year life span (for a camera as example) will be cut super short. Windows 9x and above updates logs, updates ini's, shortcuts in recent folder and restore plus lots of items into the swap file. Have read that a fully loaded Win system can write as many as 1000 times in just a simple boot up, check your mail and shut down.
If you were running DOS and Win3 the CF would last a very long time because there is little to none of that.

Well. Disabling swap certanly didn't work out 😁 Caused a whole bunch of oddities like choppy sound and strange performance issues
So now im thinking back to the ram drive idea. 384mbs free, surely i could spare 128 and put swap out that?

How would i go about doing ramdrives in win98 for swap.

Reply 14 of 21, by Horun

User metadata
Rank l33t++
Rank
l33t++

You create a ram drive in the config.sys file like this: device=C:\windows\ramdrive.sys 20000 /E
A better driver is XMSDSK.EXE (xmsdsk 51200 R: /t /y (This creates 50Mb Ram Drive as R:) because you can assign a drive letter and force it to use the upper part of your ram.
See attached file. Then just set the swap file to that drive letter and limit it to maybe 85% of the ramdisk size.

Attachments

Last edited by Horun on 2020-03-09, 23:31. Edited 1 time in total.

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 15 of 21, by douglar

User metadata
Rank Oldbie
Rank
Oldbie

If you don't want to "go full ram drive", consider this statement of the problem: http://smallvoid.com/article/win9x-conservative.html

Windows 98 introduced a new feature called PageFile_Call_Async_Manager. It will detect when there is little system activity, and then start to unload pages from the physical memory (RAM) and write them to the swap file on the hard disk. This can be useful if having limited memory, as this feature will increase the chance that there is RAM enough for the applications running.

So windows 98 introduced a feature where it writes out sections of allocated but unused memory to the page file when the computer is not busy so that it has a head start on the paging game in case it needs to free up space later.

Therefore if having enough RAM to satisfy the normal operation (64 MByte+), then it can be a good idea to disable the automatic unloading of memory pages to disk and instead activate the old conversative swap file usage. This is done by editing the System.ini file and adding the following line to the [386enh] section:
[386Enh]
ConservativeSwapfileUsage = 1

So if you set that, it should reduce much of the unnecessary memory paging. Some people have interpreted this feature differently, but I think this is the correct interpretation. Please feel free to disagree.

If you have an unattended install script, you can do this for your builds:

[install] UpdateInis=Edit.Files [Edit.Files] %10%\system.ini,386Enh,,"ConservativeSwapfileUsage=1" […]
Show full quote

[install]
UpdateInis=Edit.Files
[Edit.Files]
%10%\system.ini,386Enh,,"ConservativeSwapfileUsage=1"

You could also do something to relocate the page file if you are doing the ram drive.

Last edited by douglar on 2020-03-09, 23:51. Edited 2 times in total.

Reply 16 of 21, by Horun

User metadata
Rank l33t++
Rank
l33t++
douglar wrote on 2020-03-09, 23:30:

This is done by editing the System.ini file and adding the following line to the [386enh] section:
[386Enh]
ConservativeSwapfileUsage = 1

So if you set that, it should reduce much of the unnecessary memory paging. Some people have interpreted this feature differently, but I think this is the correct interpretation. Please feel free to disagree.

There are some other things that can done in System.ini and the registry to limit how much Windows writes, caches, etc but cannot remember them. If I can find my big book might be able to add a bit more to your suggestion.

Last edited by Stiletto on 2020-03-11, 05:16. Edited 1 time in total.

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 17 of 21, by douglar

User metadata
Rank Oldbie
Rank
Oldbie

Here are the changes to make to your msbatch.inf file to move the page file to drive R: and to get things to install in very large memory situations in a scripted install:

Modify the [install] section to include the following line:
UpdateInis=Edit.Files

Add these lines at the end of MSBATCH.INF:
[Edit.Files]
%10%\system.ini,386Enh,,"MaxPhysPage=40000"
%10%\system.ini,vcache,,"MaxFileCache=524288"
%10%\system.ini,386Enh,,"PagingDrive=R:"
%10%\system.ini,386Enh,,"PagingFile=R:\PAGEFILE.SYS"

Reply 18 of 21, by Jo22

User metadata
Rank l33t++
Rank
l33t++
Horun wrote on 2020-03-09, 22:57:

Good CF cards can only handle a max of 1,000,000 cycles but typically start to fail around 500k.
As derSammler and douglar mentioned, you need to limit how often windows is writing to them or else the typical 3 year life span (for a camera as example) will be cut super short.

I don't disagree, but.. Even my oldest consumer grade CF cards from the early 2000s still work, despite they were very often being fully written to.
Until a year or so, one of them was used weekly to playback movies/films by the help of an old video player. The card is still fine.
Also, even the simplest CF cards do implement a form of wear leveling. Again, even the simplest CF cards! 😀

On top of that, Microsoft states that SSDs are fine for swap files. They recommend to use swap files.
See Re: SSD, Windows 98, Worth it?

Anyway, if you want to find out how to really kill a CF card.. 😉
http://www.pcengines.ch/cfwear.htm

Last, but not least.. FAT32 is perhaps worse than FAT12/16 because it has moving clusters,
which will rarely align to 2k/4k boundaries even if the FAT32 partition is perfectly aligned.

Edit: Typos fixed.

"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 19 of 21, by Jo22

User metadata
Rank l33t++
Rank
l33t++

Oh, and there's something that's harmful to any flash medium.. time stamps.
Windows NT and *nix loves to use them. Not sure about Win9x, though. Definitely something to check out..

"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//