Subversion Repositories Kolibri OS

Compare Revisions

No changes between revisions

Regard whitespace Rev 642 → Rev 643

/programs/develop/fp/rtl/_defines.inc
5,5 → 5,7
{$undef os2}
{$undef linux}
 
{$undef DISABLE_NO_THREAD_MANAGER}
{$undef debug_mt}
 
{$define EMULATOR}
{$undef debug_mt}
/programs/develop/fp/rtl/kos.inc
594,7 → 594,7
 
{ Sound }
 
function kos_speak(notes: Pointer): Boolean; assembler; register;
function kos_speaker(notes: Pointer): Boolean; assembler; register;
asm
pushl %esi
pushl %ebx
/programs/develop/fp/rtl/kos_stdio.inc
151,6 → 151,7
FThreadID := BeginThread(TThreadFunc(@KonsoleThreadMain), @Self);
if FThreadID <> 0 then
{XXX: ¬®¦¥â § ¢¨á­ãâì}
{‚®, â ª ¨ ¥áâì ¢ 2.2.0.}
while not FOpened do ThreadSwitch;
end;
 
/programs/develop/fp/rtl/kosh.inc
142,7 → 142,7
 
{ Sound }
 
function kos_speak(notes: Pointer): Boolean;
function kos_speaker(notes: Pointer): Boolean;
 
{ Work with hardware }
function kos_readport(index: DWord): DWord;
/programs/develop/fp/rtl/systhrd.inc
185,7 → 185,7
if not IsMultiThread then
begin
TLSKey := TLSAlloc();
InitThreadVars(@SysRelocateThreadVar); {XXX: must be @SysRelocateThreadvar}
InitThreadVars(@SysRelocateThreadVar);
IsMultiThread := True;
end;
 
287,7 → 287,52
end;
 
 
{*****************************************************************************
Heap Mutex Protection
*****************************************************************************}
 
{$ifndef HAS_MT_MEMORYMANAGER}
var
HeapMutex: TRTLCriticalSection;
 
procedure KosHeapMutexInit;
begin
InitCriticalSection(HeapMutex);
end;
 
procedure KosHeapMutexDone;
begin
DoneCriticalSection(HeapMutex);
end;
 
procedure KosHeapMutexLock;
begin
EnterCriticalSection(HeapMutex);
end;
 
procedure KosHeapMutexUnlock;
begin
LeaveCriticalSection(HeapMutex);
end;
 
 
const
KosMemoryMutexManager: TMemoryMutexManager = (
MutexInit : @KosHeapMutexInit;
MutexDone : @KosHeapMutexDone;
MutexLock : @KosHeapMutexLock;
MutexUnlock: @KosHeapMutexUnlock);
 
 
procedure InitHeapMutexes;
begin
SetMemoryMutexManager(KosMemoryMutexManager);
end;
 
{$endif HAS_MT_MEMORYMANAGER}
 
 
var
KosThreadManager: TThreadManager;
 
procedure InitSystemThreads;
336,5 → 381,8
SemaphorePost := @NoSemaphorePost;
end;
SetThreadManager(KosThreadManager);
{$ifndef HAS_MT_MEMORYMANAGER}
InitHeapMutexes;
{$endif HAS_MT_MEMORYMANAGER}
ThreadID := GetCurrentThreadID;
end;
/programs/develop/fp/rtl/sysutils.pp
161,7 → 161,7
ReleaseFileRecord(Handle);
end;
 
function FileTruncate(Handle: THandle; Size: Int64): Boolean;
function FileTruncate(Handle: THandle; Size: Longint): Boolean;
begin
Result := False;
end;
/programs/develop/fp/rtl/.
Property changes:
Modified: svn:ignore
*.exe
+*.kex
+*.a
*.o
*.ppu
*.log