QD QD 8080 Assembler - Version 1(7) 24-Jan-1999 Copr. 1985, 1999 Frank Durda IV Use for non-commercial purposes granted. All other rights reserved. Software is provided ''AS IS'', and has no warranty of any kind. Source Filename (/SRC is assumed) >validi/src:1 Object Filename (Press for VALIDI/CMD) >validi/cmd:2 Do you want to output the listing to the printer?n Pass 1 Pass 2 1 ; This file is the validation sweep for the 8080 assembler 2 ; 15-Sep-85 fdiv 3 3000 4 psect 3000h 5 6 byte: equ 0fdh ;Byte for byte op-codes 7 3000 8 begin: 9 10 ; Move Group 11 3000 40 12 mov b,b 3001 41 13 mov b,c 3002 42 14 mov b,d 3003 43 15 mov b,e 3004 44 16 mov b,h 3005 45 17 mov b,l 3006 46 18 mov b,m 3007 47 19 mov b,a 20 3008 48 21 mov c,b 3009 49 22 mov c,c 300A 4A 23 mov c,d 300B 4B 24 mov c,e 300C 4C 25 mov c,h 300D 4D 26 mov c,l 300E 4E 27 mov c,m 300F 4F 28 mov c,a 29 3010 50 30 mov d,b 3011 51 31 mov d,c 3012 52 32 mov d,d 3013 53 33 mov d,e 3014 54 34 mov d,h 3015 55 35 mov d,l 3016 56 36 mov d,m 3017 57 37 mov d,a 38 3018 58 39 mov e,b 3019 59 40 mov e,c 301A 5A 41 mov e,d 301B 5B 42 mov e,e 301C 5C 43 mov e,h 301D 5D 44 mov e,l 301E 5E 45 mov e,m 301F 5F 46 mov e,a 47 3020 60 48 mov h,b 3021 61 49 mov h,c 3022 62 50 mov h,d 3023 63 51 mov h,e 3024 64 52 mov h,h 3025 65 53 mov h,l 3026 66 54 mov h,m 3027 67 55 mov h,a 56 3028 68 57 mov l,b 3029 69 58 mov l,c 302A 6A 59 mov l,d 302B 6B 60 mov l,e 302C 6C 61 mov l,h 302D 6D 62 mov l,l 302E 6E 63 mov l,m 302F 6F 64 mov l,a 65 3030 70 66 mov m,b 3031 71 67 mov m,c 3032 72 68 mov m,d 3033 73 69 mov m,e 3034 74 70 mov m,h 3035 75 71 mov m,l 3036 77 72 mov m,a 73 3037 78 74 mov a,b 3038 79 75 mov a,c 3039 7A 76 mov a,d 303A 7B 77 mov a,e 303B 7C 78 mov a,h 303C 7D 79 mov a,l 303D 7E 80 mov a,m 303E 7F 81 mov a,a 82 83 ; Move Immediate 84 303F 06FD 85 mvi b,byte 3041 0EFD 86 mvi c,byte 3043 16FD 87 mvi d,byte 3045 1EFD 88 mvi e,byte 3047 26FD 89 mvi h,byte 3049 2EFD 90 mvi l,byte 304B 36FD 91 mvi m,byte 304D 3EFD 92 mvi a,byte 93 94 ; Load Immediate 95 304F 013A31 96 lxi b,word 3052 113A31 97 lxi d,word 3055 213A31 98 lxi h,word 3058 313A31 99 lxi sp,word 100 101 ; Load/Store 102 305B 0A 103 ldax b 305C 1A 104 ldax d 305D 2AD030 105 lhld address 3060 3AD030 106 lda address 107 3063 02 108 stax b 3064 12 109 stax d 3065 22D030 110 shld address 3068 32D030 111 sta address 112 113 ; Exchange 114 306B EB 115 xchg 116 117 ; Add 118 306C 80 119 add b 306D 81 120 add c 306E 82 121 add d 306F 83 122 add e 3070 84 123 add h 3071 85 124 add l 3072 86 125 add m 3073 87 126 add a 127 128 ; Add with Carry 129 3074 88 130 adc b 3075 89 131 adc c 3076 8A 132 adc d 3077 8B 133 adc e 3078 8C 134 adc h 3079 8D 135 adc l 307A 8E 136 adc m 307B 8F 137 adc a 138 139 ; Subtract 140 307C 90 141 sub b 307D 91 142 sub c 307E 92 143 sub d 307F 93 144 sub e 3080 94 145 sub h 3081 95 146 sub l 3082 96 147 sub m 3083 97 148 sub a 149 150 ; Subtract with Borrow 151 3084 98 152 sbb b 3085 99 153 sbb c 3086 9A 154 sbb d 3087 9B 155 sbb e 3088 9C 156 sbb h 3089 9D 157 sbb l 308A 9E 158 sbb m 308B 9F 159 sbb a 160 161 ; Increment Byte 162 308C 04 163 inr b 308D 0C 164 inr c 308E 14 165 inr d 308F 1C 166 inr e 3090 24 167 inr h 3091 2C 168 inr l 3092 34 169 inr m 3093 3C 170 inr a 171 172 ; Increment Word 173 3094 03 174 inx b 3095 13 175 inx d 3096 23 176 inx h 3097 33 177 inx sp 178 179 ; Decrement Byte 180 3098 05 181 dcr b 3099 0D 182 dcr c 309A 15 183 dcr d 309B 1D 184 dcr e 309C 25 185 dcr h 309D 2D 186 dcr l 309E 35 187 dcr m 309F 3D 188 dcr a 189 190 ; Decrement Word 191 30A0 0B 192 dcx b 30A1 1B 193 dcx d 30A2 2B 194 dcx h 30A3 3B 195 dcx sp 196 197 ; Double Add 198 30A4 09 199 dad b 30A5 19 200 dad d 30A6 29 201 dad h 30A7 39 202 dad sp 203 204 ; Specials 205 30A8 27 206 daa 30A9 2F 207 cma 30AA 37 208 stc 30AB 3F 209 cmc 210 211 ; Rotate 212 30AC 07 213 rlc 30AD 0F 214 rrc 30AE 17 215 ral 30AF 1F 216 rar 217 218 ; Logical 219 30B0 A0 220 ana b 30B1 A1 221 ana c 30B2 A2 222 ana d 30B3 A3 223 ana e 30B4 A4 224 ana h 30B5 A5 225 ana l 30B6 A6 226 ana m 30B7 A7 227 ana a 228 30B8 A8 229 xra b 30B9 A9 230 xra c 30BA AA 231 xra d 30BB AB 232 xra e 30BC AC 233 xra h 30BD AD 234 xra l 30BE AE 235 xra m 30BF AF 236 xra a 237 30C0 B0 238 ora b 30C1 B1 239 ora c 30C2 B2 240 ora d 30C3 B3 241 ora e 30C4 B4 242 ora h 30C5 B5 243 ora l 30C6 B6 244 ora m 30C7 B7 245 ora a 246 30C8 B8 247 cmp b 30C9 B9 248 cmp c 30CA BA 249 cmp d 30CB BB 250 cmp e 30CC BC 251 cmp h 30CD BD 252 cmp l 30CE BE 253 cmp m 30CF BF 254 cmp a 255 256 ; Arith and Logical immediate 257 30D0 258 address: ;Address for test 30D0 C6FD 259 adi byte 30D2 CEFD 260 aci byte 30D4 D6FD 261 sui byte 30D6 DEFD 262 sbi byte 30D8 E6FD 263 ani byte 30DA EEFD 264 xri byte 30DC F6FD 265 ori byte 30DE FEFD 266 cpi byte 267 268 ; Jumps 269 30E0 C3D030 270 jmp address 30E3 C2D030 271 jnz address 30E6 CAD030 272 jz address 30E9 D2D030 273 jnc address 30EC DAD030 274 jc address 30EF E2D030 275 jpo address 30F2 EAD030 276 jpe address 30F5 F2D030 277 jp address 30F8 FAD030 278 jm address 30FB E9 279 pchl 280 281 ; Calls 282 30FC CDD030 283 call address 30FF C4D030 284 cnz address 3102 CCD030 285 cz address 3105 D4D030 286 cnc address 3108 DCD030 287 cc address 310B E4D030 288 cpo address 310E ECD030 289 cpe address 3111 F4D030 290 cp address 3114 FCD030 291 cm address 292 293 ; Return 294 3117 C9 295 ret 3118 C0 296 rnz 3119 C8 297 rz 311A D0 298 rnc 311B D8 299 rc 311C E0 300 rpo 311D E8 301 rpe 311E F0 302 rp 311F F8 303 rm 304 305 ; Restart 306 3120 C7 307 rst 0 3121 CF 308 rst 1 3122 D7 309 rst 2 3123 DF 310 rst 3 3124 E7 311 rst 4 3125 EF 312 rst 5 3126 F7 313 rst 6 3127 FF 314 rst 7 315 316 ; Stack Operations 317 3128 C5 318 push b 3129 D5 319 push d 312A E5 320 push h 312B F5 321 push psw 322 312C C1 323 pop b 312D D1 324 pop d 312E E1 325 pop h 312F F1 326 pop psw 327 3130 E3 328 xthl 3131 F9 329 sphl 330 331 ; Input/Output 332 3132 D3FD 333 out byte 3134 DBFD 334 in byte 335 336 ; Control 337 3136 F3 338 di 3137 FB 339 ei 3138 00 340 nop 3139 76 341 hlt 342 313A 5678 343 word: defw 56h+7800h 344 313C 345 end begin End of Program No Errors Encountered Ready