VOGONS


First post, by fosterwj03

User metadata
Rank Oldbie
Rank
Oldbie

I recently built a 386-based computer with a 486DLC CPU and 32MB of RAM. I have a number of operating systems installed on various SD cards, but one OS is giving me some trouble. Windows 3.0 (both the floppy based version and MME off of a CD) completes the installation process via the GUI, but refuses to boot to the desktop. I've tried several troubleshooting steps from information on the web, but nothing worked. I ultimately replicated my setup in 86Box, and I isolated the root cause. Unfortunately, I'm still at a loss for a fix.

I'm using a DTC enhanced BIOS in my physical computer to handle drives larger than 512MB. When I use the enhanced BIOS on the real computer and 86Box, Windows 3.0 fails to boot in any mode. When I use XTIDE in 86Box at the same ROM address, Windows 3.0 boots to the desktop.

Would anyone here on Vogons know what would cause this behavior? Even better, would anyone here know a fix. I don't know if it's a memory management issue with HIMEM.SYS or something in Windows. Windows 3.1 and Windows 95 have no issues booting on the system.

Thanks.

Reply 1 of 5, by MagefromAntares

User metadata
Rank Member
Rank
Member

Hi,

I have only used Win 3.0 for a relatively short time as I quickly moved on to Win 3.1, but there are two things that could be tried:

1. Attempt to run Win 3.0 in Standard or Real mode:

IIRC these are the switches:

Standard mode:

WIN /S

Real mode:

WIN /R

2. I didn't used Win 3.0 with systems equipped with that much RAM, but I remember hearing from someone that Win 3.0 isn't able to use memory above 16 MB properly and might cause issues, try removing some RAM and see if the issue surfaces.

"A process cannot be understood by stopping it. Understanding must move with the flow of the process, must join it and flow with it." - Dune

Reply 2 of 5, by fosterwj03

User metadata
Rank Oldbie
Rank
Oldbie

Thanks. I tried both in 86Box. Neither Real Mode nor Standard Mode will boot with the DTC BIOS present.

The 16MB issue supposedly happens with Standard Mode, specifically, so that shouldn't keep Windows from bootting in Enhanced Mode. It boots with 32MB of RAM with XTIDE present, but not with the DTC BIOS present.

Reply 3 of 5, by MagefromAntares

User metadata
Rank Member
Rank
Member

If Real Mode also fails to start then it is unlikely to be a memory issue, as that mode was primarily present in Win 3.0 to be a compatibility mode for Win 2.0 software, and it shouldn't use more than 4 MB of memory even with EMS present in that mode.

Hmm if it fails both on real HW and in 86Box especially in all 3 modes with the DTC BIOS then it is likely that it is a specific incompatibility with that BIOS that causes the problem.

One line to debug the issue would be to check if it is a specific BIOS interrupt call that causes the problem, but I mostly use either DosBox or PCem for my emulation purposes, so I have no idea how to debug it in 86Box, or if it even has an inbuilt debugger capable of tracing the execution flow.

"A process cannot be understood by stopping it. Understanding must move with the flow of the process, must join it and flow with it." - Dune

Reply 4 of 5, by fosterwj03

User metadata
Rank Oldbie
Rank
Oldbie
MagefromAntares wrote on Today, 12:02:

If Real Mode also fails to start then it is unlikely to be a memory issue, as that mode was primarily present in Win 3.0 to be a compatibility mode for Win 2.0 software, and it shouldn't use more than 4 MB of memory even with EMS present in that mode.

Hmm if it fails both on real HW and in 86Box especially in all 3 modes with the DTC BIOS then it is likely that it is a specific incompatibility with that BIOS that causes the problem.

One line to debug the issue would be to check if it is a specific BIOS interrupt call that causes the problem, but I mostly use either DosBox or PCem for my emulation purposes, so I have no idea how to debug it in 86Box, or if it even has an inbuilt debugger capable of tracing the execution flow.

I suspected the same. I wonder if the DTC BIOS uses a little bit of lower memory that Windows 3.0 doesn't recognize as in use. That doesn't explain why the installer's Windows environment boots to complete the installation process, though.

Reply 5 of 5, by rmay635703

User metadata
Rank l33t
Rank
l33t

It appears you have troubleshooted your specific issue.

When I have used Windows 3.0, it didn’t agree with 32mb of ram, using an old himem.sys and avoiding emm386 helped.