1 cpu melps7751 2 page 0 3 4 5 ldt #0 6 assume pg:0,dt:0,dpr:0 7 8accmode macro size 9 switch size 10 case 8 11 sep #$20 12 assume m:1 13 case 16 14 clp #$20 15 assume m:0 16 elsecase 17 fatal "accmode: invalid operand size: $\{SIZE}" 18 endcase 19 endm 20 21idxmode macro size 22 switch size 23 case 8 24 sep #$10 25 assume x:1 26 case 16 27 clp #$10 28 assume x:0 29 elsecase 30 fatal "idxmode: invalid operand size: $\{SIZE}" 31 endcase 32 endm 33 34 xab 35 wit 36 tyx 37 tyb 38 tya 39 txy 40 txs 41 txb 42 txa 43 tsx 44 tsb 45 tsa 46 tdb 47 tda 48 tby 49 tbx 50 tbs 51 tbd 52 tay 53 tax 54 tas 55 tad 56 stp 57 sem 58 sei 59 sec 60 rts 61 rtl 62 rti 63 ply 64 plx 65 plt 66 plp 67 pld 68 plb 69 pla 70 phy 71 phx 72 pht 73 php 74 phg 75 phd 76 phb 77 pha 78 nop 79 iny 80 inx 81 dey 82 dex 83 clv 84 clm 85 cli 86 clc 87 88 rla #7 89 90targ: 91 bcc targ 92 bcs targ 93 beq targ 94 bmi targ 95 bne targ 96 bpl targ 97 bvc targ 98 bvs targ 99 bra targ 100 per targ 101 org *+$100 102 bra targ 103 per targ 104 per #-30 105 106 accmode 8 107 idxmode 8 108 109 adc #20 110 and a,#-1 111 cmp b,#-$a 112 113targ2: 114 bbc #$80,$20,targ2 115 bbs #$40,$2000,targ2 116 clb #$20,$20 117 seb #$10,$2000 118 119 cpx #$aa 120 cpy #$aa 121 ldx #$bb 122 ldy #$bb 123 124 ldm #$aa,$20 125 ldm #$aa,$2000 126 ldm #$aa,$20,x 127 ldm #$aa,$2000,x 128 129 accmode 16 130 idxmode 16 131 132 eor #%0000111111110000 133 lda a,#'AB' 134 ora b,#3000 135 136 sbc $20 137 sta a,$2000 138 adc b,$200000 139 140 and $30,x 141 cmp a,$3000,x 142 eor b,$300000,x 143 144 lda $40,y 145 ora a,$4000,y 146; sbc b,$400000,y 147 148 sta ($50) 149; adc a,($5000) 150; and b,($500000) 151 152 cmpl ($60) 153; eorl a,($6000) 154; ldal b,($600000) 155 156 ora ($70,x) 157; sbc ($7000,x) 158; sta ($700000,x) 159 160 adc ($80),y 161; and ($8000),y 162; cmp ($800000),y 163 164 eorl ($80),y 165; ldal ($8000),y 166; oral ($800000),y 167 168 sbc b,3,s 169 sta a,(5,s),y 170 171 asl 172 dec a 173 inc b 174 lsr $20 175 rol $2000 176 ror $20,x 177 asl $2000,x 178 179targ3: 180 bbs #$80,$20,targ3 181 bbc #$40,$2000,targ3 182 clb #$20,$20 183 seb #$10,$2000 184 185 cpx #$aa 186 cpy #$aa 187 ldx #$bb 188 ldy #$bb 189 cpx $20 190 cpy $20 191 ldx $20 192 ldy $20 193 stx $20 194 sty $20 195 cpx $2000 196 cpy $2000 197 ldx $2000 198 ldy $2000 199 stx $2000 200 sty $2000 201 ldx $30,y 202 ldy $30,x 203 stx $30,y 204 sty $30,x 205 ldx $3000,y 206 ldy $3000,x 207 208 mpy #55 209 accmode 8 210 mpy #55 211 accmode 16 212 mpy $12 213 mpy $12,x 214 mpy ($12) 215 mpy ($12,x) 216 mpy ($12),y 217 mpyl ($12) 218 mpyl ($12),y 219 mpy $1234 220 mpy $1234,x 221 mpy $1234,y 222 mpy $123456 223 mpy $123456,x 224 mpy $12,s 225 mpy ($12,s),y 226 227 div #55 228 accmode 8 229 div #55 230 accmode 16 231 div $12 232 div $12,x 233 div ($12) 234 div ($12,x) 235 div ($12),y 236 divl ($12) 237 divl ($12),y 238 div $1234 239 div $1234,x 240 div $1234,y 241 div $123456 242 div $123456,x 243 div $12,s 244 div ($12,s),y 245 246 jmp $20 247 jmp $2000 248 jmp $200000 249 jmp ($3000) 250 jmpl ($3000) 251 jmp ($4000,x) 252 jsr $20 253 jsr $2000 254 jsr $200000 255 jsr ($4000,x) 256 257 ldm #$aa,$20 258 ldm #$aa,$2000 259 ldm #$aa,$20,x 260 ldm #$aa,$2000,x 261 262 mvn $200000,$300000 263 mvp $200000,$300000 264 265;- - - - - - - - - - - - - - - - - - - - - - - - - - - - 266 267 cpu 65816 268 269 cop #0 270 jml $2000 271 jsl $4000 272 brl * 273 rep #$55 274 tsb $33 275 trb $66 276 tsb $9999 277 trb $cccc 278 bit $00 279 bit $11,x 280 bit $2222 281 bit $3333,x 282 bit #$44 283 stz $55 284 stz $6666 285 stz $77,x 286 stz $8888,x 287 cld 288 sed 289 tcs 290 tsc 291 phk 292 tcd 293 tdc 294 phb 295 plb 296 wai 297 xba 298 xce 299 300;- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 301 302 cpu melps7750 303 304 asr 305 asr a 306 asr b 307 asr $aa 308 asr $1234 309 asr $aa,x 310 asr $1234,x 311 312 extz 313 extz a 314 extz b 315 exts 316 exts a 317 exts b 318 319 mpys #55 320 accmode 8 321 mpys #55 322 accmode 16 323 mpys $12 324 mpys $12,x 325 mpys ($12) 326 mpys ($12,x) 327 mpys ($12),y 328 mpysl ($12) 329 mpysl ($12),y 330 mpys $1234 331 mpys $1234,x 332 mpys $1234,y 333 mpys $123456 334 mpys $123456,x 335 mpys $12,s 336 mpys ($12,s),y 337 338 divs #55 339 accmode 8 340 divs #55 341 accmode 16 342 divs $12 343 divs $12,x 344 divs ($12) 345 divs ($12,x) 346 divs ($12),y 347 divsl ($12) 348 divsl ($12),y 349 divs $1234 350 divs $1234,x 351 divs $1234,y 352 divs $123456 353 divs $123456,x 354 divs $12,s 355 divs ($12,s),y 356 357 ; plain break (one byte) 358 brk 359 ; break with extra NOP to compensate PC increment by 2 if not corrected by break handler 360 brk $ea 361