VOGONS

Common searches


Minimal install for DOSBox/95 gaming

Topic actions

  • This topic is locked. You cannot reply or edit posts.

Reply 20 of 101, by truth_deleted

User metadata

Thank you for finding an optimal installation. I included the MFC mainly for testing the installation of D-tools; it took a few installs to verify the updates required (including IE4, unfortunately). I added back the SCSI and MFC just in case D-tools required them, but if these components are unnecessary, then that is ideal; your idea to edit a line for riched32.dll is a good idea, too -- I'm not yet fluent on the slipstreaming procedure (or adding dlls to setuppp) 🙁

I agree that IE4 is a major setback. As far as I can see, one solution is for a complete ATAPI emulation, including the eject function and long file name support; I assume these features will be difficult to develop (and near impossible for LFNs). The other is to find, as you suggested, the crucial components of IE4; there may be a way to run a custom install or just remove bits until D-tools fails to run. 😀

Reply 21 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

I'm down to 25.1mb without hand deleting now. I dug into setupc.inf and managed to remove a bunch of stuff from it.
Removing the boot logos saves over 500k! Help is also gone (who needs it?) as are a bunch of readmes and some bits of the printer support.

Also, I automated editing the msdos.sys through setupc.inf, so that doesn't need to be done manually anymore. I might be able to do the vcache edit to system.ini too.

One thing I'm concerned with in your setup is the use of FAT32. That makes it harder to copy data into the image as dosbox's built in mini-dos doesn't want to read the file after I've formatted it. Is that fixed in a newer SVN?

Reply 22 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

23.6mb without hand deletion. system.ini and msdos.sys edits built in.

That MFC30.dll section isn't needed, it gets installed by something else somewhere.

I'm done for the day (and weekend), so I'm upping my files. Let me know if you have any issues or further optimizations. There are still more useless files, but I haven't found what copies they over yet.

Attachments

  • Filename
    OPT.zip
    File size
    28.5 KiB
    Downloads
    141 downloads
    File license
    Fair use/fair dealing exception

Reply 23 of 101, by truth_deleted

User metadata

Thank you, Jarvik7, that's impressive work! I did install once with the non-standard size setuppp.inf file and it seemed to work, but there were so many variables in the procedure, I couldn't be sure. It must be 95a specific as you noted.

That's amazing to reduce the installation to as low as 23mb. 😀 And also to incorporate all the small modifications to the ini files. It doesn't work well in a "Guide", but your solution remedies that. The boot logos are fairly large! We could surmise that a few files are causing a lot of the installation bloat.

I thought about FAT32. It is a trade-off, hence my concern about 95a versus 95b. It allows for a more compact file size on disk, supposedly more resistant to disk errors, and the critical element of >2gig partition size. The downside, though, is in disk recovery; dosbox is not able to see FAT32, at least in my experience. I recall seeing references to FAT32 in the code base, but practically, I don't recall having access to those files (and I'm fairly current on the SVNs). One strategy is to create a system partition for 95b using fat16 and then the gaming partitions in fat32. There's no reason why the games must be installed on the C: drive. This will also allow for fat16 recovery tools and perhaps compatibility with a freeware disk image editor.

Do you have any recommendations for the IE4 problem? The simplest avenue will be for "setup.exe" parameters. I can search for that to start. We can always update the "95b installation guide" for fat16, too.

Edit: I ran the "diff" tool to view the differences in your setup files. There are a lot of changes! They all make sense, but I hope you had a reference book to help. 😀

Edit2: Hints on IE4 are here: www.geocities.com/~budallen/ie.html#How ... 20Explorer

Reply 24 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

Easiest thing to try is to install IE4, install dtools, uninstall IE, see what breaks any how it complains.
There are some free tools out there to see what file accesses happen (filemon is one iirc) too. Might be useful when launching dtools.

There is no reason why dtools MUST have IE4, so I'm confident it can be worked around.

