I have written some dev-cpp programs and would like to make them windows 3.1 compatable.
how do i do this?
You need another compiler. Try http://www.openwatcom.org/index.php/Main_Page (open source) or http://www.digitalmars.com (free of charge)
There might be other compilers as well.
it's not only the compiler, but also the underlying source code that will probably need to be modified accordingly.
In general, it is not easy to tell you what you need to do, without knowing the nature of your program and the functions it is using.
If it is lightweight, you may be able to use Win32S for WfW 3.11
Alternatively, you will probably want to get rid of ALL Win32 specific API calls/dependencies and replace them with compatible stuff from the Win 3.1 API.
This may be non-trivial for some apps, though.
Thus, I would recommend to port your app to use some of the few cross platform toolkits that also support pre-Win32 systems (i.e. for GUI stuff).
This should make porting much easier.
IIRC, Borland's compiler also supports Win16 coff executables.
Apart from that, simply search thefreecountry.com for suitable tools (compiler, assembler, linker).
Also, there's the possibility to use DJGPP, too.
There's a patch available to make DJGPP produce Win16/32 files, I think it was called something like RSXNT*
Windows 3.1? I'm happy that I don't have to support this 16 bit dinosaur, and it never ceases to amaze me what old operating systems people still use.
Windows 9x is bad enough at times, but still...
For Windows 3.1 - it almost doesn't qualify as an OS, since it is really riding around on top of DOS....
I still have WfW 3.11 around on my old 486DX notebook with 8MB RAM and 60 megs HD space, not that I would really use it, but I guess I keep that stuff for nostalgic reasons ;)
I see your all amazed by the fact that someone still uses windows 3.1
But i still use WINDOWS 1.0!
use it...for what?
Before someone says they're still using DOS I got you beat, I'm still using UNO ;)
You are using cards for input?????
windows 3.1+(win32s) app might be possible...
some versions of mingw can make them
a relocation information section is required
and a win32s app can not import msvcrt.dll
(though win32s has crtdll.dll,msvcrt20.dll and msvcrt40.dll )
if you add "-pie" to the link you get relocs
not shoure how you get rid of msvcrt
adding -pie -lcrtdll to the linker options
adds the code needed to run under windows 3.1 (win32s)
but causes the exe file format to be messed up
Log in to post a comment.