From: ANTHONY APPLEYARD To: djgpp AT sun DOT soe DOT clarkson DOT edu Date: Fri, 28 Oct 1994 11:52:18 GMT Subject: C++ misc suggestions / queries (1) To avoid having to keep writing and updating a mass of graphics driver files to find how to map Gnu C graphics modes onto VGA or VESA screen modes for each new sort of PC monitor, why not someone write a function that automatically finds what modes there are and maps accordingly? Such a function is possible (e.g. I recently got a package called C:\CLUTIL\*.* (by Cirrus Logic) which seems to automatically find what modes are possible and all about each mode and displays a menu for the user to choose which). (2) The Great Enemy of Gnu and of Gnu-users seems to be things loaded high. When go32 finds stuff loaded high and it can't work around it, why can't it say specifically something like this:-? "I can't find enough space to run because you have loaded high. Which do you want me to do of:-? (a) stop. (b) overwrite and delete the offending software. (c) swop the offending software out into a temporary file (and move DOS into low memory, if it finds DOS loaded high) and put it all back in high memory after running." Or, write and provide two programs that the user could call himself:- SAVEHIGH.EXE: Would copy everything loaded high onto a file, and clear the high memory. If DOS is loaded high, it would also save and clear the low memory and load DOS low, and set up everything for go32 to run. Other arguments of SAVEHIGH would tell it what software to load low to replace necessary software that had been loaded high. RESTHIGH.EXE: Would restore from that file so that the PC's loaded software is put right back to as it was before SAVEHIGH.EXE was called. (3) When go32 finds that the PC is in V86 (or whatever is it) mode instead of in real mode, why can't it simply change the mode to real? (4) How much work would it involve to give djgpp a mode that compiled and assembled and linked to make an .EXE file (not needing go32 to run it) in non-paged mode like Turbo C does? That is e.g. so that people developing Gnu C don't have to clutter their hard disks up with Turbo C as well as Gnu C, simply to be able to compile go32. And for other purposes where compilation into non-paged mode is needed.