No reference books unfortunately, just vague memories from when I used to be a PC (power) user.

It's silly how Win95 can install in under 5 minutes and boots in about 2 seconds in emulation, all while taking up just over 20mb. Makes you realize just how bloated modern Windows etc are.

Last edited by Jarvik7 on 2013-12-20, 11:10. Edited 1 time in total.

Reply 25 of 101, by truth_deleted

User metadata

Good suggestions -- I just read documentation for D-tools that IE4 can be uninstalled given the IE4-updated system files remain. So, the file increase should be minimal if the remaining bits are existing system file updates. I read there is also an IE4 removal tool.

I recall filemon from ntinternals.com a while ago and have tried it once or twice (given it's the same utility).

Edit: I thought the same! The entire minimal 95b installation is nearly the size a single file in my system32 folder (an ATI driver). 😀

Last edited by truth_deleted on 2013-12-20, 11:15. Edited 1 time in total.

Reply 26 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

If it's just a case of updated dlls (instead of additional files), dropping them (once you know what they are) in /win95/ should take care of things for a fresh install. No hacking needed.

Having users install then uninstall is messy. It will leave crap on the hdd and in the registry.

Reply 28 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

Looking at the dosbox console when mounting, it says right there FAT32 not yet supported.
I'm going to switch back to FAT16 until I see an immediate need. It's otherwise too difficult to move data between host and guest.

The setup still needs a lot of work. For example the /inf/ folder remains mostly intact and is 2.2mb. Slipstreaming in DirectX and newer 3rd party drivers is another challenge.

By the way, does your IDE controller have a warning icon in device manager? I didn't do the step regarding disabling IDE emulation (if it even exists in svn daum) but it works fine other than that.

Reply 29 of 101, by truth_deleted

User metadata

I'll switch to fat16, too. That is promising about the work remaining since there is hope for further optimization.

I disabled the IDE in dosbox.conf (false for all parameters), so it is not detected. It should be fine if the warning icon is there, too, meaning it should be inactive.

Edit: 95b is installing a bit slow when adding programs to the start menu (during setup). I tried to run a "diff" against the original files to restore the B specific lines, it helped a bit, but the main cause may be something else.

Edit2: we have an unknown missing component causing USB supplement to not install. Also, IE4 showed a lot of errors for missing files. I'll try to debug for this B version.

Reply 31 of 101, by truth_deleted

User metadata

Same here (ref. the start menu). I added back some lines and everything looks in very good order, perhaps it's just spending extra time looking for the removed components. 😀

The C is the better version for D-tools. However, I'll see if the additionally modified setup files will support a USB update and IE4, too.

Reply 34 of 101, by Jarvik7

User metadata
Rank Newbie
Rank
Newbie

osr2.inf just updated the registry with a list of the patches included with osr2, along with the qfecheck tool that reads those entries. Pretty worthless unless you're planning on patching the image to be fully up to date...

Seeing as it times out during the start menu setup, and the only item in the start menu that got removed was scandisk, I'd try adding that back in. It's only a delay and doesn't break anything though, so I'm going to leave it as is in mine for now.

Reply 35 of 101, by DosFreak

User metadata
Rank l33t++
Rank
l33t++

I believe Daemon Tools only requires Active Desktop and not IE4 but I am unsure if you can install active desktop without IE4.

If IE4 is required we could try using the IEAK to slim down the install with the desktop update applied. Not sure if IEAK for IE4 will work nowadays though so would probably need to dig through the files instead of using IEAK.

I had the active desktop info saved but I'm currently at work so here's some links:

www.vogons.org/viewtopic.php?t=23496
smallvoid.com/article/windows-active-desktop.html
support.microsoft.com/kb/165695
my.opera.com/v51d/blog/2011/03/07/insta ... ie-5-5-sp2
www.petri.co.il/install_active_desktop_on_nt_40.htm
erpman1.tripod.com/cmptips1.html

I also did research awhile back on CD emulation programs and Windows 95 and have a list of the ones that work.

I would suggest using an alternate CD emulator but even then there are programs that require Active Desktop (even DOSBox requires it).

I suppose you could try creating a wrapper to avoid it if possible not sure what compatibility would be like since I don't have a list of what programs require it.

AFAIK no games require active desktop but it's not like alot of testing has been done without it....

DOSBox Compilation Guides
DosBox Feature Request Thread
PC Game Compatibility List
How To Ask Questions The Smart Way
Running DRM games offline

Reply 36 of 101, by truth_deleted

User metadata

Thank you for the very informative links, that will save a lot of trial and error in installing D-tools. 😀 I did try other CD emulators, the other that worked is Nero5; however, as you said, I couldn't find another working CD emulator which was not dependent on IE4. Like you said, these must require Active Desktop; I was under the impression that they were dependent on updates to the system files from IE4, but these two descriptions must be nearly one in the same (Active Desktop = IE4 System file updates).

I did check into IEAK4, but I haven't yet found a copy of it. That is one avenue to prune the IE4 footprint.

The links mention the registering of the IE4 shell update, presumably requiring extensive registry modification. My initial impression is to allow IE3 to install with OSR2, then install IE4 for the shell update, and finally run IE4 uninstall to revert back to IE3. I am not aware of any way to uninstall IE4 without having a previous and older version of IE installed. This would grant us a fairly compact footprint and a more certain way to enable D-tools; the alternative is experimenting with dependencies, but this could create incompatibilities (that is especially difficult to debug, not knowing the cause as the custom modification or the emulation itself).

Reply 37 of 101, by truth_deleted

User metadata

Had success in installing a minimal 95b with D-tools and required updates. Modified Jarvik7's excellent setup files so that 95b works with D-tools and its required updates (for example, the spooler is required by DX6.1; also, IE4 was missing required components for installation).

Follow 95b installation Guide on previous page, but instead with the attached patches against the setup files (for example, in c:\Win95 containing the .CABs)
-Patches include msdos.sys and system.ini modifications (Jarvik7)
-After entering 95b desktop, ensure updated drivers of recommended devices: S3, SB16, and V1 (+6mb)
-Install DX6.1 (+7mb)
-95b size with above components ~41mb (maximal 7zip* compression of disk image: 15mb)

Requirements for D-tools installation: USB supplement, InstMsiA (+5mb), copy riched32.dll to /windows/system; and IE4
-95b size including all requirements but IE4 ~55mb
-95b size after including IE4 ~85mb
-D-tools adds +3mb

D-tools loads (have to test it further) even after uninstallation of IE4: using Add/remove uninstalls IE4 even though no previous IE present
-note there are by-passable errors at end of IE4 uninstallation and during subsequent reboots
-IE4 required system updates totaled +2mb (subtracting 95b+IE4 size from 95b after uninstallation of IE4)
-95b+D-tools ~60 mb (maximal 7zip* compression: 19mb)
-Experimental: further reduction from manually removing INF files and IE4 directories ~54mb (attached "filelist.txt")

* maximal compression achieved by writing 0s to empty space on disk image; use dd tool on the disk image mounted in host OS, then try a command similar to this (your own responsibility; run from drive letter mapped to image): dd --progress if=/dev/zero of=zerofile bs=1M

Additional notes:
It is possible to extract IE4 setup files by running "UniExtract". If the /Windows directory was compared before and after uninstallation of IE4, it would be possible to find the file updates, but a registry comparison would be necessary, too. This would save a couple of installation steps if IE4 was repackaged (manually editing ie4setup.ini and the .CAB inf files, filelist.dat; however, better to use an available IEAK4). Although, I doubt this would significantly reduce the 95b footprint and would require a lot of testing, including in 95b.

I also tried installing just the IE4 shell update (ie4shl95.cab files) without IE4, but this led to a boot error with Explorer; presumably additional files and/or registry settings are necessary.

Attachments

  • Filename
    filelist.txt
    File size
    649 Bytes
    Downloads
    103 downloads
    File comment
    list of possible directories & files to remove
    File license
    Fair use/fair dealing exception
  • Filename
    shell_inf.diff
    File size
    9.67 KiB
    Downloads
    113 downloads
    File comment
    shell.inf patch
    File license
    Fair use/fair dealing exception
  • Filename
    setuppp_inf.diff
    File size
    3.7 KiB
    Downloads
    107 downloads
    File comment
    setuppp.inf patch
    File license
    Fair use/fair dealing exception
  • Filename
    setupc_inf.diff
    File size
    3.74 KiB
    Downloads
    106 downloads
    File comment
    setupc.inf patch
    File license
    Fair use/fair dealing exception

Reply 38 of 101, by truth_deleted

User metadata

I compared files between the 95b disk image with and without D-tools+95_updates. The file list is large, but it appears that a couple hundred files are relevant to the installation of D-tools. Even though this is a manageable difference, the comparison among the two "registries" is much larger; the add-ons are about 10% of the total registry size and their descriptions are arcane. I think the above Guides would be sufficient for now, unless a large package was created to update 95b during setup, and even this is not guaranteed given the D-tools installation package requires IE4 installed (not just the leftover system files and registry entries). However, perhaps it is possible to include and run the add-ons during setup; and ask the user to optionally uninstall IE4 afterwards.

There is another interesting tidbit from the registry entries. There are keys for "ThreadingModel" which may take a value of "Both" or "Apartment". With the updates, "Both" is more common and the key appears much more often than without the updates. Given the 9x page fault overruns (in the case of IDE emulation with 32-bit paging) are related to multithreading, these keys could be manually modified from "Both" to "Apartment"; where "Apartment" appears to be the older (and more DOSBox friendly type?). I wonder if this would not cause any errors and solve some of the page fault overrun problems seen with IDE+paging in 9x, especially in 98se.

Edit: the modified registry values for ThreadingModel is working so far with 95b. I also tried the IDE emulation and haven't experienced a page fault overrun yet, but that could be from: the minimal 95b installation, the ThreadedModel values, or just not enough time to test it.

Edit2: I had noticed logging of DMA segbound lines in some directx games. There are two posts on Vogons that inform about this general issue. A simple fix is to modify a line in the dosbox.conf: ems=emm386; the other is to delete the relevant logging from code or try a DMA patch (I have to test the one by PeterFerrie).

Reply 39 of 101, by truth_deleted

User metadata

Have a solution to the DMA segbound wrap warnings where running 95b. Even though these warning are removed by ems=emm386 or commenting out the warnings in the code base, I wasn't satisfied with that solution. Also, the PCI bus and DMA device properties are not a fix. The fix was to allocate resources as presented by the dosbox sb16 emulation (I/O 220 IRQ 7 DMA 1 and 5).

In both 95a and 95b, the sb16 device automatically requests an additional port, I/O 330. I could manually remove this allocation in 95b by entering the sb16 device properties and unchecking the "automatic configuration" checkbox; and then choosing the configuration #0. This will manually set the sb16 device to that presented by the dosbox emulation. In 95a, the DMA segbound wrap warning doesn't appear, so I assume that this 95 version does not require this fix. However, 95b does; and so far it has stopped these warnings.

I attached a modified SB16 driver for DOSBox/95b. It is the most compatible and ensures that the user selects the correct sb16 device and likewise for the resources. After installing this driver, enter the sb16 device properties and set the resource configuration manually to #0.

Attachments

  • Filename
    SB16-DOSBox-95b.zip
    File size
    159.2 KiB
    Downloads
    131 downloads
    File comment
    SB16 driver for DOSBox/95b
    File license
    Fair use/fair dealing exception