Advertisement
Twili

badn64.h

Oct 17th, 2017
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 3.49 KB | None | 0 0
  1. #define WORD unsigned int
  2. #define HALF unsigned short
  3. #define BYTE unsigned char
  4.  
  5. #define sign(imm)    (HALF)(imm&0x8000)
  6. #define op(inst)     (BYTE)(inst>>26)
  7. #define target(inst) (WORD)((inst&0x03ffffff)<<2)
  8. #define imm(inst)    (WORD)(inst&0xffff)
  9. #define funct(inst)  (BYTE)(inst&0x3f)
  10. #define rs(inst)     (BYTE)((inst&0x03e00000)>>21)
  11. #define rt(inst)     (BYTE)((inst&0x001f0000)>>16)
  12. #define rd(inst)     (BYTE)((inst&0xf800)>>11)
  13. #define sa(inst)     (BYTE)((inst&0x07c0)>>6)
  14.  
  15. #define R0 0
  16. #define AT 1
  17. #define V0 2
  18. #define V1 3
  19. #define A0 4
  20. #define A1 5
  21. #define A2 6
  22. #define A3 7
  23. #define T0 8
  24. #define T1 9
  25. #define T2 10
  26. #define T3 11
  27. #define T4 12
  28. #define T5 13
  29. #define T6 14
  30. #define T7 15
  31. #define S0 16
  32. #define S1 17
  33. #define S2 18
  34. #define S3 19
  35. #define S4 20
  36. #define S5 21
  37. #define S6 22
  38. #define S7 23
  39. #define T8 24
  40. #define T9 25
  41. #define K0 26
  42. #define K1 27
  43. #define GP 28
  44. #define SP 29
  45. #define FP 30
  46. #define RA 31
  47.  
  48. #define SPECIAL 0
  49. #define REGIMM  1
  50. #define J       2
  51. #define JAL     3
  52. #define BEQ     4
  53. #define BNE     5
  54. #define BLEZ    6
  55. #define BGTZ    7
  56. #define ADDI    8
  57. #define ADDIU   9
  58. #define SLTI    10
  59. #define SLTIU   11
  60. #define ANDI    12
  61. #define ORI     13
  62. #define XORI    14
  63. #define LUI     15
  64. #define COP0    16
  65. #define COP1    17
  66. #define COP2    18
  67. #define BEQL    20
  68. #define BNEL    21
  69. #define BLEZL   22
  70. #define BGTZL   23
  71. #define DADDI   24
  72. #define DADDIU  25
  73. #define LDL     26
  74. #define LDR     27
  75. #define LB      32
  76. #define LH      33
  77. #define LWL     34
  78. #define LW      35
  79. #define LBU     36
  80. #define LHU     37
  81. #define LWR     38
  82. #define LWU     39
  83. #define SB      40
  84. #define SH      41
  85. #define SWL     42
  86. #define SW      43
  87. #define SDL     44
  88. #define SDR     45
  89. #define SWR     46
  90. #define CACHE   47
  91. #define LL      48
  92. #define LWC1    49
  93. #define LWC2    50
  94. #define LLD     52
  95. #define LDC1    53
  96. #define LDC2    54
  97. #define LD      55
  98. #define SC      56
  99. #define SWC1    57
  100. #define SWC2    58
  101. #define SCD     60
  102. #define SDC1    61
  103. #define SDC2    62
  104. #define SD      63
  105.  
  106. #define SLL     0
  107. #define SRL     2
  108. #define SRA     3
  109. #define SLLV    4
  110. #define SRLV    6
  111. #define SRAV    7
  112. #define JR      8
  113. #define JALR    9
  114. #define SYSCALL 12
  115. /*#define BREAK 13*/
  116. #define SYNC    15
  117. #define MFHI    16
  118. #define MTHI    17
  119. #define MFLO    18
  120. #define MTLO    19
  121. #define DSLLV   20
  122. #define DSRLV   22
  123. #define DSRAV   23
  124. #define MULT    24
  125. #define MULTU   25
  126. #define DIV     26
  127. #define DIVU    27
  128. #define DMULT   28
  129. #define DMULTU  29
  130. #define DDIV    30
  131. #define DDIVU   31
  132. #define ADD     32
  133. #define ADDU    33
  134. #define SUB     34
  135. #define SUBU    35
  136. #define AND     36
  137. #define OR      37
  138. #define XOR     38
  139. #define NOR     39
  140. #define SLT     42
  141. #define SLTU    43
  142. #define DADD    44
  143. #define DADDU   45
  144. #define DSUB    46
  145. #define DSUBU   47
  146. #define TGE     48
  147. #define TGEU    49
  148. #define TLT     50
  149. #define TLTU    51
  150. #define TEQ     52
  151. #define TNE     54
  152. #define DSLL    56
  153. #define DSRL    58
  154. #define DSRA    59
  155. #define DSLL32  60
  156. #define DSRL32  62
  157. #define DSRA32  63
  158.  
  159. #define BLTZ    0
  160. #define BGEZ    1
  161. #define BLTZL   2
  162. #define BGEZL   3
  163. #define TGEI    8
  164. #define TGEIU   9
  165. #define TLTI    10
  166. #define TLTIU   11
  167. #define TEQI    12
  168. #define TNEI    14
  169. #define BLTZAL  16
  170. #define BGEZAL  17
  171. #define BLTZALL 18
  172. #define BGEZALL 19
  173.  
  174. #define MF      0
  175. #define DMF     1
  176. #define CF      2
  177. #define MT      4
  178. #define DMT     5
  179. #define CT      6
  180. #define BC      8
  181. #define CO      16
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement