* fixed x86_64 compilation

This commit is contained in:
florian 2004-12-19 13:05:56 +00:00
parent 8280fbe06c
commit 9ce937d4bf
2 changed files with 36 additions and 7 deletions

View File

@ -175,7 +175,7 @@ var
procedure SetTo(xpos, ypos : sw_integer);
var
newchar : longint;
newchar : ptrint;
begin
newchar:=(ypos*size.X+xpos) and $ff;
DrawCurPos(false);
@ -323,7 +323,10 @@ end;
END.
{
$Log$
Revision 1.5 2004-11-06 17:08:48 peter
Revision 1.6 2004-12-19 13:05:56 florian
* fixed x86_64 compilation
Revision 1.5 2004/11/06 17:08:48 peter
* drawing of tview merged from old fv code
}

View File

@ -635,7 +635,11 @@ BEGIN
CacheList := Cache; { Hold cache ptr }
Cache^.Size := Size; { Hold cache size }
Cache^.Master := @P; { Hold master ptr }
{$ifdef fpc}
Inc(Pointer(Cache), SizeOf(TCache)); { Set cache offset }
{$else fpc}
Inc(PtrRec(Cache).Ofs, SizeOf(TCache)); { Set cache offset }
{$endif fpc}
End;
P := Cache; { Return pointer }
END;
@ -700,8 +704,12 @@ END;
{$ELSE} { DPMI/WIN/NT/OS2 CODE }
VAR Cache, C: PCache;
BEGIN
{$ifdef fpc}
Cache:=pointer(p)-SizeOf(TCache);
{$else fpc}
PtrRec(Cache).Ofs := PtrRec(P).Ofs-SizeOf(TCache); { Previous cache }
PtrRec(Cache).Seg := PtrRec(P).Seg; { Segment }
{$endif fpc}
C := CacheList; { Start at 1st cache }
While (C^.Next <> Cache) AND (C^.Next <> CacheList)
Do C := C^.Next; { Find previous }
@ -729,10 +737,17 @@ BEGIN
Dec(PtrRec(P).Seg); { Segment prior }
GetBufferSize := PBuffer(P)^.Size; { Size of this buffer }
{$ELSE} { DPMI/WIN/NT/OS2 CODE }
If (P <> Nil) Then Begin { Check pointer }
Dec(PtrRec(P).Ofs,SizeOf(TBuffer)); { Correct to buffer }
GetBufferSize := PBuffer(P)^.Size; { Return buffer size }
End Else GetBufferSize := 0; { Invalid pointer }
If (P <> Nil) Then { Check pointer }
Begin
{$ifdef fpc}
Dec(Pointer(P),SizeOf(TBuffer)); { Correct to buffer }
{$else fpc}
Dec(PtrRec(P).Ofs,SizeOf(TBuffer)); { Correct to buffer }
{$endif fpc}
GetBufferSize := PBuffer(P)^.Size; { Return buffer size }
End
Else
GetBufferSize := 0; { Invalid pointer }
{$ENDIF}
END;
@ -768,7 +783,11 @@ BEGIN
Dec(PtrRec(P).Seg); { Prior segement }
SetBufSize(P, 0); { Release memory }
{$ELSE} { DPMI/WIN/NT/OS2 CODE }
{$ifdef fpc}
Dec(Pointer(P), SizeOf(TBuffer)); { Actual buffer pointer }
{$else fpc}
Dec(PtrRec(P).Ofs, SizeOf(TBuffer)); { Actual buffer pointer }
{$endif fpc}
Buffer := BufferList; { Start on first }
PrevBuf := Nil; { Preset prevbuf to nil }
While (Buffer <> Nil) AND (P <> Buffer) Do Begin { Search for buffer }
@ -808,7 +827,11 @@ BEGIN
Buffer^.Next := BufferList; { First part of chain }
BufferList := Buffer; { Complete the chain }
Buffer^.Size := BufSize; { Hold the buffer size }
{$ifdef fpc}
Inc(Pointer(Buffer), SizeOf(TBuffer)); { Buffer to data area }
{$else fpc}
Inc(PtrRec(Buffer).Ofs, SizeOf(TBuffer)); { Buffer to data area }
{$endif fpc}
End;
P := Buffer; { Return the buffer ptr }
{$ENDIF}
@ -848,7 +871,10 @@ END.
{
$Log$
Revision 1.9 2004-11-06 17:08:48 peter
Revision 1.10 2004-12-19 13:05:56 florian
* fixed x86_64 compilation
Revision 1.9 2004/11/06 17:08:48 peter
* drawing of tview merged from old fv code
}