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