home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 2 / FFMCD02.bin / new / amigalibdisks / disk933 / phxass / motorola.doc next >
Text File  |  1993-12-21  |  13KB  |  374 lines

  1. **
  2. **    Listing of all Motorola instructions supported by PhxAss V3.xx
  3. **
  4.  
  5.  
  6. **    Integer Instructions (68000,68010,68020,68030,68040)
  7.  
  8. ABCD        Dy,Dx               Add Decimal with Extend
  9. ABCD        -(Ay),-(Ax)
  10. ADD.x        <ea>,Dn               Add
  11. ADD.x        Dn,<ea>
  12. ADDA.x        <ea>,An               Add Address
  13. ADDI.x        #<data>,<ea>           Add Immediate
  14. ADDQ.x        #<data>,<ea>           Add Quick
  15. ADDX.x        Dy,Dx               Add Extended
  16. ADDX.x        -(Ay),-(Ax)
  17. AND.x        <ea>,Dn               And Logical
  18. AND.x        Dn,<ea>
  19. ANDI.x        #<data>,<ea>           And Immediate
  20. ANDI.x        #<data>,CCR            And Immediate to Condition Codes
  21. ANDI.x        #<data>,SR               And Immediate to the Status Register
  22. ASL/ASR.x   Dx,Dy               Arithmetic Shift Left/Right
  23. ASL/ASR.x   #<data>,Dy
  24. ASL/ASR     <ea>
  25. B<cc>.x     <label>               Branch Conditionally
  26. BCHG        Dn,<ea>               Test a Bit and Change
  27. BCHG        #<data>,<ea>
  28. BCLR        Dn,<ea>               Test a Bit and Clear
  29. BCLR        #<data>,<ea>
  30. BRA.x        <label>               Branch Always
  31. BSET        Dn,<ea>               Test a Bit and Set
  32. BSET        #<data>,<ea>
  33. BSR.x        <label>               Branch to Subroutine
  34. BTST.x        Dn,<ea>               Test a Bit
  35. BTST.x        #<data>,<ea>
  36. CHK.x        <ea>,Dn               Check Register Against Bounds
  37. CLR.x        <ea>               Clear an Operand
  38. CMP.x        <ea>,Dn               Compare
  39. CMPA.x        <ea>,An               Compare Address
  40. CMPI.x        #<data>,<ea>           Compare Immediate
  41. CMPM.x        (Ay)+,(Ax)+            Compare Memory
  42. DB<cc>        Dn,<label>               Test Condition, Decrement, and Branch
  43. DIVS        <ea>,Dn               Signed Divide
  44. DIVU        <ea>,Dn               Unsigned Divide
  45. EOR.x        Dn,<ea>               Exclusive-OR Logical
  46. EORI.x        #<data>,<ea>           Exclusive-OR Immediate
  47. EORI.x        #<data>,CCR            Exclusive-OR Immediate to Cond. Codes
  48. EORI.x        #<data>,SR               Exclusive-OR Immediate to Status Reg.
  49. EXG        Rn,Rm               Exchange Registers
  50. EXT.x        Dn                   Sign Extend
  51. ILLEGAL                    Take Illegal Instruction Trap
  52. JMP        <ea>               Jump
  53. JSR        <ea>               Jump to Subroutine
  54. LEA        <ea>,An               Load Effective Address
  55. LINK        An,#<displacement>           Link and Allocate
  56. LSL/LSR.x   Dx,Dy               Logical Shift Left/Right
  57. LSL/LSR.x   #<data>,Dy
  58. LSL/LSR     <ea>
  59. MOVE.x        <ea>,<ea>               Move Data from Source to Destination
  60. MOVEA.x     <ea>,An               Move Address
  61. MOVE        <ea>,CCR               Move to Condition Codes
  62. MOVE        <ea>,SR               Move to the Status Register
  63. MOVE        SR,<ea>               Move from Status Register
  64. MOVE        USP,An               Move User Stack Pointer
  65. MOVE        An,USP
  66. MOVEM.x     <register list>,<ea>       Move Multiple Registers
  67. MOVEM.x     <ea>,<register list>
  68. MOVEP.x     Dx,(d,Ay)               Move Peripheral Data
  69. MOVEP.x     (d,Ay),Dx
  70. MOVEQ        #<data>,Dn               Move Quick
  71. MULS        <ea>,Dn               Signed Multiply
  72. MULU        <ea>,Dn               Unsigned Multiply
  73. NBCD        <ea>               Negate Decimal with Extend
  74. NEG.x        <ea>               Negate
  75. NEGX.x        <ea>               Negate with Extend
  76. NOP                       No Operation
  77. NOT.x        <ea>               Logical Complement
  78. OR.x        <ea>,Dn               Inclusive-OR Logical
  79. OR.x        Dn,<ea>
  80. ORI.x        #<data>,<ea>           Inclusive-OR Immediate
  81. ORI.x        #<data>,CCR            Inclusive-OR Immediate to Cond. Codes
  82. PEA        <ea>               Push Effective Address
  83. RESET                       Reset External Devices
  84. ROL/ROR.x   Dx,Dy               Rotate (without Extend) Left/Right
  85. ROL/ROR.x   #<data>,Dy
  86. ROL/ROR     <ea>
  87. ROXL/ROXR.x Dx,Dy               Rotate Left/Right with Extend
  88. ROXL/ROXR.x #<data>,Dy
  89. ROXL/ROXR   <ea>
  90. RTE                       Return from Exception
  91. RTR                       Return and Restore Condition Codes
  92. RTS                       Return from Subroutine
  93. SBCD        Dx,Dy               Subtract Decimal with Extend
  94. SBCD        -(Ax),-(Ay)
  95. S<cc>        <ea>               Set According to Condition
  96. STOP        #<data>               Load Status Register and Stop
  97. SUB.x        <ea>,Dn               Subtract
  98. SUB.x        Dn,<ea>
  99. SUBA.x        <ea>,An               Subtract Address
  100. SUBI.x        #<data>,<ea>           Subtract Immediate
  101. SUBQ.x        #<data>,<ea>           Subtract Quick
  102. SUBX.x        Dx,Dy               Subtract with Extend
  103. SWAP        Dn                   Swap Register Halves
  104. TAS        <ea>               Test and Set an Operand
  105. TRAP        #<vector>               Take Trap Exception
  106. TRAPV                       Trap on Overflow
  107. TST.x        <ea>               Test an Operand
  108. UNLK        An                   Unlink
  109.  
  110. Integer Condition Codes <cc>:
  111. CC (HS)  carry clear (higher or same)  CS (LO)    carry set (lower)
  112. EQ     equal                   F    never true
  113. GE     greater or equal           GT    greater than
  114. HI     higher                LE    less or equal
  115. LS     less or same               LT    less than
  116. MI     negative               NE    not equal
  117. PL     positive               T    always true
  118. VC     overflow clear            VS    overflow set
  119.  
  120.  
  121. **    Integer Instructions (68010,68020,68030,68040)
  122.  
  123. BKPT        #<data>               Breakpoint
  124. MOVE        CCR,<ea>               Move from the Condition Code Register
  125. MOVEC        Rc,Rn               Move Control Registers
  126. MOVEC        Rn,Rc
  127. MOVES        Rn,<ea>               Move Address Space
  128. MOVES        <ea>,Rn
  129. RTD        #<displacement>           Return and Deallocate
  130.  
  131.  
  132. **    Integer Instructions (68020,68030,68040)
  133.  
  134. BFCHG        <ea>{offset:width}           Test Bit Field and Change
  135. BFCLR        <ea>{offset:width}           Test Bit Field and Clear
  136. BFEXTS        <ea>{offset:width},Dn      Extract Bit Field Signed
  137. BFEXTU        <ea>{offset:width},Dn      Extract Bit Field Unsigned
  138. BFFFO        <ea>{offset:width},Dn      Find First One in Bit Field
  139. BFINS        Dn,<ea>{offset:width}      Insert Bit Field
  140. BFSET        <ea>{offset:width}           Test Bit Field and Set
  141. BFTST        <ea>{offset:width}           Test Bit Field
  142. CALLM        #<data>,<ea>           Call Module (68020 ONLY!)
  143. CAS.x        Dc,Du,<ea>               Compare and Swap with Operand
  144. CAS2.x        Dc1:Dc2,Du1:Du2,(Rn1):(Rn2)
  145. CHK2.x        <ea>,Rn               Check Register Against Bounds
  146. CMP2.x        <ea>,Rn               Compare Register Against Bounds
  147. DIVS.L        <ea>,Dq               Signed Divide
  148. DIVS.L        <ea>,Dr:Dq
  149. DIVSL.L     <ea>,Dr:Dq
  150. DIVU.L        <ea>,Dq               Unsigned Divide
  151. DIVU.L        <ea>,Dr:Dq
  152. DIVUL.L     <ea>,Dr:Dq
  153. EXTB.L        Dn                   Sign Extend
  154. LINK.L        An,#<displacement>           Link and Allocate
  155. MULS.L        <ea>,Dl               Signed Multiply
  156. MULS.L        <ea>,Dh:Dl
  157. MULU.L        <ea>,Dl               Unsigned Multiply
  158. MULU.L        <ea>,Dh:Dl
  159. PACK        -(Ax),-(Ay),#<adjustment>  Pack BCD
  160. PACK        Dx,Dy,#<adjustment>
  161. RTM        Rn                   Return from Module (68020 ONLY!)
  162. TRAP<cc>                   Trap on Condition
  163. TRAP<cc>.x  #<data>
  164. UNPK        -(Ax),-(Ay),#<adjustment>  Unpack BCD
  165. UNPK        Dx,Dy,#<adjustment>
  166.  
  167.  
  168. **    Integer Instructions (68040)
  169.  
  170. CINVL        <caches>,(An)           Invalidate Cache Lines
  171. CINVP        <caches>,(An)           (<caches> = DC, IC, BC or NC)
  172. CINVA        <caches>
  173. CPUSHL        <caches>,(An)           Push and Invalidate Cache Lines
  174. CPUSHP        <caches>,(An)
  175. CPUSHA        <caches>
  176. MOVE16        (Ax)+,(Ay)+            Move 16 Bytes Block
  177. MOVE16        xxx.L,(An)
  178. MOVE16        xxx.L,(An)+
  179. MOVE16        (An),xxx.L
  180. MOVE16        (An)+,xxx.L
  181.  
  182.  
  183. MOVEC Control Registers (Rc):
  184.                           68010 68020 68030 68040
  185. SFC   Source Function Code            x     x     x      x
  186. DFC   Destination Function Code         x     x     x      x
  187. USP   User Stack Pointer            x     x     x      x
  188. VBR   Vector Base Register            x     x     x      x
  189. CACR  Cache Control Register                  x     x      x
  190. CAAR  Cache Address Register                  x     x
  191. MSP   Master Stack Pointer                  x     x      x
  192. ISP   Interrupt Stack Pointer                  x     x      x
  193. TC    MMU Translation Control Register                  x
  194. ITT0  Instr. Transparent Translation Reg. 0              x
  195. ITT1  Instr. Transparent Translation Reg. 1              x
  196. DTT0  Data Transparent Translation Reg. 0              x
  197. DTT1  Data Transparent Translation Reg. 1              x
  198. MMUSR MMU Status Register                      x
  199. URP   User Root Pointer                       x
  200. SRP   Supervisor Root Pointer                      x
  201.  
  202.  
  203. **    Floating Point Instructions (68881,68882,68040)
  204.  
  205. Monadic operations:
  206. Fxxxx        <ea>,FPn
  207. Fxxxx        FPm,FPn
  208. Fxxxx        FPn
  209.  
  210. FABS        Floating-Point Absolute value
  211. FACOS        Arc Cosine
  212. FASIN        Arc Sine
  213. FATAN        Arc Tangent
  214. FTANTH        Hyberbolic Arc Tangent
  215. FCOS        Cosine
  216. FCOSH        Hyperbolic Cosine
  217. FETOX        e to x
  218. FETOXM1     e to x minus one
  219. FGETEXP     Get Exponent
  220. FGETMAN     Get Mantissa
  221. FINT        Integer Part
  222. FINTRZ        Integer Part, Round to Zero
  223. FLOG10        log10
  224. FLOG2        log2
  225. FLOGN        loge
  226. FLOGNP1     loge (x+1)
  227. FNEG        Floating-Point Negate
  228. FSIN        Sine