Annotation of tme/ic/m68k/m68k-iset.txt, revision 1.1.1.4

1.1.1.4 ! root        1: ! $Id: m68k-iset.txt,v 1.9 2007/08/25 20:50:32 fredette Exp $
1.1       root        2: 
1.1.1.2   root        3: ! ic/m68k/m68k-iset.txt: the m68k instruction set
                      4: 
1.1.1.3   root        5: ! Copyright (c) 2002, 2003, 2004 Matt Fredette
1.1.1.2   root        6: ! All rights reserved.
                      7: !
                      8: ! Redistribution and use in source and binary forms, with or without
                      9: ! modification, are permitted provided that the following conditions
                     10: ! are met:
                     11: ! 1. Redistributions of source code must retain the above copyright
                     12: !    notice, this list of conditions and the following disclaimer.
                     13: ! 2. Redistributions in binary form must reproduce the above copyright
                     14: !    notice, this list of conditions and the following disclaimer in the
                     15: !    documentation and/or other materials provided with the distribution.
                     16: ! 3. All advertising materials mentioning features or use of this software
                     17: !    must display the following acknowledgement:
                     18: !      This product includes software developed by Matt Fredette.
                     19: ! 4. The name of the author may not be used to endorse or promote products
                     20: !    derived from this software without specific prior written permission.
                     21: !
                     22: ! THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
                     23: ! IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
                     24: ! WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
                     25: ! DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT,
                     26: ! INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
                     27: ! (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
                     28: ! SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
                     29: ! HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
                     30: ! STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
                     31: ! ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                     32: ! POSSIBILITY OF SUCH DAMAGE.
1.1       root       33: 
                     34: ! load some common EA categories:
                     35: eax-cat all ro         yyyyyyyyyyyynnn
                     36: eax-cat data ro                ynyyyyyyyyyynnn
                     37: eax-cat datalt rw      ynyyyyyyynnnnnn ! example: andi pp 122
                     38: eax-cat memalt rw      nnyyyyyyynnnnnn
                     39: eax-cat control un     nnynnyyyyyynnnn 
                     40: 
                     41: 0000 0000 0011 1100 ori_ccr #8                 ! ori_ccr pp 258
                     42: 0000 0000 0111 1100 ori_sr #16                 ! ori_sr pp 480
                     43: 0000 0000 ssxx xxxx or.s #s, xs/datalt         ! ori pp 256
                     44: 
                     45: 0000 0010 0011 1100 andi_ccr #8                        ! andi_ccr pp 123
                     46: 0000 0010 0111 1100 andi_sr #16                        ! andi_sr pp 455
                     47: 0000 0010 ssxx xxxx and.s #s, xs/datalt                ! andi pp 121
                     48: 
                     49: 0000 0100 ssxx xxxx sub.s #s, xs/datalt                ! subi pp 282
                     50: 
                     51: .if m68020
                     52: 0000 0110 1100 0ddd rtm %d.32                  ! rtm pp 270
                     53: 0000 0110 1100 1aaa rtm %a.32                  ! rtm pp 270
                     54: 0000 0110 11xx xxxx callm #8, x0/control       ! callm pp 167
                     55: .endif
                     56: 
                     57: 0000 0110 ssxx xxxx add.s #s, xs/datalt                ! addi pp 112
                     58: 
                     59: .if m68020 || m68030
                     60: specop specop16 cmp2_chk2
                     61: 0000 0ss0 11xx xxxx cmp2_chk2 X, x0/control    ! chk2 pp 174, cmp2 pp 185
1.1.1.4 ! root       62: specop specop16 cas.s
        !            63: 0000 1010 11xx xxxx cas8 X, x0/memalt/un       ! cas pp 169
        !            64: 0000 1100 11xx xxxx cas16 X, x0/memalt/un      ! cas pp 169
        !            65: 0000 1110 11xx xxxx cas32 X, x0/memalt/un      ! cas pp 169
1.1.1.3   root       66: specop specop16 cas2_16 cas2_32
                     67: 0000 1100 1111 1100 cas2_16 #16                        ! cas2 pp 169
                     68: 0000 1110 1111 1100 cas2_32 #16                        ! cas2 pp 169
1.1       root       69: .endif
                     70: 
                     71: 0000 1010 0011 1100 eori_ccr #8                        ! eori_ccr pp 207
                     72: 0000 1010 0111 1100 eori_sr #16                        ! eori_sr pp 463
                     73: 0000 1010 ssxx xxxx eor.s #s, xs/datalt                ! eori pp 205
                     74: 
                     75: ! cmpi addressing modes are unusual. per pp 183, immediate is 
                     76: ! never allowed, and on the 000 and 010, PC-relative addressing 
                     77: ! modes are not allowed:
                     78: .if m68000 || m68010
                     79: eax-cat cmpi ro ynyyyyyyynnnnnn
                     80: .endif
                     81: .if m68020 || m68030
                     82: eax-cat cmpi ro ynyyyyyyyyynnnn
                     83: .endif
                     84: 0000 1100 ssxx xxxx cmp.s #s, xs/cmpi          ! cmpi pp 182
                     85: 
                     86: eax-cat bitro ro nnyyyyyyyyyynnn
                     87: eax-cat bitrw rw nnyyyyyyynnnnnn
                     88: 0000 1000 0000 0ddd btst32 #8, %d.32           ! btst pp 164
                     89: 0000 1000 00xx xxxx btst8 #8, x8/bitro         ! btst pp 164
                     90: 0000 1000 0100 0ddd bchg32 #8, %d.32           ! bchg pp 130
                     91: 0000 1000 01xx xxxx bchg8 #8, x8/bitrw         ! bchg pp 130
                     92: 0000 1000 1000 0ddd bclr32 #8, %d.32           ! bclr pp 133
                     93: 0000 1000 10xx xxxx bclr8 #8, x8/bitrw         ! bclr pp 133
                     94: 0000 1000 1100 0ddd bset32 #8, %d.32           ! bset pp 159
                     95: 0000 1000 11xx xxxx bset8 #8, x8/bitrw         ! bset pp 159
                     96: 
                     97: .if m68010 || m68020 || m68030
1.1.1.3   root       98: specop specop16 moves.s
                     99: 0000 1110 ssxx xxxx moves.s X, x0/memalt/un    ! moves pp 477
1.1       root      100: .endif
                    101: 
                    102: 0000 ddd1 0000 0DDD btst32 %d.8, %D.32         ! btst pp 164
                    103: 0000 ddd1 00xx xxxx btst8 %d.8, x8/bitro       ! btst pp 164
                    104: 0000 ddd1 0100 0DDD bchg32 %d.8, %D.32         ! bchg pp 130
                    105: 0000 ddd1 01xx xxxx bchg8 %d.8, x8/bitrw       ! bchg pp 130
                    106: 0000 ddd1 1000 0DDD bclr32 %d.8, %D.32         ! bclr pp 133
                    107: 0000 ddd1 10xx xxxx bclr8 %d.8, x8/bitrw       ! bclr pp 133
                    108: 0000 ddd1 1100 0DDD bset32 %d.8, %D.32         ! bset pp 159
                    109: 0000 ddd1 11xx xxxx bset8 %d.8, x8/bitrw       ! bset pp 159
                    110: 
                    111: ! we don't decode the data register field, to allow for better EA
                    112: ! submap reuse, and this is a rare function anyways:
                    113: 0000 ddd1 0000 1aaa movep_mr16 X, %a.32                ! movep pp 234
                    114: 0000 ddd1 0100 1aaa movep_mr32 X, %a.32                ! movep pp 234
                    115: 0000 ddd1 1000 1aaa movep_rm16 X, %a.32                ! movep pp 234
                    116: 0000 ddd1 1100 1aaa movep_rm32 X, %a.32                ! movep pp 234
                    117: 
                    118: 0010 aaa0 01xx xxxx movea32 %a.32, x32/all     ! movea pp 222
                    119: 0011 aaa0 01xx xxxx movea16 %a.32, x16/all     ! movea pp 222
                    120: 
                    121: 00SS yyyy yyxx xxxx move.S yS/datalt/wo, xS/all        ! move pp 219
                    122: 
                    123: ! move_from_sr isn't privileged on the 68000:
                    124: .if m68000
                    125: 0100 0000 11xx xxxx move_from_sr0 X, x16/datalt        ! move_from_sr pp 228
                    126: .endif
                    127: .if m68010 || m68020 || m68030
                    128: 0100 0000 11xx xxxx move_from_sr X, x16/datalt/wo      ! move_from_sr pp 470
                    129: 0100 0010 11xx xxxx move_from_ccr X, x16/datalt/wo     ! move_from_ccr pp 224
                    130: .endif
                    131: 
                    132: 0100 0000 ssxx xxxx negx.s X, xs/datalt                ! negx pp 249
                    133: 
                    134: ! the EA is read before it is written on on the 68000, pp 177
                    135: .if m68000
                    136: 0100 0010 ssxx xxxx clr.s X, xs/datalt         ! clr pp 176
                    137: .endif
                    138: .if m68010 || m68020 || m68030
                    139: 0100 0010 ssxx xxxx clr.s X, xs/datalt/wo      ! clr pp 176
                    140: .endif
                    141: 
                    142: 0100 0100 11xx xxxx move_to_ccr X, x16/data    ! move_to_ccr pp 226
                    143: 
                    144: 0100 0100 ssxx xxxx neg.s X, xs/datalt         ! neg pp 246
                    145: 
                    146: 0100 0110 11xx xxxx move_to_sr X, x16/data     ! move_to_sr pp 472
                    147: 
                    148: 0100 0110 ssxx xxxx not.s X, xs/datalt         ! not pp 251
                    149: 
                    150: 0100 1000 1000 0ddd extw X, %d.16              ! ext pp 209
                    151: 0100 1000 1100 0ddd extl X, %d.32              ! ext pp 209
                    152: .if m68020 || m68030
                    153: 0100 1001 1100 0ddd extbl X, %d.32             ! ext pp 209
                    154: .endif
                    155: 
                    156: .if m68020 || m68030
                    157: 0100 1000 0000 1aaa link #32, %a.32            ! link pp 214
                    158: .endif
                    159: 
                    160: 0100 1000 00xx xxxx nbcd X, x8/datalt          ! nbcd pp 244
                    161: 
                    162: 0100 1000 0100 0ddd swap X, %d.32              ! swap pp 288
                    163: 
                    164: .if m68010 || m68020 || m68030
                    165: 0100 1000 0100 1??? bkpt                       ! bkpt pp 157
                    166: .endif
                    167: 
                    168: 0100 1000 01xx xxxx pea        X, x0/control           ! pea pp 262
                    169: 
                    170: 0100 1010 1111 1100 illegal                    ! illegal pp 210
                    171: 
                    172: 0100 1010 1100 0ddd tas_r X, %d.8              ! tas pp 289
                    173: 0100 1010 11xx xxxx tas X, x0/memalt/un                ! tas pp 289
                    174: 
                    175: ! tst addressing modes are unusual. per pp 296, on the 68000
                    176: ! and 68010, PC-relative addressing modes and immediates are not 
                    177: ! allowed:
                    178: .if m68000 || m68010
                    179: eax-cat tst ro ynyyyyyyynnnnnn
                    180: 0100 1010 ssxx xxxx tst.s X, xs/tst            ! tst pp 295
                    181: .endif
                    182: .if m68020 || m68030
                    183: 0100 1010 ssxx xxxx tst.s X, xs/all            ! tst pp 295
                    184: .endif
                    185: 
                    186: .if m68020 || m68030
1.1.1.3   root      187: specop specop16 mull divl
                    188: 0100 1100 00xx xxxx mull X, x32/data           ! mulsl pp 238, mulul pp 241
                    189: 0100 1100 01xx xxxx divl X, x32/data           ! divsl pp 195, divul pp 199
1.1       root      190: .endif
                    191: 
                    192: 0100 1110 0100 ???? trap                       ! trap pp 291
                    193: 
                    194: 0100 1110 0101 0aaa link #16S32, %a.32         ! link pp 214
                    195: 
                    196: 0100 1110 0101 1aaa unlk %a.32                 ! unlk pp 297
                    197: 
                    198: 0100 1110 0110 ?aaa move_usp X, %a.32          ! move_usp pp 474
                    199: 
                    200: 0100 1110 0111 0000 reset                      ! reset pp 536
                    201: 
                    202: 0100 1110 0111 0001 nop                                ! nop pp 250
                    203: 
                    204: specop specop16 stop
                    205: 0100 1110 0111 0010 stop                       ! stop pp 538
                    206: 
                    207: 0100 1110 0111 0011 rte                                ! rte pp 537
                    208: 
                    209: .if m68010 || m68020 || m68030
                    210: 0100 1110 0111 0100 rtd #16S32                 ! rtd pp 269
                    211: .endif
                    212: 
                    213: 0100 1110 0111 0101 rts                                ! rts pp 272
                    214: 
                    215: 0100 1110 0111 0110 trapv                      ! trapv pp 294
                    216: 
                    217: 0100 1110 0111 0111 rtr                                ! rtr pp 271
                    218: 
                    219: .if m68010 || m68020 || m68030
                    220: specop specop16 movec
                    221: 0100 1110 0111 101? movec                      ! movec pp 475
                    222: .endif
                    223: 
                    224: 0100 1110 10xx xxxx jsr X, x0/control          ! jsr pp 212
                    225: 0100 1110 11xx xxxx jmp X, x0/control          ! jmp pp 211
                    226: 
                    227: eax-cat movem_rm un nnynyyyyynnnnnn
                    228: eax-cat movem_mr un nnyynyyyyyynnnn
                    229: specop specop16 movem_rm.s movem_mr.s
                    230: 0100 1000 10xx xxxx movem_rm16 X, x0/movem_rm  ! movem pp 231
                    231: 0100 1000 11xx xxxx movem_rm32 X, x0/movem_rm  ! movem pp 231
                    232: 0100 1100 10xx xxxx movem_mr16 X, x0/movem_mr  ! movem pp 231
                    233: 0100 1100 11xx xxxx movem_mr32 X, x0/movem_mr  ! movem pp 231
                    234: 
                    235: 0100 aaa1 11xx xxxx lea %a.32, x0/control      ! lea pp 213
                    236: 
                    237: 0100 ddd1 00xx xxxx chk32 %d.32, x32/data      ! chk pp 173
                    238: 0100 ddd1 10xx xxxx chk16 %d.16, x16/data      ! chk pp 173
                    239: 
                    240: eax-cat alterable rw ynyyyyyyynnnnnn
                    241: 0101 qqq0 ss00 1aaa adda32 #q.32, %a.32                ! addq pp 114
                    242: 0101 qqq0 ssxx xxxx add.s #q.s, xs/alterable   ! addq pp 114
                    243: 0101 qqq1 ss00 1aaa suba32 #q.32, %a.32                ! subq pp 284
                    244: 0101 qqq1 ssxx xxxx sub.s #q.s, xs/alterable   ! subq pp 284
                    245: 
                    246: 0101 cccc 1100 1ddd dbcc %d.16, #16            ! dbcc pp 193
                    247: 
                    248: .if m68020 || m68030
                    249: 0101 cccc 1111 1010 trapcc #16                 ! trapcc pp 292
                    250: 0101 cccc 1111 1011 trapcc #32                 ! trapcc pp 292
                    251: 0101 cccc 1111 1100 trapcc                     ! trapcc pp 292
                    252: .endif
                    253: 
                    254: 0101 cccc 11xx xxxx scc X, x8/datalt           ! scc pp 275
                    255: 
1.1.1.3   root      256: 0110 0001 0000 0000 bsrl*** #16S32             ! bsr pp 162
                    257: .if m68020 || m68030
                    258: 0110 0001 1111 1111 bsrl*** #32                        ! bsr pp 162
                    259: .endif
                    260: 0110 0001 ???? ???? bsr*                       ! bsr pp 162
                    261: 0110 cccc 0000 0000 bccl* #16S32               ! bcc pp 128
                    262: .if m68020 || m68030
                    263: 0110 cccc 1111 1111 bccl* #32                  ! bcc pp 128
                    264: .endif
                    265: 0110 cccc ???? ???? bcc                        ! bcc pp 128
1.1       root      266: 
                    267: 0111 ddd0 ???? ???? moveq32 X, %d.32           ! moveq pp 237
                    268: 
                    269: 1000 ddd0 11xx xxxx divu #d, x16/data          ! divu pp 199
                    270: 
                    271: 1000 ???1 0000 ???? sbcd                       ! sbcd pp 273
                    272: .if m68020 || m68030
                    273: specop specop16 pack unpk
                    274: 1000 ???1 0100 ???? pack                       ! pack pp 259
                    275: 1000 ???1 1000 ???? unpk                       ! unpk pp 298
                    276: .endif
                    277: 
                    278: 1000 ddd1 11xx xxxx divs #d, x16/data          ! divs pp 195
                    279: 
                    280: 1000 ddd0 ssxx xxxx or.s xs/data, %d.s         ! or pp 253
                    281: 1000 ddd1 ssxx xxxx or.s %d.s, xs/memalt       ! or pp 253
                    282: 
                    283: 1001 ???1 ss00 ???? subx.s                     ! subx pp 286
                    284: 
                    285: 1001 ddd0 ssxx xxxx sub.s xs/all, %d.s         ! sub pp 277
                    286: 1001 ddd1 ssxx xxxx sub.s %d.s, xs/memalt      ! sub pp 277
                    287: 1001 aaa0 11xx xxxx suba16 x16/all, %a.32      ! suba pp 280
                    288: 1001 aaa1 11xx xxxx suba32 x32/all, %a.32      ! suba pp 280
                    289: 
                    290: 1011 ???1 ss00 1??? cmpm.s                     ! cmpm pp 184
                    291: 
                    292: 1011 ddd0 ssxx xxxx cmp.s xs/all, %d.s         ! cmp pp 178
                    293: 1011 ddd1 ssxx xxxx eor.s %d.s, xs/datalt      ! eor pp 203
                    294: 1011 aaa0 11xx xxxx cmpa16 x16/all, %a.32      ! cmpa pp 180
                    295: 1011 aaa1 11xx xxxx cmp32 x32/all, %a.32       ! cmpa pp 180
                    296: 
                    297: 1100 ddd0 11xx xxxx mulu #d, x16/data          ! mulu pp 241
                    298: 
                    299: 1100 ???1 0000 ???? abcd                       ! abcd pp 105
                    300: 
                    301: 1100 ddd1 11xx xxxx muls #d, x16/data          ! muls pp 238
                    302: 
                    303: 1100 ddd1 0100 0DDD exg %d.32, %D.32           ! exg pp 208
                    304: 1100 aaa1 0100 1AAA exg %a.32, %A.32           ! exg pp 208
                    305: 1100 ddd1 1000 1aaa exg %d.32, %a.32           ! exg pp 208
                    306: 
                    307: 1100 ddd0 ssxx xxxx and.s xs/data, %d.s                ! and pp 118
                    308: 1100 ddd1 ssxx xxxx and.s %d.s, xs/memalt      ! and pp 118
                    309: 
                    310: 1101 ???1 ss00 ???? addx.s                     ! addx pp 116
                    311: 
                    312: 1101 ddd0 ssxx xxxx add.s xs/all, %d.s         ! add pp 107
                    313: 1101 ddd1 ssxx xxxx add.s %d.s, xs/memalt      ! add pp 107
                    314: 1101 aaa0 11xx xxxx adda16 x16/all, %a.32      ! adda pp 110
                    315: 1101 aaa1 11xx xxxx adda32 x32/all, %a.32      ! adda pp 110
                    316: 
                    317: 1110 0000 11xx xxxx asr16 #1.8, x16/memalt     ! asr pp 124
                    318: 1110 0001 11xx xxxx asl16 #1.8, x16/memalt     ! asl pp 124
                    319: 
                    320: 1110 0010 11xx xxxx lsr16 #1.8, x16/memalt     ! lsr pp 216
                    321: 1110 0011 11xx xxxx lsl16 #1.8, x16/memalt     ! lsl pp 216
                    322: 
                    323: 1110 0100 11xx xxxx roxr16 #1.8, x16/memalt    ! roxr pp 263
                    324: 1110 0101 11xx xxxx roxl16 #1.8, x16/memalt    ! roxl pp 263
                    325: 
                    326: 1110 0110 11xx xxxx ror16 #1.8, x16/memalt     ! ror pp 263
                    327: 1110 0111 11xx xxxx rol16 #1.8, x16/memalt     ! rol pp 263
                    328: 
                    329: .if m68020 || m68030
                    330: eax-cat bitfieldro un nnynnyyyyyynnnn
                    331: eax-cat bitfieldrw un nnynnyyyynnnnnn
                    332: specop specop16 bftst bfextu bfchg bfexts bfclr bfffo bfset bfins
                    333: 1110 1000 1100 0ddd bftst                      ! bftst pp 154
                    334: 1110 1000 11xx xxxx bftst X, x0/bitfieldro     ! bftst pp 154
                    335: 1110 1001 1100 0ddd bfextu                     ! bfextu pp 143
                    336: 1110 1001 11xx xxxx bfextu X, x0/bitfieldro    ! bfextu pp 143
                    337: 1110 1010 1100 0ddd bfchg                      ! bfchg pp 137
                    338: 1110 1010 11xx xxxx bfchg X, x0/bitfieldrw     ! bfchg pp 137
                    339: 1110 1011 1100 0ddd bfexts                     ! bfexts pp 141
                    340: 1110 1011 11xx xxxx bfexts X, x0/bitfieldro    ! bfexts pp 141
                    341: 1110 1100 1100 0ddd bfclr                      ! bfclr pp 138
                    342: 1110 1100 11xx xxxx bfclr X, x0/bitfieldrw     ! bfclr pp 138
                    343: 1110 1101 1100 0ddd bfffo                      ! bfffo pp 146
                    344: 1110 1101 11xx xxxx bfffo X, x0/bitfieldro     ! bfffo pp 146
                    345: 1110 1110 1100 0ddd bfset                      ! bfset pp 152
                    346: 1110 1110 11xx xxxx bfset X, x0/bitfieldrw     ! bfset pp 152
                    347: 1110 1111 1100 0ddd bfins                      ! bfins pp 149
                    348: 1110 1111 11xx xxxx bfins X, x0/bitfieldrw     ! bfins pp 149
                    349: .endif
                    350: 
                    351: 1110 qqq0 ss00 0ddd asr.s #q.8, %d.s           ! asr pp 124
                    352: 1110 DDD0 ss10 0ddd asr.s %D.8, %d.s           ! asr pp 124
                    353: 1110 qqq1 ss00 0ddd asl.s #q.8, %d.s           ! asl pp 124
                    354: 1110 DDD1 ss10 0ddd asl.s %D.8, %d.s           ! asl pp 124
                    355: 
                    356: 1110 qqq0 ss00 1ddd lsr.s #q.8, %d.s           ! lsr pp 216
                    357: 1110 DDD0 ss10 1ddd lsr.s %D.8, %d.s           ! lsr pp 216
                    358: 1110 qqq1 ss00 1ddd lsl.s #q.8, %d.s           ! lsl pp 216
                    359: 1110 DDD1 ss10 1ddd lsl.s %D.8, %d.s           ! lsl pp 216
                    360: 
                    361: 1110 qqq0 ss01 0ddd roxr.s #q.8, %d.s          ! roxr pp 263
                    362: 1110 DDD0 ss11 0ddd roxr.s %D.8, %d.s          ! roxr pp 263
                    363: 1110 qqq1 ss01 0ddd roxl.s #q.8, %d.s          ! roxl pp 263
                    364: 1110 DDD1 ss11 0ddd roxl.s %D.8, %d.s          ! roxl pp 263
                    365: 
                    366: 1110 qqq0 ss01 1ddd ror.s #q.8, %d.s           ! ror pp 263
                    367: 1110 DDD0 ss11 1ddd ror.s %D.8, %d.s           ! ror pp 263
                    368: 1110 qqq1 ss01 1ddd rol.s #q.8, %d.s           ! rol pp 263
                    369: 1110 DDD1 ss11 1ddd rol.s %D.8, %d.s           ! rol pp 263
1.1.1.3   root      370: 
                    371: .if m68020 || m68030
                    372: specop fpgen fpgen
                    373: 1111 0010 00xx xxxx fpgen X, x32/all           ! cpgen pp 189
                    374: specop specop16 fdbcc ftrapcc fscc
                    375: 1111 0010 0100 1ddd fdbcc %d.16, #16           ! fdbcc pp 335
                    376: 1111 0010 0111 1010 ftrapcc #16                        ! ftrapcc pp 446
                    377: 1111 0010 0111 1011 ftrapcc #32                        ! ftrapcc pp 446
                    378: 1111 0010 0111 1100 ftrapcc                    ! ftrapcc pp 446
                    379: 1111 0010 01xx xxxx fscc X, x8/datalt          ! fscc pp 411
                    380: 1111 0010 10?? ???? fbcc #16S32                        ! fbcc pp 324
                    381: 1111 0010 11?? ???? fbcc #32                   ! fbcc pp 324
                    382: 1111 0011 00xx xxxx fsave X, x0/movem_rm       ! fsave pp 467
                    383: 1111 0011 01xx xxxx frestore X,        x0/movem_mr     ! frestore pp 464
                    384: .endif

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.