home *** CD-ROM | disk | FTP | other *** search
/ The C Users' Group Library 1994 August / wc-cdrom-cusersgrouplibrary-1994-08.iso / vol_200 / 292_04 / t6809.asm < prev    next >
Assembly Source File  |  1990-07-17  |  20KB  |  1,029 lines

  1.     .title    6809 Assembler Test
  2.  
  3.     .sbttl    All 6809 Instructions
  4.  
  5.     abx            ;3a
  6.     adca    #0x01        ;89 01
  7.     adcb    *0x02        ;d9 02
  8.     adda    #0x03        ;8b 03
  9.     addb    *0x04        ;db 04
  10.     addd    #0x05        ;c3 00 05
  11.     anda    *0x06        ;94 06
  12.     andb    #0x07        ;c4 07
  13.     andcc    #0x08        ;1c 08
  14.     asl    ,x        ;68 84
  15.     asla            ;48
  16.     aslb            ;58
  17.     asr    ,x        ;67 84
  18.     asra            ;47
  19.     asrb            ;57
  20.     bcc    .+0x12        ;24 10
  21.     bcs    .+0x12        ;25 10
  22.     beq    .+0x12        ;27 10
  23.     bge    .+0x12        ;2c 10
  24.     bgt    .+0x12        ;2e 10
  25.     bhi    .+0x12        ;22 10
  26.     bhis    .+0x12        ;24 10
  27.     bhs    .+0x12        ;24 10
  28.     bita    #0x09        ;85 09
  29.     bitb    *0x0a        ;d5 0a
  30.     ble    .+0x12        ;2f 10
  31.     blo    .+0x12        ;25 10
  32.     blos    .+0x12        ;23 10
  33.     bls    .+0x12        ;23 10
  34.     blt    .+0x12        ;2d 10
  35.     bmi    .+0x12        ;2b 10
  36.     bne    .+0x12        ;26 10
  37.     bpl    .+0x12        ;2a 10
  38.     bra    .+0x12        ;20 10
  39.     brn    .+0x12        ;21 10
  40.     bsr    .+0x12        ;8d 10
  41.     bvc    .+0x12        ;28 10
  42.     bvs    .+0x12        ;29 10
  43.     clr    ,x        ;6f 84
  44.     clra            ;4f
  45.     clrb            ;5f
  46.     cmpa    #0x0b        ;81 0b
  47.     cmpb    *0x0c        ;d1 0c
  48.     cmpd    #0x0d        ;10 83 00 0d
  49.     cmps    *0x0e        ;11 9c 0e
  50.     cmpu    #0x0f        ;11 83 00 0f
  51.     cmpx    *0x10        ;9c 10
  52.     cmpy    #0x11        ;10 83 00 11
  53.     com    ,x        ;63 84
  54.     coma            ;43
  55.     comb            ;53
  56.     cwai    #0x12        ;3c 12
  57.     daa            ;19
  58.     dec    ,x        ;6a 84
  59.     deca            ;4a
  60.     decb            ;5a
  61.     eora    #0x13        ;88 13
  62.     eorb    *0x14        ;d8 14
  63.     exg    a,b        ;1e 89
  64.     inc    ,x        ;6c 84
  65.     inca            ;4c
  66.     incb            ;5c
  67.     jmp    .+0x13,pcr    ;6e 8c 10
  68.     jsr    .+0x13,pcr    ;ad 8c 10
  69.     lbcc    .+0x14        ;10 24 00 10
  70.     lbcs    .+0x14        ;10 25 00 10
  71.     lbeq    .+0x14        ;10 27 00 10
  72.     lbge    .+0x14        ;10 2c 00 10
  73.     lbgt    .+0x14        ;10 2e 00 10
  74.     lbhi    .+0x14        ;10 22 00 10
  75.     lbhis    .+0x14        ;10 24 00 10
  76.     lbhs    .+0x14        ;10 24 00 10
  77.     lble    .+0x14        ;10 2f 00 10
  78.     lblo    .+0x14        ;10 25 00 10
  79.     lblos    .+0x14        ;10 23 00 10
  80.     lbls    .+0x14        ;10 23 00 10
  81.     lblt    .+0x14        ;10 2d 00 10
  82.     lbmi    .+0x14        ;10 2b 00 10
  83.     lbne    .+0x14        ;10 26 00 10
  84.     lbpl    .+0x14        ;10 2a 00 10
  85.     lbra    .+0x13        ;16 00 10
  86.     lbrn    .+0x14        ;10 21 00 10
  87.     lbsr    .+0x13        ;17 00 10
  88.     lbvc    .+0x14        ;10 28 00 10
  89.     lbvs    .+0x14        ;10 29 00 10
  90.     lda    #0x15        ;86 15
  91.     ldaa    *0x16        ;96 16
  92.     ldab    #0x17        ;c6 17
  93.     ldb    *0x18        ;d6 18
  94.     ldd    #0x19        ;cc 00 19
  95.     lds    *0x1a        ;10 de 1a
  96.     ldu    #0x1b        ;ce 00 1b
  97.     ldx    *0x1c        ;9e 1c
  98.     ldy    #0x1d        ;10 8e 00 1d
  99.     leas    -1,s        ;32 7f
  100.     leau    -1,u        ;33 5f
  101.     leax    -1,x        ;30 1f
  102.     leay    -1,y        ;31 3f
  103.     lsl    ,x        ;68 84
  104.     lsla            ;48
  105.     lslb            ;58
  106.     lsr    ,x        ;64 84
  107.     lsra            ;44
  108.     lsrb            ;54
  109.     mul            ;3d
  110.     neg    ,x        ;60 84
  111.     nega            ;40
  112.     negb            ;50
  113.     nop            ;12
  114.     ora    *0x1e        ;9a 1e
  115.     oraa    #0x1f        ;8a 1f
  116.     orab    *0x20        ;da 20
  117.     orb    #0x21        ;ca 21
  118.     orcc    #0x22        ;1a 22
  119.     pshs    a        ;34 02
  120.     pshu    b        ;36 04
  121.     puls    x        ;35 10
  122.     pulu    y        ;37 20
  123.     rol    ,x        ;69 84
  124.     rola            ;49
  125.     rolb            ;59
  126.     ror    ,x        ;66 84
  127.     rora            ;46
  128.     rorb            ;56
  129.     rti            ;3b
  130.     rts            ;39
  131.     sbca    #0x23        ;82 23
  132.     sbcb    *0x24        ;d2 24
  133.     sex            ;1d
  134.     sta    ,x        ;a7 84
  135.     staa    ,x        ;a7 84
  136.     stab    ,x        ;e7 84
  137.     stb    ,x        ;e7 84
  138.     std    ,x        ;ed 84
  139.     sts    ,x        ;10 ef 84
  140.     stu    ,x        ;ef 84
  141.     stx    ,x        ;af 84
  142.     sty    ,x        ;10 af 84
  143.     suba    #0x25        ;80 25
  144.     subb    *0x26        ;d0 26
  145.     subd    #0x27        ;83 00 27
  146.     swi            ;3f
  147.     swi1            ;3f
  148.     swi2            ;10 3f
  149.     swi3            ;11 3f
  150.     sync            ;13
  151.     tfr    x,y        ;1f 12
  152.     tst    ,x        ;6d 84
  153.     tsta            ;4d
  154.     tstb            ;5d
  155.     
  156.  
  157.     .page
  158.     .sbttl    Post Byte Addressing Test (numerical constants)
  159.  
  160.     neg    0,x        ;60 00
  161.     neg    1,x        ;60 01
  162.     neg    2,x        ;60 02
  163.     neg    3,x        ;60 03
  164.     neg    4,x        ;60 04
  165.     neg    5,x        ;60 05
  166.     neg    6,x        ;60 06
  167.     neg    7,x        ;60 07
  168.     neg    8,x        ;60 08
  169.     neg    9,x        ;60 09
  170.     neg    10,x        ;60 0A
  171.     neg    11,x        ;60 0B
  172.     neg    12,x        ;60 0C
  173.     neg    13,x        ;60 0D
  174.     neg    14,x        ;60 0E
  175.     neg    15,x        ;60 0F
  176.     neg    -16,x        ;60 10
  177.     neg    -15,x        ;60 11
  178.     neg    -14,x        ;60 12
  179.     neg    -13,x        ;60 13
  180.     neg    -12,x        ;60 14
  181.     neg    -11,x        ;60 15
  182.     neg    -10,x        ;60 16
  183.     neg    -9,x        ;60 17
  184.     neg    -8,x        ;60 18
  185.     neg    -7,x        ;60 19
  186.     neg    -6,x        ;60 1A
  187.     neg    -5,x        ;60 1B
  188.     neg    -4,x        ;60 1C
  189.     neg    -3,x        ;60 1D
  190.     neg    -2,x        ;60 1E
  191.     neg    -1,x        ;60 1F
  192.  
  193.     neg    0,y        ;60 20
  194.     neg    1,y        ;60 21
  195.     neg    2,y        ;60 22
  196.     neg    3,y        ;60 23
  197.     neg    4,y        ;60 24
  198.     neg    5,y        ;60 25
  199.     neg    6,y        ;60 26
  200.     neg    7,y        ;60 27
  201.     neg    8,y        ;60 28
  202.     neg    9,y        ;60 29
  203.     neg    10,y        ;60 2A
  204.     neg    11,y        ;60 2B
  205.     neg    12,y        ;60 2C
  206.     neg    13,y        ;60 2D
  207.     neg    14,y        ;60 2E
  208.     neg    15,y        ;60 2F
  209.     neg    -16,y        ;60 30
  210.     neg    -15,y        ;60 31
  211.     neg    -14,y        ;60 32
  212.     neg    -13,y        ;60 33
  213.     neg    -12,y        ;60 34
  214.     neg    -11,y        ;60 35
  215.     neg    -10,y        ;60 36
  216.     neg    -9,y        ;60 37
  217.     neg    -8,y        ;60 38
  218.     neg    -7,y        ;60 39
  219.     neg    -6,y        ;60 3A
  220.     neg    -5,y        ;60 3B
  221.     neg    -4,y        ;60 3C
  222.     neg    -3,y        ;60 3D
  223.     neg    -2,y        ;60 3E
  224.     neg    -1,y        ;60 3F
  225.  
  226.     neg    0,u        ;60 40
  227.     neg    1,u        ;60 41
  228.     neg    2,u        ;60 42
  229.     neg    3,u        ;60 43
  230.     neg    4,u        ;60 44
  231.     neg    5,u        ;60 45
  232.     neg    6,u        ;60 46
  233.     neg    7,u        ;60 47
  234.     neg    8,u        ;60 48
  235.     neg    9,u        ;60 49
  236.     neg    10,u        ;60 4A
  237.     neg    11,u        ;60 4B
  238.     neg    12,u        ;60 4C
  239.     neg    13,u        ;60 4D
  240.     neg    14,u        ;60 4E
  241.     neg    15,u        ;60 4F
  242.     neg    -16,u        ;60 50
  243.     neg    -15,u        ;60 51
  244.     neg    -14,u        ;60 52
  245.     neg    -13,u        ;60 53
  246.     neg    -12,u        ;60 54
  247.     neg    -11,u        ;60 55
  248.     neg    -10,u        ;60 56
  249.     neg    -9,u        ;60 57
  250.     neg    -8,u        ;60 58
  251.     neg    -7,u        ;60 59
  252.     neg    -6,u        ;60 5A
  253.     neg    -5,u        ;60 5B
  254.     neg    -4,u        ;60 5C
  255.     neg    -3,u        ;60 5D
  256.     neg    -2,u        ;60 5E
  257.     neg    -1,u        ;60 5F
  258.  
  259.     neg    0,s        ;60 60
  260.     neg    1,s        ;60 61
  261.     neg    2,s        ;60 62
  262.     neg    3,s        ;60 63
  263.     neg    4,s        ;60 64
  264.     neg    5,s        ;60 65
  265.     neg    6,s        ;60 66
  266.     neg    7,s        ;60 67
  267.     neg    8,s        ;60 68
  268.     neg    9,s        ;60 69
  269.     neg    10,s        ;60 6A
  270.     neg    11,s        ;60 6B
  271.     neg    12,s        ;60 6C
  272.     neg    13,s        ;60 6D
  273.     neg    14,s        ;60 6E
  274.     neg    15,s        ;60 6F
  275.     neg    -16,s        ;60 70
  276.     neg    -15,s        ;60 71
  277.     neg    -14,s        ;60 72
  278.     neg    -13,s        ;60 73
  279.     neg    -12,s        ;60 74
  280.     neg    -11,s        ;60 75
  281.     neg    -10,s        ;60 76
  282.     neg    -9,s        ;60 77
  283.     neg    -8,s        ;60 78
  284.     neg    -7,s        ;60 79
  285.     neg    -6,s        ;60 7A
  286.     neg    -5,s        ;60 7B
  287.     neg    -4,s        ;60 7C
  288.     neg    -3,s        ;60 7D
  289.     neg    -2,s        ;60 7E
  290.     neg    -1,s        ;60 7F
  291.  
  292.     neg    ,x+        ;60 80
  293.     neg    ,x++        ;60 81
  294.     neg    ,-x        ;60 82
  295.     neg    ,--x        ;60 83
  296.     neg    ,x        ;60 84
  297.     neg    b,x        ;60 85
  298.     neg    a,x        ;60 86
  299.     neg    0x11,x        ;60 88 11
  300.     neg    0x2233,x    ;60 89 22 33
  301.     neg    d,x        ;60 8b
  302.     neg    .+0x13,pcr    ;60 8c 10
  303.     neg    .+0x1004,pcr    ;60 8d 10 00
  304. ;    neg    [,x+]        ;illegal
  305.     neg    [,x++]        ;60 91
  306. ;    neg    [,-x]        ;illegal
  307.     neg    [,--x]        ;60 93
  308.     neg    [,x]        ;60 94
  309.     neg    [b,x]        ;60 95
  310.     neg    [a,x]        ;60 96
  311.     neg    [0x11,x]    ;60 98 11
  312.     neg    [0x2233,x]    ;60 99 22 33
  313.     neg    [d,x]        ;60 9b
  314.     neg    [.+0x13,pcr]    ;60 9c 10
  315.     neg    [.+0x1004,pcr]    ;60 9d 10 00
  316.     neg    [0x2233]    ;60 9f 22 33
  317.  
  318.     neg    ,y+        ;60 a0
  319.     neg    ,y++        ;60 a1
  320.     neg    ,-y        ;60 a2
  321.     neg    ,--y        ;60 a3
  322.     neg    ,y        ;60 a4
  323.     neg    b,y        ;60 a5
  324.     neg    a,y        ;60 a6
  325.     neg    0x11,y        ;60 a8 11
  326.     neg    0x2233,y    ;60 a9 22 33
  327.     neg    d,y        ;60 ab
  328. ;    neg    .+0x13,pcr    ;60 ac 10
  329. ;    neg    .+0x1004,pcr    ;60 ad 10 00
  330. ;    neg    [,y+]        ;illegal
  331.     neg    [,y++]        ;60 b1
  332. ;    neg    [,-y]        ;illegal
  333.     neg    [,--y]        ;60 b3
  334.     neg    [,y]        ;60 b4
  335.     neg    [b,y]        ;60 b5
  336.     neg    [a,y]        ;60 b6
  337.     neg    [0x11,y]    ;60 b8 11
  338.     neg    [0x2233,y]    ;60 b9 22 33
  339.     neg    [d,x]        ;60 bb
  340. ;    neg    [.+0x13,pcr]    ;60 bc 10
  341. ;    neg    [.+0x1004,pcr]    ;60 bd 10 00
  342. ;    neg    [0x2233]    ;60 bf 22 33
  343.  
  344.     neg    ,u+        ;60 c0
  345.     neg    ,u++        ;60 c1
  346.     neg    ,-u        ;60 c2
  347.     neg    ,--u        ;60 c3
  348.     neg    ,u        ;60 c4
  349.     neg    b,u        ;60 c5
  350.     neg    a,u        ;60 c6
  351.     neg    0x11,u        ;60 c8 11
  352.     neg    0x2233,u    ;60 c9 22 33
  353.     neg    d,u        ;60 cb
  354. ;    neg    .+0x13,pcr    ;60 cc 10
  355. ;    neg    .+0x1004,pcr    ;60 cd 10 00
  356. ;    neg    [,u+]        ;illegal
  357.     neg    [,u++]        ;60 d1
  358. ;    neg    [,-u]        ;illegal
  359.     neg    [,--u]        ;60 d3
  360.     neg    [,u]        ;60 d4
  361.     neg    [b,u]        ;60 d5
  362.     neg    [a,u]        ;60 d6
  363.     neg    [0x11,u]    ;60 d8 11
  364.     neg    [0x2233,u]    ;60 d9 22 33
  365.     neg    [d,u]        ;60 db
  366. ;    neg    [.+0x13,pcr]    ;60 dc 10
  367. ;    neg    [.+0x1004,pcr]    ;60 dd 10 00
  368. ;    neg    [0x2233]    ;60 df 22 33
  369.  
  370.     neg    ,s+        ;60 e0
  371.     neg    ,s++        ;60 e1
  372.     neg    ,-s        ;60 e2
  373.     neg    ,--s        ;60 e3
  374.     neg    ,s        ;60 e4
  375.     neg    b,s        ;60 e5
  376.     neg    a,s        ;60 e6
  377.     neg    0x11,s        ;60 e8 11
  378.     neg    0x2233,s    ;60 e9 22 33
  379.     neg    d,s        ;60 eb
  380. ;    neg    .+0x13,pcr    ;60 ec 10
  381. ;    neg    .+0x1004,pcr    ;60 ed 10 00
  382. ;    neg    [,s+]        ;illegal
  383.     neg    [,s++]        ;60 f1
  384. ;    neg    [,-s]        ;illegal
  385.     neg    [,--s]        ;60 f3
  386.     neg    [,s]        ;60 f4
  387.     neg    [b,s]        ;60 f5
  388.     neg    [a,s]        ;60 f6
  389.     neg    [0x11,s]    ;60 f8 11
  390.     neg    [0x2233,s]    ;60 f9 22 33
  391.     neg    [d,s]        ;60 fb
  392. ;    neg    [.+0x13,pcr]    ;60 fc 10
  393. ;    neg    [.+0x1004,pcr]    ;60 fd 10 00
  394. ;    neg    [0x2233]    ;60 ff 22 33
  395.  
  396.  
  397.  
  398.     .page
  399.     .sbttl    Post Byte Addressing Test (post defined constants)
  400.  
  401.  
  402.     neg    num0,x        ;60 00
  403.     neg    num1,x        ;60 01
  404.     neg    num2,x        ;60 02
  405.     neg    num3,x        ;60 03
  406.     neg    num4,x        ;60 04
  407.     neg    num5,x        ;60 05
  408.     neg    num6,x        ;60 06
  409.     neg    num7,x        ;60 07
  410.     neg    num8,x        ;60 08
  411.     neg    num9,x        ;60 09
  412.     neg    num10,x        ;60 0A
  413.     neg    num11,x        ;60 0B
  414.     neg    num12,x        ;60 0C
  415.     neg    num13,x        ;60 0D
  416.     neg    num14,x        ;60 0E
  417.     neg    num15,x        ;60 0F
  418.     neg    -num16,x    ;60 10
  419.     neg    -num15,x    ;60 11
  420.     neg    -num14,x    ;60 12
  421.     neg    -num13,x    ;60 13
  422.     neg    -num12,x    ;60 14
  423.     neg    -num11,x    ;60 15
  424.     neg    -num10,x    ;60 16
  425.     neg    -num9,x        ;60 17
  426.     neg    -num8,x        ;60 18
  427.     neg    -num7,x        ;60 19
  428.     neg    -num6,x        ;60 1A
  429.     neg    -num5,x        ;60 1B
  430.     neg    -num4,x        ;60 1C
  431.     neg    -num3,x        ;60 1D
  432.     neg    -num2,x        ;60 1E
  433.     neg    -num1,x        ;60 1F
  434.  
  435.     neg    num0,y        ;60 20
  436.     neg    num1,y        ;60 21
  437.     neg    num2,y        ;60 22
  438.     neg    num3,y        ;60 23
  439.     neg    num4,y        ;60 24
  440.     neg    num5,y        ;60 25
  441.     neg    num6,y        ;60 26
  442.     neg    num7,y        ;60 27
  443.     neg    num8,y        ;60 28
  444.     neg    num9,y        ;60 29
  445.     neg    num10,y        ;60 2A
  446.     neg    num11,y        ;60 2B
  447.     neg    num12,y        ;60 2C
  448.     neg    num13,y        ;60 2D
  449.     neg    num14,y        ;60 2E
  450.     neg    num15,y        ;60 2F
  451.     neg    -num16,y    ;60 30
  452.     neg    -num15,y    ;60 31
  453.     neg    -num14,y    ;60 32
  454.     neg    -num13,y    ;60 33
  455.     neg    -num12,y    ;60 34
  456.     neg    -num11,y    ;60 35
  457.     neg    -num10,y    ;60 36
  458.     neg    -num9,y        ;60 37
  459.     neg    -num8,y        ;60 38
  460.     neg    -num7,y        ;60 39
  461.     neg    -num6,y        ;60 3A
  462.     neg    -num5,y        ;60 3B
  463.     neg    -num4,y        ;60 3C
  464.     neg    -num3,y        ;60 3D
  465.     neg    -num2,y        ;60 3E
  466.     neg    -num1,y        ;60 3F
  467.  
  468.     neg    num0,u        ;60 40
  469.     neg    num1,u        ;60 41
  470.     neg    num2,u        ;60 42
  471.     neg    num3,u        ;60 43
  472.     neg    num4,u        ;60 44
  473.     neg    num5,u        ;60 45
  474.     neg    num6,u        ;60 46
  475.     neg    num7,u        ;60 47
  476.     neg    num8,u        ;60 48
  477.     neg    num9,u        ;60 49
  478.     neg    num10,u        ;60 4A
  479.     neg    num11,u        ;60 4B
  480.     neg    num12,u        ;60 4C
  481.     neg    num13,u        ;60 4D
  482.     neg    num14,u        ;60 4E
  483.     neg    num15,u        ;60 4F
  484.     neg    -num16,u    ;60 50
  485.     neg    -num15,u    ;60 51
  486.     neg    -num14,u    ;60 52
  487.     neg    -num13,u    ;60 53
  488.     neg    -num12,u    ;60 54
  489.     neg    -num11,u    ;60 55
  490.     neg    -num10,u    ;60 56
  491.     neg    -num9,u        ;60 57
  492.     neg    -num8,u        ;60 58
  493.     neg    -num7,u        ;60 59
  494.     neg    -num6,u        ;60 5A
  495.     neg    -num5,u        ;60 5B
  496.     neg    -num4,u        ;60 5C
  497.     neg    -num3,u        ;60 5D
  498.     neg    -num2,u        ;60 5E
  499.     neg    -num1,u        ;60 5F
  500.  
  501.     neg    num0,s        ;60 60
  502.     neg    num1,s        ;60 61
  503.     neg    num2,s        ;60 62
  504.     neg    num3,s        ;60 63
  505.     neg    num4,s        ;60 64
  506.     neg    num5,s        ;60 65
  507.     neg    num6,s        ;60 66
  508.     neg    num7,s        ;60 67
  509.     neg    num8,s        ;60 68
  510.     neg    num9,s        ;60 69
  511.     neg    num10,s        ;60 6A
  512.     neg    num11,s        ;60 6B
  513.     neg    num12,s        ;60 6C
  514.     neg    num13,s        ;60 6D
  515.     neg    num14,s        ;60 6E
  516.     neg    num15,s        ;60 6F
  517.     neg    -num16,s    ;60 70
  518.     neg    -num15,s    ;60 71
  519.     neg    -num14,s    ;60 72
  520.     neg    -num13,s    ;60 73
  521.     neg    -num12,s    ;60 74
  522.     neg    -num11,s    ;60 75
  523.     neg    -num10,s    ;60 76
  524.     neg    -num9,s        ;60 77
  525.     neg    -num8,s        ;60 78
  526.     neg    -num7,s        ;60 79
  527.     neg    -num6,s        ;60 7A
  528.     neg    -num5,s        ;60 7B
  529.     neg    -num4,s        ;60 7C
  530.     neg    -num3,s        ;60 7D
  531.     neg    -num2,s        ;60 7E
  532.     neg    -num1,s        ;60 7F
  533.  
  534.     neg    ,x+        ;60 80
  535.     neg    ,x++        ;60 81
  536.     neg    ,-x        ;60 82
  537.     neg    ,--x        ;60 83
  538.     neg    ,x        ;60 84
  539.     neg    b,x        ;60 85
  540.     neg    a,x        ;60 86
  541.     neg    nn,x        ;60 88 nn
  542.     neg    mmnn,x        ;60 89 mm nn
  543.     neg    d,x        ;60 8b
  544.     neg    .+0x13,pcr    ;60 8c 10
  545.     neg    .+0x1004,pcr    ;60 8d 10 00
  546. ;    neg    [,x+]        ;illegal
  547.     neg    [,x++]        ;60 91
  548. ;    neg    [,-x]        ;illegal
  549.     neg    [,--x]        ;60 93
  550.     neg    [,x]        ;60 94
  551.     neg    [b,x]        ;60 95
  552.     neg    [a,x]        ;60 96
  553.     neg    [nn,x]        ;60 98 nn
  554.     neg    [mmnn,x]    ;60 99 mm nn
  555.     neg    [d,x]        ;60 9b
  556.     neg    [.+0x13,pcr]    ;60 9c 10
  557.     neg    [.+0x1004,pcr]    ;60 9d 10 00
  558.     neg    [mmnn]        ;60 9f mm nn
  559.  
  560.     neg    ,y+        ;60 a0
  561.     neg    ,y++        ;60 a1
  562.     neg    ,-y        ;60 a2
  563.     neg    ,--y        ;60 a3
  564.     neg    ,y        ;60 a4
  565.     neg    b,y        ;60 a5
  566.     neg    a,y        ;60 a6
  567.     neg    nn,y        ;60 a8 nn
  568.     neg    mmnn,y        ;60 a9 mm nn
  569.     neg    d,y        ;60 ab
  570. ;    neg    .+0x13,pcr    ;60 ac 10
  571. ;    neg    .+0x1004,pcr    ;60 ad 10 00
  572. ;    neg    [,y+]        ;illegal
  573.     neg    [,y++]        ;60 b1
  574. ;    neg    [,-y]        ;illegal
  575.     neg    [,--y]        ;60 b3
  576.     neg    [,y]        ;60 b4
  577.     neg    [b,y]        ;60 b5
  578.     neg    [a,y]        ;60 b6
  579.     neg    [nn,y]        ;60 b8 nn
  580.     neg    [mmnn,y]    ;60 b9 mm nn
  581.     neg    [d,x]        ;60 bb
  582. ;    neg    [.+0x13,pcr]    ;60 bc 10
  583. ;    neg    [.+0x1004,pcr]    ;60 bd 10 00
  584. ;    neg    [mmnn]        ;60 bf mm nn
  585.  
  586.     neg    ,u+        ;60 c0
  587.     neg    ,u++        ;60 c1
  588.     neg    ,-u        ;60 c2
  589.     neg    ,--u        ;60 c3
  590.     neg    ,u        ;60 c4
  591.     neg    b,u        ;60 c5
  592.     neg    a,u        ;60 c6
  593.     neg    nn,u        ;60 c8 nn
  594.     neg    mmnn,u        ;60 c9 mm nn
  595.     neg    d,u        ;60 cb
  596. ;    neg    .+0x13,pcr    ;60 cc 10
  597. ;    neg    .+0x1004,pcr    ;60 cd 10 00
  598. ;    neg    [,u+]        ;illegal
  599.     neg    [,u++]        ;60 d1
  600. ;    neg    [,-u]        ;illegal
  601.     neg    [,--u]        ;60 d3
  602.     neg    [,u]        ;60 d4
  603.     neg    [b,u]        ;60 d5
  604.     neg    [a,u]        ;60 d6
  605.     neg    [nn,u]        ;60 d8 nn
  606.     neg    [mmnn,u]    ;60 d9 mm nn
  607.     neg    [d,u]        ;60 db
  608. ;    neg    [.+0x13,pcr]    ;60 dc 10
  609. ;    neg    [.+0x1004,pcr]    ;60 dd 10 00
  610. ;    neg    [mmnn]        ;60 df mm nn
  611.  
  612.     neg    ,s+        ;60 e0
  613.     neg    ,s++        ;60 e1
  614.     neg    ,-s        ;60 e2
  615.     neg    ,--s        ;60 e3
  616.     neg    ,s        ;60 e4
  617.     neg    b,s        ;60 e5
  618.     neg    a,s        ;60 e6
  619.     neg    nn,s        ;60 e8 nn
  620.     neg    mmnn,s        ;60 e9 mm nn
  621.     neg    d,s        ;60 eb
  622. ;    neg    .+0x13,pcr    ;60 ec 10
  623. ;    neg    .+0x1004,pcr    ;60 ed 10 00
  624. ;    neg    [,s+]        ;illegal
  625.     neg    [,s++]        ;60 f1
  626. ;    neg    [,-s]        ;illegal
  627.     neg    [,--s]        ;60 f3
  628.     neg    [,s]        ;60 f4
  629.     neg    [b,s]        ;60 f5
  630.     neg    [a,s]        ;60 f6
  631.     neg    [nn,s]        ;60 f8 nn
  632.     neg    [mmnn,s]    ;60 f9 mm nn
  633.     neg    [d,s]        ;60 fb
  634. ;    neg    [.+0x13,pcr]    ;60 fc 10
  635. ;    neg    [.+0x1004,pcr]    ;60 fd 10 00
  636. ;    neg    [mmnn]        ;60 ff mm nn
  637.  
  638.  
  639.  
  640.     .page
  641.     .sbttl    Defined constants
  642.  
  643.     nn    =    0x11
  644.     mmnn    =    0x2233
  645.  
  646.     num0    =    0
  647.     num1    =    1
  648.     num2    =    2
  649.     num3    =    3
  650.     num4    =    4
  651.     num5    =    5
  652.     num6    =    6
  653.     num7    =    7
  654.     num8    =    8
  655.     num9    =    9
  656.     num10    =    10
  657.     num11    =    11
  658.     num12    =    12
  659.     num13    =    13
  660.     num14    =    14
  661.     num15    =    15
  662.     num16    =    16
  663.  
  664.  
  665.  
  666.     .page
  667.     .sbttl    Post Byte Addressing Test (predefined constants)
  668.  
  669.     neg    num0,x        ;60 00
  670.     neg    num1,x        ;60 01
  671.     neg    num2,x        ;60 02
  672.     neg    num3,x        ;60 03
  673.     neg    num4,x        ;60 04
  674.     neg    num5,x        ;60 05
  675.     neg    num6,x        ;60 06
  676.     neg    num7,x        ;60 07
  677.     neg    num8,x        ;60 08
  678.     neg    num9,x        ;60 09
  679.     neg    num10,x        ;60 0A
  680.     neg    num11,x        ;60 0B
  681.     neg    num12,x        ;60 0C
  682.     neg    num13,x        ;60 0D
  683.     neg    num14,x        ;60 0E
  684.     neg    num15,x        ;60 0F
  685.     neg    -num16,x    ;60 10
  686.     neg    -num15,x    ;60 11
  687.     neg    -num14,x    ;60 12
  688.     neg    -num13,x    ;60 13
  689.     neg    -num12,x    ;60 14
  690.     neg    -num11,x    ;60 15
  691.     neg    -num10,x    ;60 16
  692.     neg    -num9,x        ;60 17
  693.     neg    -num8,x        ;60 18
  694.     neg    -num7,x        ;60 19
  695.     neg    -num6,x        ;60 1A
  696.     neg    -num5,x        ;60 1B
  697.     neg    -num4,x        ;60 1C
  698.     neg    -num3,x        ;60 1D
  699.     neg    -num2,x        ;60 1E
  700.     neg    -num1,x        ;60 1F
  701.  
  702.     neg    num0,y        ;60 20
  703.     neg    num1,y        ;60 21
  704.     neg    num2,y        ;60 22
  705.     neg    num3,y        ;60 23
  706.     neg    num4,y        ;60 24
  707.     neg    num5,y        ;60 25
  708.     neg    num6,y        ;60 26
  709.     neg    num7,y        ;60 27
  710.     neg    num8,y        ;60 28
  711.     neg    num9,y        ;60 29
  712.     neg    num10,y        ;60 2A
  713.     neg    num11,y        ;60 2B
  714.     neg    num12,y        ;60 2C
  715.     neg    num13,y        ;60 2D
  716.     neg    num14,y        ;60 2E
  717.     neg    num15,y        ;60 2F
  718.     neg    -num16,y    ;60 30
  719.     neg    -num15,y    ;60 31
  720.     neg    -num14,y    ;60 32
  721.     neg    -num13,y    ;60 33
  722.     neg    -num12,y    ;60 34
  723.     neg    -num11,y    ;60 35
  724.     neg    -num10,y    ;60 36
  725.     neg    -num9,y        ;60 37
  726.     neg    -num8,y        ;60 38
  727.     neg    -num7,y        ;60 39
  728.     neg    -num6,y        ;60 3A
  729.     neg    -num5,y        ;60 3B
  730.     neg    -num4,y        ;60 3C
  731.     neg    -num3,y        ;60 3D
  732.     neg    -num2,y        ;60 3E
  733.     neg    -num1,y        ;60 3F
  734.  
  735.     neg    num0,u        ;60 40
  736.     neg    num1,u        ;60 41
  737.     neg    num2,u        ;60 42
  738.     neg    num3,u        ;60 43
  739.     neg    num4,u        ;60 44
  740.     neg    num5,u        ;60 45
  741.     neg    num6,u        ;60 46
  742.     neg    num7,u        ;60 47
  743.     neg    num8,u        ;60 48
  744.     neg    num9,u        ;60 49
  745.     neg    num10,u        ;60 4A
  746.     neg    num11,u        ;60 4B
  747.     neg    num12,u        ;60 4C
  748.     neg    num13,u        ;60 4D
  749.     neg    num14,u        ;60 4E
  750.     neg    num15,u        ;60 4F
  751.     neg    -num16,u    ;60 50
  752.     neg    -num15,u    ;60 51
  753.     neg    -num14,u    ;60 52
  754.     neg    -num13,u    ;60 53
  755.     neg    -num12,u    ;60 54
  756.     neg    -num11,u    ;60 55
  757.     neg    -num10,u    ;60 56
  758.     neg    -num9,u        ;60 57
  759.     neg    -num8,u        ;60 58
  760.     neg    -num7,u        ;60 59
  761.     neg    -num6,u        ;60 5A
  762.     neg    -num5,u        ;60 5B
  763.     neg    -num4,u        ;60 5C
  764.     neg    -num3,u        ;60 5D
  765.     neg    -num2,u        ;60 5E
  766.     neg    -num1,u        ;60 5F
  767.  
  768.     neg    num0,s        ;60 60
  769.     neg    num1,s        ;60 61
  770.     neg    num2,s        ;60 62
  771.     neg    num3,s        ;60 63
  772.     neg    num4,s        ;60 64
  773.     neg    num5,s        ;60 65
  774.     neg    num6,s        ;60 66
  775.     neg    num7,s        ;60 67
  776.     neg    num8,s        ;60 68
  777.     neg    num9,s        ;60 69
  778.     neg    num10,s        ;60 6A
  779.     neg    num11,s        ;60 6B
  780.     neg    num12,s        ;60 6C
  781.     neg    num13,s        ;60 6D
  782.     neg    num14,s        ;60 6E
  783.     neg    num15,s        ;60 6F
  784.     neg    -num16,s    ;60 70
  785.     neg    -num15,s    ;60 71
  786.     neg    -num14,s    ;60 72
  787.     neg    -num13,s    ;60 73
  788.     neg    -num12,s    ;60 74
  789.     neg    -num11,s    ;60 75
  790.     neg    -num10,s    ;60 76
  791.     neg    -num9,s        ;60 77
  792.     neg    -num8,s        ;60 78
  793.     neg    -num7,s        ;60 79
  794.     neg    -num6,s        ;60 7A
  795.     neg    -num5,s        ;60 7B
  796.     neg    -num4,s        ;60 7C
  797.     neg    -num3,s        ;60 7D
  798.     neg    -num2,s        ;60 7E
  799.     neg    -num1,s        ;60 7F
  800.  
  801.     neg    ,x+        ;60 80
  802.     neg    ,x++        ;60 81
  803.     neg    ,-x        ;60 82
  804.     neg    ,--x        ;60 83
  805.     neg    ,x        ;60 84
  806.     neg    b,x        ;60 85
  807.     neg    a,x        ;60 86
  808.     neg    nn,x        ;60 88 nn
  809.     neg    mmnn,x        ;60 89 mm nn
  810.     neg    d,x        ;60 8b
  811.     neg    .+0x13,pcr    ;60 8c 10
  812.     neg    .+0x1004,pcr    ;60 8d 10 00
  813. ;    neg    [,x+]        ;illegal
  814.     neg    [,x++]        ;60 91
  815. ;    neg    [,-x]        ;illegal
  816.     neg    [,--x]        ;60 93
  817.     neg    [,x]        ;60 94
  818.     neg    [b,x]        ;60 95
  819.     neg    [a,x]        ;60 96
  820.     neg    [nn,x]        ;60 98 nn
  821.     neg    [mmnn,x]    ;60 99 mm nn
  822.     neg    [d,x]        ;60 9b
  823.     neg    [.+0x13,pcr]    ;60 9c 10
  824.     neg    [.+0x1004,pcr]    ;60 9d 10 00
  825.     neg    [mmnn]        ;60 9f mm nn
  826.  
  827.     neg    ,y+        ;60 a0
  828.     neg    ,y++        ;60 a1
  829.     neg    ,-y        ;60 a2
  830.     neg    ,--y        ;60 a3
  831.     neg    ,y        ;60 a4
  832.     neg    b,y        ;60 a5
  833.     neg    a,y        ;60 a6
  834.     neg    nn,y        ;60 a8 nn
  835.     neg    mmnn,y        ;60 a9 mm nn
  836.     neg    d,y        ;60 ab
  837. ;    neg    .+0x13,pcr    ;60 ac 10 10
  838. ;    neg    .+0x1004,pcr    ;60 ad 10 00
  839. ;    neg    [,y+]        ;illegal
  840.     neg    [,y++]        ;60 b1
  841. ;    neg    [,-y]        ;illegal
  842.     neg    [,--y]        ;60 b3
  843.     neg    [,y]        ;60 b4
  844.     neg    [b,y]        ;60 b5
  845.     neg    [a,y]        ;60 b6
  846.     neg    [nn,y]        ;60 b8 nn
  847.     neg    [mmnn,y]    ;60 b9 mm nn
  848.     neg    [d,x]        ;60 bb
  849. ;    neg    [.+0x13,pcr]    ;60 bc 10
  850. ;    neg    [.+0x1004,pcr]    ;60 bd 10 00
  851. ;    neg    [mmnn]        ;60 bf mm nn
  852.  
  853.     neg    ,u+        ;60 c0
  854.     neg    ,u++        ;60 c1
  855.     neg    ,-u        ;60 c2
  856.     neg    ,--u        ;60 c3
  857.     neg    ,u        ;60 c4
  858.     neg    b,u        ;60 c5
  859.     neg    a,u        ;60 c6
  860.     neg    nn,u        ;60 c8 nn
  861.     neg    mmnn,u        ;60 c9 mm nn
  862.     neg    d,u        ;60 cb
  863. ;    neg    .+0x13,pcr    ;60 cc 10
  864. ;    neg    .+0x1004,pcr    ;60 cd 10 00
  865. ;    neg    [,u+]        ;illegal
  866.     neg    [,u++]        ;60 d1
  867. ;    neg    [,-u]        ;illegal
  868.     neg    [,--u]        ;60 d3
  869.     neg    [,u]        ;60 d4
  870.     neg    [b,u]        ;60 d5
  871.     neg    [a,u]        ;60 d6
  872.     neg    [nn,u]        ;60 d8 nn
  873.     neg    [mmnn,u]    ;60 d9 mm nn
  874.     neg    [d,u]        ;60 db
  875. ;    neg    [.+0x13,pcr]    ;60 dc 10
  876. ;    neg    [.+0x1004,pcr]    ;60 dd 10 00
  877. ;    neg    [mmnn]        ;60 df mm nn
  878.  
  879.     neg    ,s+        ;60 e0
  880.     neg    ,s++        ;60 e1
  881.     neg    ,-s        ;60 e2
  882.     neg    ,--s        ;60 e3
  883.     neg    ,s        ;60 e4
  884.     neg    b,s        ;60 e5
  885.     neg    a,s        ;60 e6
  886.     neg    nn,s        ;60 e8 nn
  887.     neg    mmnn,s        ;60 e9 mm nn
  888.     neg    d,s        ;60 eb
  889. ;    neg    .+0x13,pcr    ;60 ec 10
  890. ;    neg    .+0x1004,pcr    ;60 ed 10 00
  891. ;    neg    [,s+]        ;illegal
  892.     neg    [,s++]        ;60 f1
  893. ;    neg    [,-s]        ;illegal
  894.     neg    [,--s]        ;60 f3
  895.     neg    [,s]        ;60 f4
  896.     neg    [b,s]        ;60 f5
  897.     neg    [a,s]        ;60 f6
  898.     neg    [nn,s]        ;60 f8 nn
  899.     neg    [mmnn,s]    ;60 f9 mm nn
  900.     neg    [d,s]        ;60 fb
  901. ;    neg    [.+0x13,pcr]    ;60 fc 10
  902. ;    neg    [.+0x1004,pcr]    ;60 fd 10 00
  903. ;    neg    [mmnn]        ;60 ff mm nn
  904.  
  905.  
  906.  
  907.     .page
  908.     .sbttl    push/pull instructions
  909.  
  910.  
  911.     pshu    cc            ;36 01
  912.     pshu    cc,a            ;36 03
  913.     pshu    cc,a,b            ;36 07
  914.     pshu    cc,a,b,dp        ;36 0f
  915.     pshu    cc,a,b,dp,x        ;36 1f
  916.     pshu    cc,a,b,dp,x,y        ;36 3f
  917.     pshu    cc,a,b,dp,x,y,s        ;36 7f
  918.     pshu    cc,a,b,dp,x,y,s,pc    ;36 ff
  919.  
  920.     pshs    cc            ;34 01
  921.     pshs    cc,a            ;34 03
  922.     pshs    cc,a,b            ;34 07
  923.     pshs    cc,a,b,dp        ;34 0f
  924.     pshs    cc,a,b,dp,x        ;34 1f
  925.     pshs    cc,a,b,dp,x,y        ;34 3f
  926.     pshs    cc,a,b,dp,x,y,u        ;34 7f
  927.     pshs    cc,a,b,dp,x,y,u,pc    ;34 ff
  928.  
  929.     pulu    cc            ;37 01
  930.     pulu    cc,a            ;37 03
  931.     pulu    cc,a,b            ;37 07
  932.     pulu    cc,a,b,dp        ;37 0f
  933.     pulu    cc,a,b,dp,x        ;37 1f
  934.     pulu    cc,a,b,dp,x,y        ;37 3f
  935.     pulu    cc,a,b,dp,x,y,s        ;37 7f
  936.     pulu    cc,a,b,dp,x,y,s,pc    ;37 ff
  937.  
  938.     puls    cc            ;35 01
  939.     puls    cc,a            ;35 03
  940.     puls    cc,a,b            ;35 07
  941.     puls    cc,a,b,dp        ;35 0f
  942.     puls    cc,a,b,dp,x        ;35 1f
  943.     puls    cc,a,b,dp,x,y        ;35 3f
  944.     puls    cc,a,b,dp,x,y,u        ;35 7f
  945.     puls    cc,a,b,dp,x,y,u,pc    ;35 ff
  946.  
  947.  
  948.     .page
  949.     .sbttl    6800 compatibility instuctions with 6809 equivalents
  950.  
  951.     aba
  952.     pshs    b    ; aba
  953.     adda    ,s+
  954.  
  955.     cba
  956.     pshs    b    ;cba
  957.     cmpa    ,s+
  958.  
  959.     clc
  960.     andcc    #0xFE    ;clc
  961.  
  962.     cli
  963.     andcc    #0xEF    ;cli
  964.  
  965.     clv
  966.     andcc    #0xFD    ;clv
  967.  
  968.     des
  969.     leas    -1,s    ;des
  970.  
  971.     dex
  972.     leax    -1,x    ;dex
  973.  
  974.     ins
  975.     leas    1,s    ;ins
  976.  
  977.     inx
  978.     leax    1,x    ;inx
  979.  
  980.     psha
  981.     pshs    a    ;psha
  982.  
  983.     pshb
  984.     pshs    b    ;pshb
  985.  
  986.     pula
  987.     puls    a    ;pula
  988.  
  989.     pulb
  990.     puls    b    ;pulb
  991.  
  992.     sba
  993.     pshs    b    ;sba
  994.     suba    ,s+
  995.  
  996.     sec
  997.     orcc    #0x01    ;sec
  998.  
  999.     sei
  1000.     orcc    #0x10    ;sei
  1001.  
  1002.     sev
  1003.     orcc    #0x02    ;sev
  1004.  
  1005.     tab
  1006.     tfr    a,b    ;tab
  1007.     tsta
  1008.  
  1009.     tap
  1010.     tfr    a,cc    ;tap
  1011.  
  1012.     tba
  1013.     tfr    b,a    ;tba
  1014.     tstb
  1015.  
  1016.     tpa
  1017.     tfr    cc,a    ;tpa
  1018.  
  1019.     tsx
  1020.     tfr    s,x    ;tsx
  1021.  
  1022.     txs
  1023.     tfr    x,s    ;txs
  1024.  
  1025.     wai
  1026.     cwai    #0xFF    ;wai
  1027.  
  1028.  
  1029.