From Lucho: implement
--------D-2F1211----------------------------- INT 2F U - DOS 3.0+ internal - NORMALIZE ASCIZ FILENAME git-svn-id: https://svn.code.sf.net/p/freedos/svn/kernel/trunk@747 6ac86273-5f31-0410-b378-82cca8765d1b
This commit is contained in:
parent
01d58b2836
commit
ee60fb10b8
@ -1905,6 +1905,27 @@ VOID ASMCFUNC int2F_12_handler(struct int2f12regs r)
|
||||
r.dx = dos_gettime();
|
||||
break;
|
||||
|
||||
case 0x11: /* normalise ASCIIZ filename */
|
||||
{
|
||||
char c;
|
||||
char FAR *s = MK_FP(r.ds, r.si);
|
||||
char FAR *t = MK_FP(r.es, r.di);
|
||||
|
||||
do
|
||||
{
|
||||
c = *s++;
|
||||
/* uppercase character */
|
||||
/* for now, ASCII only because nls.c cannot handle DS!=SS */
|
||||
if (c >= 'a' && c <= 'z')
|
||||
c -= 'a' - 'A';
|
||||
else if (c == '/')
|
||||
c = '\\';
|
||||
*t++ = c;
|
||||
}
|
||||
while (c);
|
||||
break;
|
||||
}
|
||||
|
||||
case 0x12: /* get length of asciiz string */
|
||||
|
||||
r.cx = fstrlen(MK_FP(r.es, r.di)) + 1;
|
||||
|
Loading…
Reference in New Issue
Block a user