snes.inc 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179
  1. ;-----------;
  2. ; SNES.ASM \
  3. ;---------------------------;
  4. ; SNES Register Definitions ;
  5. ; by eKid ;
  6. ;---------------------------+--;
  7. ; Information taken from- ;
  8. ; QWERTIE'S SNES DOCUMENTATION ;
  9. ; AND ;
  10. ; YOSHI'S DOCUMENTS ;
  11. ;------------------------------;
  12. .EQU REG_INIDISP $2100 ; Screen Display Register 1B/W
  13. .EQU REG_OBSEL $2101 ; OAM Size Control 1B/W
  14. .EQU REG_OAMADDL $2102 ; OAM Access Address 2B/W
  15. .EQU REG_OAMADDH $2103
  16. .EQU REG_OAMDATA $2104 ; OAM Data Write 1B/W
  17. .EQU REG_BGMODE $2105 ; Screen Mode Register 1B/W
  18. .EQU REG_MOSAIC $2106 ; Screen Pixelation Register 1B/W
  19. .EQU REG_BG0SC $2107 ; BG0 VRAM Location Register 1B/W
  20. .EQU REG_BG1SC $2108 ; BG1 VRAM Location Register 1B/W
  21. .EQU REG_BG2SC $2109 ; BG2 VRAM Location Register 1B/W
  22. .EQU REG_BG3SC $210A ; BG3 VRAM Location Register 1B/W
  23. .EQU REG_BG01NBA $210B ; BG0/1 Character Bases 1B/W
  24. .EQU REG_BG23NBA $210C ; BG2/3 Character Bases 1B/W
  25. .EQU REG_BG0HOFS $210D ; BG0 Vertical Scroll 1B/W D
  26. .EQU REG_BG0VOFS $210E ; BG0 Vertical Scroll 1B/W D
  27. .EQU REG_BG1HOFS $210F ; BG1 Horizontal Scroll 1B/W D
  28. .EQU REG_BG1VOFS $2110 ; BG1 Vertical Scroll 1B/W D
  29. .EQU REG_BG2HOFS $2111 ; BG2 Horizontal Scroll 1B/W D
  30. .EQU REG_BG2VOFS $2112 ; BG2 Vertical Scroll 1B/W D
  31. .EQU REG_BG3HOFS $2113 ; BG3 Horiztonal Scroll 1B/W D
  32. .EQU REG_BG3VOFS $2114 ; BG3 Vertical Scroll 1B/W D
  33. .EQU REG_VMAIN $2115 ; Video Port Control 1B/W
  34. .EQU REG_VMADDL $2116 ; Video Port Address 2B/W
  35. .EQU REG_VMADDH $2117
  36. .EQU REG_VMDATAL $2118 ; Video Port Data 2B/W
  37. .EQU REG_VMDATAH $2119
  38. .EQU REG_M7SEL $211A ; MODE7 settings register 1B/W
  39. .EQU REG_M7A $211B ; MODE7 COSINE A 1B/W
  40. .EQU REG_M7B $211C ; MODE7 SINE A 1B/W
  41. .EQU REG_M7C $211D ; MODE7 SINE B 1B/W
  42. .EQU REG_M7D $211E ; MODE7 COSINE B 1B/W
  43. .EQU REG_M7X $211F ; MODE7 Center Pos X 1B/W D
  44. .EQU REG_M7Y $2120 ; MODE7 Center Pos Y 1B/W D
  45. .EQU REG_CGADD $2121 ; CGRAM Address 1B/W
  46. .EQU REG_CGDATA $2122 ; CGRAM Data Write 1B/W D
  47. .EQU REG_W01SEL $2123 ; Window Mask Settings Reg1 1B/W
  48. .EQU REG_W23SEL $2124 ; Window Mask Settings Reg2 1B/W
  49. .EQU REG_WH0 $2126 ; Window 1 Left Posision Reg 1B/W
  50. .EQU REG_WH1 $2127 ; Window 1 Right Position Reg 1B/W
  51. .EQU REG_WH2 $2128 ; Window 2 Left Position Reg 1B/W
  52. .EQU REG_WH3 $2129 ; Window 2 Right Position Reg 1B/W
  53. .EQU REG_WBGLOG $212A ; Mask Logic for Window 1 & 2 1B/W
  54. .EQU REG_WOBJLOG $212B ; Mask Logic for Color&OBJ Windows 1B/W
  55. .EQU REG_TM $212C ; Main Screen Designation 1B/W
  56. .EQU REG_TD $212D ; Sub-Screen Designation 1B/W
  57. .EQU REG_TMW $212E ; WinMask Main Designation Reg 1B/W
  58. .EQU REG_TSW $212F ; WinMask Sub Designation Reg 1B/W
  59. .EQU REG_CGWSEL $2130 ; Fixed Color/Screen Addition Reg 1B/W
  60. .EQU REG_CGADSUB $2131 ; +/- For Screens/BGs/OBJs 1B/W
  61. .EQU REG_COLDATA $2132 ; Fixed Color Data for +/- 1B/W
  62. .EQU REG_SETINI $2133 ; Screen Mode Select Reg 1B/W
  63. .EQU REG_MPYL $2134 ; Multiplication Result Low 1B/R
  64. .EQU REG_MPYM $2135 ; Middle 1B/R
  65. .EQU REG_MPYH $2136 ; High 1B/R
  66. .EQU REG_SLHV $2137 ; Sofware Latch For H/V Counter 1B/R
  67. .EQU REG_OAMDATAREAD $2138 ; OAM Data Read 1B/R
  68. .EQU REG_VMDATALREAD $2139 ; VRAM Data Read High 1B/R
  69. .EQU REG_VMDATAHREAD $213A ; VRAM Data Read Low 1B/R
  70. .EQU REG_CGDATAREAD $213B ; CGRAM Data Read 1B/R
  71. .EQU REG_OPHCT $213C ; X Scanline Location 1B/R D
  72. .EQU REG_OPVCT $213D ; Y Scanline Location 1B/R D
  73. .EQU REG_STAT77 $213E ; PPU Status Flag & Version 1B/R
  74. .EQU REG_STAT78 $213F ; PPU Status Flag & Version 1B/R
  75. .EQU REG_APUI00 $2140 ; Sound Register 1B/RW
  76. .EQU REG_APUI01 $2141 ; Sound Register 1B/RW
  77. .EQU REG_APUI02 $2142 ; Sound Register 1B/RW
  78. .EQU REG_APUI03 $2143 ; Sound Register 1B/RW
  79. .EQU REG_WMDATA $2180 ; WRAM Data Read/Write 1B/RW
  80. .EQU REG_WMADDL $2181 ; WRAM Address (Low) 1B/RW
  81. .EQU REG_WMADDM $2182 ; WRAM Address (Middle) 1B/RW
  82. .EQU REG_WMADDH $2183 ; WRAM Address (High) 1B/RW
  83. .EQU REG_NMITIMEN $4200 ; Counter Enable 1B/W
  84. .EQU REG_WRIO $4201 ; Programmable I/O Port 1B/W
  85. .EQU REG_WRMPYA $4202 ; Multiplicand 1B/W
  86. .EQU REG_WRMPYB $4203 ; Multiplier 1B/W
  87. .EQU REG_WRDIVL $4204 ; Dividend 2B/W ???
  88. .EQU REG_WRDIVH $4205 ; ???
  89. .EQU REG_WRDIVB $4206 ; Divisor ???
  90. .EQU REG_HTIMEL $4207 ; Video X IRQ Beam Pointer 2B/W
  91. .EQU REG_HTIMEH $4208
  92. .EQU REG_VTIMEL $4209 ; Video Y IRQ Beam Pointer 2B/W
  93. .EQU REG_VTIMEH $420A
  94. .EQU REG_MDMAEN $420B ; DMA Enable Register 1B/W
  95. .EQU REG_MHDMAEN $420C ; HDMA Enable Register 1B/W
  96. .EQU REG_MEMSEL $420D ; Cycle Speed Register 1B/W
  97. .EQU REG_RDNMI $4210 ; NMI Register 1B/R
  98. .EQU REG_TIMEUP $4211 ; Video IRQ Register 1B/RW
  99. .EQU REG_HVBJOY $4212 ; Status Register 1B/RW
  100. .EQU REG_RDIO $4213 ; Programmable I/O Port 1B/RW
  101. .EQU REG_RDDIVL $4214 ; Quotient Of Divide Result 2B/R
  102. .EQU REG_RDDIVH $4215
  103. .EQU REG_RDMPYL $4216 ; Multiplication Or Divide Result 2B/R
  104. .EQU REG_RDMPYH $4217
  105. .EQU REG_JOY1L $4218 ; Joypad #1 Status 2B/R
  106. .EQU REG_JOY1H $4219
  107. .EQU REG_JOY2L $421A ; Joypad #2 Status 2B/R
  108. .EQU REG_JOY2H $421B
  109. .EQU REG_JOY3L $421C ; Joypad #3 Status 2B/R
  110. .EQU REG_JOY3H $421D
  111. .EQU REG_JOY4L $421E ; Joypad #4 Status 2B/R
  112. .EQU REG_JOY4H $421F
  113. .EQU REG_DMAP0 $4300 ; DMA Control Register 1B/W
  114. .EQU REG_BBAD0 $4301 ; DMA Destination Register 1B/W
  115. .EQU REG_A1T0L $4302 ; DMA Source Address 2B/W
  116. .EQU REG_A1T0H $4303
  117. .EQU REG_A1B0 $4304 ; Source Bank Address 1B/W
  118. .EQU REG_DAS0L $4305 ; DMA Transfer size/HDMA Address 2B/W
  119. .EQU REG_DAS0H $4306
  120. .EQU REG_NTRL0 $430A ; Number Of Lines For HDMA 1B/W
  121. .EQU REG_DMAP1 $4310 ; DMA 1
  122. .EQU REG_BBAD1 $4311
  123. .EQU REG_A1T1L $4312
  124. .EQU REG_A1T1H $4313
  125. .EQU REG_A1B1 $4314
  126. .EQU REG_DAS1L $4315
  127. .EQU REG_DAS1H $4316
  128. .EQU REG_NTRL1 $431A
  129. .EQU REG_DMAP2 $4310 ; DMA 2
  130. .EQU REG_BBAD2 $4311
  131. .EQU REG_A1T2L $4312
  132. .EQU REG_A1T2H $4313
  133. .EQU REG_A1B2 $4314
  134. .EQU REG_DAS2L $4315
  135. .EQU REG_DAS2H $4316
  136. .EQU REG_NTRL2 $431A
  137. .EQU REG_DMAP3 $4310 ; DMA 3
  138. .EQU REG_BBAD3 $4311
  139. .EQU REG_A1T3L $4312
  140. .EQU REG_A1T3H $4313
  141. .EQU REG_A1B3 $4314
  142. .EQU REG_DAS3L $4315
  143. .EQU REG_DAS3H $4316
  144. .EQU REG_NTRL3 $431A
  145. .EQU REG_DMAP4 $4310 ; DMA 4
  146. .EQU REG_BBAD4 $4311
  147. .EQU REG_A1T4L $4312
  148. .EQU REG_A1T4H $4313
  149. .EQU REG_A1B4 $4314
  150. .EQU REG_DAS4L $4315
  151. .EQU REG_DAS4H $4316
  152. .EQU REG_NTRL4 $431A
  153. .EQU REG_DMAP5 $4310 ; DMA 5
  154. .EQU REG_BBAD5 $4311
  155. .EQU REG_A1T5L $4312
  156. .EQU REG_A1T5H $4313
  157. .EQU REG_A1B5 $4314
  158. .EQU REG_DAS5L $4315
  159. .EQU REG_DAS5H $4316
  160. .EQU REG_NTRL5 $431A
  161. .EQU REG_DMAP6 $4310 ; DMA 6
  162. .EQU REG_BBAD6 $4311
  163. .EQU REG_A1T6L $4312
  164. .EQU REG_A1T6H $4313
  165. .EQU REG_A1B6 $4314
  166. .EQU REG_DAS6L $4315
  167. .EQU REG_DAS6H $4316
  168. .EQU REG_NTRL6 $431A
  169. .EQU REG_DMAP7 $4310 ; DMA 7
  170. .EQU REG_BBAD7 $4311
  171. .EQU REG_A1T7L $4312
  172. .EQU REG_A1T7H $4313
  173. .EQU REG_A1B7 $4314
  174. .EQU REG_DAS7L $4315
  175. .EQU REG_DAS7H $4316
  176. .EQU REG_NTRL7 $431A
  177. .EQU REG_FBNANACNT $FEED ; Banana Register... 1B/RW