Преглед изворни кода

Fix compilation for watcom RTL

git-svn-id: trunk@47015 -
pierre пре 4 година
родитељ
комит
d72170f9a3
3 измењених фајлова са 89 додато и 4 уклоњено
  1. 1 0
      .gitattributes
  2. 8 4
      rtl/watcom/sysutils.pp
  3. 80 0
      rtl/watcom/tthread.inc

+ 1 - 0
.gitattributes

@@ -12085,6 +12085,7 @@ rtl/watcom/sysos.inc svneol=native#text/plain
 rtl/watcom/sysosh.inc svneol=native#text/plain
 rtl/watcom/system.pp svneol=native#text/plain
 rtl/watcom/sysutils.pp svneol=native#text/plain
+rtl/watcom/tthread.inc svneol=native#text/plain
 rtl/watcom/watcom.pp svneol=native#text/plain
 rtl/wii/Makefile svneol=native#text/plain
 rtl/wii/Makefile.fpc svneol=native#text/plain

+ 8 - 4
rtl/watcom/sysutils.pp

@@ -226,6 +226,7 @@ end;
 Function FileSeek (Handle, FOffset, Origin : Longint) : Longint;
 var
   Regs: registers;
+  res: dword;
 begin
   Regs.Eax := $4200;
   Regs.Al := Origin;
@@ -236,8 +237,9 @@ begin
   if Regs.Flags and CarryFlag <> 0 then
      result := -1
   else begin
-     LongRec(result).Lo := Regs.Ax;
-     LongRec(result).Hi := Regs.Dx;
+     LongRec(res).Lo := Regs.Ax;
+     LongRec(res).Hi := Regs.Dx;
+     result:=res;
      end ;
 end;
 
@@ -409,6 +411,7 @@ end;
 Function FileGetDate (Handle : Longint) : Int64;
 var
   Regs: registers;
+  res: dword;
 begin
   //!! for win95 an alternative function is available.
   Regs.Ebx := Handle;
@@ -418,8 +421,9 @@ begin
    result := -1
   else
    begin
-     LongRec(result).Lo := Regs.cx;
-     LongRec(result).Hi := Regs.dx;
+     LongRec(res).Lo := Regs.cx;
+     LongRec(res).Hi := Regs.dx;
+     result := res;
    end ;
 end;
 

+ 80 - 0
rtl/watcom/tthread.inc

@@ -0,0 +1,80 @@
+{
+    This file is part of the Free Component Library (FCL)
+    Copyright (c) 1999-2000 by the Free Pascal development team
+
+    See the file COPYING.FPC, included in this distribution,
+    for details about the copyright.
+
+    This program is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+
+ **********************************************************************}
+{****************************************************************************}
+{*                             TThread                                      *}
+{****************************************************************************}
+
+
+procedure TThread.CallOnTerminate;
+
+begin
+end;
+
+
+function TThread.GetPriority: TThreadPriority;
+
+begin
+  GetPriority:=tpNormal;
+end;
+
+
+procedure TThread.SetPriority(Value: TThreadPriority);
+
+begin
+end;
+
+
+procedure TThread.SetSuspended(Value: Boolean);
+
+begin
+end;
+
+
+procedure TThread.DoTerminate;
+
+begin
+end;
+
+
+procedure TThread.SysCreate(CreateSuspended: Boolean; const StackSize: SizeUInt);
+
+begin
+ {IsMultiThread := TRUE; }
+end;
+
+
+procedure TThread.SysDestroy;
+
+begin
+end;
+
+
+procedure TThread.Resume;
+
+begin
+end;
+
+
+procedure TThread.Suspend;
+
+begin
+end;
+
+
+function TThread.WaitFor: Integer;
+
+begin
+  WaitFor:=0;
+end;
+
+