Blame | Last modification | View Log | Download
# file opened: relocation_high_1.asm
1 0000 OPT --zxnext
2 0000
3 0000 STRUCT RELSTRUCT
4 0000 ~ Byte BYTE $11
5 0000 ~ Word WORD $2233
6 0000 ~ Tribyte D24 $445566
7 0000 ~ Dword DWORD $778899AA
8 0000 ~ Text TEXT 6, { "Hello", 0 }
9 0000 ENDS
10 0000
11 0000 ; first section is not part of relocation table
12 0000 ; =============================================
13 0000
14 0000 ORG $8000
15 8000 ; same as the relocatable block, but outside of RELOCATE_START -> RELOCATE_END
16 8000 21 26 00 ld hl,label1
17 8003 2A 26 00 ld hl,(label1)
18 8006 22 26 00 ld (label1),hl
19 8009 FD 21 26 00 ld iy,label1
20 800D FD 2A 26 00 ld iy,(label1)
21 8011 FD 22 26 00 ld (label1),iy
22 8015 11 26 00 ld de,label1
23 8018 ED 5B 26 00 ld de,(label1)
24 801C ED 53 26 00 ld (label1),de
25 8020 3A 26 00 ld a,(label1)
26 8023 32 26 00 ld (label1),a
27 8026 CD 26 00 call label1
28 8029 C3 26 00 jp label1
29 802C ED 34 26 00 add hl,label1
30 8030 11 26 00 66 RELSTRUCT {,label1,,,{"text",0}}
30 8034 55 44 AA 99
30 8038 88 77 74 65
30 803C 78 74 00 00
31 8040 30 00 40 00 DW s1, s1.end, s1.Tribyte, s1.Text, $
31 8044 33 00 3A 00
31 8048 40 80
32 804A ED 8A 11 09 push label2
33 804E ED 8A 00 11 push high label2
34 8052 06 11 ld b,high label2
35 8054 0E 11 ld c,high label2
36 8056 16 11 ld d,high label2
37 8058 1E 11 ld e,high label2
38 805A 2E 11 ld l,high label2
39 805C 26 11 ld h,high label2
40 805E 36 11 ld (hl),high label2
41 8060 3E 11 ld a,high label2
42 8062 C6 11 add a,high label2
43 8064 CE 11 adc a,high label2
44 8066 D6 11 sub high label2
45 8068 DE 11 sbc a,high label2
46 806A E6 11 and high label2
47 806C EE 11 xor high label2
48 806E F6 11 or high label2
49 8070 FE 11 cp high label2
50 8072 ED 27 11 test high label2
51 8075 ED 91 00 11 nextreg $00,high label2
52 8079 DD 26 11 ld ixh,high label2
53 807C DD 2E 11 ld ixl,high label2
54 807F DD 36 7B 11 ld (ix+123),high label2
55 8083 FD 26 11 ld iyh,high label2
56 8086 FD 2E 11 ld iyl,high label2
57 8089 FD 36 7B 11 ld (iy+123),high label2
58 808D 11 11 00 66 RELSTRUCT {high label2,high label2,,,{"ZX",0}}
58 8091 55 44 AA 99
58 8095 88 77 5A 58
58 8099 00 6C 6F 00
59 809D 11 11 11 11 DB high s2, high s2.end, high s2.Tribyte, high s2.Text, high $
59 80A1 80
60 80A2 11 ABYTE 123 high label2-123
61 80A3 11 00 ABYTEZ 123 high label2-123
62 80A5 C6 11 add a,l2_high
63 80A7 21 11 00 ld hl,l2_high
64 80AA 2A 11 00 ld hl,(l2_high)
65 80AD 22 11 00 ld (l2_high),hl
66 80B0 FD 21 11 00 ld iy,l2_high
67 80B4 FD 2A 11 00 ld iy,(l2_high)
68 80B8 FD 22 11 00 ld (l2_high),iy
69 80BC 11 11 00 ld de,l2_high
70 80BF ED 5B 11 00 ld de,(l2_high)
71 80C3 ED 53 11 00 ld (l2_high),de
72 80C7 3A 11 00 ld a,(l2_high)
73 80CA 32 11 00 ld (l2_high),a
74 80CD CD 11 00 call l2_high
75 80D0 C3 11 00 jp l2_high
76 80D3 ED 35 11 00 add de,l2_high
77 80D7 11 11 00 66 RELSTRUCT {,l2_high,,,{"text",0}}
77 80DB 55 44 AA 99
77 80DF 88 77 74 65
77 80E3 78 74 00 00
78 80E7 13 00 13 00 DW high s4, high s4.end, high s4.Tribyte, high s4.Text, high $
78 80EB 13 00 13 00
78 80EF 80 00
79 80F1
80 80F1 ; resulting relocation data
81 80F1 ; =========================
82 80F1
83 80F1 4C 00 98 00 DW relocate_count, relocate_size
84 80F5
85 80F5 02 00 05 00 RELOCATE_TABLE ; provides relocation addresses pointing directly at the high byte
85 80F9 08 00 0C 00
85 80FD 10 00 14 00
85 8101 17 00 1B 00
85 8105 1F 00 22 00
85 8109 25 00 28 00
85 810D 2B 00 2F 00
85 8111 32 00 41 00
85 8115 43 00 45 00
85 8119 47 00 49 00
85 811D F2 0F F7 0F
85 8121 02 11 04 11
85 8125 06 11 08 11
85 8129 0A 11 0C 11
85 812D 0E 11 10 11
85 8131 12 11 14 11
85 8135 16 11 18 11
85 8139 1A 11 1C 11
85 813D 1E 11 20 11
85 8141 23 11 27 11
85 8145 2A 11 2D 11
85 8149 31 11 34 11
85 814D 37 11 3B 11
85 8151 3C 11 3D 11
85 8155 4C 11 4D 11
85 8159 4E 11 4F 11
85 815D 50 11 51 11
85 8161 52 11 81 13
85 8165 83 13 86 13
85 8169 89 13 8D 13
85 816D 91 13 95 13
85 8171 98 13 9C 13
85 8175 A0 13 A3 13
85 8179 A6 13 A9 13
85 817D AC 13 B0 13
85 8181 B3 13 C2 13
85 8185 C4 13 C6 13
85 8189 C8 13 CA 13
86 818D
87 818D 01 00 04 00 RELOCATE_TABLE +1 ; provides relocation addresses pointing one byte ahead of the high byte
87 8191 07 00 0B 00
87 8195 0F 00 13 00
87 8199 16 00 1A 00
87 819D 1E 00 21 00
87 81A1 24 00 27 00
87 81A5 2A 00 2E 00
87 81A9 31 00 40 00
87 81AD 42 00 44 00
87 81B1 46 00 48 00
87 81B5 F1 0F F6 0F
87 81B9 01 11 03 11
87 81BD 05 11 07 11
87 81C1 09 11 0B 11
87 81C5 0D 11 0F 11
87 81C9 11 11 13 11
87 81CD 15 11 17 11
87 81D1 19 11 1B 11
87 81D5 1D 11 1F 11
87 81D9 22 11 26 11
87 81DD 29 11 2C 11
87 81E1 30 11 33 11
87 81E5 36 11 3A 11
87 81E9 3B 11 3C 11
87 81ED 4B 11 4C 11
87 81F1 4D 11 4E 11
87 81F5 4F 11 50 11
87 81F9 51 11 80 13
87 81FD 82 13 85 13
87 8201 88 13 8C 13
87 8205 90 13 94 13
87 8209 97 13 9B 13
87 820D 9F 13 A2 13
87 8211 A5 13 A8 13
87 8215 AB 13 AF 13
87 8219 B2 13 C1 13
87 821D C3 13 C5 13
87 8221 C7 13 C9 13
88 8225
89 8225 ; second section does test relocation
90 8225 ; ===================================
91 8225
92 8225 RELOCATE_START HIGH
93 8225 ORG $0000
94 0000 ; relocation cases - word immediate instructions (relocation points at high byte)
95 0000 21 26 00 ld hl,label1
96 0003 2A 26 00 ld hl,(label1)
97 0006 22 26 00 ld (label1),hl
98 0009 FD 21 26 00 ld iy,label1
99 000D FD 2A 26 00 ld iy,(label1)
100 0011 FD 22 26 00 ld (label1),iy
101 0015 11 26 00 ld de,label1
102 0018 ED 5B 26 00 ld de,(label1)
103 001C ED 53 26 00 ld (label1),de
104 0020 3A 26 00 ld a,(label1)
105 0023 32 26 00 ld (label1),a
106 0026 label1:
107 0026 CD 26 00 call label1
108 0029 C3 26 00 jp label1
109 002C ED 34 26 00 add hl,label1 ; z80n extras
110 0030 11 26 00 66 s1 RELSTRUCT {,label1,,,{"text",0}}
110 0034 55 44 AA 99
110 0038 88 77 74 65
110 003C 78 74 00 00
111 0040 .end:
112 0040 30 00 40 00 DW s1, s1.end, s1.Tribyte, s1.Text, $
112 0044 33 00 3A 00
112 0048 40 00
113 004A
114 004A ORG $0FF0
115 0FF0 ; super special z80n extra, not working in regular full-word relocation mode
116 0FF0 ED 8A 11 09 push label2 ; but these are possible in HIGH mode
117 0FF4 ED 8A 00 11 push high label2
118 0FF8
119 0FF8 ORG $1101
120 1101 ; relocation cases - byte immediate instructions (relocation points at immediate (high byte))
121 1101 06 11 ld b,high label2
122 1103 0E 11 ld c,high label2
123 1105 16 11 ld d,high label2
124 1107 1E 11 ld e,high label2
125 1109 label2:
126 1109 2E 11 ld l,high label2
127 110B 26 11 ld h,high label2
128 110D 36 11 ld (hl),high label2
129 110F 3E 11 ld a,high label2
130 1111 C6 11 add a,high label2
131 1113 CE 11 adc a,high label2
132 1115 D6 11 sub high label2
133 1117 DE 11 sbc a,high label2
134 1119 E6 11 and high label2
135 111B EE 11 xor high label2
136 111D F6 11 or high label2
137 111F FE 11 cp high label2
138 1121 ED 27 11 test high label2 ; z80n extras
139 1124 ED 91 00 11 nextreg $00,high label2 ; z80n extras
140 1128 ; IX block
141 1128 DD 26 11 ld ixh,high label2
142 112B DD 2E 11 ld ixl,high label2
143 112E DD 36 7B 11 ld (ix+123),high label2
144 1132 ; IY block
145 1132 FD 26 11 ld iyh,high label2
146 1135 FD 2E 11 ld iyl,high label2
147 1138 FD 36 7B 11 ld (iy+123),high label2
148 113C 11 11 00 66 s2 RELSTRUCT {high label2,high label2,,,{"ZX",0}}
148 1140 55 44 AA 99
148 1144 88 77 5A 58
148 1148 00 6C 6F 00
149 114C .end:
150 114C 11 11 11 11 DB high s2, high s2.end, high s2.Tribyte, high s2.Text, high $
150 1150 11
151 1151 11 ABYTE 123 high label2-123
152 1152 11 00 ABYTEZ 123 high label2-123
153 1154
154 1154 ; test EQU "transitiviness" and test word instruction with high byte only
155 1154 ORG $1380
156 1380 l2_high EQU high label2
157 1380 C6 11 add a,l2_high ; is equ transitive (keeping high/regular knowledge)?
158 1382 21 11 00 ld hl,l2_high
159 1385 2A 11 00 ld hl,(l2_high)
160 1388 22 11 00 ld (l2_high),hl
161 138B FD 21 11 00 ld iy,l2_high
162 138F FD 2A 11 00 ld iy,(l2_high)
163 1393 FD 22 11 00 ld (l2_high),iy
164 1397 11 11 00 ld de,l2_high
165 139A ED 5B 11 00 ld de,(l2_high)
166 139E ED 53 11 00 ld (l2_high),de
167 13A2 3A 11 00 ld a,(l2_high)
168 13A5 32 11 00 ld (l2_high),a
169 13A8 CD 11 00 call l2_high
170 13AB C3 11 00 jp l2_high
171 13AE ED 35 11 00 add de,l2_high ; z80n extras
172 13B2 11 11 00 66 s4 RELSTRUCT {,l2_high,,,{"text",0}}
172 13B6 55 44 AA 99
172 13BA 88 77 74 65
172 13BE 78 74 00 00
173 13C2 .end:
174 13C2 13 00 13 00 DW high s4, high s4.end, high s4.Tribyte, high s4.Text, high $
174 13C6 13 00 13 00
174 13CA 13 00
175 13CC
176 13CC ORG $2200
177 2200 ; no relocation cases
178 2200 CF rst $08
179 2201 09 3C 4C 3F DB low label2, low s2, low s2.end, low s2.Tribyte, low s2.Text, low $
179 2205 46 01
180 2207 01 E3 10 ld bc,label2 - label1
181 220A 3E 09 ld a,low label2
182 220C 3E 11 ld a,high label2 - high label1
183 220E 36 11 ld (hl),high label2 - high label1
184 2210 ; IX block
185 2210 DD 36 09 7B ld (ix+low label2),123
186 2214 DD 36 7B 09 ld (ix+123),low label2
187 2218 DD 86 09 add a,(ix+low label2)
188 221B DD 8E 09 adc a,(ix+low label2)
189 221E DD 96 09 sub (ix+low label2)
190 2221 DD 9E 09 sbc a,(ix+low label2)
191 2224 DD A6 09 and (ix+low label2)
192 2227 DD AE 09 xor (ix+low label2)
193 222A DD B6 09 or (ix+low label2)
194 222D DD BE 09 cp (ix+low label2)
195 2230 DD CB 09 46 bit 0,(ix+low label2)
196 2234 DD CB 7B 4E bit 7&low label2,(ix+123)
197 2238 DD CB 09 86 res 0,(ix+low label2)
198 223C DD CB 7B 8E res 7&low label2,(ix+123)
199 2240 DD CB 09 C6 set 0,(ix+low label2)
200 2244 DD CB 7B CE set 7&low label2,(ix+123)
201 2248 ; IY block
202 2248 FD 36 09 7B ld (iy+low label2),123
203 224C FD 36 7B 09 ld (iy+123),low label2
204 2250 FD 86 09 add a,(iy+low label2)
205 2253 FD 8E 09 adc a,(iy+low label2)
206 2256 FD 96 09 sub (iy+low label2)
207 2259 FD 9E 09 sbc a,(iy+low label2)
208 225C FD A6 09 and (iy+low label2)
209 225F FD AE 09 xor (iy+low label2)
210 2262 FD B6 09 or (iy+low label2)
211 2265 FD BE 09 cp (iy+low label2)
212 2268 FD CB 09 46 bit 0,(iy+low label2)
213 226C FD CB 7B 4E bit 7&low label2,(iy+123)
214 2270 FD CB 09 86 res 0,(iy+low label2)
215 2274 FD CB 7B 8E res 7&low label2,(iy+123)
216 2278 FD CB 09 C6 set 0,(iy+low label2)
217 227C FD CB 7B CE set 7&low label2,(iy+123)
218 2280
219 2280 ORG $4400
220 4400 ; unstable/can't be relocated by +offset mechanics
relocation_high_1.asm(221): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
221 4400 D3 11 out (high label2),a ; exception: out (imm8),a is never relocatable
relocation_high_1.asm(222): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
222 4402 DB 11 in a,(high label2) ; exception: in a,(imm8) is never relocatable
relocation_high_1.asm(223): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
223 4404 ED 91 11 00 nextreg high label2,$00 ; z80n extras - register number is never relocatable
relocation_high_1.asm(224): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
224 4408 ED 92 11 nextreg high label2,a ; z80n extras - register number is never relocatable
225 440B ; 16bit relocation should be warned against when only high-byte is possible
relocation_high_1.asm(226): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
226 440B 06 26 ld b,label1 ; even if the label is 8bit value like $0026
relocation_high_1.asm(227): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
227 440D 0E 26 ld c,label1
relocation_high_1.asm(228): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
228 440F 16 26 ld d,label1
relocation_high_1.asm(229): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
229 4411 1E 26 ld e,label1
relocation_high_1.asm(230): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
230 4413 2E 26 ld l,label1
relocation_high_1.asm(231): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
231 4415 26 26 ld h,label1
relocation_high_1.asm(232): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
232 4417 36 26 ld (hl),label1
relocation_high_1.asm(233): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
233 4419 3E 26 ld a,label1
relocation_high_1.asm(234): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
234 441B C6 26 add a,label1
relocation_high_1.asm(235): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
235 441D CE 26 adc a,label1
relocation_high_1.asm(236): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
236 441F D6 26 sub label1
relocation_high_1.asm(237): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
237 4421 DE 26 sbc a,label1
relocation_high_1.asm(238): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
238 4423 E6 26 and label1
relocation_high_1.asm(239): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
239 4425 EE 26 xor label1
relocation_high_1.asm(240): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
240 4427 F6 26 or label1
relocation_high_1.asm(241): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
241 4429 FE 26 cp label1
relocation_high_1.asm(242): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
242 442B ED 27 26 test label1 ; z80n extras
relocation_high_1.asm(243): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
243 442E ED 91 00 26 nextreg $00,label1 ; z80n extras
relocation_high_1.asm(244): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
244 4432 26 33 22 66 s3 RELSTRUCT {label1,,,,{"ZX",0}}
244 4436 55 44 AA 99
244 443A 88 77 5A 58
244 443E 00 6C 6F 00
relocation_high_1.asm(245): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
245 4442 26 DB label1
246 4443 ; IX block
relocation_high_1.asm(247): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
247 4443 DD 26 26 ld ixh,label1
relocation_high_1.asm(248): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
248 4446 DD 2E 26 ld ixl,label1
relocation_high_1.asm(249): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
249 4449 DD 36 7B 26 ld (ix+123),label1
relocation_high_1.asm(250): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
250 444D DD 36 11 7B ld (ix+high label2),123
relocation_high_1.asm(251): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
251 4451 DD 86 11 add a,(ix+high label2)
relocation_high_1.asm(252): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
252 4454 DD 8E 11 adc a,(ix+high label2)
relocation_high_1.asm(253): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
253 4457 DD 96 11 sub (ix+high label2)
relocation_high_1.asm(254): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
254 445A DD 9E 11 sbc a,(ix+high label2)
relocation_high_1.asm(255): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
255 445D DD A6 11 and (ix+high label2)
relocation_high_1.asm(256): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
256 4460 DD AE 11 xor (ix+high label2)
relocation_high_1.asm(257): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
257 4463 DD B6 11 or (ix+high label2)
relocation_high_1.asm(258): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
258 4466 DD BE 11 cp (ix+high label2)
relocation_high_1.asm(259): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
259 4469 DD CB 11 06 rlc (ix+high label2)
relocation_high_1.asm(260): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
260 446D DD CB 11 0E rrc (ix+high label2)
relocation_high_1.asm(261): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
261 4471 DD CB 11 16 rl (ix+high label2)
relocation_high_1.asm(262): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
262 4475 DD CB 11 1E rr (ix+high label2)
relocation_high_1.asm(263): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
263 4479 DD CB 11 26 sla (ix+high label2)
relocation_high_1.asm(264): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
264 447D DD CB 11 2E sra (ix+high label2)
relocation_high_1.asm(265): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
265 4481 DD CB 11 36 sli (ix+high label2)
relocation_high_1.asm(266): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
266 4485 DD CB 11 3E srl (ix+high label2)
relocation_high_1.asm(267): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
267 4489 DD CB 11 46 bit 0,(ix+high label2)
relocation_high_1.asm(268): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
268 448D DD CB 7B 4E bit 7&high label2,(ix+123)
relocation_high_1.asm(269): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
269 4491 DD CB 11 86 res 0,(ix+high label2)
relocation_high_1.asm(270): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
270 4495 DD CB 7B 8E res 7&high label2,(ix+123)
relocation_high_1.asm(271): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
271 4499 DD CB 11 C6 set 0,(ix+high label2)
relocation_high_1.asm(272): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
272 449D DD CB 7B CE set 7&high label2,(ix+123)
273 44A1 ; IY block
relocation_high_1.asm(274): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
274 44A1 FD 26 26 ld iyh,label1
relocation_high_1.asm(275): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
275 44A4 FD 2E 26 ld iyl,label1
relocation_high_1.asm(276): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
276 44A7 FD 36 7B 26 ld (iy+123),label1
relocation_high_1.asm(277): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
277 44AB FD 36 11 7B ld (iy+high label2),123
relocation_high_1.asm(278): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
278 44AF FD 86 11 add a,(iy+high label2)
relocation_high_1.asm(279): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
279 44B2 FD 8E 11 adc a,(iy+high label2)
relocation_high_1.asm(280): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
280 44B5 FD 96 11 sub (iy+high label2)
relocation_high_1.asm(281): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
281 44B8 FD 9E 11 sbc a,(iy+high label2)
relocation_high_1.asm(282): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
282 44BB FD A6 11 and (iy+high label2)
relocation_high_1.asm(283): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
283 44BE FD AE 11 xor (iy+high label2)
relocation_high_1.asm(284): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
284 44C1 FD B6 11 or (iy+high label2)
relocation_high_1.asm(285): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
285 44C4 FD BE 11 cp (iy+high label2)
relocation_high_1.asm(286): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
286 44C7 FD CB 11 06 rlc (iy+high label2)
relocation_high_1.asm(287): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
287 44CB FD CB 11 0E rrc (iy+high label2)
relocation_high_1.asm(288): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
288 44CF FD CB 11 16 rl (iy+high label2)
relocation_high_1.asm(289): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
289 44D3 FD CB 11 1E rr (iy+high label2)
relocation_high_1.asm(290): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
290 44D7 FD CB 11 26 sla (iy+high label2)
relocation_high_1.asm(291): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
291 44DB FD CB 11 2E sra (iy+high label2)
relocation_high_1.asm(292): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
292 44DF FD CB 11 36 sli (iy+high label2)
relocation_high_1.asm(293): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
293 44E3 FD CB 11 3E srl (iy+high label2)
relocation_high_1.asm(294): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
294 44E7 FD CB 11 46 bit 0,(iy+high label2)
relocation_high_1.asm(295): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
295 44EB FD CB 7B 4E bit 7&high label2,(iy+123)
relocation_high_1.asm(296): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
296 44EF FD CB 11 86 res 0,(iy+high label2)
relocation_high_1.asm(297): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
297 44F3 FD CB 7B 8E res 7&high label2,(iy+123)
relocation_high_1.asm(298): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
298 44F7 FD CB 11 C6 set 0,(iy+high label2)
relocation_high_1.asm(299): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
299 44FB FD CB 7B CE set 7&high label2,(iy+123)
300 44FF ; can't be relocated by +offset
relocation_high_1.asm(301): warning[reldiverts]: Expression can't be relocated by simple "+offset" mechanics, value diverts differently.
301 44FF 21 12 22 ld hl,label2+label2
relocation_high_1.asm(302): warning[reldiverts]: Expression can't be relocated by simple "+offset" mechanics, value diverts differently.
302 4502 21 84 08 ld hl,label2>>1
relocation_high_1.asm(303): warning[reldiverts]: Expression can't be relocated by simple "+offset" mechanics, value diverts differently.
303 4505 3E 22 ld a,high label2 + high label2
304 4507 ; transitive EQU
305 4507 l1_regular EQU label1
relocation_high_1.asm(306): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
306 4507 C6 26 add a,l1_regular
307 4509
308 4509 ; ABYTE variants should report unstable when relocatable value is used for "offset" argument
relocation_high_1.asm(309): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
309 4509 01 02 ABYTE high label1 1, 2
relocation_high_1.asm(310): warning[relunstable]: Relocation makes one of the expressions unstable, resulting machine code is not relocatable
310 450B 03 00 ABYTEZ high label1 3
311 450D
312 450D RELOCATE_END
313 450D
relocation_high_1.asm(314): error: HIGH mode can't be mixed with regular mode
314 450D RELOCATE_START ; check if regular-mode emits error about mixing modes
315 450D
# file closed: relocation_high_1.asm
Value Label
------ - -----------------------------------------------------------
0x0026 l1_regular
0x0011 l2_high
0x0026 label1
0x1109 label2
0x004C relocate_count
0x0098 relocate_size
0x0010 X RELSTRUCT
0x0000 X RELSTRUCT.Byte
0x0006 X RELSTRUCT.Dword
0x000A X RELSTRUCT.Text
0x0003 X RELSTRUCT.Tribyte
0x0001 X RELSTRUCT.Word
0x0030 s1
0x0030 X s1.Byte
0x0036 X s1.Dword
0x0040 s1.end
0x003A s1.Text
0x0033 s1.Tribyte
0x0031 X s1.Word
0x113C s2
0x113C X s2.Byte
0x1142 X s2.Dword
0x114C s2.end
0x1146 s2.Text
0x113F s2.Tribyte
0x113D X s2.Word
0x4432 X s3
0x4432 X s3.Byte
0x4438 X s3.Dword
0x443C X s3.Text
0x4435 X s3.Tribyte
0x4433 X s3.Word
0x13B2 s4
0x13B2 X s4.Byte
0x13B8 X s4.Dword
0x13C2 s4.end
0x13BC s4.Text
0x13B5 s4.Tribyte
0x13B3 X s4.Word