Commit Graph

48 Commits

Author SHA1 Message Date
florian
4867d48e99 + support for .debug_loc and .debuc_loclist sections 2024-01-16 23:24:37 +01:00
Nikolay Nikolov
cf5feb0dca + support writing of 32-bit and 64-bit relocations in the REL object writer
for Z80. This fixes DWARF debug output and makes it behave consistently with
  the Z80 external assembler writer.
2022-07-12 19:16:23 +03:00
florian
637976e83f * patch by Marģers to unify internal error numbers, resolves #37888
git-svn-id: trunk@47103 -
2020-10-13 19:59:01 +00:00
pierre
667a010357 Avoid wrong overflow error when using -Criot options
git-svn-id: trunk@45815 -
2020-07-21 05:22:26 +00:00
pierre
dfdfbf896d Fix several warnings about uninitialized local variables
git-svn-id: trunk@45787 -
2020-07-15 08:59:59 +00:00
nickysn
e41912b076 * limit the ZX Spectrum programs address space up to $FDFC, because the RTL now
installs an interrupt handler at $FDFD

git-svn-id: trunk@45678 -
2020-06-22 14:13:54 +00:00
nickysn
5816a4a940 * fixed a bug in the Z80 internal linker when reading symbol offsets from .rel files
git-svn-id: trunk@45622 -
2020-06-07 23:21:42 +00:00
nickysn
c90f78488c + added the 'AREA' directive support to the Z80 inline assembler, that allows
you to define custom sections

git-svn-id: trunk@45617 -
2020-06-07 20:47:37 +00:00
svenbarth
921e73ab0c + add compiler support for the Z80 MSX-DOS target
git-svn-id: trunk@45596 -
2020-06-06 17:16:20 +00:00
nickysn
12dce172f9 + implemented TIntelHexExeOutput.DoRelocationFixup
git-svn-id: trunk@45577 -
2020-06-03 17:12:41 +00:00
nickysn
4b5c8982ff + implemented IHX writing in the Z80 internal linker
git-svn-id: trunk@45575 -
2020-06-03 15:35:42 +00:00
nickysn
b29257fd05 * avoid setting the oso_Data flag on bss sections
git-svn-id: trunk@45567 -
2020-06-02 22:54:16 +00:00
nickysn
996ab2feba * renamed some REL sections to follow a similar naming convention
git-svn-id: trunk@45566 -
2020-06-02 22:44:57 +00:00
nickysn
788797d078 + implemented reading of T and R records
git-svn-id: trunk@45564 -
2020-06-02 17:48:06 +00:00
nickysn
ad66f17a87 * group T and R records together and call a function (not implemented yet) to handle them in pairs
git-svn-id: trunk@45561 -
2020-06-01 22:48:51 +00:00
nickysn
6d3bfccbe3 * set MaxMemPos to $FFFF in the Z80 internal linker
git-svn-id: trunk@45559 -
2020-06-01 22:34:10 +00:00
nickysn
3e2cf16d1f * TRelObjInput.ReadObjData: return success, if file was read correctly
git-svn-id: trunk@45557 -
2020-06-01 22:14:01 +00:00
nickysn
0e54ea6bab + parse the REL symbol records
git-svn-id: trunk@45556 -
2020-06-01 21:07:21 +00:00
nickysn
19a66947bc + parse the area records of REL files
git-svn-id: trunk@45554 -
2020-06-01 19:52:25 +00:00
nickysn
c8337937b3 + parse the REL header
git-svn-id: trunk@45553 -
2020-06-01 18:06:15 +00:00
nickysn
31b7fd8965 + partial implementation of TRelObjInput.ReadObjData
git-svn-id: trunk@45552 -
2020-06-01 17:29:29 +00:00
nickysn
8873a199ec * buffered text reading functions moved from being local to TRelObjInput.CanReadObjData
to being class members, so they can be used by ReadObjData as well

