delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2011/03/17/00:45:07

X-Authentication-Warning: delorie.com: mail set sender to djgpp-bounces using -f
From: "Rod Pemberton" <do_not_have AT notreplytome DOT cmm>
Newsgroups: comp.os.msdos.djgpp
Subject: Re: csdpmi7 not working on virtualbox, how use dosmemget with seg ofs from int21h?
Date: Thu, 17 Mar 2011 00:26:40 -0400
Organization: Aioe.org NNTP Server
Lines: 41
Message-ID: <ils2a9$1he$1@speranza.aioe.org>
References: <39cdc18e-eccb-4213-b896-db3be020702e AT w9g2000prg DOT googlegroups DOT com> <iknmth$1lb$1 AT speranza DOT aioe DOT org> <3e035797-6b8e-4106-bd29-98e87a9cc121 AT a21g2000prj DOT googlegroups DOT com> <E1Pz5o6-0001qv-4s AT fencepost DOT gnu DOT org> <428d9bd6-efc5-4f66-bab3-961a0c4598f9 AT f31g2000pri DOT googlegroups DOT com> <E1PzO3K-0007xl-Bg AT fencepost DOT gnu DOT org> <42d13cb8-adf4-4a86-9cf2-012d0929fb4c AT q40g2000prh DOT googlegroups DOT com> <E1PzRg3-0006F7-Fj AT fencepost DOT gnu DOT org> <50f38a5d-a391-45e7-a039-14932c9134d8 AT 11g2000prf DOT googlegroups DOT com>
NNTP-Posting-Host: sg0uvLzlDfZOqmCSVnJXCA.user.speranza.aioe.org
X-Complaints-To: abuse AT aioe DOT org
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.2001
X-Notice: Filtered by postfilter v. 0.8.2
X-Newsreader: Microsoft Outlook Express 6.00.2800.2001
X-Priority: 3
X-MSMail-Priority: Normal
Bytes: 2376
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Jim Michaels" <jmichae3 AT yahoo DOT com> wrote in message
news:50f38a5d-a391-45e7-a039-14932c9134d8 AT 11g2000prf DOT googlegroups DOT com...
>  [...]
>
>        r.x.ax=0x7303;
>        r.x.cx=sizeof(extFAT32FreeSpaceStructure);
>        r.x.ds=(__tb+STRUCT_OFS)>>4;
>        r.x.dx=(__tb+STRUCT_OFS)& 0x0f;
>        r.x.es=(__tb+STR_OFS)>>4;
>        r.x.di=(__tb+STR_OFS)&0x0f;
>        r.x.flags = 1;
>        r.x.ss=0;
>        r.x.sp=0;
>        __dpmi_int(0x21, &r);
>

Why are you setting r.x.ss and r.x.sp to zero prior to the 7303h call?
According to DJGPP's libc.info, __dpmi_int() automatically takes care of
them.

  r.x.ss=0;
  r.x.sp=0;

What happens without those lines?

Also according to DJGPP's libc.info, one should use the following, if you
need to set ss, sp, or flags:

 ___dpmi_int_sp
 ___dpmi_int_ss
 ___dpmi_int_flags

Hmm... __dpmi_int_flags...  It seems I missed that.

The file src\libc\d0300_z.S has the __dpmi_int() routine in assembly, if you
want to look at it.


Rod Pemberton


- Raw text -


  webmaster     delorie software   privacy  
  Copyright 2019   by DJ Delorie     Updated Jul 2019