home *** CD-ROM | disk | FTP | other *** search
/ CD Actual 15 / CDACTUAL15.iso / cdactual / program / asm / PS_A96.ZIP / MNEMTEST.ASM < prev    next >
Encoding:
Assembly Source File  |  1989-11-30  |  6.4 KB  |  279 lines

  1.          .org 0
  2.           ;test all 8096 opcodes in all configurations
  3.          sub 10,12,14
  4.          add op1,op2
  5.          add op1,op2,op3
  6.          add op1,far2
  7.          add op1,op2,far3
  8.          addb op1,op2
  9.          addb op1,op2,op3
  10.          addb op1,far2
  11.          addb op1,op2,far3
  12.          add op1,#h'00
  13.          add op1,op2,#h'ff
  14.          add op1,far2
  15.          add op1,op2,far3
  16.          addb op1,#h'00
  17.          addb op1,op2,#h'ff
  18.          addb op1,far2
  19.          addb op1,op2,far3
  20.          lcall longtest
  21.          ljmp longtest
  22.          sjmp sj0
  23.          sjmp sj1
  24.          sjmp sj2
  25.          sjmp sj3
  26.          sjmp sj4
  27.          add op1,[op1]
  28.          add op1,op2,op2[op1]
  29.          add op1,op2,-128[op1]
  30.          addb op1,op2,127[op1]
  31.          add op1,far5
  32.          add op1,op2,far3
  33.          addb op1,[op1]+
  34.          addb op1,op2,op2[op1]
  35.          addb op1,far5
  36.          addb op1,op2,far3
  37.          push op1
  38.          pop op1
  39.          .equ op1,32
  40.          .equ op2,128
  41.          .equ op3,132
  42.          .equ far2,1024
  43.          .equ far3,2048
  44.          add op1,op2
  45.          add op1,op2,op3
  46.          add op1,far2
  47.          add op1,op2,far3
  48.          addb op1,op2
  49.          addb op1,op2,op3
  50.          addb op1,far2
  51.          addb op1,op2,far3
  52.          addc op1,op2
  53.          addcb op1,op2
  54.          sub  op1,op2
  55.          sub  op1,op2,op3
  56.          subb  op1,op2
  57.          subb  op1,op2,op3
  58.          subc  op1,op2
  59.          subcb op1,op2+1
  60.          subcb op1,#op2
  61.          cmp  op1,op2
  62.          cmpb  op1,op2
  63.          mulu op1,op2
  64.          mulu op1,op2,op3
  65.          mulub op1,op2
  66.          mulub op1,op2,op3
  67.          mul op1,op2
  68.          mul op1,op2,op3
  69.          mulb op1,op2
  70.          mulb op1,op2,op3
  71.          divu op1,op2
  72.          divub op1,op2
  73.          div op1,op2
  74.          divb op1,op2
  75.          and op1,op2
  76.          and op1,op2,op3
  77.          andb op1,op2
  78.          andb op1,op2,op3
  79.          or op1,op2
  80.          orb op1,op2
  81.          xor op1,op2
  82.          xorb op1,op2
  83.          ld op1,op2
  84.          ldb op1,op2
  85.          ld op1,#h'00
  86.          ld op1,#h'ff
  87.          ld op1,#h'00ff
  88.          ldb op1,#00
  89.          ldb op1,#h'ff
  90.          st op1,op2
  91.          stb op1,op2
  92.          ldbse op1,op2
  93.          ldbze op1,op2
  94.          push op1
  95.          pop op1
  96.          pushf
  97.          popf
  98.          ljmp longtest
  99. stest:   sjmp stest
  100.          indjmp op1
  101.          lcall longtest
  102.          scall stest
  103.          ret
  104.          djnz op1,rtest
  105.          jc rtest
  106.          jnc rtest
  107. rtest:   jh rtest
  108.          jnh rtest
  109.          je rtest
  110.          jne rtest
  111.          jv rtest
  112.          jnv rtest
  113.          jge rtest
  114.          jlt rtest
  115.          jvt rtest
  116.          jnvt rtest
  117.          jgt rtest
  118.          jle rtest
  119.          jst rtest
  120.          jnst rtest
  121.          jbc op1,0,rtest
  122.          jbs op1,7,rtest
  123.          djnz op27,rtest
  124.          .equ op27,46
  125.          dec op1
  126.          decb op1
  127.          neg op1
  128.          negb op1
  129.          inc op1
  130.          incb op1
  131.          ext op1
  132.          extb op1
  133.          not op1
  134.          notb op1
  135.          clr op1
  136.          clrb op1
  137.          shl op1,0
  138.          shl op1,15
  139.          shl op1,#0
  140.          shl op1,#15
  141.          shl op1,op1
  142.          shr op1,0
  143.          shra op1,0
  144.          shlb op1,0
  145.          shrb op1,0
  146.          shrab op1,0
  147.          shll op1,0
  148.          shrl op1,0
  149.          shral op1,0
  150.          setc
  151.          clrc
  152.          clrvt
  153.          rst
  154.          di
  155.          ei
  156.          nop
  157.          skip op1
  158. synct1:  norml op1,op2
  159.  
  160.          add op1,#h'00
  161.          add op1,op2,#h'ff
  162.          add op1,far2
  163.          add op1,op2,far3
  164.          addb op1,#h'00
  165.          addb op1,op2,#h'ff
  166.          addb op1,far2
  167.          addb op1,op2,far3
  168.          addc op1,#h'00
  169.          sub  op1,#h'00
  170.          sub  op1,op2,#h'ff
  171.          subb  op1,#h'00
  172.          subb  op1,op2,#h'ff
  173.          subc  op1,#h'00
  174.          subcb op1,#h'00
  175.          cmp  op1,#h'00
  176.          cmpb  op1,#h'00
  177.          mulu op1,#h'00
  178.          mulu op1,op2,#h'ff
  179.          mulub op1,#h'00
  180.          mulub op1,op2,#h'ff
  181.          mul op1,#h'00
  182.          mul op1,op2,#h'ff
  183.          mulb op1,#h'00
  184.          mulb op1,op2,#h'ff
  185.          divu op1,#h'00
  186.          divub op1,#h'00
  187.          div op1,#h'00
  188.          divb op1,#h'00
  189.          and op1,#h'00
  190.          and op1,op2,#h'ff
  191.          andb op1,#h'00
  192.          andb op1,op2,#h'ff
  193.          orb op1,#h'00
  194.          orb op1,#h'00
  195.          xorb op1,#h'00
  196.          xorb op1,#h'00
  197.          ld op1,#h'00
  198.          ldb op1,#h'00
  199.          ld op1,#h'00
  200.          ld op1,#h'ff
  201.          ld op1,#h'00ff
  202.          ldb op1,#00
  203.          ldb op1,#h'ff
  204.          ldbse op1,#h'ff
  205.          ldbze op1,#h'00
  206.          push #h'00
  207. synct2:  norml op1,48
  208.  
  209.          add op1,[op1]
  210.          add op1,op2,op2[op1]
  211.          add op1,op2,-128[op1]
  212.          addb op1,op2,127[op1]
  213.          add op1,far5
  214.          add op1,op2,far3
  215.          addb op1,[op1]+
  216.          addb op1,op2,op2[op1]
  217.          addb op1,far5
  218.          addb op1,op2,far3
  219.          addc op1,[op1]
  220.          sub  op1,[op1]+
  221.          sub  op1,op2,op2[op1]
  222.          subb  op1,[op1]
  223.          subb  op1,op2,op2[op1]
  224.          subc  op1,[op1]
  225.          subcb op1,[op1]
  226.          cmp  op1,[op1]
  227.          cmpb  op1,[op1]
  228.          mulu op1,[op1]
  229.          mulu op1,op2,op2[op1]
  230.          mulub op1,[op1]
  231.          mulub op1,op2,op2[op1]
  232.          mul op1,[op1]
  233.          mul op1,op2,op2[op1]
  234.          mulb op1,[op1]
  235.          mulb op1,op2,op2[op1]
  236.          divu op1,[op1]
  237.          divub op1,[op1]
  238.          div op1,[op1]
  239.          divb op1,[op1]
  240.          and op1,[op1]
  241.          and op1,op2,op2[op1]
  242.          andb op1,[op1]
  243.          andb op1,op2,op2[op1]
  244.          orb op1,[op1]
  245.          orb op1,[op1]
  246.          xorb op1,[op1]
  247.          xorb op1,[op1]
  248.          ld op1,[op1]
  249.          ldb op1,[op1]
  250.          ld op1,[op1]
  251.          ld op1,op2[op1]
  252.          ld op1,[op1]
  253.          ldb op1,#00
  254.          ldb op1,op2[op1]
  255.          st op1,[op1]+
  256.          stb op1,[op1]+
  257.          ldbse op1,[op2]
  258.          ldbze op2,[op1]
  259.          push [op1]
  260.          pop [op1]
  261.          br [0x06]
  262.          br[op1]
  263. synctst:
  264. farloop: .equ forward1,h'ff
  265. far5:    .equ forward2,h'00
  266. sj0:     .org h'0000
  267. sj1:     .org h'0100
  268. sj2:     .org h'0200
  269. sj3:     .org h'0300
  270. sj4:     .org h'0400
  271.          sjmp sj1
  272.          sjmp sj2
  273.          sjmp sj3
  274.          sjmp sj4
  275.          sjmp *-1022
  276.          sjmp *+1025
  277.  
  278. longtest:.end
  279.