rde@ukc.ac.uk (R.D.Eager) (02/13/86)
[food for line eater] Some people may have seen the article about the /E switch in LINK although it may not have come to this newsgroup. Not quite sure where it came from, but basically it said that there was an undocumented switch in LINK, the /E switch (actually, that's the minimum abbreviation; its full name is EXEPACK). Apparently it does much the same job as the EXEPACK utility that comes with version 4 of the assembler; it compresses uninitialised data areas and grafts in a bit of code to expand them again at run time. Sure makes a difference on some files! For example, version 2.27 of MS-Kermit shrinks (the .EXE file that is) from 84K to 35K approx (but then there are some enormous data areas for screen saving). Version 2.28 of MS-Kermit claims space dynamically so the saving won't be as dramatic. The time taken to do the expansion at the start of execution is a *lot* less than the time taken to load 50K of zeros off a floppy. This switch is not present in version 3.00 of the linker (came with the 3.00 assembler) but it is in version 3.02 of the linker (came with version 1.0 of QuickBasic). Incidentally, both 3.00 and 3.02 have a handy switch called /HELP (abbreviation at least /HE) which just summarises switches and exits. There is also a /WINDOWS switch; no idea what it does though. -- Bob Eager rde@ukc.UUCP rde@ukc ...!mcvax!ukc!rde Phone: +44 227 66822 ext 7589