| www.delorie.com/archives/browse.cgi | search | 
| 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> | 
| <dmf6p4$kke$1 AT domitilla DOT aioe DOT org> | |
| <1133226276 DOT 234728 DOT 136880 AT f14g2000cwb DOT googlegroups DOT com> | |
| <dmgcpm$u34$1 AT domitilla DOT aioe DOT org> | |
| <1133234864 DOT 835782 DOT 126770 AT g49g2000cwa DOT googlegroups DOT com> | |
| <dmi003$ntf$1 AT domitilla DOT aioe DOT org> | |
| NNTP-Posting-Host: | 61.66.169.71 | 
| Mime-Version: | 1.0 | 
| 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: | <dmi003$ntf$1@domitilla.aioe.org> | 
| 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 | 
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
| webmaster | delorie software privacy | 
| Copyright © 2019 by DJ Delorie | Updated Jul 2019 |