Add FPC Compabulity
This commit is contained in:
@@ -4,58 +4,58 @@
|
||||
<PathDelim Value="\"/>
|
||||
<Version Value="10"/>
|
||||
<BuildModes Active="Default"/>
|
||||
<Units Count="11">
|
||||
<Units Count="12">
|
||||
<Unit0>
|
||||
<Filename Value="fpcunitproject1.lpr"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<CursorPos X="66" Y="6"/>
|
||||
<UsageCount Value="22"/>
|
||||
<CursorPos Y="9"/>
|
||||
<UsageCount Value="23"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit0>
|
||||
<Unit1>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<UnitName Value="TestCase1"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<TopLine Value="17"/>
|
||||
<CursorPos X="67" Y="29"/>
|
||||
<UsageCount Value="22"/>
|
||||
<CursorPos Y="27"/>
|
||||
<UsageCount Value="23"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit1>
|
||||
<Unit2>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<TopLine Value="172"/>
|
||||
<CursorPos X="25" Y="195"/>
|
||||
<UsageCount Value="23"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
<Filename Value="..\Fasm4Delphi\Source\Fasm4Delphi.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<EditorIndex Value="5"/>
|
||||
<TopLine Value="16"/>
|
||||
<CursorPos X="3" Y="31"/>
|
||||
<UsageCount Value="23"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
<Filename Value="..\Source\Fasm4Delphi.pas"/>
|
||||
<EditorIndex Value="-1"/>
|
||||
<WindowIndex Value="-1"/>
|
||||
<TopLine Value="-1"/>
|
||||
<CursorPos X="-1" Y="-1"/>
|
||||
<UsageCount Value="20"/>
|
||||
</Unit2>
|
||||
<Unit3>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="..\..\Source\FasmOnDelphi.pas"/>
|
||||
<EditorIndex Value="-1"/>
|
||||
<WindowIndex Value="-1"/>
|
||||
<TopLine Value="-1"/>
|
||||
<CursorPos X="-1" Y="-1"/>
|
||||
<UsageCount Value="20"/>
|
||||
</Unit3>
|
||||
<Unit4>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<IsVisibleTab Value="True"/>
|
||||
<EditorIndex Value="2"/>
|
||||
<TopLine Value="217"/>
|
||||
<CursorPos Y="234"/>
|
||||
<UsageCount Value="22"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit4>
|
||||
<Unit5>
|
||||
<Filename Value="..\Fasm4Delphi\Source\Fasm4Delphi.pas"/>
|
||||
<IsPartOfProject Value="True"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<TopLine Value="16"/>
|
||||
<CursorPos X="3" Y="31"/>
|
||||
<UsageCount Value="22"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit5>
|
||||
<Unit6>
|
||||
<Filename Value="C:\lazarus\fpc\3.0.2\source\rtl\inc\varianth.inc"/>
|
||||
@@ -87,134 +87,153 @@
|
||||
</Unit9>
|
||||
<Unit10>
|
||||
<Filename Value="C:\lazarus\fpc\3.0.2\source\rtl\win\wininc\base.inc"/>
|
||||
<EditorIndex Value="3"/>
|
||||
<EditorIndex Value="4"/>
|
||||
<TopLine Value="140"/>
|
||||
<CursorPos X="6" Y="169"/>
|
||||
<UsageCount Value="10"/>
|
||||
<UsageCount Value="11"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit10>
|
||||
<Unit11>
|
||||
<Filename Value="C:\lazarus\lcl\include\application.inc"/>
|
||||
<EditorIndex Value="1"/>
|
||||
<TopLine Value="414"/>
|
||||
<CursorPos Y="431"/>
|
||||
<UsageCount Value="10"/>
|
||||
<Loaded Value="True"/>
|
||||
</Unit11>
|
||||
</Units>
|
||||
<JumpHistory Count="30" HistoryIndex="29">
|
||||
<Position1>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="200" Column="23" TopLine="175"/>
|
||||
</Position1>
|
||||
<Position2>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="429" Column="56" TopLine="427"/>
|
||||
<Caret Line="193" Column="27" TopLine="175"/>
|
||||
</Position2>
|
||||
<Position3>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="191" TopLine="175"/>
|
||||
</Position3>
|
||||
<Position4>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="185" Column="44" TopLine="170"/>
|
||||
<Caret Line="193" TopLine="175"/>
|
||||
</Position4>
|
||||
<Position5>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="194" TopLine="175"/>
|
||||
</Position5>
|
||||
<Position6>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="185" Column="35" TopLine="174"/>
|
||||
<Caret Line="195" TopLine="175"/>
|
||||
</Position6>
|
||||
<Position7>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="188" Column="24" TopLine="171"/>
|
||||
<Caret Line="200" TopLine="175"/>
|
||||
</Position7>
|
||||
<Position8>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="198" Column="20" TopLine="180"/>
|
||||
<Caret Line="205" TopLine="177"/>
|
||||
</Position8>
|
||||
<Position9>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="623" TopLine="607"/>
|
||||
</Position9>
|
||||
<Position10>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="549" TopLine="533"/>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="27" TopLine="17"/>
|
||||
</Position10>
|
||||
<Position11>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="539" TopLine="533"/>
|
||||
<Caret Line="622" TopLine="607"/>
|
||||
</Position11>
|
||||
<Position12>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="201" Column="7" TopLine="172"/>
|
||||
</Position12>
|
||||
<Position13>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="537" Column="8" TopLine="533"/>
|
||||
<Caret Line="188" Column="20" TopLine="172"/>
|
||||
</Position13>
|
||||
<Position14>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="185" Column="56" TopLine="169"/>
|
||||
<Caret Line="191" TopLine="172"/>
|
||||
</Position14>
|
||||
<Position15>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="33" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="193" TopLine="172"/>
|
||||
</Position15>
|
||||
<Position16>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="23" Column="11" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="194" TopLine="172"/>
|
||||
</Position16>
|
||||
<Position17>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="174" Column="17" TopLine="157"/>
|
||||
<Caret Line="195" TopLine="172"/>
|
||||
</Position17>
|
||||
<Position18>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="217" Column="6" TopLine="201"/>
|
||||
<Caret Line="196" Column="35" TopLine="172"/>
|
||||
</Position18>
|
||||
<Position19>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="621" Column="58" TopLine="599"/>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="27" TopLine="17"/>
|
||||
</Position19>
|
||||
<Position20>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="355" Column="29" TopLine="336"/>
|
||||
<Caret Line="623" TopLine="607"/>
|
||||
</Position20>
|
||||
<Position21>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="217" Column="5" TopLine="194"/>
|
||||
<Caret Line="190" TopLine="173"/>
|
||||
</Position21>
|
||||
<Position22>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="226" Column="32" TopLine="205"/>
|
||||
<Caret Line="192" TopLine="173"/>
|
||||
</Position22>
|
||||
<Position23>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="27" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="194" TopLine="173"/>
|
||||
</Position23>
|
||||
<Position24>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="23" Column="60" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="195" TopLine="173"/>
|
||||
</Position24>
|
||||
<Position25>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="27" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="196" TopLine="173"/>
|
||||
</Position25>
|
||||
<Position26>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="234" TopLine="217"/>
|
||||
<Caret Line="194" TopLine="173"/>
|
||||
</Position26>
|
||||
<Position27>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="23" Column="59" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="623" TopLine="607"/>
|
||||
</Position27>
|
||||
<Position28>
|
||||
<Filename Value="testcase1.pas"/>
|
||||
<Caret Line="29" Column="67" TopLine="17"/>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="194" TopLine="177"/>
|
||||
</Position28>
|
||||
<Position29>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="234" TopLine="217"/>
|
||||
<Caret Line="195" Column="36" TopLine="177"/>
|
||||
</Position29>
|
||||
<Position30>
|
||||
<Filename Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Caret Line="539" TopLine="523"/>
|
||||
<Caret Line="623" Column="8" TopLine="607"/>
|
||||
</Position30>
|
||||
</JumpHistory>
|
||||
</ProjectSession>
|
||||
<Debugging>
|
||||
<BreakPoints Count="1">
|
||||
<Item1>
|
||||
<Kind Value="bpkSource"/>
|
||||
<WatchScope Value="wpsLocal"/>
|
||||
<WatchKind Value="wpkWrite"/>
|
||||
<Source Value="..\Source\FasmOnDelphi.pas"/>
|
||||
<Line Value="622"/>
|
||||
</Item1>
|
||||
</BreakPoints>
|
||||
</Debugging>
|
||||
</CONFIG>
|
||||
|
||||
@@ -182,38 +182,26 @@ implementation
|
||||
function GetLongPathNameA(lpszShortPath: LPSTR; lpszLongPath: LPSTR;
|
||||
cchBuffer: DWORD): DWORD; stdcall;external 'Kernel32.dll';
|
||||
|
||||
function Pos(const SubStr,Str:AnsiString;Offset:Integer): Integer; overload;
|
||||
function Pos(const SubStr,Str:AnsiString;Offset:Integer=0):Integer;
|
||||
var
|
||||
I, LIterCnt, L, J: Integer;
|
||||
PSubStr, PS: PAnsiChar;
|
||||
f:boolean;
|
||||
begin
|
||||
L := Length(SubStr);
|
||||
{ Calculate the number of possible iterations. Not valid if Offset < 1. }
|
||||
LIterCnt := Length(Str) - Offset - L + 1;
|
||||
|
||||
{ Only continue if the number of iterations is positive or zero (there is space to check) }
|
||||
if (Offset > 0) and (LIterCnt >= 0) and (L > 0) then
|
||||
for Result:=Offset+1 to length(Str)-length(SubStr)+1 do
|
||||
begin
|
||||
if SubStr[1]=Str[Result] then
|
||||
begin
|
||||
PSubStr := PAnsiChar(SubStr);
|
||||
PS := PAnsiChar(Str);
|
||||
Inc(PS, Offset - 1);
|
||||
|
||||
for I := 0 to LIterCnt do
|
||||
begin
|
||||
J := 0;
|
||||
while (J >= 0) and (J < L) do
|
||||
f:=true;
|
||||
for Offset:=1 to Length(SubStr)-1 do
|
||||
if SubStr[1+Offset]<>Str[Result+Offset] then
|
||||
begin
|
||||
if PS[I + J] = PSubStr[J] then
|
||||
Inc(J)
|
||||
else
|
||||
J := -1;
|
||||
f:=false;
|
||||
break;
|
||||
end;
|
||||
if J >= L then
|
||||
Exit(I + Offset);
|
||||
end;
|
||||
if f then
|
||||
exit;
|
||||
end;
|
||||
|
||||
Result := 0;
|
||||
end;
|
||||
Result:=0;
|
||||
end;
|
||||
{$ENDIF}
|
||||
|
||||
@@ -360,7 +348,7 @@ begin
|
||||
FileHandle:=CreateFile(PChar(s),GENERIC_READ,0,nil,3,128,0);
|
||||
Result.sb:=GetFileSize(FileHandle,nil);
|
||||
getmem(Result.OutData,Result.sb);
|
||||
ReadFile(FileHandle,Result.OutData,Result.sb,nr,nil);
|
||||
ReadFile(FileHandle,Result.OutData^,Result.sb,nr,nil);
|
||||
CloseHandle(FileHandle);
|
||||
DeleteFile(PChar(s));
|
||||
end
|
||||
@@ -547,7 +535,7 @@ begin
|
||||
FileHandle:=CreateFile(PChar(s),GENERIC_READ,0,nil,3,128,0);
|
||||
Result.sb:=GetFileSize(FileHandle,nil);
|
||||
getmem(Result.OutData,Result.sb);
|
||||
ReadFile(FileHandle,Result.OutData,Result.sb,nr,nil);
|
||||
ReadFile(FileHandle,Result.OutData^,Result.sb,nr,nil);
|
||||
CloseHandle(FileHandle);
|
||||
DeleteFile(PChar(s));
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user