From: "A.Appleyard" To: DJGPP AT SUN DOT SOE DOT CLARKSON DOT EDU Date: Mon, 14 Aug 1995 12:41:24 BST Subject: Windows To avoid me cluttering up djgpp group with queries about Windows which are not particularly connected to Gnu:- Is there an email group about Windows? If so, how do I subscribe to it? Can anyone tell me a bibliographic reference to a good book that describes ALL about the insides of Windows and how it works? There is much (but not complete) useful information in "Windows Assembly Language and System Programming" by Barry Kauler, publ. Prentice-Hall 1993, ISBN 0-13-020207-X. But it assumes that you have an assembler with its library of compiled functions provided to access the below-mentioned Windows system calls for you. It contains useful information that I have seen nowhere else about how DOS protected modes and DPMI etc and `virtual machines' work. When and if Gnu C++ / djgpp is adapted to create Windows applications:- If I find all about what the Windows calls in \WINDOWS\SYSTEM\USER.EXE, \WINDOWS\SYSTEM\KERNEL.EXE, \WINDOWS\SYSTEM\*.DLL, etc etc, and the various data structures re windows and jobs etc that they pass around, do, and how to call them, I could make a start at writing for you C or C++ functions to interface with them all. In any Windows version of Gnu C or C++, please make it possible to have all of a Gnu C Windows program in one *.CC source file. E.g. in Visual C++, or the WIndows assembler that I read about, when setting up a Windows menu or control button, the manuals say that I must put some of it on one *.CC file, but the accompanying text strings and linkage stuff on a separate *.RES (resource) file, and split the program between several files, and to assemble it all I must mess about with the alien intricacies of one of the various divergent dialects of MAKE, which is something that with djgpp for DOS I am thankfully rid of. If I must compile things in a fixed order, I am far happier with a plain good old *.BAT file, e.g. my Emacs text editor that I wrote is so big that it must be on several files, and to compile it I call nothing alien or arcane but this easy understandable *.BAT file:- gcc main.cc -c gcc display.cc -c gcc macros.cc -c gcc keyf.cc -c gcc em.cc -c gcc cc.cc -c gcc main.o cc.o em.o display.o macros.o keyf.o -lpc copy /B c:\djgpp\bin\go32.exe + a.out emacs.exe del a.out I believe that MAKE lists of dependencies of *.H's and *.CC's is so that it can tell what needs recompiling. But at 66 MHz my PC is quite fast enough for it not to matter much in time used if I unnecessarily recompile something.