bios_asm.as 7.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329
  1. @ 00h
  2. @ extern void SoftReset(void);
  3. @
  4. .GLOBAL SoftReset
  5. .THUMB_FUNC
  6. SoftReset:
  7. swi 1
  8. swi 0
  9. @--------------------------------------------------
  10. @ 01h
  11. @ extern void RegisterRamReset(u32 flags);
  12. .GLOBAL RegisterRamReset
  13. .THUMB_FUNC
  14. RegisterRamReset:
  15. swi 1
  16. bx lr
  17. @--------------------------------------------------
  18. @ 02h
  19. @ extern void Halt(void);
  20. .GLOBAL Halt
  21. .THUMB_FUNC
  22. Halt:
  23. swi 2
  24. bx lr
  25. @--------------------------------------------------
  26. @ 03h
  27. @ extern void Stop(void);
  28. .GLOBAL Stop
  29. .THUMB_FUNC
  30. Stop: swi 3
  31. bx lr
  32. @--------------------------------------------------
  33. @ 04h
  34. @ extern void IntrWait(u32 flagClear, u32 irq);
  35. .GLOBAL IntrWait
  36. .THUMB_FUNC
  37. IntrWait: swi 4
  38. bx lr
  39. @--------------------------------------------------
  40. @ 05h
  41. @ extern void VBlankIntrWait(void);
  42. .GLOBAL VBlankIntrWait
  43. .THUMB_FUNC
  44. VBlankIntrWait:
  45. swi 5
  46. bx lr
  47. @--------------------------------------------------
  48. @ 06h
  49. @ extern s32 Divi(s32 numerator, s32 denominator);
  50. .GLOBAL Divi
  51. .THUMB_FUNC
  52. Divi: swi 6
  53. bx lr
  54. @--------------------------------------------------
  55. @ 07h
  56. @ extern s32 DiviArm(s32 denominator, s32 numerator);
  57. .GLOBAL DiviArm
  58. .THUMB_FUNC
  59. DiviArm: swi 7
  60. bx lr
  61. @--------------------------------------------------
  62. @ 08h
  63. @ extern u32 Sqrt(u32 value);
  64. .GLOBAL Sqrt
  65. .THUMB_FUNC
  66. Sqrt: swi 8
  67. bx lr
  68. @--------------------------------------------------
  69. @ 09h
  70. @ extern s16 ArcTan(s16 ang);
  71. .GLOBAL ArcTan
  72. .THUMB_FUNC
  73. ArcTan: swi 9
  74. bx lr
  75. @--------------------------------------------------
  76. @ 0Ah
  77. @ extern u16 ArcTan2(s16 x, s16 y);
  78. .GLOBAL ArcTan2
  79. .THUMB_FUNC
  80. ArcTan2: swi 10
  81. bx lr
  82. @--------------------------------------------------
  83. @ 0Bh
  84. @ extern void CpuSet(void *source, void *dest, u32 mode);
  85. .GLOBAL CpuSet
  86. .THUMB_FUNC
  87. CpuSet: swi 11
  88. bx lr
  89. @--------------------------------------------------
  90. @ 0Ch
  91. @ extern void CpuFastSet(void *source, void *dest, u32 mode);
  92. .GLOBAL CpuFastSet
  93. .THUMB_FUNC
  94. CpuFastSet: swi 12
  95. bx lr
  96. @--------------------------------------------------
  97. @ 0Eh
  98. @ extern void BgAffineSet(BgAffineSrcData *source, BgAffineDestData *dest, s32 num);
  99. .GLOBAL BgAffineSet
  100. .THUMB_FUNC
  101. BgAffineSet: swi 14
  102. bx lr
  103. @--------------------------------------------------
  104. @ 0Fh
  105. @ extern void ObjAffineSet(ObjAffineSrcData *source, void *dest, s32 num, s32 offset);
  106. .GLOBAL ObjAffineSet
  107. .THUMB_FUNC
  108. ObjAffineSet: swi 15
  109. bx lr
  110. @--------------------------------------------------
  111. @ 10h
  112. @ extern void BitUnPack(void *source, void *dest, BUP* bup);
  113. .GLOBAL BitUnPack
  114. .THUMB_FUNC
  115. BitUnPack: swi 16
  116. bx lr
  117. @--------------------------------------------------
  118. @ 11h
  119. @ extern void LZ77UnCompWram(void *source, void *dest);
  120. .GLOBAL LZ77UnCompWram
  121. .THUMB_FUNC
  122. LZ77UnCompWram:
  123. swi 17
  124. bx lr
  125. @--------------------------------------------------
  126. @ 12h
  127. @ extern void LZ77UnCompVram(void *source, void *dest);
  128. .GLOBAL LZ77UnCompVram
  129. .THUMB_FUNC
  130. LZ77UnCompVram:
  131. swi 18
  132. bx lr
  133. @--------------------------------------------------
  134. @ 13h
  135. @ extern void HuffUnComp(void *source, void *dest);
  136. .GLOBAL HuffUnComp
  137. .THUMB_FUNC
  138. HuffUnComp: swi 19
  139. bx lr
  140. @--------------------------------------------------
  141. @ 14h
  142. @ extern void RLUnCompWram(void *source, void *dest);
  143. .GLOBAL RLUnCompWram
  144. .THUMB_FUNC
  145. RLUnCompWram: swi 20
  146. bx lr
  147. @--------------------------------------------------
  148. @ 15h
  149. @ extern void RLUnCompVram(void *source, void *dest);
  150. .GLOBAL RLUnCompVram
  151. .THUMB_FUNC
  152. RLUnCompVram: swi 21
  153. bx lr
  154. @--------------------------------------------------
  155. @ 16h
  156. @ extern void Diff8bitUnFilterWram(void *source, void *dest);
  157. .GLOBAL Diff8bitUnFilterWram
  158. .THUMB_FUNC
  159. Diff8bitUnFilterWram:
  160. swi 22
  161. bx lr
  162. @--------------------------------------------------
  163. @ 17h
  164. @ extern void Diff8bitUnFilterVram(void *source, void *dest);
  165. .GLOBAL Diff8bitUnFilterVram
  166. .THUMB_FUNC
  167. Diff8bitUnFilterVram:
  168. swi 23
  169. bx lr
  170. @--------------------------------------------------
  171. @ 18h
  172. @ extern void Diff16bitUnFilter(void *source, void *dest);
  173. .GLOBAL Diff16bitUnFilter
  174. .THUMB_FUNC
  175. Diff16bitUnFilter:
  176. swi 24
  177. bx lr
  178. @--------------------------------------------------
  179. @ 19h
  180. @ extern void SoundBias(void);
  181. .GLOBAL SoundBias
  182. .THUMB_FUNC
  183. SoundBiasSet:
  184. swi 25
  185. bx lr
  186. @--------------------------------------------------
  187. @ 1Ah
  188. @ extern void SoundDriverInit(void);
  189. .GLOBAL SoundDriverInit
  190. .THUMB_FUNC
  191. SoundDriverInit:
  192. swi 26
  193. bx lr
  194. @--------------------------------------------------
  195. @ 1Bh
  196. @ extern void SoundDriverMode(u32 mode);
  197. .GLOBAL SoundDriverMode
  198. .THUMB_FUNC
  199. SoundDriverMode:
  200. swi 27
  201. bx lr
  202. @--------------------------------------------------
  203. @ 1Ch
  204. @ extern void SoundDriverMain(void);
  205. .GLOBAL SoundDriverMain
  206. .THUMB_FUNC
  207. SoundDriverMain:
  208. swi 28
  209. bx lr
  210. @--------------------------------------------------
  211. @ 1Dh
  212. @ extern void SoundDriverVSync(void);
  213. .GLOBAL SoundDriverVSync
  214. .THUMB_FUNC
  215. SoundDriverVSync:
  216. swi 29
  217. bx lr
  218. @--------------------------------------------------
  219. @ 1Eh
  220. @ extern void SoundChannelClear(void);
  221. .GLOBAL SoundChannelClear
  222. .THUMB_FUNC
  223. SoundChannelClear:
  224. swi 30
  225. bx lr
  226. @--------------------------------------------------
  227. @ 1Fh
  228. @ extern void MidiKey2Freq(void);
  229. .GLOBAL MidiKey2Freq
  230. .THUMB_FUNC
  231. MidiKey2Freq:
  232. swi 31
  233. bx lr
  234. @--------------------------------------------------
  235. @ 25h
  236. @ extern int MultiBoot(void)
  237. .GLOBAL MultiBoot
  238. .THUMB_FUNC
  239. MultiBoot:
  240. swi 37
  241. bx lr
  242. @--------------------------------------------------
  243. @ 28h
  244. @ extern void SoundDriverVSyncOff(void);
  245. .GLOBAL SoundDriverVSyncOff
  246. .THUMB_FUNC
  247. SoundDriverVSyncOff:
  248. swi 40
  249. bx lr
  250. @--------------------------------------------------
  251. @ 29h
  252. @ extern void SoundDriverVSyncOn(void);
  253. .GLOBAL SoundDriverVSyncOn
  254. .THUMB_FUNC
  255. SoundDriverVSyncOn:
  256. swi 41
  257. bx lr
  258. .END