|
@@ -35,7 +35,7 @@ var
|
|
begin
|
|
begin
|
|
if Handle<=4 then
|
|
if Handle<=4 then
|
|
exit;
|
|
exit;
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.BX:=handle;
|
|
regs.BX:=handle;
|
|
if handle<max_files then
|
|
if handle<max_files then
|
|
begin
|
|
begin
|
|
@@ -62,7 +62,7 @@ var
|
|
begin
|
|
begin
|
|
oldp:=p;
|
|
oldp:=p;
|
|
DoDirSeparators(p,pchangeable);
|
|
DoDirSeparators(p,pchangeable);
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.DX:=Ofs(p^);
|
|
regs.DX:=Ofs(p^);
|
|
regs.DS:=Seg(p^);
|
|
regs.DS:=Seg(p^);
|
|
if LFNSupport then
|
|
if LFNSupport then
|
|
@@ -88,7 +88,7 @@ begin
|
|
oldp2:=p2;
|
|
oldp2:=p2;
|
|
DoDirSeparators(p1,p1changeable);
|
|
DoDirSeparators(p1,p1changeable);
|
|
DoDirSeparators(p2,p2changeable);
|
|
DoDirSeparators(p2,p2changeable);
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.DS:=Seg(p1^);
|
|
regs.DS:=Seg(p1^);
|
|
regs.DX:=Ofs(p1^);
|
|
regs.DX:=Ofs(p1^);
|
|
regs.ES:=Seg(p2^);
|
|
regs.ES:=Seg(p2^);
|
|
@@ -112,7 +112,7 @@ function do_write(h:thandle;addr:pointer;len : longint) : longint;
|
|
var
|
|
var
|
|
regs: Registers;
|
|
regs: Registers;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.AH := $40;
|
|
regs.AH := $40;
|
|
regs.BX := h;
|
|
regs.BX := h;
|
|
regs.CX := len;
|
|
regs.CX := len;
|
|
@@ -132,7 +132,7 @@ function do_read(h:thandle;addr:pointer;len : longint) : longint;
|
|
var
|
|
var
|
|
regs: Registers;
|
|
regs: Registers;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.AH := $3F;
|
|
regs.AH := $3F;
|
|
regs.BX := h;
|
|
regs.BX := h;
|
|
regs.CX := len;
|
|
regs.CX := len;
|
|
@@ -152,7 +152,7 @@ function do_filepos(handle : thandle) : longint;
|
|
var
|
|
var
|
|
regs : Registers;
|
|
regs : Registers;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.BX:=handle;
|
|
regs.BX:=handle;
|
|
regs.CX:=0;
|
|
regs.CX:=0;
|
|
regs.DX:=0;
|
|
regs.DX:=0;
|
|
@@ -172,7 +172,7 @@ procedure do_seek(handle:thandle;pos : longint);
|
|
var
|
|
var
|
|
regs : Registers;
|
|
regs : Registers;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.BX:=handle;
|
|
regs.BX:=handle;
|
|
regs.CX:=pos shr 16;
|
|
regs.CX:=pos shr 16;
|
|
regs.DX:=pos and $ffff;
|
|
regs.DX:=pos and $ffff;
|
|
@@ -188,7 +188,7 @@ function do_seekend(handle:thandle):longint;
|
|
var
|
|
var
|
|
regs : Registers;
|
|
regs : Registers;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.BX:=handle;
|
|
regs.BX:=handle;
|
|
regs.CX:=0;
|
|
regs.CX:=0;
|
|
regs.DX:=0;
|
|
regs.DX:=0;
|
|
@@ -220,7 +220,7 @@ var
|
|
regs : Registers;
|
|
regs : Registers;
|
|
begin
|
|
begin
|
|
do_seek(handle,pos);
|
|
do_seek(handle,pos);
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.CX:=0;
|
|
regs.CX:=0;
|
|
regs.BX:=handle;
|
|
regs.BX:=handle;
|
|
regs.AX:=$4000;
|
|
regs.AX:=$4000;
|
|
@@ -237,7 +237,7 @@ var
|
|
regs : Registers;
|
|
regs : Registers;
|
|
begin
|
|
begin
|
|
Inc(FileHandleCount,10);
|
|
Inc(FileHandleCount,10);
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.BX:=FileHandleCount;
|
|
regs.BX:=FileHandleCount;
|
|
regs.AX:=$6700;
|
|
regs.AX:=$6700;
|
|
MsDos(regs);
|
|
MsDos(regs);
|
|
@@ -263,7 +263,7 @@ var
|
|
action : word;
|
|
action : word;
|
|
oldp : pchar;
|
|
oldp : pchar;
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
{ close first if opened }
|
|
{ close first if opened }
|
|
if ((flags and $10000)=0) then
|
|
if ((flags and $10000)=0) then
|
|
begin
|
|
begin
|
|
@@ -332,7 +332,7 @@ begin
|
|
if regs.AX=4 then
|
|
if regs.AX=4 then
|
|
if Increase_file_handle_count then
|
|
if Increase_file_handle_count then
|
|
begin
|
|
begin
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
{ Try again }
|
|
{ Try again }
|
|
if LFNSupport then
|
|
if LFNSupport then
|
|
begin
|
|
begin
|
|
@@ -409,7 +409,7 @@ begin
|
|
do_isdevice:=true;
|
|
do_isdevice:=true;
|
|
exit;
|
|
exit;
|
|
end;
|
|
end;
|
|
- FillChar(regs,SizeOf(regs),0);
|
|
|
|
|
|
+ ZeroSegRegs(regs);
|
|
regs.AX := $4400;
|
|
regs.AX := $4400;
|
|
regs.BX := handle;
|
|
regs.BX := handle;
|
|
MsDos(regs);
|
|
MsDos(regs);
|