git-svn-id: trunk@45551 -
2020-06-01 15:17:47 +00:00
nickysn
3685b50e75 + set cobjdata in TIntelHexExeOutput.create;
git-svn-id: trunk@45548 -
2020-06-01 13:53:28 +00:00
nickysn
6104cd321c + set cobjdata in TRelObjInput.create
git-svn-id: trunk@45547 -
2020-06-01 13:14:46 +00:00
nickysn
11cc085870 + implemented TRelObjInput.CanReadObjData
git-svn-id: trunk@45540 -
2020-05-31 17:45:12 +00:00
nickysn
2353b1adee + started work on the Z80 internal linker
git-svn-id: trunk@45528 -
2020-05-29 18:13:18 +00:00
nickysn
850964f321 + also write sections with no data in the .rel internal obj writer
git-svn-id: trunk@45492 -
2020-05-25 00:17:29 +00:00
nickysn
36323fe424 * always use 1-byte section alignment for the rel internal obj writer
git-svn-id: trunk@45490 -
2020-05-24 22:47:54 +00:00
nickysn
4aba225c8b + fix for writing absolute relocations in the .rel format
git-svn-id: trunk@45288 -
2020-05-06 01:57:38 +00:00
nickysn
381be050a5 + support creating ar files in the Z80 internal obj writer
git-svn-id: trunk@45276 -
2020-05-05 23:05:37 +00:00
nickysn
4fed57adc1 + lots of fixes to the Z80 internal asm writer
git-svn-id: trunk@45272 -
2020-05-05 22:18:44 +00:00
nickysn
5193e8332c + also write the relocations in the .rel internal obj writer
git-svn-id: trunk@45268 -
2020-05-05 19:51:44 +00:00
nickysn
0d11b5bf29 + added method TRelRelocation.EncodeFlags that encodes the flags to string that can be included in the .rel file
git-svn-id: trunk@45263 -
2020-05-05 03:23:51 +00:00
nickysn
03acadaf1e + initialize size and relflags in TRelRelocation
git-svn-id: trunk@45262 -
2020-05-05 03:03:02 +00:00
nickysn
732f1d9df6 + added TRelRelocationFlags
git-svn-id: trunk@45261 -
2020-05-05 01:13:58 +00:00
nickysn
569c406116 + introduced the TRelRelocation class
git-svn-id: trunk@45260 -
2020-05-05 00:59:27 +00:00
nickysn
f1f819516e + write the section data in the .rel internal object writer (relocations aren't written, yet)
git-svn-id: trunk@45259 -
2020-05-05 00:06:11 +00:00
nickysn
ab878adfff + actually produce relocations in TRelObjData.writeReloc
git-svn-id: trunk@45251 -
2020-05-04 02:31:19 +00:00
nickysn
90ee079cd1 + partial implementation of pass2 asm opcode generation for the Z80 internal asm writer
git-svn-id: trunk@45249 -
2020-05-04 01:27:44 +00:00
nickysn
23fa725b01 + added the global symbols to the .rel output file
git-svn-id: trunk@45246 -
2020-05-03 23:23:24 +00:00
nickysn
bba56d627f + write the areas (sections) in the .rel output
git-svn-id: trunk@45245 -
2020-05-03 23:16:23 +00:00
nickysn
92e86e7673 * the areas global symbols count must be in hex in the .rel format
git-svn-id: trunk@45244 -
2020-05-03 23:10:14 +00:00
nickysn
8e23dc99a1 + write the .rel file header and the list of external symbols
git-svn-id: trunk@45243 -
2020-05-03 23:00:52 +00:00
nickysn
763e0a14fe + override the abstract methods from TObjData.sectionname() and .writereloc(). Only sectionname() is implemented for now.
git-svn-id: trunk@45242 -
2020-05-03 22:22:26 +00:00
nickysn
244f1dd83c + added class TRelObjData
git-svn-id: trunk@45241 -
2020-05-03 22:16:21 +00:00
nickysn
aa6209ab51 + added an override of the abstract method TRelObjOutput.writeData (not implemented, yet)
git-svn-id: trunk@45216 -
2020-05-02 02:35:31 +00:00
nickysn
c0ffa18ee2 + added class TRelObjOutput
git-svn-id: trunk@45195 -
2020-04-30 17:31:18 +00:00
nickysn
19c1ecda54 + started work on the Z80 internal assembler
git-svn-id: trunk@45191 -
2020-04-30 14:27:48 +00:00