ftp.delorie.com/archives/browse.cgi   search  
Mail Archives: djgpp/2011/03/16/15:15:50

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: Wed, 16 Mar 2011 15:04:45 -0400
Organization: Aioe.org NNTP Server
Lines: 37
Message-ID: <ilr1cl$in9$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> <f1bda3ea-6f2b-4e52-9378-85dd56198198 AT i39g2000prd DOT googlegroups DOT com> <ilqu49$5v6$1 AT speranza DOT aioe DOT org>
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: 2600
To: djgpp AT delorie DOT com
DJ-Gateway: from newsgroup comp.os.msdos.djgpp
Reply-To: djgpp AT delorie DOT com

"Rod Pemberton" <do_not_have AT notreplytome DOT cmm> wrote in message
news:ilqu49$5v6$1 AT speranza DOT aioe DOT org...
>
> Here's
> my code, after my .sig, which is *tested* and *working*.
>

Let me clarify that...

Windows 95/98/SE/ME provides function 7303h for FAT32 drives.  Looking at
RBIL, I'm not sure if this is available in real mode MS-DOS, or not.  I.e.,
it may only be available in a Windows console, or "dosbox".

So, the code I posted works with DJGPP v2.03 and v2.04 in a Windows 98 SE
console widow, or "dosbox".  The code *does not* work for me with MS-DOS
v7.10.  DOSLFN upto and including v0.40e supports most of the 71xxh LFN
functions and none of the 73xxh FAT32 functions.  So, DOSLFN doesn't help
any.

For a the working code in a console window, r.x.ax=7303h and CF=0.  The CF
is: r.x.flags&1.  For MS-DOS v7.10, my code returns r.x.ax=57h and CF=1.
RBIL says AL=0 on unsupported DOS versions.  So, 7303h _should_ be
supported.  If it works in a Windows 98 console, it works for real mode DOS
too.  Sorry, I do not know what the issue is yet, i.e., programming error by
me, or an unsupported function in DOS.  I could try Jason's code for you...

> FYI, dosmemput()
> copies more characters than passed.  You can fix it.  That could be
> considered an error or poor programming, for a few reasons: fixed size,
> too much, or not enough depending on the length of the path string.

I.e., use sizeof(), or a maximum path value of 261, whichever is smaller.


Rod Pemberton


- Raw text -


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