PS2SDK
PS2 Homebrew Libraries
Loading...
Searching...
No Matches
s_gks.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
13int SpuGetKeyStatus(unsigned int voice_bit)
14{
15 int v1;
16 int v2;
17
18 v1 = -1;
19 for ( v2 = 0; v2 < 24; v2 += 1 )
20 {
21 if ( (voice_bit & (1 << v2)) != 0 )
22 {
23 v1 = v2;
24 break;
25 }
26 }
27 if ( v1 == -1 )
28 {
29 return -1;
30 }
31 if ( (_spu_keystat[_spu_core] & (1 << v1)) != 0 )
32 {
33 if ( _spu_RXX[512 * _spu_core + 5 + 8 * v1] != 0 )
34 {
35 return SPU_ON;
36 }
37 else
38 {
39 return SPU_ON_ENV_OFF;
40 }
41 }
42 else
43 {
44 if ( _spu_RXX[512 * _spu_core + 5 + 8 * v1] != 0 )
45 {
46 return SPU_OFF_ENV_ON;
47 }
48 else
49 {
50 return SPU_OFF;
51 }
52 }
53}