|
@@ -22,6 +22,7 @@ interface
|
|
|
|
|
|
{$define FPC_IS_SYSTEM}
|
|
{$define FPC_IS_SYSTEM}
|
|
{$define FPC_ANSI_TEXTFILEREC}
|
|
{$define FPC_ANSI_TEXTFILEREC}
|
|
|
|
+{$define FPC_SYSTEM_HAS_BACKTRACESTR}
|
|
|
|
|
|
{$if defined(AMIGA_V1_0_ONLY) or defined(AMIGA_V1_2_ONLY)}
|
|
{$if defined(AMIGA_V1_0_ONLY) or defined(AMIGA_V1_2_ONLY)}
|
|
{$define AMIGA_LEGACY}
|
|
{$define AMIGA_LEGACY}
|
|
@@ -147,6 +148,15 @@ implementation
|
|
{$define FPC_SYSTEM_HAS_extractFloat32Sign}
|
|
{$define FPC_SYSTEM_HAS_extractFloat32Sign}
|
|
{$endif defined(cpum68k) and defined(fpusoft)}
|
|
{$endif defined(cpum68k) and defined(fpusoft)}
|
|
|
|
|
|
|
|
+var
|
|
|
|
+ _start: byte; external name '_start';
|
|
|
|
+ { __text_size is provided by the linker }
|
|
|
|
+ __text_size: ptruint; external name '___text_size';
|
|
|
|
+
|
|
|
|
+var
|
|
|
|
+ codestart: pointer;
|
|
|
|
+ codeend: pointer;
|
|
|
|
+
|
|
{$I system.inc}
|
|
{$I system.inc}
|
|
{$ifdef FPC_AMIGA_USE_OSHEAP}
|
|
{$ifdef FPC_AMIGA_USE_OSHEAP}
|
|
{$i osheap.inc}
|
|
{$i osheap.inc}
|
|
@@ -351,6 +361,8 @@ begin
|
|
IsConsole := TRUE;
|
|
IsConsole := TRUE;
|
|
StackLength := CheckInitialStkLen(InitialStkLen);
|
|
StackLength := CheckInitialStkLen(InitialStkLen);
|
|
StackBottom := StackTop - StackLength;
|
|
StackBottom := StackTop - StackLength;
|
|
|
|
+ codestart := @_start;
|
|
|
|
+ codeend := pointer(ptruint(@_start) + ptruint(@__text_size));
|
|
{ OS specific startup }
|
|
{ OS specific startup }
|
|
AOS_wbMsg:=nil;
|
|
AOS_wbMsg:=nil;
|
|
ASYS_origDir:=0;
|
|
ASYS_origDir:=0;
|