X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f From: blk5743 AT yahoo DOT com DOT tw Newsgroups: comp.os.msdos.djgpp Subject: Re: code from BC31(16bits) to DJGPP(32 bits) Date: 29 Nov 2005 17:35:07 -0800 Organization: http://groups.google.com Lines: 30 Message-ID: <1133314507.884056.150990@f14g2000cwb.googlegroups.com> References: <1133146328 DOT 335307 DOT 54810 AT g44g2000cwa DOT googlegroups DOT com> <1133226276 DOT 234728 DOT 136880 AT f14g2000cwb DOT googlegroups DOT com> <1133234864 DOT 835782 DOT 126770 AT g49g2000cwa DOT googlegroups DOT com> NNTP-Posting-Host: 61.66.169.71 Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" X-Trace: posting.google.com 1133314512 6556 127.0.0.1 (30 Nov 2005 01:35:12 GMT) X-Complaints-To: groups-abuse AT google DOT com NNTP-Posting-Date: Wed, 30 Nov 2005 01:35:12 +0000 (UTC) In-Reply-To: User-Agent: G2/0.2 X-HTTP-UserAgent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1),gzip(gfe),gzip(gfe) X-HTTP-Via: 1.0 SVRPROXY Complaints-To: groups-abuse AT google DOT com Injection-Info: f14g2000cwb.googlegroups.com; posting-host=61.66.169.71; posting-account=fl8v7w0AAAAQV4ThVU509YNPI8o0JeB3 To: djgpp AT delorie DOT com DJ-Gateway: from newsgroup comp.os.msdos.djgpp Reply-To: djgpp AT delorie DOT com Errors-To: nobody AT delorie DOT com X-Mailing-List: djgpp AT delorie DOT com X-Unsubscribes-To: listserv AT delorie DOT com Precedence: bulk Thanks, i will try it. I have another question now. the address of r_buffer as below, right r_buffer: PM address = (ULONG)r_buffer r_buffer: RM address = (ULONG)r_buffer+__djgpp_conventional_base; // only if r_buffer points to data within this program... does this mean that i just declare ****BYTE *r_buffer**** or **** BYTE r_buffer[0x10000]**** in my program and if i lock a region in XMS, i should use PRD_EDDS.Offset = r.x.dx; // RM offset e.g., Lock XMS r.x.dx segment PRD_EDDS.Segment = r.x.bx; // RM segment e.g., Lock XMS r.x.bx offset if i need data, i use dosmemget/put to the XMS region, right. #if 0 // only if r_buffer points to data within this program... PRD_EDDS.Offset = (ULONG)r_buffer+__djgpp_conventional_base; PRD_EDDS.Segment = 0; #else // only if r_buffer points to RM data outside this program, like XMS... PRD_EDDS.Offset = r.x.dx; // RM offset e.g., Lock XMS r.x.dx segment PRD_EDDS.Segment = r.x.bx; // RM segment e.g., Lock XMS r.x.bx offset #endif