From 4a5a2f5ba2467ffed2bc718cfacd963271af636d Mon Sep 17 00:00:00 2001 From: nickysn Date: Tue, 2 Jun 2020 23:01:07 +0000 Subject: [PATCH] + set IMAGEBASE in the Z80 internal linker script git-svn-id: trunk@45568 - --- compiler/systems/t_zxspectrum.pas | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/compiler/systems/t_zxspectrum.pas b/compiler/systems/t_zxspectrum.pas index cdbd8e7ee4..6e5a207a9c 100644 --- a/compiler/systems/t_zxspectrum.pas +++ b/compiler/systems/t_zxspectrum.pas @@ -61,6 +61,8 @@ implementation { TInternalLinkerZXSpectrum } TInternalLinkerZXSpectrum=class(tinternallinker) + private + FOrigin: Word; protected procedure DefaultLinkScript;override; function GetCodeSize(aExeOutput: TExeOutput): QWord;override; @@ -360,6 +362,8 @@ procedure TInternalLinkerZXSpectrum.DefaultLinkScript; end; LinkScript.Concat('ENDGROUP'); + LinkScript.Concat('IMAGEBASE '+tostr(FOrigin)); + LinkScript.Concat('EXESECTION .text'); LinkScript.Concat(' OBJSECTION _CODE'); LinkScript.Concat('ENDEXESECTION'); @@ -396,6 +400,7 @@ constructor TInternalLinkerZXSpectrum.create; CArObjectReader:=TArObjectReader; CExeOutput:=TIntelHexExeOutput; CObjInput:=TRelObjInput; + FOrigin:={32768}23800; end; procedure TInternalLinkerZXSpectrum.InitSysInitUnitName;