misc: Use GCC builtins for byte-swap operations
[pcsx_rearmed.git] / plugins / dfsound / spu_c64x.h
1 #ifndef __P_SPU_C64X_H__
2 #define __P_SPU_C64X_H__
3
4 #define COMPONENT_NAME "pcsxr_spu"
5
6 enum {
7  CCMD_INIT = 0x101,
8  CCMD_DOIT = 0x102,
9 };
10
11 struct region_mem {
12  unsigned char spu_ram[512 * 1024];
13  int SB[SB_SIZE * 24];
14  // careful not to lose ARM writes by DSP overwriting
15  // with old data when it's writing out neighbor cachelines
16  int _pad1[128/4 - ((SB_SIZE * 24) & (128/4 - 1))];
17  struct spu_in {
18   // these are not to be modified by DSP
19   SPUCHAN s_chan[24 + 1];
20   REVERBInfo rvb;
21   SPUConfig spu_config;
22  } in;
23  int _pad2[128/4 - ((sizeof(struct spu_in) / 4) & (128/4 - 1))];
24  struct spu_worker worker;
25  // init/debug
26  int sizeof_region_mem;
27  int offsetof_s_chan1;
28  int offsetof_spos_3_20;
29 };
30
31 #define ACTIVE_CNT 3
32
33 #endif /* __P_SPU_C64X_H__ */