Jump to content

CharlotteTheHarlot

Member
  • Posts

    2,051
  • Joined

  • Last visited

  • Donations

    0.00 USD 
  • Country

    United States

Posts posted by CharlotteTheHarlot

  1. I get the point that flash drives can't be used as ram now, but for virtual memory it could be an alternative for cache or page files which could be stored on a flash drive.

    Flash is definitely not for write intensive applications. Even with firmware wear-leveling (without which flash drives could not exist) the lifespan is puny and ill-suited for cache/page files. Reading good, writing bad.

    WIKI: Flash_memory ... Rather than entirely replacing the hard drive, hybrid techniques such as hybrid drive and ReadyBoost attempt to combine the advantages of both technologies, using flash as a high-speed cache for files on the disk that are often referenced, but rarely modified, such as application and operating system executable files. (emphasis mine)

    I'm not buying that flash is "too slow" or "limited" as usb 2.0 is faster access than any IDE hard drive.

    Whoops, absolutely false. All decisions based upon a flawed premise are themselves flawed.

    WIKI: List_of_Device_Bandwidths

    --- Interface ------------ Mbit/s ---- MB/s

    USB Low Speed (USB 1.0) ..... 1.536 ... 0.192

    USB Full Speed (USB 1.1) ... 12 ....... 1.5

    Ultra DMA ATA 33 .......... 264 ...... 33

    USB Hi-Speed (USB 2.0) .... 480 ...... 60

    Ultra DMA ATA 66 .......... 528 ...... 66

    Ultra DMA ATA 100 ......... 800 ..... 100

    Ultra DMA ATA 133 ....... 1,064 ..... 133

    Serial ATA (SATA-150) ... 1,500 ..... 187.5

    Serial ATA (SATA-300) ... 3,000 ..... 375

    To get to where you want to be, two separate items would need to be true:

    • Flash Drives would need to be faster than ATA drives internally.
    • USB 2.0 Interface would need to be faster than UDMA-100.

    But neither is true. To put it another way, we're comparing a slower device on a slower interface versus a faster device on a faster interface.

    Take it from someone that throws all kinds of Hard Drives into IDE/USB adapters. Native IDE (or the much faster SATA 3) is so much quicker that when backing up a system disk to a USB adapted HDD, its easier to just rip the IDE drive out of the enclosure and hook it up internally and get it done fast. The only thing that is slow on an IDE channel these days is a CD/DVD unit or maybe a legacy device like an Iomega floppy.

    Now if you hook a flash drive onto an IDE or eSATA channel you can directly compare the storage. You will still find out that the write speed for Flash drives is in the 10-15 MB/s sustained range. Hard Drives easily achieve 50 to over 100 MB/s (inner/outer of disk). Of course, the Flash cost per gigabyte will kill you even before the write cycle limitations.

    I might need to investigate as to how readyboost is loaded in vista.

    WIKI: ReadyBoost ... begin here!

  2. AMD Athlon XP 3000+ on nVidia nForce2 with PATA Drives and PC2700 DDR. WinXP Pro, tweaked services and no AntiVirus running. No USB plugged in and Ethernet not attached.

    Cold Boot to Desktop ... :32 seconds

    Restart Desktop to Desktop ... :37 seconds

    Desktop to Shutdown ... :11 seconds

    :thumbup One of my favorite boxes. Real workhorse, naturally fast.

  3. One reason = To play older games without issues.

    Yup, that too.

    Actually T.N.G.O.G., I just replied so that I had a way to ask you a question. Where is that Windows flag from? Custom made or does it exist somewhere? Looks very cool (although small). :thumbup

    av-197122.jpg

    (above: tried including the link opera returns for your avatar).

    I'd like to see it wallpaper sized.

    P.S. someone has to ask, what does T.N.G.O.G. stand for?

  4. OK, this "go away" stuff will stop now. just because someone 'trolls' does not give you the right to flame them. if someone needs to 'go away' the mods will handle that.
    7.b This community is built upon mutual respect. You are not allowed to flame other members. People who do not respect personal opinions and/or personal work will be warned in first instance. If you ignore the warning and keep on flaming, you will be banned without notice.

    I think I may have inadvertently started this by using the T-word first in the thread. Sorry about that. It was meant to be funny but does look harsh a few days later. :blushing:

    I'll try and set things right by cleaning up Post #36 and Post #57.

  5. Daniel, thanks for stopping by and welcome to MSFN. I really appreciate those MBR details on your site! That is some collection of information. Must be a labor of love.

    3. Now in order to write the file "mbr.bin" (which must also be exactly 512 bytes) to the first sector of your first hard disk (which, in this case, has 609 cylinders), you must enter:

    findpart putsect 1 0 0 1 mbr.bin 609 00000000 force

    Note: The 'dummy hash' value is eight (8) zeros in length; it must be 8 digits.

    Thanks for this. My bad on the original incorrect commandline. I will edit that earlier post from myself ASAP. Alzheimers must be setting in! I cannot for the life of me remember what I used to write multiple saved sectors back to a FAT32 HDD. Maybe it was DISKEDIT, does that have a facility to import a block of sectors and write them out to disk?

    P.S. please feel free to correct anything else. For example, back in Post #25 where I diagrammed the MBS for my Seagate 120 it looks like the 'NT Drive Serial Number' may be misaligned by one byte. The listed bytes are correct from the actual Absolute Sector 0. Just wondering if it looks strange.

  6. ... as the back-ups of WIN.INI and APPPATCHES.reg I keep in my "REG PATCHES" folder were last modified in late 2004.

    (removed cool picture of folder)

    From looking at your collection of reg patches, I see we think alike. :thumbup I have a similar collection of removed registry data that I can re-insert when I need it. This is all about keeping the registry to a reasonable size (for me, export less than 20 MB).

    One of the best illustrations as to how ridiculous the waste can be: I have one older Kodak camera that requires the stupid EasyShare crapware to access the photos. So I audited and isolated every frickin reg entry and put it into a REG 'inserter' (merged when I need to use the camera). And I created a corresponding deleter that yanks those entries (used after done with camera). Here are the sizes of the reg files:

    Kodak_C340_REGISTRY_(add).reg ... 3,914,511

    Kodak_C340_REGISTRY_(del).reg ..... 326,718

    That size added to many registries might push it over the tipping point on a reboot ('OUT OF MEMORY'). As big as that 4 MB file is, it would even be larger had I used their longer duhfault pathnames! And yet, even larger still had I not commented out the non-functional waste of MSI Installer keys and SharedDLLs and much more.

    Here is a tip for anyone else that does stuff like this, if you insert 4 MB into the registry and then delete it, you still have a sizeable collection of holes in the actual SYSTEM.DAT and USER.DAT files. Currently for this computer I calculate a .76 ratio:

    19.2 MB ASCII Export == 14.6 MB DATs (apprx)

    So this Kodak EasyShare add/delete process leaves about 2.9 MB bytes of real holes in the DATs. They need to be removed by 'compacting' the registry (I mentioned using the free RegCompact in this thread).

    Even though this process appears safe, it is not bulletproof. Worse-Case Scenario would be that you add some large chunk of data to the registry and then the power goes out. :angry: Possible FUBAR unless you have recently saved DAT files that you could manually restore in F8 Command Line mode. It really pays to save everything (exports and DATs) as often as you can.

    EDIT: (huh, previous edit got lost somehow!?!) I just wanted to point out that the size of that registry add (3,914,511 bytes) does not necessarily all get added to the current size. It is the maximum that the registry will grow. The reason is that there are common key structures in a .REG which already exist, thus they cannot be added. The HKEY_LOCAL_MACHINE\Software\Classes\ prefix will not be added obviously, only new keys that are suffixes to it. Also note that any commented-out sections will not get added to the registry but they do show up in the filesize of the .REG file naturally.

  7. My recommendation made in another post. Heck, might as well just copy it here:

    ... well, you might consider OpenGL based games which work surprisingly well on under-powered Win9x systems.

    The two that come immediately to mind are Quake III Arena and Unreal Tournament. They are thoroughly debugged and have a slew of mods and add-ins that will keep a newbie gamer busy for months or more likely, years. I maintain installations of both titles on my Win9x units and even to this day stumble upon mods, maps, skins, bots and levels that I never used before.

    Quake III Arena includes the official mod 'Team Arena' and it's simple to download many other free mods like Western Quake, Urban Terror, Jailbreak, Navy Seals, World of Padman, Hunt, etc. These create a practically infinite selection of games and levels.

    Unreal Tournament has almost as many mods, certainly as many maps, but also some more realistic skins and bots.

    All in all these two games are extremely reliable on older systems even using the built-in chipset video graphics. If you decide to go this route, one suggestion: install these games completely to the Hard Drive and apply the necessary 'tricks' so that you never need to insert the CD-ROMs again. This is the secret to keeping these games fast and smooth, *no* further CD-ROM access.

    I have not looked recently but I imagine you can buy the gold versions (complete CD-ROM retail versions plus documentation) for a good price nowadays. You can also look for 'used' at places like Amazon.

    I'll just add that these are both so-called 'FPS' games (First Person Shooters). I would call them Best of Class in their era: 1999. Such games have many options allowing you to dial-down the graphics resolution and details if necessary (you have 192 MB RAM). I personally believe that great software by great authors should be rewarded by buying them because it provides real incentive for them to continue their good work. I'm not sure if they actually still sell them retail but if they do, imagine the message they get by having folks still buying their 9 year old game. It might remind them to get on the stick and become innovative again.

  8. Actually, even some 1.8GHz Core2 Duo should beat the crap out of a 3GHz P4, even in sigle core mode...

    I have no way to disprove you but my instinct is that this might be wrong. I have found that L2 cache size has been the most significant factor in speed bumps on Win9x. As important as Transistors and Pipelines are, L2 has IMHO been the traditional bottleneck. I see in Wiki that those early C2D chips used 2 MB of the actual 4 MB. So to me this hypothetical comparison looks like Pentium 4 @ 3.x GHz 2MB L2 with old architecture versus one core of a Core2 Duo @ 1.8 GHz 2MB L2 with new architecture running Win9x. The 3.6 GHz Pentium 4 would be running exactly twice as fast as the C2D while using the same size L2. It sure looks to me like a lot of raw horsepower to be overcome by the optimized architecture. But you could be right, just saying that my gut says no. Another unspoken parameter here is power consumption. In this hypothetical matchup multi-core CPUs may in fact be using more power to do the same amount of work (remember we are talking about Win9x here). Someone please correct me but wouldn't the other invisible cores still be powered up? Again, this is only a hunch, a very controlled experiment would be insightful!

    Pentium 4 (and its architecture) was Intel's most horrible mistake ever... Early P4s got beaten up by identically clocked P3s

    Repectfully disagree about P4 being the biggest mistake, since Intel has certainly made some doozies. 8088 vs 8086 was a worse idea. 286 had a legendary error. Pentium floating point bugs, Pentium II and III slots, etc ...

    I remember PIII 1.x GHz becoming available when I still had a PIII Coppermine 600 but never got one. I actually still have my first P4 (Williamette 1.3 GHz), not using it presently though. Those early P4's were a pain because they coincided with WinXP: memory was SDRAM!, L2 was 256 KB!, WinXP was slowwww (if WinXP had been delayed several years and Win9x/Win2K remained on the shelves history would be drastically different). However I don't remember any comparable P3-P4 clock rates. (As usual, Wiki proves me wrong :realmad: : the final PIII was a Tualatin 1.4 GHz). But did anyone really compare them? The P4 certainly had Transistor and Pipeline improvements over the PIII so it seems counter-intuitive for P4's to be beaten by PIII's.

    In my little corner of the world, the Northwoods and Prescotts were big steps forward. Substantial upgrades had really become attainable by merely swapping in new processors. I did a lot of these. Now if only Intel would keep a socket footprint for more than 5 minutes. :wacko:

  9. Just last week I finally got a 3.6ghz Pentium Cedar Mill (661) CPU. I'm just waiting on a second stick of RAM so I can run the RAM in dual-channel mode, then I'll see how fast Win 98 can run in the outer reaches of the stratosphere!

    I hadn't looked back at the Pentium 4 Wiki in a while but now that I have I see how lucky you are:

    The final revision of the Pentium 4 was Cedar Mill, released in early 2006. This was simply a straight shrink of the 600-series core to 65 nm, with no real feature additions. Cedar Mill had a lower heat output than Prescott, with a TDP of 86 W. The Core Stepping of D0 in late 2006 reduced this to 65 watts. It has a 65 nm core and features a 31-stage pipeline (just like Prescott), 800 MT/s FSB, Intel 64, Hyper-Threading and Virtualization Technology. As with Prescott 2M, Cedar Mill also has 2 MiB of L2 cache. It was released as Pentium 6x1 and 6x3 (product code 80552) at frequencies from 3.0 GHz up to 3.6 GHz. Overclockers managed to exceed 8 GHz with these processors. (emphasis mine)

    This had to be the most expensive P4 in its day. You must tell us where you found that chip! And how much? L2 cache is 2 MB on LGA 775. That sounds like real fun to me (from a Win9x point of view naturally).

  10. To add to this...

    If you open WIN.INI in notepad, you'll notice that under

    [ModuleCompatibility]

    you'll find the same list of apps that are also listed under

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\AppPatches

    Has anyone tried removing those in WIN.INI... to streamline it a bit?

    Confirmed here. Good catch. How on Earth did you find it?

    Dang, maybe that blacklist was still in effect on my system. Oh well, I just commented them out, we'll see if there is any effect on the next bootup. Here is what it looks like now ...

    [ModuleCompatibility]
    ;;; 2008-10-04 see HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\AppPatches
    ;ACEROOBE=0x0004
    ;AIRNFM=0x0002
    ;ALDNCD=0x0002
    ;AMRES=0x0002
    ;ARCHANGEL=0x0002
    ;ATM=0x0002
    ;CSNOV=0x0002
    ;DEFDEMO=0x0002
    ;DIB=0x0002
    ;DIBWND=0x0002
    ;DS=0x0001
    ;EMLIB=0x0002
    ;EMSAVE=0x0002
    ;FH4=0x0002
    ;GEDIT=0x0002
    ;GEORGE=0x0002
    ;GVBSETUP=0x0002
    ;HRWCD=0x0002
    ;ISLFAXPR=0x0002
    ;KIDDESK=0x0002
    ;KIDSTYPE=0x0000
    ;KNPS=0x0002
    ;LIONKING=0x0002
    ;MAUI_DRV=0x0002
    ;MEMMAP=0x0002
    ;MGXWMF=0x0002
    ;MSARTIST=0x0002
    ;MSCRWRTR=0x0002
    ;MSCUISTF=0x0001
    ;MVIEWER2=0x0002
    ;MWAVSCAN=0x0002
    ;MYINV=0x0002
    ;OLESVR=0x0002
    ;PDOXWIN=0x0002
    ;PLANIT=0x0002
    ;PP3=0x0002
    ;PP4=0x0002
    ;PPPP=0x0002
    ;PXDSRV2=0x0002
    ;REVIEWRT=0x0002
    ;ROULETTE=0x0002
    ;RR1=0x0002
    ;RR2CD=0x0002
    ;RRIRJ=0x0002
    ;STL_DLG=0x0002
    ;TECO=0x0001
    ;TER=0x0002
    ;TLW0LOC=0x0002
    ;TMSWIN=0x0002
    ;USA=0x0002
    ;VOICE=0x0002
    ;WFXVIEW=0x0004
    ;WINFORM=0x0002
    ;WPWIN61=0x0002

    :wacko: Thought I was done with this.

  11. Why don't we turn this into something REALLY new, like a good ol' NTFS vs. FAT32 or Mickey Mouse vs. Dracula thread? :ph34r:

    I'm kinda partial to the old Freddie vs Jason vs MM. Having just saw Jason-X again the other day I hereby change my vote to him.

    Mickey Mouse vs. Dracula ... I go with Van Helsing.

    NTFS vs. FAT32 ... I take both :thumbup

  12. "I still dream of a 4 GHz single core (take it in a heartbeat over dual 2 GHz) running Win9x."

    I dreamed too, of having a fast single core to run Win 98. Sometime in Fall 2007, I bought a new Gigabyte 8I865GME-775-RH motherboard with the intent of building a fast Win 98 computer. I knew this would be one of the last MB's available new that would still run 98 with no chipset or other hardware incompatibilities so I grabbed it up from Newegg while it was still around.

    Just last week I finally got a 3.6ghz Pentium Cedar Mill (661) CPU. I'm just waiting on a second stick of RAM so I can run the RAM in dual-channel mode, then I'll see how fast Win 98 can run in the outer reaches of the stratosphere!

    :thumbup Woohoo! 3.6 GHz. I'm drooling. That should smoke just about anything. I've got a 3.4 Prescott 1MB L2 that's a room heater. Love to see the heatsink for that one you got.

    You must report back with results. Here is a nice portable Whetstone found on SAC FTP or SAC Website.

  13. Thank you all for the replies. It will take me some time follow up on the suggestions but I will give them a try. I do have ZoneAlarm Securyity Suite installed and it does not find any virus or spyware.

    In a genereal question, how is it possible that a program can add something to my registry but yet I can not delete this same item from the registry?

    To prevent you from deleting keys someone could employ ACL's (aka permissions). On the NT platform the ability exists to control access to objects like registry keys, folders, and files. Such access includes read/write/delete etc. In plain English, it means I could select any key in your registry and easily make it so that myself, or anyone, or no-one can read/write/delete it. The key could be effectively 'locked'. Reclaiming ownership from mangled ACL's can be a pain because you may need to use some mega-hacker tool like SetAcl or SubinAcl; but you should first try the proper: REGEDIT -> right-click the key -> Permissions.

    Sometimes the locking of files and registry keys occurs only when the program or service is actually running (I'm still unclear on whether persistent ACL's are the mechanism here or its simply a consequence of 'them opening' a file or key). But in this case you can usually enter Safe Mode (or MSCONFIG's diagnostic mode) and delete stuff.

    Such tactics are often employed by the white hats to thwart the black hats. For example McAfee and Norton (maybe ZoneAlarm?) use some variation of these techniques to make certain registry keys READable but not WRITEable or DELETEable. This may be why you cannot delete those keys. This exact situation became infamous recently when a WinXP SP3 update component ran amok on computers with active Antivirus somehow 'locking' registry keys causing all kinds of mayhem.

    It is also possible that those keys you cannot delete are owned by rootkits (Google those CLSID's) as mentioned in that previous post.

  14. Does anyone have any idea if I should really delete these items and if so how? These keys do not appear tohave any data in them.

    First, export the entire registry to a file, this gives you the ability to copy the keys from there into a .REG file for re-insertion back into the registry if needed. The keys that you have are:

    [HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{71aaa611-245d-d09f-882845fc5eaa24cc}]

    [HKEY_LOCAL_MACHINE\Software\Classes\CLSID\{945169d7-c27e-315b-97a3e6913a1c7622}]

    Both of these CLSID are suspect. Amazingly each has only one or two Google hits. It looks they are related to some Spyware Rootkits. The first {71aaa611-245d-d09f-882845fc5eaa24cc} may be Exploit EXP/Agent. B and {945169d7-c27e-315b-97a3e6913a1c7622} is unidentified. I would export the registry and text search for each CLSID (the characters between the {} brackets) because there may be a bigger problem than just these two keys. You would be wise to get a BartPE/Knoppix style bootable CDROM with a current AntiVirus and thoroughly scan the drive (targeting all files, not just programs) to be sure. That's what I would do. If you already have some installed antivirus it could already be compromised.

    [HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.msc\OpenWithList]

    The OpenWithList key is common, I have the same empty one on a PC here. There are many empty OpenWithList keys in there. I believe those keys are actually used WITHOUT data values being present (empty keys can still be useful to certain functions). I forget how that function works, but you should be able to find the answer from someone. Please post back with the answer.

  15. Fully agree with you here. The multi-cores appear to be a brick wall for Win9x. Its almost as if Intel is creating its own planned obsolescence with respect to the OS. Something about those 3.x GHz single core chips hitting a thermal limit or something. I still dream of a 4 GHz single core (take it in a heartbeat over dual 2 GHz) running Win9x.

    Machines with multiple processors have existed for quite some time, even NT 3.51 supports it, whereas Microsoft chose not to support it in Windows 9x-line because this used to be for servers only, and they found it too troublesome to work in something this big for no profit.

    I vaguely remember two socket motherboards although I never had one. Must have been around the Pentium I. It would be nice if someone figures out a way to insert a VXD in front of the processor that somehow treats all cores as a single mega-processor without significant overhead. I say this because my testing on WinXP of various CPU's with multiple cores does not add up using traditional benchmarks and my own methodology. I am not ready to publish anything yet but my intuition today is that a theoretical 8 GHz single-core would wipe the floor with Quad 2 GHz. I wonder if anyone else feels ripped off by the current CPU choices.

    One thing I have not done is use Win9x under a VM under WinXP/Vista. CPU overheating issues aside, I wonder if the multi-core CPU is presented to the Win9x kernel as a single monolithic glob of GHz. Whetstone might be a decent measure of the really old hardware against the really new since it has been in use for quite a long time. Maybe others could chime in that have tested Win9x under these VM's.

    I doubt it, AFAIK each VM gets one thread, and one thread stays on one core only.

    Thanks for that info. I really know nothing about this because I have yet to find a reason to test Win9x in a VM since it works perfectly fine directly from the Boot Sector. I do suspect something big is happening here with VM's in general. My guess is that Microsoft will do something to stop the bleeding from Vista/Apple/Linux. Maybe their entire failed ceaseless patching security model will go belly up, Windows will exist only in ROM, firmware or flashware and everything else will exist in a VM. Just guessing though.

    That 120+ GB HDD limit has obviously been broken by some rather clever members here. Personally I stay at or under 120 GB HDD's just to be safe. Like I said, the right tool for the job. Massive quantities of files or really gigantic ones belong on NTFS (if you care about the data). FAT32 tables can get so large from LFN's that the law of diminishing returns comes into play anyways as simple file operations become slow and FsInfoSector updates begin to fail, then you have a Scandisk that eats up all the time that was saved in the first place! Hmmmm, wasn't there supposed to be a FAT64 anyway?

    What good would it have been? Windows 9x wouldn't be able to use it anyway.

    Yup. Sad but true. Besides, I just checked Wiki and they say FAT64 already exists as exFAT although only Vista SP1 can see it (worth reading, see the new file/disk limits). Once again Planned Obsolescence rears its ugly head. I swear, Microsoft has completely forgotten how they got where they are.

    Note to self: add to wishlist a Multi-core CPU retrofit for Win9x. Placing that next to previous dream of vNTFS.VXD with unlimited read/write capability. :yes:

  16. Massive quantities of files or really gigantic ones belong on NTFS (if you care about the data).

    No. If you care about the data, you put it on EXT2 or some other open file system.

    Touché

    Heh. Funny coincidence: I popped Touché into Google to be sure I spelled it right and the 2nd one was: Touché is a free, open-source tracking environment for optical multitouch tables . It has been written for MacOS X Leopard and uses many of its core ...

  17. Intel E2180 Dual-Core 2.0 GHz on a Gigabyte G31 with SATA 3.0 Gb/s and DDR2 800. WinXP Home with a full McAfee 2008 CpuEater running. No USB plugged in and Ethernet not attached.

    Cold Boot to Desktop ... 1:17

    Restart Desktop to Desktop ... 1:25

    Desktop to Shutdown ... :31 seconds

    Better than I expected actually.

  18. I have an application installed on some machines in my network called EAS. Their website doesn't offer any automated install/uninstall advice for the application. Is there a way for me to uninstall, reinstall or repair this application using a group policy or something? Some 3rd party application that can create a package and answer file or something?

    This sounds like a job for InnoSetup. All admins should have an installation of this excellent free setup/installer/packager.

    Regarding your already installed application, provided that you know where the files are and what they are called and what related registry entries exist you could wip up a script and then compile it to a nice EXE to push down to every computer or place it on a flashdrive and walk it around yourself.

    The compiled EXE will do anything that you want it to do (and I mean anything). So the answer is yes, you can easily remove/repair this or any other program. The learning curve for InnoSetup is not steep at all, the default features handle all imagineable tasks. For those unimagineable chores, it is supplemented by a Pascal scripting language (but using it is entirely optional).

  19. Ok, mystery solved. CheckBadApps enters the registry from the proper setup of Win98se. Versions of Windows prior and later may also do the same but other folks will need to dig through the loads of CAB files to prove it. I examined all the files from the Win98se v4.10.2222 distribution CDROM and located 6 files that clearly reference these registry keys. They are buried inside CAB files as I expected. Note, it is entirely possible that there are even more if a given file was compressed/encrypted with something like pklite/exepack. Those would be very difficult to detect.

    APCOMPAT.INF ... \Win98\Precopy2.cab

    This is where it happens. A section in this INF called [apcompat.addreg] actually seeds the firewall so to speak. It loads the blacklist into the registry. There are really three keys in total:

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\AppPatches

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\CheckBadApps

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\CheckBadApps400

    PREDRV.INF ..... \Win98\Precopy2.cab

    This INF file simply adds and removes some data from the blacklist related to MKEUDF.VXD.

    SHELL32.DLL .... \Win98\Win98_41.cab

    As mentioned in a previous post, those registry keys are referenced by Shell32.dll but the data itself (STACKER, etc) is not contained within. It is likely that Shell32.dll reads and processes the contents of these keys but does not actually insert the strings that flag 'BadApps'. Shell32.dll looks to me like the 'firewall' mechanism which enforces the BadApps blacklist.

    CVT1.EXE ....... \Win98\Win98_45.cab

    This executable is the FAT 32 Converter Wizard and is used for converting existing FAT16 volumes to FAT32. Like Shell32.dll it only contains references to those registry keys and I'll leave it to others to theorize the purpose.

    MSMAIL.INF ..... \Tools\Oldwin95\Message\Intl\Wms.exe

    MSMAIL.INF ..... \Tools\Oldwin95\Message\Us\Wms.exe

    These two files may be disregarded since in both of them, Microsoft disabled (commented out) the actual code. Apparently they changed their mind. This was the authors comment: Put msmail3.x into the bad apps list because Exchange disables it.

    The consequence of yanking these three keys can be debated. I removed them long ago myself on the theory that it would save microseconds each time an executable was launched by short-circuiting the filename lookup. I also would rather decide for myself whether to allow a given file to launch. An argument could also be made that such a blacklist might impact perfectly legitimate programs that coincidentally have identical or similar names and versions.

    So, if you're the Type-A personality you'll probably delete these keys. Or you might not. File this under trivia.

  20. Googled around and saw your many posts on other sites. Very helpful those folks at DslReports. Not! :wacko: Typical response: 'You're wasting your time cleaning the registry!' Definitely avoid those helpful people.

    I checked my years of logs expecting to see the keys added by a Direct-X install and cannot find it (I originally thought one of the early Direct-X releases was the culprit, it appears that is not the case although I am sure they blacklisted some DirectInput devices in one of the releases).

    So I just looked at the contents of the keys I removed and see things like STACKER, BJC600, NLIB200, SIERRA, Speedisk and Ndd32. Some are Win3x era and some post Win95. These clues point to an official Microsoft install as the source of these registry keys (this comes from my memory as I remember these issues coming to light during the Win95 gold release). I believe they were building a database of bad apps to effectively firewall from the Explorer shell, particularly SETUP/INSTALL programs.

    So I figured that it was inserted during a proper Win9x setup by one of the INF files but it does not turn up in any of the ones I have handy. Google mentioned APPS.INF but it is not in any of mine. It is possible that it lies within .INF files buried in the .CAB files but I don't have time right now to do that search (but maybe later). I even scanned all the (non-CAB) INF files for Win95gold, Win95RK, Win95Plus!, Win95osr, Win98gold, Win98oem, Win98se, WinMe, Win2ksp4, WinXp. No joy. If someone really wants to do this you will need to extract all of the CABs and all SFX EXE files into a folder and do a brute-force FIND for contents: 'CheckBadApp'.

    Anyway, on a hunch I used FIND on the in-use core Win9x system files and out pops Shell32.dll. Easily located within that beast are these two keys (along with countless others):

    System\CurrentControlSet\Control\SessionManager\CheckBadApps400

    System\CurrentControlSet\Control\SessionManager\CheckBadApps

    The registry keys are referenced by Shell32.dll but the data itself (STACKER, etc) is not contained within. It is likely that Shell32.dll reads and processes the contents of these keys but does not actually insert the strings that flag 'BadApps'. Shell32.dll looks like the firewall mechanism but the blacklist is generated/updated and loaded into the registry from elsewhere. It will be interesting to determine this little quirk of Win9x history.

    I do know this: unless you plan on testing all kinds of old app installers under Win9x you can wipe out these three keys (I did this long ago). Export a copy of the registry first!:

    [-HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\AppPatches]
    [-HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\CheckBadApps]
    [-HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\CheckBadApps400]

  21. Took a peek into my virtual toolbox and found some more freeware that are very useful for the purposes of this subject. There is a package of three utilities called SRCTOOLS, the author is someone called [The W0rm] and was originally found at this url: http://dos.li5.org (now gone). Google located an exisiting webpage called TechW0rm located here where you can download a 1.1 MB file called TECHW0RM.ZIP that contains a file called Techw0rm.img which holds an impressive collection of DOS utilities ...

    The following list quickly describes each program on the disk. If you don't understand it,
    don't use it. Quite a few weren't necessary but were put on to be ready for any situation.
    Use /? to learn command line options for most

    50.COM - Sets the screen to 50-line mode (convenient).
    AEFDISK.EXE - FDisk replacement.
    ATTRIB.EXE - Change file attributes.
    AUTOEXEC.BAT - Automatically executed batch file for boot-up.
    BCOPY.COM - Copy a file in the background.
    BOOTSECT.BAK - The backed up boot sector - compared to original.
    CHKMEM.COM - Checks for suspicious memory usage; stealth virii.
    CLEAR.COM - Clears the screen (good for messed up modes/colors).
    CLOAKING.EXE - Stores drivers in EMS/XMS to lower low memory usage.
    CMOSPWD.EXE - Can reset the bios/get cmos password
    COMMAND.COM - Command interpreter.
    CONFIG.SYS - Startup device driver loader.
    CTMOUSE.COM - Universal mouse driver.
    D.EXE - You still use "dir"?
    DEBUG.EXE - Microsoft's DEBUG.EXE.
    DELTREE.EXE - Delete a directory and all sub-directories.
    DEVICE.COM - Load a specified device driver on command line.
    DZ.COM - Divide overflow error corrector.
    EDIT.EXE - MS-Dos file editor.
    EMM386.EXE - EMS memory manager by Microsoft.
    ESCAPE.EXE - Abort from crashes/programs with F12.
    FCSH.COM - Doskey replacement.
    FIX27.COM - Quite often saves memory for tsrs loaded.
    FORMAT.COM - Formats a disk for DOS use.
    FP.SYS - Scans for lost partitions/assigns drive letters.
    HIMEM.SYS - Himem XMS device driver.
    IO.SYS - The heart of ms-dos7; the kernel.
    KEYBUF.COM - Expands keyboard buffer size.
    KEYRATE.COM - Sets the key-speeds.
    KILLER.EXE - Abort to dos on invalid opcodes. (less freezing)
    LCOPY.EXE - XCOPY replacement with LFN support in DOS.
    MD5SUM.EXE - Calculates the MD5 hashes.
    MD5_FIC1.BAK - Stored MD5 hashes for all required boot-up files.
    MD5_FIC2.BAK - MD5 hashes for checking on ramdisk.
    MEM.EXE - MS-DOS's mem reporting tool.
    MSCDEX.EXE - Mscdex.exe replacement, saves mem.
    MSDOS.SYS - Dos "registry".
    NO.COM - Exclude files for a particular command.
    NTFSDOS.EXE - Driver to "see" NTFS drives.
    PART.EXE - Partition Manager
    PERUSE.COM - Lets you scroll back with the scroll lock key.
    PRESIZER.EXE - Resize/Move partitions.
    PROTECT.COM - Write/Read Warn/Protect any drive.
    PROVIEW.EXE - Edit your physical disks and memory.
    QEMM386.SYS - A memory manager.
    QVIEW.EXE - A good hex editor.
    REALDEAL.COM - Secure deletion TSR.
    RECOVER.EXE - Recovers physical sectors.
    SCANDISK.EXE - Microsoft drive "repair" utility.
    SCOUR.COM - Security; overwrites past file eof's and free space.
    SEARCH.COM - Search for a text string in file(s)/subdir(s).
    SETVER.EXE - Make older/newer programs compatible.
    SHSUCDX.EXE - Mscdex.exe replacement, saves mem.
    SMARTDRV.EXE - Smartdrive; caching utility.
    SRCBOOT.COM - Save/Restore/Check the boot record.
    SRCFAT.COM - Save/Restore/Check the Fat Table(s).
    SRCMBR.COM - Save/Restore/Check the MBR.
    SWEEP.COM - Runs a specified command in all subdirectories.
    SYS.COM - Copy system files/boot record for booting.
    TOUCH.COM - Sets file date/time.
    UMBPCI.SYS - Hardware UMB provider.
    UNDELETE.COM - UnErases files from FAT partitions.
    UNIVBE.EXE - Universal display driver.
    VIDE-CDD.SYS - Universal cd-rom driver.
    VIDRAM.COM - Increase conventional memory. (but lose VGA)
    VPAGE.COM - Saves/Restores video ram into file/page.
    WIPE.COM - Overwrites a drive.
    XMSDSK.EXE - Loads an XMS ramdisk.
    XTLINK.COM - Access drives over a serial/parallel cable.
    ZENO.EXE - Speeds up text display.

    The SRCTOOLS, which work under the DOS commandline within Windows are these ...

    SrcMbr.com .... save/restore/compare the 512 byte Master Boot Sector

    SrcBoot.com ... save/restore/compare the 512 byte Volume Boot Record

    SrcFat.com .... save/restore/compare the FAT

    Here are the returned commandline options ...

    [color="#9932CC"] ==> Srcmbr.com /?[/color]

    SRCMBR V1.8©2001 - The W0rm -
    Usage: SRCMBR {drive} {filename} {switch}

    Switches:
    /S - Save MBR to file
    /R - Restore MBR from file
    /C - Compare MBR to file

    [color="#9932CC"] ==> Srcboot.com /?[/color]

    SRCBoot V1.7©2001 - The W0rm -
    Usage: SRCBoot {drive:} {filename} {switch}

    Switches:
    /S - Save boot sector to file
    /R - Restore boot sector from file
    /C - Compare boot sector to file

    [color="#9932CC"] ==> Srcfat.com /?[/color]

    SRCFat V1.3©2001 - The W0rm -
    Usage: SRCFat {drive:} {filename} {switch}

    Switches:
    /S - Save fat table to file
    /R - Restore fat table from file
    /C - Compare fat table to file
    /2 - Use the second fat copy

    Since these three utilities are useable from batch files they lend themselves nicely to the purpose of automated data collection or critical backup (e.g., in a compiled INNO script). I tested the save function for all three utilities on Win9x on the C: boot drive which is a Seagate 120 GB single partition. These are the exact commands executed within a DOS window with their results ...

    SrcMbr.com 0 SRCMBR.BIN /s

    ... outputs a file called SRCMBR.BIN. It is 512 bytes and is the exact contents of the Master Boot Sector (MBS aka MBR). I verified that it is the data found at offset 0000h. This is called Absolute Sector 0 or CHS:0,0,1. See the above post #25 for details of what is stored in this sector.

    SrcBoot.com C: SRCBOOT.BIN /s

    ... outputs a file called SRCBOOT.BIN. It is 512 bytes and is the exact contents of the Volume Boot Record (VBR) beginning. I verified that it is the data found at offset 7e00h. This is called Absolute Sector 63 or CHS:0,1,1. Note that this single sector is the first of three consecutive sectors that make up the VBR (FAT32 VBR is 3 sectors: Absolute #63-65). There is a Second Copy at Absolute #69-71.

    SrcFat.com C: SRCFAT.BIN /s /2

    ... outputs a file called SRCFAT.BIN. For this 120 GB FAT32 drive the saved FAT is a whopping 14,650,880 bytes. This particular HDD contains 498,433 files and 33,230 folders using up 84.5 GB of the available 111 GB. Note that I used the second FAT copy which is an arbitrary decision since both FAT copies should be identical.

    IMHO, these FAT details illustrate the potential for problems under Win9x. This particular system presently has 3 of these Seagate 120 GB drives attached so one could surmise that nearly 45 MB of FAT entries are mapped into RAM by VFAT.VXD (i'm no expert here so go easy!). The numbers could easily greatly increase with modern gigantic drives. I am unclear as to how USB and SATA drives are mapped but I suspect they also increase the RAM burden. I would really love to hear from experts on these matters though.

    EDIT: corrected FAT size issue (its size is related to the size of the drive, not the contents of the drive) thanks Ed999.

    EDIT: 2009-10-05. Hat tip to Jaclaz :hello: way down this thread in Post #148 for a working link at web.archive.org that contains stuff from the old dos.li5.org. On this page here you can directly download SrcTools (and other stuff) from the archive.

  22. I'm in need of more space so i'm installing a new, more beefy hard drive in my laptop. After doing so, will I be able to reinstall the copy of XP that came with my computer years ago? Is there some procedure I need to do to authenticate myself as the legal user? Or am I out of luck and looking to buy a new edition of XP? Thx.

    If you are installing Windows onto the new HDD (i.e., starting over) you can collect the Digital Product ID and other important information from the current registry to make yourself legal. Or you can simply activate with the worse case being a voice phone call.

    If you are NOT installing Windows and just want to upgrade the HDD leaving Windows as it currently is then you want to Clone the old disk contents to the new one (C: to C:). Each HDD manufacturer has a CDROM to do this. If your new drive is 'retail' (not OEM) it usually comes with the Disc. Experiences using Seagate/Maxtor drives as either the old or new drive can be learned about here. See post #5 and post #9.

    Either of these scenarios is perfectly legit but not as easy as it should be.

  23. Hello dues :)

    I am always trying to clean up my reg to make things as easy as possible for me computer

    I found about 100 or more keys under ACTIVE X COMPATIBILITY and they are all empty!! (No value set) I have 89 valid keys in here (The ones with "Compatibility flags" are valid)

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\ActiveX Compatibility

    Can i delete all those invalid keys?? (I assumed i can but im not sure)

    Also under CHECKBADAPPS there are many filenames,can i just remove all those also??

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\checkbadapps

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\checkbadapps400

    Just the removal of all those will probably make things smaller and less congested :)

    If you save a complete registry export prior to your registry cleanup you will have the ability to easily restore any keys should it become necessary.

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\checkbadapps

    HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\SessionManager\checkbadapps400

    :yes: Affirmative on these two. I removed them myself long ago. I believe they might return with Direct-X setups (or I might be wrong).

    HKEY_LOCAL_MACHINE\Software\Microsoft\Internet Explorer\ActiveX Compatibility

    That one I am unsure about, so I would like to hear what others have to say. I also see empty keys underneath this key and although an empty key is almost always safe to remove, MSIE clearly uses this key in its lame security scheme. The registry API allows for testing for the existance of a key so it is not necessary for a value to be present for a key to be useful to some function. Hey, maybe Microsoft can answer the question.

    If you get no answers you could just delete the empty subkeys and test it out. Use that registry export to copy the original structure back to a .reg file to easily restore it.

×
×
  • Create New...