PS2SDK
PS2 Homebrew Libraries
libspu2_internal.h
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 #ifndef _LIBSPU2_INTERNAL_H
12 #define _LIBSPU2_INTERNAL_H
13 
14 #include <intrman.h>
15 #include <loadcore.h>
16 #include <stdio.h>
17 #include <string.h>
18 #include <sysmem.h>
19 #include <tamtypes.h>
20 
21 #include <libspu2.h>
22 
24 {
25  u32 flags;
26  u16 dAPF1;
27  u16 dAPF2;
28  u16 vIIR;
29  u16 vCOMB1;
30  u16 vCOMB2;
31  u16 vCOMB3;
32  u16 vCOMB4;
33  u16 vWALL;
34  u16 vAPF1;
35  u16 vAPF2;
36  u16 mLSAME;
37  u16 mRSAME;
38  u16 mLCOMB1;
39  u16 mRCOMB1;
40  u16 mLCOMB2;
41  u16 mRCOMB2;
42  u16 dLSAME;
43  u16 dRSAME;
44  u16 mLDIFF;
45  u16 mRDIFF;
46  u16 mLCOMB3;
47  u16 mRCOMB3;
48  u16 mLCOMB4;
49  u16 mRCOMB4;
50  u16 dLDIFF;
51  u16 dRDIFF;
52  u16 mLAPF1;
53  u16 mRAPF1;
54  u16 mLAPF2;
55  u16 mRAPF2;
56  u16 vLIN;
57  u16 vRIN;
59 
60 typedef struct libspu2_malloc_
61 {
62  u32 addr_area;
63  u32 size_area;
65 
66 extern vu16 *_spu_RXX;
67 extern u32 _spu_tsa[2];
68 extern u32 _spu_transMode;
69 extern u32 _spu_inTransfer;
70 extern SpuTransferCallbackProc _spu_transferCallback;
71 extern SpuTransferCallbackProc _spu_AutoDMACallback;
72 extern SpuIRQCallbackProc _spu_IRQCallback;
73 
74 extern u32 _spu_keystat[2];
75 extern u32 _spu_trans_mode;
76 extern u32 _spu_rev_flag;
77 extern u32 _spu_rev_reserve_wa;
78 extern u32 _spu_rev_offsetaddr;
79 extern SpuReverbAttr _spu_rev_attr;
80 extern u32 _spu_RQvoice;
81 extern u32 _spu_RQmask;
82 extern s16 _spu_voice_centerNote[2][24];
83 extern u32 _spu_env;
84 extern u32 _spu_isCalled;
85 extern SpuIRQCallbackProc _spu_irq_callback;
86 
87 // extern int _spu_eea[4];
88 
89 extern int _spu_AllocBlockNum;
90 extern int _spu_AllocLastNum;
91 extern libspu2_malloc_t *_spu_memList;
92 
93 extern u32 _spu_zerobuf[256];
94 
95 extern s32 _spu_rev_workareasize[12];
96 
97 extern libspu2_reverb_param_entry_t _spu_rev_param[10];
98 
99 extern u16 _spu_RQ[16];
100 
101 extern int _spu_core;
102 
103 extern u16 gDMADeliverEvent;
104 
105 extern void _spu2_config_iop(void);
106 extern void _spu2_config_initialize(void);
107 extern void _spu2_config_initialize_typically(void);
108 extern void _spu2_config_initialize_hot(void);
109 extern void _spu2_config_before_compatible(void);
110 extern int _spu_init(int flag);
111 extern int spu_do_set_DmaCoreIndex(int dma_core_index);
112 extern int spu_do_get_DmaCoreIndex(void);
113 extern int _spu_FiDMA(void *userdata);
114 extern int _spu_FiAutoDMA(void *userdata);
115 extern void _spu_Fr_(void *data, int addr, u32 size);
116 extern int _spu_t(int count, ...);
117 extern int _spu_Fw(void *addr, u32 size);
118 extern int _spu_StopAutoDMA(void);
119 extern int _spu_AutoDMAGetStatus(void);
120 extern unsigned int _spu_FwAutoDMA(u8 *addr, unsigned int size, int mode);
121 extern unsigned int _spu_FwAutoDMAfrom(u8 *addr, unsigned int size, int mode, u8 *unk_a4);
122 extern void _spu_Fr(void *addr, u32 size);
123 extern void _spu_MGFsetRXX2(int offset, int value);
124 extern void _spu_FsetRXX(int l, u32 addr, int flag);
125 extern int _spu_FsetRXXa(int l, u32 flag);
126 extern int _spu_MGFgetRXX2(int offset);
127 extern void _spu_FsetPCR(int flag);
128 extern void _spu_Fw1ts(void);
129 extern void _SpuCallback(SpuIRQCallbackProc cb);
130 extern void _SpuDataCallback(int (*callback)(void *userdata));
131 extern void _SpuAutoDMACallback(int (*callback)(void *userdata));
132 extern void _SpuInit(int mode);
133 extern int _SpuDefaultCallback(void *userdata);
134 extern void SpuStopFreeRun(void);
135 extern void _spu_gcSPU(void);
136 extern int _SpuIsInAllocateArea(u32 addr);
137 extern int _SpuIsInAllocateArea_(u32 addr);
138 extern void _spu_print(void);
139 extern unsigned int _SpuSetAnyVoice(int on_off_flags, unsigned int voice_bits, int word_idx1, int word_idx2);
140 extern unsigned int _SpuGetAnyVoice(int word_idx1, int word_idx2);
141 extern void _spu_setReverbAttr(const libspu2_reverb_param_entry_t *p_rev_param_entry);
142 extern void _spu_setInTransfer(int mode);
143 extern int _spu_getInTransfer(void);
144 extern u16 _spu_note2pitch(u16 cen_note_high, u16 cen_note_low, u16 note_high, u16 note_low);
145 extern int _spu_pitch2note(s16 note_high, s16 note_low, u16 pitch);
146 extern void _SpuStCBPrepare(void);
147 extern int IntFunc(void);
148 extern void _SpuStCB_IRQfinal(void);
149 
150 #endif
libspu2_reverb_param_entry_
Definition: libspu2_internal.h:23
loadcore.h
count
u32 count
start sector of fragmented bd/file
Definition: usbhdfsd-common.h:3
SpuReverbAttr_
Definition: libspu2.h:273
libspu2_malloc_
Definition: libspu2_internal.h:60
tamtypes.h
stdio.h
sysmem.h
intrman.h