tpasm 1.2 Assembling on Fri Oct 13 09:45:59 2006
Source File: testz80.asm Line Loc Object/(Value) T Source ----- -------- -------------- - ------ 1 00000000 // z80 test code 2 00000000 // Sample source file demonstrating/testing tpasm 3 00000000 // assemble this with: 4 00000000 // tpasm -P z80 -I ../include -l testz80.lst -o intel testz80.hex testz80.asm 5 00000000 6 00000000 (00000063) variable .set 99 7 00000000 8 00000000 9 00000000 seg code 10 00000000 org 0x0000 11 00000000 12 00000000 reset: 13 00000000 CE A5 adc a,0xa5 ; ce a5 14 00000002 8E adc a,(hl) ; 8e 15 00000003 DD 8E 12 adc a,(ix+disp) ; dd 8e 12 16 00000006 FD 8E 12 adc a,(iy+disp) ; fd 8e 12 17 00000009 8F adc a,a ; 8f 18 0000000A 88 adc a,b ; 88 19 0000000B 89 adc a,c ; 89 20 0000000C 8A adc a,d ; 8a 21 0000000D 8B adc a,e ; 8b 22 0000000E 8C adc a,h ; 8c 23 0000000F 8D adc a,l ; 8d 24 00000010 ED 4A adc hl,bc ; ed 4a 25 00000012 ED 5A adc hl,de ; ed 5a 26 00000014 ED 6A adc hl,hl ; ed 6a 27 00000016 ED 7A adc hl,sp ; ed 7a 28 00000018 29 00000018 C6 A5 add a,0xa5 ; c6 a5 30 0000001A 86 add a,(hl) ; 86 31 0000001B DD 86 12 add a,(ix+disp) ; dd 86 12 32 0000001E FD 86 12 add a,(iy+disp) ; fd 86 12 33 00000021 87 add a,a ; 87 34 00000022 80 add a,b ; 80 35 00000023 81 add a,c ; 81 36 00000024 82 add a,d ; 82 37 00000025 83 add a,e ; 83 38 00000026 84 add a,h ; 84 39 00000027 85 add a,l ; 85 40 00000028 09 add hl,bc ; 09 41 00000029 19 add hl,de ; 19 42 0000002A 29 add hl,hl ; 29 43 0000002B 39 add hl,sp ; 39 44 0000002C DD 09 add ix,bc ; dd 09 45 0000002E DD 19 add ix,de ; dd 19 46 00000030 DD 29 add ix,hl ; dd 29 47 00000032 DD 39 add ix,sp ; dd 39 48 00000034 FD 09 add iy,bc ; fd 09 49 00000036 FD 19 add iy,de ; fd 19 50 00000038 FD 29 add iy,hl ; fd 29 51 0000003A FD 39 add iy,sp ; fd 39 52 0000003C 53 0000003C E6 A5 and 0xa5 ; e6 a5 54 0000003E A6 and (hl) ; a6 55 0000003F DD A6 12 and (ix+disp) ; dd a6 12 56 00000042 FD A6 12 and (iy+disp) ; fd a6 12 57 00000045 A7 and a ; a7 58 00000046 A0 and b ; a0 59 00000047 A1 and c ; a1 60 00000048 A2 and d ; a2 61 00000049 A3 and e ; a3 62 0000004A A4 and h ; a4 63 0000004B A5 and l ; a5 64 0000004C 65 0000004C CB 46 bit 0,(hl) ; cb 46 66 0000004E DD CB 12 46 bit 0,(ix+disp) ; dd cb 12 46 67 00000052 FD CB 12 46 bit 0,(iy+disp) ; fd cb 12 46 68 00000056 CB 47 bit 0,a ; cb 47 69 00000058 CB 40 bit 0,b ; cb 40 70 0000005A CB 41 bit 0,c ; cb 41 71 0000005C CB 42 bit 0,d ; cb 42 72 0000005E CB 43 bit 0,e ; cb 43 73 00000060 CB 44 bit 0,h ; cb 44 74 00000062 CB 45 bit 0,l ; cb 45 75 00000064 76 00000064 CB 4E bit 1,(hl) ; cb 4e 77 00000066 DD CB 12 4E bit 1,(ix+disp) ; dd cb 12 4e 78 0000006A FD CB 12 4E bit 1,(iy+disp) ; fd cb 12 4e 79 0000006E CB 4F bit 1,a ; cb 4f 80 00000070 CB 48 bit 1,b ; cb 48 81 00000072 CB 49 bit 1,c ; cb 49 82 00000074 CB 4A bit 1,d ; cb 4a 83 00000076 CB 4B bit 1,e ; cb 4b 84 00000078 CB 4C bit 1,h ; cb 4c 85 0000007A CB 4D bit 1,l ; cb 4d 86 0000007C 87 0000007C CB 56 bit 2,(hl) ; cb 56 88 0000007E DD CB 12 56 bit 2,(ix+disp) ; dd cb 12 56 89 00000082 FD CB 12 56 bit 2,(iy+disp) ; fd cb 12 56 90 00000086 CB 57 bit 2,a ; cb 57 91 00000088 CB 50 bit 2,b ; cb 50 92 0000008A CB 51 bit 2,c ; cb 51 93 0000008C CB 52 bit 2,d ; cb 52 94 0000008E CB 53 bit 2,e ; cb 53 95 00000090 CB 54 bit 2,h ; cb 54 96 00000092 CB 55 bit 2,l ; cb 55 97 00000094 98 00000094 CB 5E bit 3,(hl) ; cb 5e 99 00000096 DD CB 12 5E bit 3,(ix+disp) ; dd cb 12 5e 100 0000009A FD CB 12 5E bit 3,(iy+disp) ; fd cb 12 5e 101 0000009E CB 5F bit 3,a ; cb 5f 102 000000A0 CB 58 bit 3,b ; cb 58 103 000000A2 CB 59 bit 3,c ; cb 59 104 000000A4 CB 5A bit 3,d ; cb 5a 105 000000A6 CB 5B bit 3,e ; cb 5b 106 000000A8 CB 5C bit 3,h ; cb 5c 107 000000AA CB 5D bit 3,l ; cb 5d 108 000000AC 109 000000AC CB 66 bit 4,(hl) ; cb 66 110 000000AE DD CB 12 66 bit 4,(ix+disp) ; dd cb 12 66 111 000000B2 FD CB 12 66 bit 4,(iy+disp) ; fd cb 12 66 112 000000B6 CB 67 bit 4,a ; cb 67 113 000000B8 CB 60 bit 4,b ; cb 60 114 000000BA CB 61 bit 4,c ; cb 61 115 000000BC CB 62 bit 4,d ; cb 62 116 000000BE CB 63 bit 4,e ; cb 63 117 000000C0 CB 64 bit 4,h ; cb 64 118 000000C2 CB 65 bit 4,l ; cb 65 119 000000C4 120 000000C4 CB 6E bit 5,(hl) ; cb 6e 121 000000C6 DD CB 12 6E bit 5,(ix+disp) ; dd cb 12 6e 122 000000CA FD CB 12 6E bit 5,(iy+disp) ; fd cb 12 6e 123 000000CE CB 6F bit 5,a ; cb 6f 124 000000D0 CB 68 bit 5,b ; cb 68 125 000000D2 CB 69 bit 5,c ; cb 69 126 000000D4 CB 6A bit 5,d ; cb 6a 127 000000D6 CB 6B bit 5,e ; cb 6b 128 000000D8 CB 6C bit 5,h ; cb 6c 129 000000DA CB 6D bit 5,l ; cb 6d 130 000000DC 131 000000DC CB 76 bit 6,(hl) ; cb 76 132 000000DE DD CB 12 76 bit 6,(ix+disp) ; dd cb 12 76 133 000000E2 FD CB 12 76 bit 6,(iy+disp) ; fd cb 12 76 134 000000E6 CB 77 bit 6,a ; cb 77 135 000000E8 CB 70 bit 6,b ; cb 70 136 000000EA CB 71 bit 6,c ; cb 71 137 000000EC CB 72 bit 6,d ; cb 72 138 000000EE CB 73 bit 6,e ; cb 73 139 000000F0 CB 74 bit 6,h ; cb 74 140 000000F2 CB 75 bit 6,l ; cb 75 141 000000F4 142 000000F4 CB 7E bit 7,(hl) ; cb 7e 143 000000F6 DD CB 12 7E bit 7,(ix+disp) ; dd cb 12 7e 144 000000FA FD CB 12 7E bit 7,(iy+disp) ; fd cb 12 7e 145 000000FE CB 7F bit 7,a ; cb 7f 146 00000100 CB 78 bit 7,b ; cb 78 147 00000102 CB 79 bit 7,c ; cb 79 148 00000104 CB 7A bit 7,d ; cb 7a 149 00000106 CB 7B bit 7,e ; cb 7b 150 00000108 CB 7C bit 7,h ; cb 7c 151 0000010A CB 7D bit 7,l ; cb 7d 152 0000010C 153 0000010C CD 34 12 call address ; cd 34 12 154 0000010F DC 34 12 call c,address ; dc 34 12 155 00000112 FC 34 12 call m,address ; fc 34 12 156 00000115 D4 34 12 call nc,address ; d4 34 12 157 00000118 C4 34 12 call nz,address ; c4 34 12 158 0000011B F4 34 12 call p,address ; f4 34 12 159 0000011E EC 34 12 call pe,address ; ec 34 12 160 00000121 E4 34 12 call po,address ; e4 34 12 161 00000124 CC 34 12 call z,address ; cc 34 12 162 00000127 163 00000127 3F ccf ; 3f 164 00000128 165 00000128 FE A5 cp 0xa5 ; fe a5 166 0000012A BE cp (hl) ; be 167 0000012B DD BE 12 cp (ix+disp) ; dd be 12 168 0000012E FD BE 12 cp (iy+disp) ; fd be 12 169 00000131 BF cp a ; bf 170 00000132 B8 cp b ; b8 171 00000133 B9 cp c ; b9 172 00000134 BA cp d ; ba 173 00000135 BB cp e ; bb 174 00000136 BC cp h ; bc 175 00000137 BD cp l ; bd 176 00000138 177 00000138 ED A9 cpd ; ed a9 178 0000013A 179 0000013A ED B9 cpdr ; ed 89 180 0000013C 181 0000013C ED A1 cpi ; ed a1 182 0000013E 183 0000013E ED B1 cpir ; ed 81 184 00000140 185 00000140 2F cpl ; 2f 186 00000141 187 00000141 27 daa ; 27 188 00000142 189 00000142 35 dec (hl) ; 35 190 00000143 DD 35 12 dec (ix+disp) ; dd 35 12 191 00000146 FD 35 12 dec (iy+disp) ; fd 35 12 192 00000149 3D dec a ; 3d 193 0000014A 05 dec b ; 05 194 0000014B 0B dec bc ; 0b 195 0000014C 0D dec c ; 0d 196 0000014D 15 dec d ; 15 197 0000014E 1B dec de ; 1b 198 0000014F 1D dec e ; 1d 199 00000150 25 dec h ; 25 200 00000151 2B dec hl ; 2b 201 00000152 DD 2B dec ix ; dd 2b 202 00000154 FD 2B dec iy ; fd 2b 203 00000156 2D dec l ; 2d 204 00000157 3B dec sp ; 3b 205 00000158 206 00000158 F3 di ; f3 207 00000159 208 00000159 loop 209 00000159 00 nop ; 00 210 0000015A 00 nop 211 0000015B 10 FC djnz loop ; 10 FC 212 0000015D 213 0000015D FB ei ; fb 214 0000015E 215 0000015E E3 ex (sp),hl ; e3 216 0000015F DD E3 ex (sp),ix ; dd e3 217 00000161 FD E3 ex (sp),iy ; fd e3 218 00000163 08 ex af,af' ; 08 219 00000164 EB ex de,hl ; eb 220 00000165 221 00000165 D9 exx ; d9 222 00000166 223 00000166 76 halt ; 76 224 00000167 225 00000167 ED 46 im 0 ; ed 46 226 00000169 ED 56 im 1 ; ed 56 227 0000016B ED 5E im 2 ; ed 5e 228 0000016D 229 0000016D DB 12 in a,(disp) ; db 12 230 0000016F ED 78 in a,(c) ; ed 78 231 00000171 ED 40 in b,(c) ; ed 40 232 00000173 ED 48 in c,(c) ; ed 48 233 00000175 ED 50 in d,(c) ; ed 50 234 00000177 ED 58 in e,(c) ; ed 58 235 00000179 ED 60 in h,(c) ; ed 60 236 0000017B ED 68 in l,(c) ; ed 68 237 0000017D 238 0000017D 34 inc (hl) ; 34 239 0000017E DD 34 12 inc (ix+disp) ; dd 34 12 240 00000181 FD 34 12 inc (iy+disp) ; fd 34 12 241 00000184 3C inc a ; 3c 242 00000185 04 inc b ; 04 243 00000186 03 inc bc ; 03 244 00000187 0C inc c ; 0c 245 00000188 14 inc d ; 14 246 00000189 13 inc de ; 13 247 0000018A 1C inc e ; 1c 248 0000018B 24 inc h ; 24 249 0000018C 23 inc hl ; 23 250 0000018D DD 23 inc ix ; dd 23 251 0000018F FD 23 inc iy ; fd 23 252 00000191 2C inc l ; 2c 253 00000192 33 inc sp ; 33 254 00000193 255 00000193 ED AA ind ; ed aa 256 00000195 257 00000195 ED BA indr ; ed ba 258 00000197 259 00000197 ED A2 ini ; ed a2 260 00000199 261 00000199 ED B2 inir ; ed b2 262 0000019B 263 0000019B E9 jp (hl) ; e9 264 0000019C DD E9 jp (ix) ; dd e9 265 0000019E FD E9 jp (iy) ; fd e9 266 000001A0 C3 34 12 jp address ; c3 34 12 267 000001A3 DA 34 12 jp c,address ; da 34 12 268 000001A6 FA 34 12 jp m,address ; fa 34 12 269 000001A9 D2 34 12 jp nc,address ; d2 34 12 270 000001AC C2 34 12 jp nz,address ; c2 34 12 271 000001AF F2 34 12 jp p,address ; f2 34 12 272 000001B2 EA 34 12 jp pe,address ; ea 34 12 273 000001B5 E2 34 12 jp po,address ; e2 34 12 274 000001B8 CA 34 12 jp z,address ; ca 34 12 275 000001BB 276 000001BB 18 04 jr label ; 18 04 277 000001BD 38 02 jr c,label ; 38 02 278 000001BF 30 00 jr nc,label ; 30 00 279 000001C1 label 280 000001C1 28 FE jr z,label ; 28 fe 281 000001C3 20 FC jr nz,label ; 20 fc 282 000001C5 283 000001C5 0A ld a,(bc) ; 0a 284 000001C6 1A ld a,(de) ; 1a 285 000001C7 3A 34 12 ld a,(address) ; 3a 34 12 286 000001CA 3E A5 ld a,0xa5 ; 3e a5 287 000001CC 7E ld a,(hl) ; 7e 288 000001CD DD 7E 12 ld a,(ix+disp) ; dd 7e 12 289 000001D0 FD 7E 12 ld a,(iy+disp) ; fd 7e 12 290 000001D3 7F ld a,a ; 7f 291 000001D4 78 ld a,b ; 78 292 000001D5 79 ld a,c ; 79 293 000001D6 7A ld a,d ; 7a 294 000001D7 7B ld a,e ; 7b 295 000001D8 7C ld a,h ; 7c 296 000001D9 7D ld a,l ; 7d 297 000001DA ED 57 ld a,i ; ed 57 298 000001DC ED 5F ld a,r ; ed 5f 299 000001DE 300 000001DE 06 A5 ld b,0xa5 ; 06 a5 301 000001E0 46 ld b,(hl) ; 46 302 000001E1 DD 46 12 ld b,(ix+disp) ; dd 46 12 303 000001E4 FD 46 12 ld b,(iy+disp) ; fd 46 12 304 000001E7 47 ld b,a ; 47 305 000001E8 40 ld b,b ; 40 306 000001E9 41 ld b,c ; 41 307 000001EA 42 ld b,d ; 42 308 000001EB 43 ld b,e ; 43 309 000001EC 44 ld b,h ; 44 310 000001ED 45 ld b,l ; 45 311 000001EE 312 000001EE 0E A5 ld c,0xa5 ; 0e a5 313 000001F0 4E ld c,(hl) ; 4e 314 000001F1 DD 4E 12 ld c,(ix+disp) ; dd 4e 12 315 000001F4 FD 4E 12 ld c,(iy+disp) ; fd 4e 12 316 000001F7 4F ld c,a ; 4f 317 000001F8 48 ld c,b ; 48 318 000001F9 49 ld c,c ; 49 319 000001FA 4A ld c,d ; 4a 320 000001FB 4B ld c,e ; 4b 321 000001FC 4C ld c,h ; 4c 322 000001FD 4D ld c,l ; 4d 323 000001FE 324 000001FE 16 A5 ld d,0xa5 ; 16 a5 325 00000200 56 ld d,(hl) ; 56 326 00000201 DD 56 12 ld d,(ix+disp) ; dd 56 12 327 00000204 FD 56 12 ld d,(iy+disp) ; fd 56 12 328 00000207 57 ld d,a ; 57 329 00000208 50 ld d,b ; 50 330 00000209 51 ld d,c ; 51 331 0000020A 52 ld d,d ; 52 332 0000020B 53 ld d,e ; 53 333 0000020C 54 ld d,h ; 54 334 0000020D 55 ld d,l ; 55 335 0000020E 336 0000020E 1E A5 ld e,0xa5 ; 1e a5 337 00000210 5E ld e,(hl) ; 5e 338 00000211 DD 5E 12 ld e,(ix+disp) ; dd 5e 12 339 00000214 FD 5E 12 ld e,(iy+disp) ; fd 5e 12 340 00000217 5F ld e,a ; 5f 341 00000218 58 ld e,b ; 58 342 00000219 59 ld e,c ; 59 343 0000021A 5A ld e,d ; 5a 344 0000021B 5B ld e,e ; 5b 345 0000021C 5C ld e,h ; 5c 346 0000021D 5D ld e,l ; 5d 347 0000021E 348 0000021E 26 A5 ld h,0xa5 ; 26 a5 349 00000220 66 ld h,(hl) ; 66 350 00000221 DD 66 12 ld h,(ix+disp) ; dd 66 12 351 00000224 FD 66 12 ld h,(iy+disp) ; fd 66 12 352 00000227 67 ld h,a ; 67 353 00000228 60 ld h,b ; 60 354 00000229 61 ld h,c ; 61 355 0000022A 62 ld h,d ; 62 356 0000022B 63 ld h,e ; 63 357 0000022C 64 ld h,h ; 64 358 0000022D 65 ld h,l ; 65 359 0000022E 360 0000022E 2E A5 ld l,0xa5 ; 2e a5 361 00000230 6E ld l,(hl) ; 6e 362 00000231 DD 6E 12 ld l,(ix+disp) ; dd 6e 12 363 00000234 FD 6E 12 ld l,(iy+disp) ; fd 6e 12 364 00000237 6F ld l,a ; 6f 365 00000238 68 ld l,b ; 68 366 00000239 69 ld l,c ; 69 367 0000023A 6A ld l,d ; 6a 368 0000023B 6B ld l,e ; 6b 369 0000023C 6C ld l,h ; 6c 370 0000023D 6D ld l,l ; 6d 371 0000023E 372 0000023E 36 A5 ld (hl),0xa5 ; 36 a5 373 00000240 DD 36 12 A5 ld (ix+disp),0xa5 ; dd 36 12 a5 374 00000244 FD 36 12 A5 ld (iy+disp),0xa5 ; fd 36 12 a5 375 00000248 376 00000248 02 ld (bc),a ; 02 377 00000249 12 ld (de),a ; 12 378 0000024A 32 34 12 ld (address),a ; 32 34 12 379 0000024D 77 ld (hl),a ; 77 380 0000024E DD 77 12 ld (ix+disp),a ; dd 77 12 381 00000251 FD 77 12 ld (iy+disp),a ; fd 77 12 382 00000254 ED 47 ld i,a ; ed 47 383 00000256 ED 4F ld r,a ; ed 4f 384 00000258 385 00000258 70 ld (hl),b ; 70 386 00000259 DD 70 12 ld (ix+disp),b ; dd 70 12 387 0000025C FD 70 12 ld (iy+disp),b ; fd 70 12 388 0000025F 389 0000025F 71 ld (hl),c ; 71 390 00000260 DD 71 12 ld (ix+disp),c ; dd 71 12 391 00000263 FD 71 12 ld (iy+disp),c ; fd 71 12 392 00000266 393 00000266 72 ld (hl),d ; 72 394 00000267 DD 72 12 ld (ix+disp),d ; dd 72 12 395 0000026A FD 72 12 ld (iy+disp),d ; fd 72 12 396 0000026D 397 0000026D 73 ld (hl),e ; 73 398 0000026E DD 73 12 ld (ix+disp),e ; dd 73 12 399 00000271 FD 73 12 ld (iy+disp),e ; fd 73 12 400 00000274 401 00000274 74 ld (hl),h ; 74 402 00000275 DD 74 12 ld (ix+disp),h ; dd 74 12 403 00000278 FD 74 12 ld (iy+disp),h ; fd 74 12 404 0000027B 405 0000027B 75 ld (hl),l ; 75 406 0000027C DD 75 12 ld (ix+disp),l ; dd 75 12 407 0000027F FD 75 12 ld (iy+disp),l ; fd 75 12 408 00000282 409 00000282 01 34 12 ld bc,address ; 01 34 12 410 00000285 11 34 12 ld de,address ; 11 34 12 411 00000288 21 34 12 ld hl,address ; 21 34 12 412 0000028B 31 34 12 ld sp,address ; 31 34 12 413 0000028E DD 21 34 12 ld ix,address ; dd 21 34 12 414 00000292 FD 21 34 12 ld iy,address ; fd 21 34 12 415 00000296 416 00000296 ED 4B 34 12 ld bc,(address) ; ed 4b 34 12 417 0000029A ED 5B 34 12 ld de,(address) ; ed 5b 34 12 418 0000029E 2A 34 12 ld hl,(address) ; 2a 34 12 419 000002A1 ED 7B 34 12 ld sp,(address) ; ed 7b 34 12 420 000002A5 DD 2A 34 12 ld ix,(address) ; dd 2a 34 12 421 000002A9 FD 2A 34 12 ld iy,(address) ; fd 2a 34 12 422 000002AD 423 000002AD ED 43 34 12 ld (address),bc ; ed 43 34 12 424 000002B1 ED 53 34 12 ld (address),de ; ed 53 34 12 425 000002B5 22 34 12 ld (address),hl ; 22 34 12 426 000002B8 ED 73 34 12 ld (address),sp ; ed 73 34 12 427 000002BC DD 22 34 12 ld (address),ix ; dd 22 34 12 428 000002C0 FD 22 34 12 ld (address),iy ; fd 22 34 12 429 000002C4 430 000002C4 F9 ld sp,hl ; f9 431 000002C5 DD F9 ld sp,ix ; dd f9 432 000002C7 FD F9 ld sp,iy ; fd f9 433 000002C9 434 000002C9 ED A8 ldd ; ed a8 435 000002CB 436 000002CB ED B8 lddr ; ed b8 437 000002CD 438 000002CD ED A0 ldi ; ed a0 439 000002CF 440 000002CF ED B0 ldir ; ed b0 441 000002D1 442 000002D1 ED 44 neg ; ed 44 443 000002D3 444 000002D3 00 nop ; 00 445 000002D4 446 000002D4 F6 A5 or 0xa5 ; f6 a5 447 000002D6 B6 or (hl) ; b6 448 000002D7 DD B6 12 or (ix+disp) ; dd b6 12 449 000002DA FD B6 12 or (iy+disp) ; fd b6 12 450 000002DD B7 or a ; b7 451 000002DE B0 or b ; b0 452 000002DF B1 or c ; b1 453 000002E0 B2 or d ; b2 454 000002E1 B3 or e ; b3 455 000002E2 B4 or h ; b4 456 000002E3 B5 or l ; b5 457 000002E4 458 000002E4 ED BB otdr ; ed bb 459 000002E6 460 000002E6 ED B3 otir ; ed b3 461 000002E8 462 000002E8 D3 12 out (disp),a ; d3 12 463 000002EA ED 79 out (c),a ; ed 79 464 000002EC ED 41 out (c),b ; ed 41 465 000002EE ED 49 out (c),c ; ed 49 466 000002F0 ED 51 out (c),d ; ed 51 467 000002F2 ED 59 out (c),e ; ed 59 468 000002F4 ED 61 out (c),h ; ed 61 469 000002F6 ED 69 out (c),l ; ed 69 470 000002F8 471 000002F8 ED AB outd ; ed ab 472 000002FA 473 000002FA ED A3 outi ; ed a3 474 000002FC 475 000002FC F1 pop af ; f1 476 000002FD C1 pop bc ; c1 477 000002FE D1 pop de ; d1 478 000002FF E1 pop hl ; e1 479 00000300 DD E1 pop ix ; dd e1 480 00000302 FD E1 pop iy ; fd e1 481 00000304 482 00000304 F5 push af ; f5 483 00000305 C5 push bc ; c5 484 00000306 D5 push de ; d5 485 00000307 E5 push hl ; e5 486 00000308 DD E5 push ix ; dd e5 487 0000030A FD E5 push iy ; fd e5 488 0000030C 489 0000030C CB 86 res 0,(hl) ; cb 86 490 0000030E DD CB 12 86 res 0,(ix+disp) ; dd cb 12 86 491 00000312 FD CB 12 86 res 0,(iy+disp) ; fd cb 12 86 492 00000316 CB 87 res 0,a ; cb 87 493 00000318 CB 80 res 0,b ; cb 80 494 0000031A CB 81 res 0,c ; cb 81 495 0000031C CB 82 res 0,d ; cb 82 496 0000031E CB 83 res 0,e ; cb 83 497 00000320 CB 84 res 0,h ; cb 84 498 00000322 CB 85 res 0,l ; cb 85 499 00000324 500 00000324 CB 8E res 1,(hl) ; cb 8e 501 00000326 DD CB 12 8E res 1,(ix+disp) ; dd cb 12 8e 502 0000032A FD CB 12 8E res 1,(iy+disp) ; fd cb 12 8e 503 0000032E CB 8F res 1,a ; cb 8f 504 00000330 CB 88 res 1,b ; cb 88 505 00000332 CB 89 res 1,c ; cb 89 506 00000334 CB 8A res 1,d ; cb 8a 507 00000336 CB 8B res 1,e ; cb 8b 508 00000338 CB 8C res 1,h ; cb 8c 509 0000033A CB 8D res 1,l ; cb 8d 510 0000033C 511 0000033C CB 96 res 2,(hl) ; cb 96 512 0000033E DD CB 12 96 res 2,(ix+disp) ; dd cb 12 96 513 00000342 FD CB 12 96 res 2,(iy+disp) ; fd cb 12 96 514 00000346 CB 97 res 2,a ; cb 97 515 00000348 CB 90 res 2,b ; cb 90 516 0000034A CB 91 res 2,c ; cb 91 517 0000034C CB 92 res 2,d ; cb 92 518 0000034E CB 93 res 2,e ; cb 93 519 00000350 CB 94 res 2,h ; cb 94 520 00000352 CB 95 res 2,l ; cb 95 521 00000354 522 00000354 CB 9E res 3,(hl) ; cb 9e 523 00000356 DD CB 12 9E res 3,(ix+disp) ; dd cb 12 9e 524 0000035A FD CB 12 9E res 3,(iy+disp) ; fd cb 12 9e 525 0000035E CB 9F res 3,a ; cb 9f 526 00000360 CB 98 res 3,b ; cb 98 527 00000362 CB 99 res 3,c ; cb 99 528 00000364 CB 9A res 3,d ; cb 9a 529 00000366 CB 9B res 3,e ; cb 9b 530 00000368 CB 9C res 3,h ; cb 9c 531 0000036A CB 9D res 3,l ; cb 9d 532 0000036C 533 0000036C CB A6 res 4,(hl) ; cb a6 534 0000036E DD CB 12 A6 res 4,(ix+disp) ; dd cb 12 a6 535 00000372 FD CB 12 A6 res 4,(iy+disp) ; fd cb 12 a6 536 00000376 CB A7 res 4,a ; cb a7 537 00000378 CB A0 res 4,b ; cb a0 538 0000037A CB A1 res 4,c ; cb a1 539 0000037C CB A2 res 4,d ; cb a2 540 0000037E CB A3 res 4,e ; cb a3 541 00000380 CB A4 res 4,h ; cb a4 542 00000382 CB A5 res 4,l ; cb a5 543 00000384 544 00000384 CB AE res 5,(hl) ; cb ae 545 00000386 DD CB 12 AE res 5,(ix+disp) ; dd cb 12 ae 546 0000038A FD CB 12 AE res 5,(iy+disp) ; fd cb 12 ae 547 0000038E CB AF res 5,a ; cb af 548 00000390 CB A8 res 5,b ; cb a8 549 00000392 CB A9 res 5,c ; cb a9 550 00000394 CB AA res 5,d ; cb aa 551 00000396 CB AB res 5,e ; cb ab 552 00000398 CB AC res 5,h ; cb ac 553 0000039A CB AD res 5,l ; cb ad 554 0000039C 555 0000039C CB B6 res 6,(hl) ; cb b6 556 0000039E DD CB 12 B6 res 6,(ix+disp) ; dd cb 12 b6 557 000003A2 FD CB 12 B6 res 6,(iy+disp) ; fd cb 12 b6 558 000003A6 CB B7 res 6,a ; cb b7 559 000003A8 CB B0 res 6,b ; cb b0 560 000003AA CB B1 res 6,c ; cb b1 561 000003AC CB B2 res 6,d ; cb b2 562 000003AE CB B3 res 6,e ; cb b3 563 000003B0 CB B4 res 6,h ; cb b4 564 000003B2 CB B5 res 6,l ; cb b5 565 000003B4 566 000003B4 CB BE res 7,(hl) ; cb be 567 000003B6 DD CB 12 BE res 7,(ix+disp) ; dd cb 12 be 568 000003BA FD CB 12 BE res 7,(iy+disp) ; fd cb 12 be 569 000003BE CB BF res 7,a ; cb bf 570 000003C0 CB B8 res 7,b ; cb b8 571 000003C2 CB B9 res 7,c ; cb b9 572 000003C4 CB BA res 7,d ; cb ba 573 000003C6 CB BB res 7,e ; cb bb 574 000003C8 CB BC res 7,h ; cb bc 575 000003CA CB BD res 7,l ; cb bd 576 000003CC 577 000003CC C9 ret ; c9 578 000003CD D8 ret c ; d8 579 000003CE F8 ret m ; f8 580 000003CF D0 ret nc ; d0 581 000003D0 C0 ret nz ; c0 582 000003D1 F0 ret p ; f0 583 000003D2 E8 ret pe ; e8 584 000003D3 E0 ret po ; e0 585 000003D4 C8 ret z ; c8 586 000003D5 587 000003D5 ED 4D reti ; ed 4d 588 000003D7 589 000003D7 ED 45 retn ; ed 45 590 000003D9 591 000003D9 CB 16 rl (hl) ; cb 16 592 000003DB DD CB 12 16 rl (ix+disp) ; dd cb 12 16 593 000003DF FD CB 12 16 rl (iy+disp) ; fd cb 12 16 594 000003E3 CB 17 rl a ; cb 17 595 000003E5 CB 10 rl b ; cb 10 596 000003E7 CB 11 rl c ; cb 11 597 000003E9 CB 12 rl d ; cb 12 598 000003EB CB 13 rl e ; cb 13 599 000003ED CB 14 rl h ; cb 14 600 000003EF CB 15 rl l ; cb 15 601 000003F1 602 000003F1 17 rla ; 17 603 000003F2 604 000003F2 CB 06 rlc (hl) ; cb 06 605 000003F4 DD CB 12 06 rlc (ix+disp) ; dd cb 12 06 606 000003F8 FD CB 12 06 rlc (iy+disp) ; fd cb 12 06 607 000003FC CB 07 rlc a ; cb 07 608 000003FE CB 00 rlc b ; cb 00 609 00000400 CB 01 rlc c ; cb 01 610 00000402 CB 02 rlc d ; cb 02 611 00000404 CB 03 rlc e ; cb 03 612 00000406 CB 04 rlc h ; cb 04 613 00000408 CB 05 rlc l ; cb 05 614 0000040A 615 0000040A 07 rlca ; 07 616 0000040B 617 0000040B ED 6F rld ; ed 6f 618 0000040D 619 0000040D CB 1E rr (hl) ; cb 1e 620 0000040F DD CB 12 1E rr (ix+disp) ; dd cb 12 1e 621 00000413 FD CB 12 1E rr (iy+disp) ; fd cb 12 1e 622 00000417 CB 1F rr a ; cb 1f 623 00000419 CB 18 rr b ; cb 18 624 0000041B CB 19 rr c ; cb 19 625 0000041D CB 1A rr d ; cb 1a 626 0000041F CB 1B rr e ; cb 1b 627 00000421 CB 1C rr h ; cb 1c 628 00000423 CB 1D rr l ; cb 1d 629 00000425 630 00000425 1F rra ; 1f 631 00000426 632 00000426 CB 0E rrc (hl) ; cb 0e 633 00000428 DD CB 12 0E rrc (ix+disp) ; dd cb 12 0e 634 0000042C FD CB 12 0E rrc (iy+disp) ; fd cb 12 0e 635 00000430 CB 0F rrc a ; cb 0f 636 00000432 CB 08 rrc b ; cb 08 637 00000434 CB 09 rrc c ; cb 09 638 00000436 CB 0A rrc d ; cb 0a 639 00000438 CB 0B rrc e ; cb 0b 640 0000043A CB 0C rrc h ; cb 0c 641 0000043C CB 0D rrc l ; cb 0d 642 0000043E 643 0000043E 0F rrca ; 0f 644 0000043F 645 0000043F ED 67 rrd ; ed 67 646 00000441 647 00000441 C7 rst 0x00 ; c7 648 00000442 CF rst 0x08 ; cf 649 00000443 D7 rst 0x10 ; d7 650 00000444 DF rst 0x18 ; df 651 00000445 E7 rst 0x20 ; e7 652 00000446 EF rst 0x28 ; ef 653 00000447 F7 rst 0x30 ; f7 654 00000448 FF rst 0x38 ; ff 655 00000449 656 00000449 37 scf ; 37 657 0000044A 658 0000044A CB C6 set 0,(hl) ; cb c6 659 0000044C DD CB 12 C6 set 0,(ix+disp) ; dd cb 12 c6 660 00000450 FD CB 12 C6 set 0,(iy+disp) ; fd cb 12 c6 661 00000454 CB C7 set 0,a ; cb c7 662 00000456 CB C0 set 0,b ; cb c0 663 00000458 CB C1 set 0,c ; cb c1 664 0000045A CB C2 set 0,d ; cb c2 665 0000045C CB C3 set 0,e ; cb c3 666 0000045E CB C4 set 0,h ; cb c4 667 00000460 CB C5 set 0,l ; cb c5 668 00000462 669 00000462 CB CE set 1,(hl) ; cb ce 670 00000464 DD CB 12 CE set 1,(ix+disp) ; dd cb 12 ce 671 00000468 FD CB 12 CE set 1,(iy+disp) ; fd cb 12 ce 672 0000046C CB CF set 1,a ; cb cf 673 0000046E CB C8 set 1,b ; cb c8 674 00000470 CB C9 set 1,c ; cb c9 675 00000472 CB CA set 1,d ; cb ca 676 00000474 CB CB set 1,e ; cb cb 677 00000476 CB CC set 1,h ; cb cc 678 00000478 CB CD set 1,l ; cb cd 679 0000047A 680 0000047A CB D6 set 2,(hl) ; cb d6 681 0000047C DD CB 12 D6 set 2,(ix+disp) ; dd cb 12 d6 682 00000480 FD CB 12 D6 set 2,(iy+disp) ; fd cb 12 d6 683 00000484 CB D7 set 2,a ; cb d7 684 00000486 CB D0 set 2,b ; cb d0 685 00000488 CB D1 set 2,c ; cb d1 686 0000048A CB D2 set 2,d ; cb d2 687 0000048C CB D3 set 2,e ; cb d3 688 0000048E CB D4 set 2,h ; cb d4 689 00000490 CB D5 set 2,l ; cb d5 690 00000492 691 00000492 CB DE set 3,(hl) ; cb de 692 00000494 DD CB 12 DE set 3,(ix+disp) ; dd cb 12 de 693 00000498 FD CB 12 DE set 3,(iy+disp) ; fd cb 12 de 694 0000049C CB DF set 3,a ; cb df 695 0000049E CB D8 set 3,b ; cb d8 696 000004A0 CB D9 set 3,c ; cb d9 697 000004A2 CB DA set 3,d ; cb da 698 000004A4 CB DB set 3,e ; cb db 699 000004A6 CB DC set 3,h ; cb dc 700 000004A8 CB DD set 3,l ; cb dd 701 000004AA 702 000004AA CB E6 set 4,(hl) ; cb e6 703 000004AC DD CB 12 E6 set 4,(ix+disp) ; dd cb 12 e6 704 000004B0 FD CB 12 E6 set 4,(iy+disp) ; fd cb 12 e6 705 000004B4 CB E7 set 4,a ; cb e7 706 000004B6 CB E0 set 4,b ; cb e0 707 000004B8 CB E1 set 4,c ; cb e1 708 000004BA CB E2 set 4,d ; cb e2 709 000004BC CB E3 set 4,e ; cb e3 710 000004BE CB E4 set 4,h ; cb e4 711 000004C0 CB E5 set 4,l ; cb e5 712 000004C2 713 000004C2 CB EE set 5,(hl) ; cb ee 714 000004C4 DD CB 12 EE set 5,(ix+disp) ; dd cb 12 ee 715 000004C8 FD CB 12 EE set 5,(iy+disp) ; fd cb 12 ee 716 000004CC CB EF set 5,a ; cb ef 717 000004CE CB E8 set 5,b ; cb e8 718 000004D0 CB E9 set 5,c ; cb e9 719 000004D2 CB EA set 5,d ; cb ea 720 000004D4 CB EB set 5,e ; cb eb 721 000004D6 CB EC set 5,h ; cb ec 722 000004D8 CB ED set 5,l ; cb ed 723 000004DA 724 000004DA CB F6 set 6,(hl) ; cb f6 725 000004DC DD CB 12 F6 set 6,(ix+disp) ; dd cb 12 f6 726 000004E0 FD CB 12 F6 set 6,(iy+disp) ; fd cb 12 f6 727 000004E4 CB F7 set 6,a ; cb f7 728 000004E6 CB F0 set 6,b ; cb f0 729 000004E8 CB F1 set 6,c ; cb f1 730 000004EA CB F2 set 6,d ; cb f2 731 000004EC CB F3 set 6,e ; cb f3 732 000004EE CB F4 set 6,h ; cb f4 733 000004F0 CB F5 set 6,l ; cb f5 734 000004F2 735 000004F2 CB FE set 7,(hl) ; cb fe 736 000004F4 DD CB 12 FE set 7,(ix+disp) ; dd cb 12 fe 737 000004F8 FD CB 12 FE set 7,(iy+disp) ; fd cb 12 fe 738 000004FC CB FF set 7,a ; cb ff 739 000004FE CB F8 set 7,b ; cb f8 740 00000500 CB F9 set 7,c ; cb f9 741 00000502 CB FA set 7,d ; cb fa 742 00000504 CB FB set 7,e ; cb fb 743 00000506 CB FC set 7,h ; cb fc 744 00000508 CB FD set 7,l ; cb fd 745 0000050A 746 0000050A DE A5 sbc a,0xa5 ; de a5 747 0000050C 9E sbc a,(hl) ; 9e 748 0000050D DD 9E 12 sbc a,(ix+disp) ; dd 9e 12 749 00000510 FD 9E 12 sbc a,(iy+disp) ; fd 9e 12 750 00000513 9F sbc a,a ; 9f 751 00000514 98 sbc a,b ; 98 752 00000515 99 sbc a,c ; 99 753 00000516 9A sbc a,d ; 9a 754 00000517 9B sbc a,e ; 9b 755 00000518 9C sbc a,h ; 9c 756 00000519 9D sbc a,l ; 9d 757 0000051A ED 42 sbc hl,bc ; ed 42 758 0000051C ED 52 sbc hl,de ; ed 52 759 0000051E ED 62 sbc hl,hl ; ed 62 760 00000520 ED 72 sbc hl,sp ; ed 72 761 00000522 762 00000522 CB 26 sla (hl) ; cb 26 763 00000524 DD CB 12 26 sla (ix+disp) ; dd cb 12 26 764 00000528 FD CB 12 26 sla (iy+disp) ; fd cb 12 26 765 0000052C CB 27 sla a ; cb 27 766 0000052E CB 20 sla b ; cb 20 767 00000530 CB 21 sla c ; cb 21 768 00000532 CB 22 sla d ; cb 22 769 00000534 CB 23 sla e ; cb 23 770 00000536 CB 24 sla h ; cb 24 771 00000538 CB 25 sla l ; cb 25 772 0000053A 773 0000053A CB 2E sra (hl) ; cb 2e 774 0000053C DD CB 12 2E sra (ix+disp) ; dd cb 12 2e 775 00000540 FD CB 12 2E sra (iy+disp) ; fd cb 12 2e 776 00000544 CB 2F sra a ; cb 2f 777 00000546 CB 28 sra b ; cb 28 778 00000548 CB 29 sra c ; cb 29 779 0000054A CB 2A sra d ; cb 2a 780 0000054C CB 2B sra e ; cb 2b 781 0000054E CB 2C sra h ; cb 2c 782 00000550 CB 2D sra l ; cb 2d 783 00000552 784 00000552 CB 3E srl (hl) ; cb 3e 785 00000554 DD CB 12 3E srl (ix+disp) ; dd cb 12 3e 786 00000558 FD CB 12 3E srl (iy+disp) ; fd cb 12 3e 787 0000055C CB 3F srl a ; cb 3f 788 0000055E CB 38 srl b ; cb 38 789 00000560 CB 39 srl c ; cb 39 790 00000562 CB 3A srl d ; cb 3a 791 00000564 CB 3B srl e ; cb 3b 792 00000566 CB 3C srl h ; cb 3c 793 00000568 CB 3D srl l ; cb 3d 794 0000056A 795 0000056A D6 A5 sub 0xa5 ; d6 a5 796 0000056C 96 sub (hl) ; 96 797 0000056D DD 96 12 sub (ix+disp) ; dd 96 12 798 00000570 FD 96 12 sub (iy+disp) ; fd 96 12 799 00000573 97 sub a ; 97 800 00000574 90 sub b ; 90 801 00000575 91 sub c ; 91 802 00000576 92 sub d ; 92 803 00000577 93 sub e ; 93 804 00000578 94 sub h ; 94 805 00000579 95 sub l ; 95 806 0000057A 807 0000057A EE A5 xor 0xa5 ; ee a5 808 0000057C AE xor (hl) ; ae 809 0000057D DD AE 12 xor (ix+disp) ; dd ae 12 810 00000580 FD AE 12 xor (iy+disp) ; fd ae 12 811 00000583 AF xor a ; af 812 00000584 A8 xor b ; a8 813 00000585 A9 xor c ; a9 814 00000586 AA xor d ; aa 815 00000587 AB xor e ; ab 816 00000588 AC xor h ; ac 817 00000589 AD xor l ; ad 818 0000058A 819 0000058A 820 0000058A ; test for no displacement and various whitespace 821 0000058A ; 822 0000058A DD AE 00 xor ( ix ) ; dd ae 00 823 0000058D DD AE 12 xor ( ix + disp ) ; dd ae 12 824 00000590 825 00000590 (00000012) disp equ this+that ; make it work a little to resolve this 826 00000590 (00000010) this equ 0x10 827 00000590 (00000002) that equ 0x02 828 00000590 829 00000590 (00001234) address equ 0x1234 830 00000590 831 00000590 ; test pseudo ops 832 00000590 ; 833 00000590 834 00000590 pseudo0: 835 00000590 ds 4 836 00000594 pseudo1: 837 00000594 ds.b 4 838 00000598 pseudo2: 839 00000598 ds.w 4 840 000005A0 841 000005A0 61 62 63 64 65 db "abcdefgh",0 66 67 68 00 842 000005A9 00 FF db 0,-1 843 000005AB 844 000005AB 00 00 FF FF dw 0,-1 845 000005AF 34 12 dw 0x1234 846 000005B1 847 000005B1 848 000005B1 849 000005B1 (00000000) if 0 ; set to 1 to test error trapping 850 000005B1 ; test range 851 000005B1 db 0x100 ; should be too big 852 000005B1 xor ( ix+0x101 ) ; displacement too big 853 000005B1 rst 0x01 ; out of range 854 000005B1 inc af ; can't use this register on this opcode 855 000005B1 push sp ; can't use this register on this opcode 856 000005B1 pop sp ; can't use this register on this opcode 857 000005B1 jp (ix+1) ; doesn't allow displacement 858 000005B1 in a,(0x103) ; out of range 859 000005B1 xor (ix + disp 4) ; stray operand 860 000005B1 adc a,(hl a) ; another stray operand 861 000005B1 862 000005B1 endif Segment Listing MinAddr MaxAddr Segment -------- -------- ------- 00000000 000005B0 code Symbol Table Listing Value Name -------- ---- 00000001 __Z80 00001234 address 00000012 disp 000001C1 label 00000159 loop 00000590 pseudo0 00000594 pseudo1 00000598 pseudo2 00000000 reset 00000002 that 00000010 this 00000063 variable Assembled in 4 passes Total assembly time 00:00:01 Total Errors: 0 Total Warnings: 0