PS2SDK
PS2 Homebrew Libraries
s_svv.c
1 /*
2 # _____ ___ ____ ___ ____
3 # ____| | ____| | | |____|
4 # | ___| |____ ___| ____| | \ PS2DEV Open Source Project.
5 #-----------------------------------------------------------------------
6 # Copyright ps2dev - http://www.ps2dev.org
7 # Licenced under Academic Free License version 2.0
8 # Review ps2sdk README & LICENSE files for further details.
9 */
10 
11 #include "libspu2_internal.h"
12 
13 static void __attribute__((optimize("no-unroll-loops"))) _spu_wait_SpuSetVoiceVolume(void)
14 {
15  int i;
16  int v1;
17 
18  v1 = 1;
19  for ( i = 0; i < 2; i += 1 )
20  {
21  v1 *= 13;
22  __asm__ __volatile__("" : "+g"(v1) : :);
23  }
24 }
25 
26 void SpuSetVoiceVolume(int v_num, s16 voll, s16 volr)
27 {
28  vu16 *regstmp;
29 
30  regstmp = &_spu_RXX[512 * _spu_core + 8 * v_num];
31  regstmp[0] = voll & ~0x8000;
32  regstmp[1] = volr & ~0x8000;
33  _spu_wait_SpuSetVoiceVolume();
34 }
__attribute__
typedef __attribute__
Definition: tlbfunc.c:60