Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!dalcs!dalegass From: dalegass@dalcs.UUCP Newsgroups: comp.sys.ibm.pc Subject: MEM.COM problems: Finding DOS's segment? Message-ID: <2524@dalcs.UUCP> Date: Tue, 14-Apr-87 14:53:33 EST Article-I.D.: dalcs.2524 Posted: Tue Apr 14 14:53:33 1987 Date-Received: Wed, 15-Apr-87 02:42:49 EST Organization: Dept. of Math., Stats & C.S., Dalhousie University, Halifax, N.S., Canada Lines: 43 A few problems have been reported with my MEM.COM program which showw a map of the memory allocated by DOS. I have used the /0 interrupt segment value to find the segment in which DOS resides, in order to pick up relevant memory mapping parameters. However, some people have complained the program has failed; this is due to the fact that they are running or have installed some program which has taken over or changed this /0 interrupt. I'll assume that interrupt 3fh isn't used; it's one of the many that points to a IRET instruction in DOS. INT 3F is reserved for DOS, so it may be used in later versions of DOS, and thus taken over by TSRs in the future... MEM.COM can be patched to use this interrupt instead of the /0 interrupt as follows: C:\>debug mem.com -e118 xxxx:0119 02.FE <- this 02 value is now changed to FEh, for seg of int 3fh -w xxxx bytes written -q This should fix the program when working with programs that take of /0. Does anybody know a way to consistantly find DOS's segment? (Segment 012eh on DOS 3.1 for me) Thanks, *************************************************************************** Dale Gass, Dalhousie U., Halifax, N.S., Canada UUCP: {seismo|watmath|utai|garfield}!dalcs!dalegass.UUCP or dalegass@dalcs.UUCP ...!dalcs!dalcsug!dalegass.UUCP or dalegass@dalcsug.UUCP CDN: dalegass@cs.dal.cdn CSNET: dalegass%cs.dal.cdn@ubc.csnet ARPA: dalegass%cs.dal.cdn%ubc.csnet@CSNET-RELAY.ARPA