VOGONS


First post, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I'm compiling from Windows to DOS using the WATCOM C version 10.6 compiler and I'm able to build an executable. But when I try to run it either in Windows under NTVDM or in DOS I get an error "Program too big to fit in memory". I have plenty of conventional and XMS memory (I also tried with EMS) and have tried with and without EMM386. The program itself is only 133KB so there is plenty of room for the entire executable to be loaded into memory.

Everything in Phil's bench set works as well as Doom and Quake. The issue appears to be with my program.

Does anyone know what might be causing this error?

Reply 1 of 7, by Ringding

User metadata
Rank Member
Rank
Member

16 bits or 32 bits?

DOS executables have a header field that specifies the minimum amount of (conventional) memory required. Maybe an unsuitable value ended up there somehow.

Reply 5 of 7, by pan069

User metadata
Rank Oldbie
Rank
Oldbie
llm wrote on 2021-08-02, 20:50:

Is there a reason for not using Open Watcom V2? https://github.com/open-watcom/open-watcom-v2
Daily builds, 64bit compiler still capable to produce dos exes etc.

The only reason I can think of is that those versions of Watcom (v10.6 and up until v11) came with bundled Microsoft MFC where as Open Watcom does not. Unless you need MFC (for which Visual Studio is probably a better choice), I agree, there isn't really any need to use those older versions. Plus, Open Watcom runs natively on Linux 😀

Reply 6 of 7, by Kahenraz

User metadata
Rank l33t
Rank
l33t

I'm using Watcom 10.6 because that's what the readme says to use. It's unwise to swap out the compiler before getting it to build with its intended tool chain.

Reply 7 of 7, by llm

User metadata
Rank Member
Rank
Member
Kahenraz wrote on 2021-08-02, 22:27:

I'm using Watcom 10.6 because that's what the readme says to use. It's unwise to swap out the compiler before getting it to build with its intended tool chain.

You wrote that you've already built it, but yes i would also follow the readme first

But you could still build parallel to 10.6 with v2 and check if the same error occures